]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/treegen.cpp
Fix flipped textures for drawtype "glasslike"
[dragonfireclient.git] / src / treegen.cpp
index 6291567d56519719966bba7f1890513fc1aff4dc..542bdf21c10305855dddde769d17b40ed5a2a010 100644 (file)
@@ -33,6 +33,11 @@ namespace treegen
 void make_tree(ManualMapVoxelManipulator &vmanip, v3s16 p0,
                bool is_apple_tree, INodeDefManager *ndef, int seed)
 {
+       /*
+               NOTE: Tree-placing code is currently duplicated in the engine
+               and in games that have saplings; both are deprecated but not
+               replaced yet
+       */
        MapNode treenode(ndef->getId("mapgen_tree"));
        MapNode leavesnode(ndef->getId("mapgen_leaves"));
        MapNode applenode(ndef->getId("mapgen_apple"));
@@ -226,7 +231,7 @@ void make_ltree(ManualMapVoxelManipulator &vmanip, v3s16 p0, INodeDefManager *nd
                tree_node_placement(vmanip,v3f(position.X,position.Y-1,position.Z+1),dirtnode);
                tree_node_placement(vmanip,v3f(position.X+1,position.Y-1,position.Z+1),dirtnode);
        }
-       if (tree_definition.trunk_type == "crossed")
+       else if (tree_definition.trunk_type == "crossed")
        {
                tree_node_placement(vmanip,v3f(position.X+1,position.Y-1,position.Z),dirtnode);
                tree_node_placement(vmanip,v3f(position.X-1,position.Y-1,position.Z),dirtnode);
@@ -284,7 +289,7 @@ void make_ltree(ManualMapVoxelManipulator &vmanip, v3s16 p0, INodeDefManager *nd
                                tree_trunk_placement(vmanip,v3f(position.X,position.Y,position.Z+1),tree_definition);
                                tree_trunk_placement(vmanip,v3f(position.X+1,position.Y,position.Z+1),tree_definition);
                        }
-                       if (tree_definition.trunk_type == "crossed" && !tree_definition.thin_branches)
+                       else if (tree_definition.trunk_type == "crossed" && !tree_definition.thin_branches)
                        {
                                tree_trunk_placement(vmanip,v3f(position.X+1,position.Y,position.Z),tree_definition);
                                tree_trunk_placement(vmanip,v3f(position.X-1,position.Y,position.Z),tree_definition);
@@ -304,7 +309,7 @@ void make_ltree(ManualMapVoxelManipulator &vmanip, v3s16 p0, INodeDefManager *nd
                                tree_trunk_placement(vmanip,v3f(position.X,position.Y,position.Z+1),tree_definition);
                                tree_trunk_placement(vmanip,v3f(position.X+1,position.Y,position.Z+1),tree_definition);
                        }
-                       if ((stack_orientation.empty() && tree_definition.trunk_type == "crossed") ||
+                       else if ((stack_orientation.empty() && tree_definition.trunk_type == "crossed") ||
                                (!stack_orientation.empty() && tree_definition.trunk_type == "crossed" && !tree_definition.thin_branches))
                        {
                                tree_trunk_placement(vmanip,v3f(position.X+1,position.Y,position.Z),tree_definition);
@@ -511,6 +516,11 @@ v3f transposeMatrix(irr::core::matrix4 M, v3f v)
 void make_jungletree(VoxelManipulator &vmanip, v3s16 p0,
                INodeDefManager *ndef, int seed)
 {
+       /*
+               NOTE: Tree-placing code is currently duplicated in the engine
+               and in games that have saplings; both are deprecated but not
+               replaced yet
+       */
        content_t c_tree   = ndef->getId("mapgen_jungletree");
        content_t c_leaves = ndef->getId("mapgen_jungleleaves");
        if (c_tree == CONTENT_IGNORE)