Translated using Weblate (Chinese (Simplified))
[oweals/minetest.git] / src / object_properties.h
index 53d482904680b814758c00b4e1e01aedf4870762..f7848f5a212b3c59a6a39d36aa36f625efcd3b0f 100644 (file)
@@ -1,6 +1,6 @@
 /*
-Minetest-c55
-Copyright (C) 2012 celeron55, Perttu Ahola <celeron55@gmail.com>
+Minetest
+Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU Lesser General Public License as published by
@@ -17,37 +17,53 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
 
-#ifndef OBJECT_PROPERTIES_HEADER
-#define OBJECT_PROPERTIES_HEADER
+#pragma once
 
 #include <string>
 #include "irrlichttypes_bloated.h"
 #include <iostream>
 #include <map>
+#include <vector>
 
 struct ObjectProperties
 {
+       u16 hp_max = 1;
+       u16 breath_max = 0;
+       bool physical = false;
+       bool collideWithObjects = true;
        // Values are BS=1
-       s16 hp_max;
-       bool physical;
-       float weight;
-       core::aabbox3d<f32> collisionbox;
-       std::string visual;
-       std::string mesh;
-       v2f visual_size;
-       core::array<std::string> textures;
-       v2s16 spritediv;
+       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 = "";
+       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;
-       bool makes_footstep_sound;
-       float automatic_rotate;
-
+       bool is_visible = true;
+       bool makes_footstep_sound = false;
+       f32 stepheight = 0.0f;
+       float automatic_rotate = 0.0f;
+       bool automatic_face_movement_dir = false;
+       f32 automatic_face_movement_dir_offset = 0.0f;
+       bool backface_culling = true;
+       s8 glow = 0;
+       std::string nametag = "";
+       video::SColor nametag_color = video::SColor(255, 255, 255, 255);
+       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;
 
        ObjectProperties();
        std::string dump();
        void serialize(std::ostream &os) const;
        void deSerialize(std::istream &is);
 };
-
-#endif
-