Use true distance for block priority.
[oweals/minetest.git] / src / object_properties.cpp
index 3cec51672a99713e3b31513910b983930414e55e..f4e4953babe6380f9037ca0f632341ccdff3b847 100644 (file)
@@ -21,11 +21,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "irrlichttypes_bloated.h"
 #include "exceptions.h"
 #include "util/serialize.h"
+#include "util/basic_macros.h"
 #include <sstream>
 
-#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
-#define PP2(x) "("<<(x).X<<","<<(x).Y<<")"
-
 ObjectProperties::ObjectProperties():
        hp_max(1),
        physical(false),
@@ -45,7 +43,8 @@ ObjectProperties::ObjectProperties():
        automatic_face_movement_dir_offset(0.0),
        backface_culling(true),
        nametag(""),
-       nametag_color(255, 255, 255, 255)
+       nametag_color(255, 255, 255, 255),
+       automatic_face_movement_max_rotation_per_sec(-1)
 {
        textures.push_back("unknown_object.png");
        colors.push_back(video::SColor(255,255,255,255));
@@ -116,6 +115,9 @@ void ObjectProperties::serialize(std::ostream &os) const
        writeU8(os, backface_culling);
        os << serializeString(nametag);
        writeARGB8(os, nametag_color);
+       writeF1000(os, automatic_face_movement_max_rotation_per_sec);
+       os << serializeString(infotext);
+
        // Add stuff only at the bottom.
        // Never remove anything, because we don't want new versions of this
 }
@@ -155,6 +157,8 @@ void ObjectProperties::deSerialize(std::istream &is)
                        backface_culling = readU8(is);
                        nametag = deSerializeString(is);
                        nametag_color = readARGB8(is);
+                       automatic_face_movement_max_rotation_per_sec = readF1000(is);
+                       infotext = deSerializeString(is);
                }catch(SerializationError &e){}
        }
        else