]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/object_properties.h
Merge pull request #35 from arydevy/patch-1
[dragonfireclient.git] / src / object_properties.h
index 8ab1fa7fd4a302b18a7c2891120d7bc1419fb23c..db28eebfda1fded27139ac9b9faf204321634baf 100644 (file)
@@ -24,28 +24,29 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include <iostream>
 #include <map>
 #include <vector>
+#include "util/Optional.h"
 
 struct ObjectProperties
 {
-       // Values are BS=1
-       s16 hp_max = 1;
+       u16 hp_max = 1;
+       u16 breath_max = 0;
        bool physical = false;
        bool collideWithObjects = true;
-       float weight = 5.0f;
+       // Values are BS=1
        aabb3f collisionbox = aabb3f(-0.5f, -0.5f, -0.5f, 0.5f, 0.5f, 0.5f);
        aabb3f selectionbox = aabb3f(-0.5f, -0.5f, -0.5f, 0.5f, 0.5f, 0.5f);
        bool pointable = true;
        std::string visual = "sprite";
        std::string mesh = "";
-       v2f visual_size = v2f(1, 1);
+       v3f visual_size = v3f(1, 1, 1);
        std::vector<std::string> textures;
+       std::string damage_texture_modifier = "^[brighten";
        std::vector<video::SColor> colors;
        v2s16 spritediv = v2s16(1, 1);
        v2s16 initial_sprite_basepos;
        bool is_visible = true;
        bool makes_footstep_sound = false;
        f32 stepheight = 0.0f;
-       bool can_zoom = true;
        float automatic_rotate = 0.0f;
        bool automatic_face_movement_dir = false;
        f32 automatic_face_movement_dir_offset = 0.0f;
@@ -53,10 +54,17 @@ struct ObjectProperties
        s8 glow = 0;
        std::string nametag = "";
        video::SColor nametag_color = video::SColor(255, 255, 255, 255);
+       Optional<video::SColor> nametag_bgcolor = nullopt;
        f32 automatic_face_movement_max_rotation_per_sec = -1.0f;
        std::string infotext;
        //! For dropped items, this contains item information.
        std::string wield_item;
+       bool static_save = true;
+       float eye_height = 1.625f;
+       float zoom_fov = 0.0f;
+       bool use_texture_alpha = false;
+       bool shaded = true;
+       bool show_on_minimap = false;
 
        ObjectProperties();
        std::string dump();