aboutsummaryrefslogtreecommitdiff
path: root/src/mapgen/treegen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mapgen/treegen.h')
-rw-r--r--src/mapgen/treegen.h120
1 files changed, 59 insertions, 61 deletions
diff --git a/src/mapgen/treegen.h b/src/mapgen/treegen.h
index 447baabb3..f2ee36a4e 100644
--- a/src/mapgen/treegen.h
+++ b/src/mapgen/treegen.h
@@ -28,66 +28,64 @@ class MMVManip;
class NodeDefManager;
class ServerMap;
-namespace treegen {
-
- enum error {
- SUCCESS,
- UNBALANCED_BRACKETS
- };
-
- struct TreeDef {
- std::string initial_axiom;
- std::string rules_a;
- std::string rules_b;
- std::string rules_c;
- std::string rules_d;
-
- MapNode trunknode;
- MapNode leavesnode;
- MapNode leaves2node;
-
- int leaves2_chance;
- int angle;
- int iterations;
- int iterations_random_level;
- std::string trunk_type;
- bool thin_branches;
- MapNode fruitnode;
- int fruit_chance;
- s32 seed;
- bool explicit_seed;
- };
-
- // Add default tree
- void make_tree(MMVManip &vmanip, v3s16 p0,
- bool is_apple_tree, const NodeDefManager *ndef, s32 seed);
- // Add jungle tree
- void make_jungletree(MMVManip &vmanip, v3s16 p0,
- const NodeDefManager *ndef, s32 seed);
- // Add pine tree
- void make_pine_tree(MMVManip &vmanip, v3s16 p0,
- const NodeDefManager *ndef, s32 seed);
-
- // Add L-Systems tree (used by engine)
- treegen::error make_ltree(MMVManip &vmanip, v3s16 p0,
- const NodeDefManager *ndef, TreeDef tree_definition);
- // Spawn L-systems tree from LUA
- treegen::error spawn_ltree (ServerMap *map, v3s16 p0,
- const NodeDefManager *ndef, const TreeDef &tree_definition);
-
- // L-System tree gen helper functions
- void tree_node_placement(MMVManip &vmanip, v3f p0,
- MapNode node);
- void tree_trunk_placement(MMVManip &vmanip, v3f p0,
- TreeDef &tree_definition);
- void tree_leaves_placement(MMVManip &vmanip, v3f p0,
- PseudoRandom ps, TreeDef &tree_definition);
- void tree_single_leaves_placement(MMVManip &vmanip, v3f p0,
- PseudoRandom ps, TreeDef &tree_definition);
- void tree_fruit_placement(MMVManip &vmanip, v3f p0,
- TreeDef &tree_definition);
- irr::core::matrix4 setRotationAxisRadians(irr::core::matrix4 M, double angle, v3f axis);
-
- v3f transposeMatrix(irr::core::matrix4 M ,v3f v);
+namespace treegen
+{
+
+enum error
+{
+ SUCCESS,
+ UNBALANCED_BRACKETS
+};
+
+struct TreeDef
+{
+ std::string initial_axiom;
+ std::string rules_a;
+ std::string rules_b;
+ std::string rules_c;
+ std::string rules_d;
+
+ MapNode trunknode;
+ MapNode leavesnode;
+ MapNode leaves2node;
+
+ int leaves2_chance;
+ int angle;
+ int iterations;
+ int iterations_random_level;
+ std::string trunk_type;
+ bool thin_branches;
+ MapNode fruitnode;
+ int fruit_chance;
+ s32 seed;
+ bool explicit_seed;
+};
+
+// Add default tree
+void make_tree(MMVManip &vmanip, v3s16 p0, bool is_apple_tree, const NodeDefManager *ndef,
+ s32 seed);
+// Add jungle tree
+void make_jungletree(MMVManip &vmanip, v3s16 p0, const NodeDefManager *ndef, s32 seed);
+// Add pine tree
+void make_pine_tree(MMVManip &vmanip, v3s16 p0, const NodeDefManager *ndef, s32 seed);
+
+// Add L-Systems tree (used by engine)
+treegen::error make_ltree(MMVManip &vmanip, v3s16 p0, const NodeDefManager *ndef,
+ TreeDef tree_definition);
+// Spawn L-systems tree from LUA
+treegen::error spawn_ltree(ServerMap *map, v3s16 p0, const NodeDefManager *ndef,
+ const TreeDef &tree_definition);
+
+// L-System tree gen helper functions
+void tree_node_placement(MMVManip &vmanip, v3f p0, MapNode node);
+void tree_trunk_placement(MMVManip &vmanip, v3f p0, TreeDef &tree_definition);
+void tree_leaves_placement(
+ MMVManip &vmanip, v3f p0, PseudoRandom ps, TreeDef &tree_definition);
+void tree_single_leaves_placement(
+ MMVManip &vmanip, v3f p0, PseudoRandom ps, TreeDef &tree_definition);
+void tree_fruit_placement(MMVManip &vmanip, v3f p0, TreeDef &tree_definition);
+irr::core::matrix4 setRotationAxisRadians(irr::core::matrix4 M, double angle, v3f axis);
+
+v3f transposeMatrix(irr::core::matrix4 M, v3f v);
}; // namespace treegen