#include <iostream>
#include <map>
#include <vector>
+#include "util/Optional.h"
struct ObjectProperties
{
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;
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.
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();
+ // check limits of some important properties (strings) that'd cause exceptions later on
+ bool validate();
void serialize(std::ostream &os) const;
void deSerialize(std::istream &is);
};