]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/materials.h
Tool progress bar tweaking
[dragonfireclient.git] / src / materials.h
index b25d047beb9831060268d46a7e6a78d7d9a34d70..face7d5df7277784bc6337a4b66147cd45424c91 100644 (file)
@@ -72,6 +72,29 @@ struct MaterialProperties
        void deSerialize(std::istream &is);
 };
 
+struct ToolDiggingProperties
+{
+       // time = basetime + sum(feature here * feature in MaterialProperties)
+       float full_punch_interval;
+       float basetime;
+       float dt_weight;
+       float dt_crackiness;
+       float dt_crumbliness;
+       float dt_cuttability;
+       float basedurability;
+       float dd_weight;
+       float dd_crackiness;
+       float dd_crumbliness;
+       float dd_cuttability;
+
+       ToolDiggingProperties(float full_punch_interval_=2.0,
+                       float a=0.75, float b=0, float c=0, float d=0, float e=0,
+                       float f=50, float g=0, float h=0, float i=0, float j=0);
+
+       void serialize(std::ostream &os);
+       void deSerialize(std::istream &is);
+};
+
 struct DiggingProperties
 {
        bool diggable;
@@ -87,7 +110,6 @@ struct DiggingProperties
        {}
 };
 
-struct ToolDiggingProperties;
 class INodeDefManager;
 
 DiggingProperties getDiggingProperties(const MaterialProperties *mp,