From 466cfd4258062a265b1208120c99214d85353581 Mon Sep 17 00:00:00 2001 From: Juraj Vajda Date: Wed, 7 Feb 2024 08:47:36 -0500 Subject: [PATCH] Merge on generated calls --- api.lua | 13 +- assets/schematics/everness_cursed_cabin.lua | 602 ++++++ .../everness_forsaken_desert_temple_3.lua | 1879 +++++++++++++++++ .../schematics/everness_quartz_fountain.lua | 1227 +++++++++++ mapgen_after.lua | 666 ++---- mapgen_bamboo_forest.lua | 221 +- mapgen_baobab_savanna.lua | 16 +- mapgen_coral_forest.lua | 15 +- mapgen_coral_forest_dunes.lua | 120 ++ mapgen_coral_forest_ocean.lua | 120 ++ mapgen_crystal_forest.lua | 111 + mapgen_crystal_forest_dunes.lua | 119 ++ mapgen_cursed_lands.lua | 111 + mapgen_cursed_lands_dunes.lua | 110 + mapgen_cursed_lands_swamp.lua | 114 + mapgen_forsaken_desert.lua | 109 + mapgen_forsaken_desert_ocean.lua | 109 +- mapgen_frosted_icesheet.lua | 116 + mapgen_mineral_waters.lua | 62 +- schematics/everness_cursed_cabin.mts | Bin 0 -> 825 bytes .../everness_forsaken_desert_temple_3.mts | Bin 0 -> 910 bytes schematics/everness_quartz_fountain.mts | Bin 0 -> 464 bytes stairs.lua | 83 + walls.lua | 82 + 24 files changed, 5398 insertions(+), 607 deletions(-) create mode 100644 assets/schematics/everness_cursed_cabin.lua create mode 100644 assets/schematics/everness_forsaken_desert_temple_3.lua create mode 100644 assets/schematics/everness_quartz_fountain.lua create mode 100644 schematics/everness_cursed_cabin.mts create mode 100644 schematics/everness_forsaken_desert_temple_3.mts create mode 100644 schematics/everness_quartz_fountain.mts diff --git a/api.lua b/api.lua index 612c03d..6974de4 100644 --- a/api.lua +++ b/api.lua @@ -236,7 +236,8 @@ Everness = { registered_craftitems = {}, registered_biomes = {}, registered_decorations = {}, - registered_ores = {} + registered_ores = {}, + on_generated_queue = {} } function Everness.grow_cactus(self, pos, node, params) @@ -2117,3 +2118,13 @@ function Everness.find_content_in_vm_area(minp, maxp, contentIds, data, area) return indexes, id_count end + + +function Everness.add_to_queue_on_generated(self, def) + if type(def) ~= 'table' then + minetest.log('warning', '[add_to_queue_on_generated] Callback definition is not a table, not adding to queue! It was type of ' .. type(def)) + return + end + + table.insert(self.on_generated_queue, def) +end diff --git a/assets/schematics/everness_cursed_cabin.lua b/assets/schematics/everness_cursed_cabin.lua new file mode 100644 index 0000000..31e6107 --- /dev/null +++ b/assets/schematics/everness_cursed_cabin.lua @@ -0,0 +1,602 @@ +schematic = { + size = {x=7, y=7, z=12}, + yslice_prob = { + {ypos=0, prob=254}, + {ypos=1, prob=254}, + {ypos=2, prob=254}, + {ypos=3, prob=254}, + {ypos=4, prob=254}, + {ypos=5, prob=254}, + {ypos=6, prob=254}, + }, + data = { + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block_wall", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:cursed_sandstone_block_wall", prob=254, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="everness:skull_with_candle", prob=126, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:skull_with_candle", prob=126, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=21}, + {name="air", prob=0, param2=0}, + {name="everness:trapdoor_cursed_wood_open", prob=126, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=23}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=21}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=23}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=20}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:door_cursed_wood_a", prob=254, param2=2}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=3}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="doors:hidden", prob=254, param2=2}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:trapdoor_cursed_wood_open", prob=126, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:trapdoor_cursed_wood_open", prob=126, param2=3}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="air", prob=0, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="air", prob=0, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:trapdoor_cursed_wood_open", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:trapdoor_cursed_wood_open", prob=126, param2=3}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_brick", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="default:bookshelf", prob=254, param2=0}, + {name="everness:chest", prob=126, param2=0}, + {name="default:bookshelf", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:skull_with_candle", prob=126, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:skull_with_candle", prob=126, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="stairs:stair_dry_tree", prob=254, param2=21}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=23}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=7}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=3}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="everness:dry_tree", prob=254, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="xpanes:cursed_bar_flat", prob=254, param2=0}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=1}, + {name="everness:dry_wood", prob=254, param2=0}, + {name="stairs:stair_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:slab_dry_tree", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="everness:cursed_sandstone_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=2}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="everness:dry_branches", prob=126, param2=1}, + {name="stairs:stair_cursed_sandstone_block", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:fence_dry_wood", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=21}, + {name="air", prob=0, param2=0}, + {name="everness:trapdoor_cursed_wood_open", prob=126, param2=2}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=23}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=21}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=23}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=1}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=22}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=3}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_cursed_brick_with_growth", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + }, +} diff --git a/assets/schematics/everness_forsaken_desert_temple_3.lua b/assets/schematics/everness_forsaken_desert_temple_3.lua new file mode 100644 index 0000000..93a86ce --- /dev/null +++ b/assets/schematics/everness_forsaken_desert_temple_3.lua @@ -0,0 +1,1879 @@ +schematic = { + size = {x=11, y=13, z=13}, + yslice_prob = { + {ypos=0, prob=254}, + {ypos=1, prob=254}, + {ypos=2, prob=254}, + {ypos=3, prob=254}, + {ypos=4, prob=254}, + {ypos=5, prob=254}, + {ypos=6, prob=254}, + {ypos=7, prob=254}, + {ypos=8, prob=254}, + {ypos=9, prob=254}, + {ypos=10, prob=254}, + {ypos=11, prob=254}, + {ypos=12, prob=254}, + }, + data = { + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=20}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=23}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=21}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:mineral_torch", prob=126, param2=1}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:mineral_torch", prob=126, param2=1}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=2}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=2}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=2}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=2}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=2}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=23}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=21}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=1}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=1}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=23}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=21}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=1}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:chest", prob=126, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:chest", prob=126, param2=1}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:slab_forsaken_desert_chiseled_stone", prob=254, param2=1}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=23}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=21}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:mineral_torch", prob=126, param2=1}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:mineral_torch", prob=126, param2=1}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick_red", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=23}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="everness:forsaken_desert_engraved_stone", prob=254, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=21}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_chiseled_stone", prob=254, param2=22}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_brick", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="everness:forsaken_desert_cobble", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="stairs:stair_forsaken_desert_cobble", prob=254, param2=2}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + }, +} diff --git a/assets/schematics/everness_quartz_fountain.lua b/assets/schematics/everness_quartz_fountain.lua new file mode 100644 index 0000000..f2949a0 --- /dev/null +++ b/assets/schematics/everness_quartz_fountain.lua @@ -0,0 +1,1227 @@ +schematic = { + size = {x=11, y=10, z=11}, + yslice_prob = { + {ypos=0, prob=254}, + {ypos=1, prob=254}, + {ypos=2, prob=254}, + {ypos=3, prob=254}, + {ypos=4, prob=254}, + {ypos=5, prob=254}, + {ypos=6, prob=254}, + {ypos=7, prob=254}, + {ypos=8, prob=254}, + {ypos=9, prob=254}, + }, + data = { + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=14}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=7}, + {name="stairs:stair_quartz_block", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=14}, + {name="stairs:stair_quartz_block", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=1}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="stairs:stair_quartz_block", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=1}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=1}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="stairs:stair_quartz_block", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=14}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="everness:chest", prob=254, param2=2}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=14}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=1}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=1}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=1}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=14}, + {name="default:water_flowing", prob=254, param2=7}, + {name="everness:quartz_pillar", prob=254, param2=3}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=14}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="everness:quartz_pillar", prob=254, param2=3}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="everness:quartz_pillar", prob=254, param2=3}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="default:water_source", prob=126, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=1}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="stairs:stair_quartz_block", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=1}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_pillar", prob=254, param2=2}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=1}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="stairs:stair_quartz_block", prob=254, param2=3}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=2}, + {name="default:water_flowing", prob=254, param2=7}, + {name="stairs:stair_quartz_block", prob=254, param2=2}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=15}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="stairs:stair_quartz_block", prob=254, param2=2}, + {name="default:water_flowing", prob=254, param2=14}, + {name="stairs:stair_quartz_block", prob=254, param2=2}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=7}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=14}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="default:water_flowing", prob=254, param2=4}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=6}, + {name="default:water_flowing", prob=254, param2=5}, + {name="default:water_flowing", prob=254, param2=4}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="everness:quartz_block", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="everness:quartz_chiseled", prob=254, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + {name="air", prob=254, param2=0}, + }, +} diff --git a/mapgen_after.lua b/mapgen_after.lua index f8afab1..9b00460 100644 --- a/mapgen_after.lua +++ b/mapgen_after.lua @@ -16,45 +16,159 @@ -- Get the content IDs for the nodes used. local c_water_source = minetest.get_content_id('mapgen_water_source') -local c_dirt_with_grass_1 = minetest.get_content_id('everness:dirt_with_grass_1') -local c_dirt_with_grass_extras_1 = minetest.get_content_id('everness:dirt_with_grass_extras_1') -local c_dirt_with_grass_extras_2 = minetest.get_content_id('everness:dirt_with_grass_extras_2') local c_dirt_with_rainforest_litter = minetest.get_content_id('default:dirt_with_rainforest_litter') -local c_dirt_with_cursed_grass = minetest.get_content_id('everness:dirt_with_cursed_grass') -local c_dirt_with_crystal_grass = minetest.get_content_id('everness:dirt_with_crystal_grass') -local c_crystal_sand = minetest.get_content_id('everness:crystal_sand') -local c_dry_ocean_dirt = minetest.get_content_id('everness:dry_ocean_dirt') local c_dirt_with_snow = minetest.get_content_id('default:dirt_with_snow') local c_dirt_with_coniferous_litter = minetest.get_content_id('default:dirt_with_coniferous_litter') local c_forsaken_desert_sand = minetest.get_content_id('everness:forsaken_desert_sand') local c_forsaken_desert_chiseled_stone = minetest.get_content_id('everness:forsaken_desert_chiseled_stone') local c_forsaken_desert_brick = minetest.get_content_id('everness:forsaken_desert_brick') local c_forsaken_desert_engraved_stone = minetest.get_content_id('everness:forsaken_desert_engraved_stone') -local c_frosted_snowblock = minetest.get_content_id('everness:frosted_snowblock') -local c_frosted_ice = minetest.get_content_id('everness:frosted_ice') local c_everness_mineral_water_source = minetest.get_content_id('everness:mineral_water_source') local c_everness_mineral_sand = minetest.get_content_id('everness:mineral_sand') -- Biome IDs local biome_id_everness_cursed_lands_dunes = minetest.get_biome_id('everness:cursed_lands_dunes') local biome_id_everness_cursed_lands_swamp = minetest.get_biome_id('everness:cursed_lands_swamp') local biome_id_everness_cursed_lands_ocean = minetest.get_biome_id('everness:cursed_lands_ocean') -local biome_id_everness_coral_forest_dunes = minetest.get_biome_id('everness:coral_forest_dunes') -local biome_id_everness_coral_forest_ocean = minetest.get_biome_id('everness:coral_forest_ocean') local biome_id_everness_crystal_forest_dunes = minetest.get_biome_id('everness:crystal_forest_dunes') local biome_id_everness_crystal_forest_shore = minetest.get_biome_id('everness:crystal_forest_shore') local biome_id_everness_crystal_forest_ocean = minetest.get_biome_id('everness:crystal_forest_ocean') +local water_level = tonumber(minetest.settings:get('water_level')) or 1 + +-- MTG +local chance = 20 +local chance_sea_level = 10 +local disp = 16 +local schem_jungle_temple = minetest.get_modpath('everness') .. '/schematics/everness_jungle_temple.mts' +local size_jungle_temple = { x = 12, y = 14, z = 15 } +local size_jungle_temple_x = math.round(size_jungle_temple.x / 2) +local size_jungle_temple_z = math.round(size_jungle_temple.z / 2) +local y_dis_jungle_temple = 3 + +local biome_id_rainforest = minetest.get_biome_id('rainforest') +local biome_id_rainforest_swamp = minetest.get_biome_id('rainforest_swamp') + +Everness:add_to_queue_on_generated({ + name = 'default:rainforest_and_rainforest_swamp', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_rainforest) ~= -1 + or table.indexof(biomemap, biome_id_rainforest_swamp) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_dirt_with_rainforest_litter + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Jungle Temple + -- + + -- add Y displacement + + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis_jungle_temple, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_jungle_temple_x, s_pos.y - 1, s_pos.z - size_jungle_temple_z), + vector.new(s_pos.x + size_jungle_temple_x, s_pos.y + 1, s_pos.z + size_jungle_temple_z), + { + 'default:dirt_with_rainforest_litter' + } + ) + -- Can force over these blocks + local force_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_jungle_temple_x, s_pos.y - 1, s_pos.z - size_jungle_temple_z), + vector.new(s_pos.x + size_jungle_temple_x, s_pos.y + 1, s_pos.z + size_jungle_temple_z), + { + 'group:tree', + 'group:flower', + 'group:flora', + 'group:leaves', + 'fireflies:firefly', + 'fireflies:hidden_firefly', + } + ) + + if #positions + #force_positions < size_jungle_temple.x * size_jungle_temple.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_jungle_temple_x, s_pos.y, s_pos.z - size_jungle_temple_z), + vector.new(s_pos.x + size_jungle_temple_x, s_pos.y + size_jungle_temple.y, s_pos.z + size_jungle_temple_z), + { + 'air', + 'group:tree', + 'group:flora', + 'group:leaves' + } + ) + + if #air_positions > (size_jungle_temple.x * size_jungle_temple.y * size_jungle_temple.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem_jungle_temple, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_jungle_temple = shared_args.schem_positions.everness_jungle_temple or {} + + table.insert(shared_args.schem_positions.everness_jungle_temple, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_jungle_temple_x, s_pos.y - y_dis_jungle_temple, s_pos.z - size_jungle_temple_z), + maxp = vector.new(s_pos.x + size_jungle_temple_x, s_pos.y - y_dis_jungle_temple + size_jungle_temple.y, s_pos.z + size_jungle_temple_z) + }) + + minetest.log('action', '[Everness] Jungle Temple was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) -- Localize data buffer table outside the loop, to be re-used for all -- mapchunks, therefore minimising memory use. local data = {} -local chance = 20 -local chance_sea_level = 10 -local disp = 16 -local water_level = tonumber(minetest.settings:get('water_level')) or 1 +local p2data = {} minetest.register_on_generated(function(minp, maxp, blockseed) local rand = PcgRandom(blockseed) local biomemap = minetest.get_mapgen_object('biomemap') + local gennotify = minetest.get_mapgen_object('gennotify') -- Load the voxelmanip with the result of engine mapgen local vm, emin, emax = minetest.get_mapgen_object('voxelmanip') -- 'area' is used later to get the voxelmanip indexes for positions @@ -62,11 +176,40 @@ minetest.register_on_generated(function(minp, maxp, blockseed) -- Get the content ID data from the voxelmanip in the form of a flat array. -- Set the buffer parameter to use and reuse 'data' for this. vm:get_data(data) + vm:get_param2_data(p2data) -- Side length of mapchunk local sidelength = maxp.x - minp.x + 1 local x_disp = rand:next(0, disp) local z_disp = rand:next(0, disp) local schem_positions = {} + local shared_args = {} + + -- on_data + -- read/write to `data` what will be eventually saved (set_data) + -- used for voxelmanip `data` manipulation + for _, def in ipairs(Everness.on_generated_queue) do + if def.can_run(biomemap) and def.on_data then + shared_args[def.name] = shared_args[def.name] or {} + -- print('--- on_data', def.name, minp:to_string(), maxp:to_string()) + def.on_data(minp, maxp, area, data, p2data, gennotify, rand, shared_args[def.name]) + -- print('shared_args', dump(shared_args)) + end + end + + -- set data after they have been manipulated (above) + vm:set_data(data) + vm:set_param2_data(p2data) + + -- after_set_data + -- can read (but cant and should not manipulate) voxelmanip `data` + -- used for `place_schematic_on_vmanip` which will invalidate `data` therefore we are doing it after we set the data + for _, def in ipairs(Everness.on_generated_queue) do + if def.can_run(biomemap) and def.after_set_data then + shared_args[def.name] = shared_args[def.name] or {} + -- print('after_set_data', def.name, minp:to_string(), maxp:to_string()) + def.after_set_data(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args[def.name]) + end + end for y = minp.y, maxp.y do local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) @@ -77,349 +220,6 @@ minetest.register_on_generated(function(minp, maxp, blockseed) if maxp.y >= water_level then -- Above sea level or at water level if - ( - data[vi] == c_dirt_with_grass_1 - or data[vi] == c_dirt_with_grass_extras_1 - or data[vi] == c_dirt_with_grass_extras_2 - ) - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_japanese_shrine.mts' - - -- - -- Japanese Shrine - -- - - local size = { x = 11, y = 19, z = 15 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - local schem_pos = vector.new(s_pos) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:dirt_with_grass_1' - } - ) - -- Can force over these blocks - local force_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:dirt_with_grass_extras_1', - 'everness:dirt_with_grass_extras_2', - 'group:bamboo', - 'group:flower', - 'group:leaves' - } - ) - - if #positions + #force_positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air', - 'group:bamboo', - 'group:flower', - 'group:leaves' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_japanese_shrine = schem_positions.everness_japanese_shrine or {} - - table.insert(schem_positions.everness_japanese_shrine, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Japanese Shrine was placed at ' .. schem_pos:to_string()) - end - elseif - data[vi] == c_dirt_with_rainforest_litter - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_jungle_temple.mts' - - -- - -- Jungle Temple - -- - - local size = { x = 12, y = 14, z = 15 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - -- add Y displacement - local y_dis = 3 - local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'default:dirt_with_rainforest_litter' - } - ) - -- Can force over these blocks - local force_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'group:tree', - 'group:flower', - 'group:flora', - 'group:leaves', - 'fireflies:firefly', - 'fireflies:hidden_firefly', - } - ) - - if #positions + #force_positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air', - 'group:tree', - 'group:flora', - 'group:leaves' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_jungle_temple = schem_positions.everness_jungle_temple or {} - - table.insert(schem_positions.everness_jungle_temple, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Jungle Temple was placed at ' .. schem_pos:to_string()) - end - elseif - data[vi] == c_dirt_with_cursed_grass - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_haunted_house.mts' - - -- - -- Haunted House - -- - - local size = { x = 11, y = 22, z = 10 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - -- add Y displacement - local y_dis = 1 - local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:dirt_with_cursed_grass' - } - ) - - if #positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_haunted_house = schem_positions.everness_haunted_house or {} - - table.insert(schem_positions.everness_haunted_house, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Haunted House was placed at ' .. schem_pos:to_string()) - end - elseif - ( - data[vi] == c_dirt_with_crystal_grass - or data[vi] == c_crystal_sand - ) - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_quartz_temple.mts' - - -- - -- Quartz Temple - -- - - local size = { x = 16, y = 13, z = 16 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - local schem_pos = vector.new(s_pos) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:dirt_with_crystal_grass', - 'everness:crystal_sand' - } - ) - - if #positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_quartz_temple = schem_positions.everness_quartz_temple or {} - - table.insert(schem_positions.everness_quartz_temple, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Quartz Temple was placed at ' .. schem_pos:to_string()) - end - - elseif - ( - data[vi] == c_forsaken_desert_sand - or data[vi] == c_dry_ocean_dirt - ) - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_forsaken_desert_temple.mts' - - -- - -- Forsaken Desert Temple - -- - - local size = { x = 9, y = 16, z = 9 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - local schem_pos = vector.new(s_pos) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:forsaken_desert_sand', - 'everness:dry_ocean_dirt' - } - ) - - if #positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_forsaken_desert_temple = schem_positions.everness_forsaken_desert_temple or {} - - table.insert(schem_positions.everness_forsaken_desert_temple, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Forsaken Desert Temple was placed at ' .. schem_pos:to_string()) - end - elseif ( data[vi] == c_dirt_with_snow or data[vi] == c_dirt_with_coniferous_litter @@ -473,71 +273,6 @@ minetest.register_on_generated(function(minp, maxp, blockseed) end } ) - elseif - ( - data[vi] == c_frosted_snowblock - or data[vi] == c_frosted_ice - ) - and rand:next(0, 100) < chance - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_frosted_icesheet_igloo.mts' - - -- - -- Igloo - -- - - local size = { x = 16, y = 13, z = 16 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - -- add Y displacement - local y_dis = 8 - local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) - - -- find floor big enough - local positions = minetest.find_nodes_in_area_under_air( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - 'everness:frosted_snowblock', - 'everness:frosted_ice' - } - ) - - if #positions < size.x * size.z then - -- not enough space - return - end - - -- enough air to place structure ? - local air_positions = minetest.find_nodes_in_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - 'air' - } - ) - - if #air_positions > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_frosted_icesheet_igloo = schem_positions.everness_frosted_icesheet_igloo or {} - - table.insert(schem_positions.everness_frosted_icesheet_igloo, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Igloo was placed at ' .. schem_pos:to_string()) - end elseif ( data[vi] == c_everness_mineral_water_source @@ -678,76 +413,6 @@ minetest.register_on_generated(function(minp, maxp, blockseed) minetest.log('action', '[Everness] Cursed Lands Deep Ocean Island was placed at ' .. schem_pos:to_string()) end - elseif - ( - table.indexof(biomemap, biome_id_everness_coral_forest_dunes) ~= -1 - or table.indexof(biomemap, biome_id_everness_coral_forest_ocean) ~= -1 - ) - and rand:next(0, 100) < chance_sea_level - then - local schem = minetest.get_modpath('everness') .. '/schematics/everness_coral_forest_ocean_fishing_dock.mts' - - -- - -- Coral Forest Ocean Fishing Dock - -- - - local size = { x = 26, y = 10, z = 23 } - local size_x = math.round(size.x / 2) - local size_z = math.round(size.z / 2) - -- add Y displacement - local y_dis = 1 - local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) - - -- find floor big enough - local indexes = Everness.find_content_in_vm_area( - vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), - { - c_water_source, - minetest.CONTENT_AIR - }, - data, - area - ) - - if #indexes < size.x * size.z then - -- not enough space - return - end - - -- enough space to place structure ? - local space_indexes = Everness.find_content_in_vm_area( - vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), - vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), - { - c_water_source, - minetest.CONTENT_AIR - }, - data, - area - ) - - if #space_indexes > (size.x * size.y * size.z) / 2 then - minetest.place_schematic_on_vmanip( - vm, - schem_pos, - schem, - 'random', - nil, - true, - 'place_center_x, place_center_z' - ) - - schem_positions.everness_coral_forest_ocean_fishing_dock = schem_positions.everness_coral_forest_ocean_fishing_dock or {} - - table.insert(schem_positions.everness_coral_forest_ocean_fishing_dock, { - pos = schem_pos, - minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), - maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) - }) - - minetest.log('action', '[Everness] Coral Forest Ocean Fishing Dock was placed at ' .. schem_pos:to_string()) - end elseif ( table.indexof(biomemap, biome_id_everness_crystal_forest_dunes) ~= -1 @@ -918,7 +583,20 @@ minetest.register_on_generated(function(minp, maxp, blockseed) vm:update_liquids() -- Write what has been created to the world. vm:write_to_map() - minetest.fix_light(minp, maxp) + + -- after_write_to_map + -- Cannot read/write voxelmanip or its data + -- Used for direct manipulation of the world chunk nodes where the definitions of nodes are available and node callback can be executed + + -- minetest.fix_light(minp, maxp) + + for _, def in ipairs(Everness.on_generated_queue) do + if def.can_run(biomemap) and def.after_write_to_map then + shared_args[def.name] = shared_args[def.name] or {} + -- print('after_write_to_map', def.name, minp:to_string(), maxp:to_string()) + def.after_write_to_map(shared_args[def.name]) + end + end -- Populate loot chests for name, tbl in pairs(schem_positions) do diff --git a/mapgen_bamboo_forest.lua b/mapgen_bamboo_forest.lua index b8b1648..4bd5a23 100644 --- a/mapgen_bamboo_forest.lua +++ b/mapgen_bamboo_forest.lua @@ -251,81 +251,190 @@ register_flower_magenta_decoration(0.015, 0.045, 1) -- On Generated -- -local data = {} -local p2data = {} +local disp = 16 +local chance = 20 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_japanese_shrine.mts' +local c_everness_bamboo_1 = minetest.get_content_id('everness:bamboo_1') local c_everness_bamboo_3 = minetest.get_content_id('everness:bamboo_3') local c_everness_bamboo_4 = minetest.get_content_id('everness:bamboo_4') local c_everness_bamboo_5 = minetest.get_content_id('everness:bamboo_5') +local c_dirt_with_grass_1 = minetest.get_content_id('everness:dirt_with_grass_1') +local c_dirt_with_grass_extras_1 = minetest.get_content_id('everness:dirt_with_grass_extras_1') +local c_dirt_with_grass_extras_2 = minetest.get_content_id('everness:dirt_with_grass_extras_2') + +local biome_id_bamboo_forest = minetest.get_biome_id('everness:bamboo_forest') local d_everness_bamboo_forest_large_bamboo = minetest.get_decoration_id('everness:bamboo_forest_large_bamboo') minetest.set_gen_notify({ decoration = true }, { d_everness_bamboo_forest_large_bamboo }) -minetest.register_on_generated(function(minp, maxp, blockseed) - -- Load the voxelmanip with the result of engine mapgen - local vm, emin, emax = minetest.get_mapgen_object('voxelmanip') - -- 'area' is used later to get the voxelmanip indexes for positions - local area = VoxelArea:new({ MinEdge = emin, MaxEdge = emax }) - -- Get the content ID data from the voxelmanip in the form of a flat array. - -- Set the buffer parameter to use and reuse 'data' for this. - vm:get_data(data) - vm:get_param2_data(p2data) +Everness:add_to_queue_on_generated({ + name = 'everness:bamboo_forest', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_bamboo_forest) ~= -1 + end, + on_data = function(minp, maxp, area, data, p2data, gennotify, rand, shared_args) + -- + -- Bamboo + -- + for _, pos in ipairs(gennotify['decoration#' .. (d_everness_bamboo_forest_large_bamboo or '')] or {}) do + -- For bamboo large this is position of the 'place_on' node, e.g. 'everness:dirt_with_grass_extras_2' + local vi = area:indexp(pos) + local while_counter = 1 + local bamboo_height = 0 + local last_vi = vi + area.ystride * while_counter - local gennotify = minetest.get_mapgen_object('gennotify') + -- Get bamboo height + while data[last_vi] == c_everness_bamboo_3 do + last_vi = vi + area.ystride * while_counter + bamboo_height = bamboo_height + 1 + while_counter = while_counter + 1 + end - -- - -- Bamboo - -- - for _, pos in ipairs(gennotify['decoration#' .. (d_everness_bamboo_forest_large_bamboo or '')] or {}) do - -- For bamboo large this is position of the 'place_on' node, e.g. 'everness:dirt_with_grass_extras_2' - local vi = area:indexp(pos) - local while_counter = 1 - local bamboo_height = 0 - local last_vi = vi + area.ystride * while_counter + -- Back up the last from `while_counter` + last_vi = last_vi - area.ystride - -- Get bamboo height - while data[last_vi] == c_everness_bamboo_3 do - last_vi = vi + area.ystride * while_counter - bamboo_height = bamboo_height + 1 - while_counter = while_counter + 1 - end + -- Add top bamboo nodes with leaves based on their generated height + if bamboo_height > 4 then + for i = 1, 3 do + if data[last_vi + area.ystride * i] == minetest.CONTENT_AIR then + if i == 1 then + data[last_vi + area.ystride * i] = c_everness_bamboo_4 + else + data[last_vi + area.ystride * i] = c_everness_bamboo_5 + end - -- Back up the last from `while_counter` - last_vi = last_vi - area.ystride - - -- Add top bamboo nodes with leaves based on their generated height - if bamboo_height > 4 then - for i = 1, 3 do - if data[last_vi + area.ystride * i] == minetest.CONTENT_AIR then - if i == 1 then - data[last_vi + area.ystride * i] = c_everness_bamboo_4 - else - data[last_vi + area.ystride * i] = c_everness_bamboo_5 + p2data[last_vi + area.ystride * i] = p2data[vi + area.ystride] end + end + else + for i = 1, 2 do + if data[last_vi + area.ystride * i] == minetest.CONTENT_AIR then + if i == 1 then + data[last_vi + area.ystride * i] = c_everness_bamboo_4 + else + data[last_vi + area.ystride * i] = c_everness_bamboo_5 + end - p2data[last_vi + area.ystride * i] = p2data[vi + area.ystride] + p2data[last_vi + area.ystride * i] = p2data[vi + area.ystride] + end end end - else - for i = 1, 2 do - if data[last_vi + area.ystride * i] == minetest.CONTENT_AIR then - if i == 1 then - data[last_vi + area.ystride * i] = c_everness_bamboo_4 - else - data[last_vi + area.ystride * i] = c_everness_bamboo_5 - end + end + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} - p2data[last_vi + area.ystride * i] = p2data[vi + area.ystride] + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if + ( + data[vi + area.ystride] == minetest.CONTENT_AIR + or data[vi + area.ystride] == c_everness_bamboo_1 + or data[vi + area.ystride] == c_everness_bamboo_3 + ) + and ( + data[vi] == c_dirt_with_grass_1 + or data[vi] == c_dirt_with_grass_extras_1 + or data[vi] == c_dirt_with_grass_extras_2 + ) + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Japanese Shrine + -- + + local size = { x = 11, y = 19, z = 15 } + local size_x = math.round(size.x / 2) + local size_z = math.round(size.z / 2) + local schem_pos = vector.new(s_pos) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:dirt_with_grass_1' + } + ) + -- Can force over these blocks + local force_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:dirt_with_grass_extras_1', + 'everness:dirt_with_grass_extras_2', + 'group:bamboo', + 'group:flower', + 'group:leaves' + } + ) + + if #positions + #force_positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air', + 'group:bamboo', + 'group:flower', + 'group:leaves' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_japanese_shrine = shared_args.schem_positions.everness_japanese_shrine or {} + + table.insert(shared_args.schem_positions.everness_japanese_shrine, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Japanese Shrine was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end end end end end - - vm:set_data(data) - vm:set_param2_data(p2data) - -- Calculate lighting for what has been created. - vm:calc_lighting() - -- Write what has been created to the world. - vm:write_to_map() -end) +}) diff --git a/mapgen_baobab_savanna.lua b/mapgen_baobab_savanna.lua index 33605db..49a7e9c 100644 --- a/mapgen_baobab_savanna.lua +++ b/mapgen_baobab_savanna.lua @@ -172,6 +172,8 @@ register_dry_grass_decoration(0.07, -0.01, 1) -- On Generated -- +local biome_id_baobab_savanna = minetest.get_biome_id('everness:baobab_savanna') + local deco_ids_baobab = { minetest.get_decoration_id('everness:baobab_savanna_baobab_tree_1'), minetest.get_decoration_id('everness:baobab_savanna_baobab_tree_2') @@ -181,17 +183,19 @@ if #deco_ids_baobab > 1 then minetest.set_gen_notify({ decoration = true }, deco_ids_baobab) end -minetest.register_on_generated(function(minp, maxp, blockseed) - local gennotify = minetest.get_mapgen_object('gennotify') - - if maxp.y > 0 then +Everness:add_to_queue_on_generated({ + name = 'everness:baobab_savanna', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_baobab_savanna) ~= -1 + end, + on_data = function(minp, maxp, area, data, p2data, gennotify, rand) -- -- Baobab Tree - fix light -- for _, deco_id in ipairs(deco_ids_baobab) do - for _, pos in ipairs(gennotify['decoration#' .. deco_id] or {}) do + for _, pos in ipairs(gennotify['decoration#' .. (deco_id or '')] or {}) do minetest.fix_light(vector.offset(pos, -1, -1, -1), vector.offset(pos, 24, 39, 24)) end end end -end) +}) diff --git a/mapgen_coral_forest.lua b/mapgen_coral_forest.lua index f75bb96..50d4e42 100644 --- a/mapgen_coral_forest.lua +++ b/mapgen_coral_forest.lua @@ -257,14 +257,19 @@ register_coral_grass_decoration(0.03, 0.03, 1) -- local deco_id_coral_bones_tree = minetest.get_decoration_id('everness:coral_forest_coral_bones_tree') + +local biome_id_coral_forest = minetest.get_biome_id('everness:coral_forest') + local coral_bones_tree_size = { x = 16, y = 35, z = 16 } minetest.set_gen_notify({ decoration = true }, { deco_id_coral_bones_tree }) -minetest.register_on_generated(function(minp, maxp, blockseed) - local gennotify = minetest.get_mapgen_object('gennotify') - - if maxp.y > 0 then +Everness:add_to_queue_on_generated({ + name = 'everness:coral_forest', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_coral_forest) ~= -1 + end, + on_data = function(minp, maxp, area, data, p2data, gennotify, rand, shared_args) -- -- Coral bone tree - fix light -- @@ -275,4 +280,4 @@ minetest.register_on_generated(function(minp, maxp, blockseed) ) end end -end) +}) diff --git a/mapgen_coral_forest_dunes.lua b/mapgen_coral_forest_dunes.lua index 8d2f798..741fd87 100644 --- a/mapgen_coral_forest_dunes.lua +++ b/mapgen_coral_forest_dunes.lua @@ -178,3 +178,123 @@ Everness:register_decoration({ y_min = y_min, decoration = 'everness:coral_shrub' }) + +-- +-- On Generated +-- + +local disp = 16 +local chance_sea_level = 10 +local water_level = tonumber(minetest.settings:get('water_level')) or 1 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_coral_forest_ocean_fishing_dock.mts' +local size = { x = 26, y = 10, z = 23 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 1 + +local c_water_source = minetest.get_content_id('mapgen_water_source') + +local biome_id_everness_coral_forest_dunes = minetest.get_biome_id('everness:coral_forest_dunes') + +Everness:add_to_queue_on_generated({ + name = 'everness:coral_forest_dunes', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_coral_forest_dunes) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_water_source + and rand:next(0, 100) < chance_sea_level + -- Water Level + and water_level >= minp.y + and water_level <= maxp.y + then + local s_pos = area:position(vi) + + -- + -- Coral Forest Ocean Fishing Dock + -- + + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local indexes = Everness.find_content_in_vm_area( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + c_water_source, + minetest.CONTENT_AIR + }, + data, + area + ) + + if #indexes < size.x * size.z then + -- not enough space + return + end + + -- enough space to place structure ? + local space_indexes = Everness.find_content_in_vm_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + c_water_source, + minetest.CONTENT_AIR + }, + data, + area + ) + + if #space_indexes > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock = shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock or {} + + table.insert(shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Coral Forest Ocean Fishing Dock was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_coral_forest_ocean.lua b/mapgen_coral_forest_ocean.lua index 510b16b..da59fcb 100644 --- a/mapgen_coral_forest_ocean.lua +++ b/mapgen_coral_forest_ocean.lua @@ -159,3 +159,123 @@ Everness:register_decoration({ 'everness:coral_skeleton' }, }) + +-- +-- On Generated +-- + +local disp = 16 +local chance_sea_level = 10 +local water_level = tonumber(minetest.settings:get('water_level')) or 1 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_coral_forest_ocean_fishing_dock.mts' +local size = { x = 26, y = 10, z = 23 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 1 + +local c_water_source = minetest.get_content_id('mapgen_water_source') + +local biome_id_everness_coral_forest_ocean = minetest.get_biome_id('everness:coral_forest_ocean') + +Everness:add_to_queue_on_generated({ + name = 'everness:coral_forest_ocean', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_coral_forest_ocean) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_water_source + and rand:next(0, 100) < chance_sea_level + -- Water Level + and water_level >= minp.y + and water_level <= maxp.y + then + local s_pos = area:position(vi) + + -- + -- Coral Forest Ocean Fishing Dock + -- + + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local indexes = Everness.find_content_in_vm_area( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + c_water_source, + minetest.CONTENT_AIR + }, + data, + area + ) + + if #indexes < size.x * size.z then + -- not enough space + return + end + + -- enough space to place structure ? + local space_indexes = Everness.find_content_in_vm_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + c_water_source, + minetest.CONTENT_AIR + }, + data, + area + ) + + if #space_indexes > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock = shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock or {} + + table.insert(shared_args.schem_positions.everness_coral_forest_ocean_fishing_dock, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Coral Forest Ocean Fishing Dock was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_crystal_forest.lua b/mapgen_crystal_forest.lua index ff8d238..cf55d5c 100644 --- a/mapgen_crystal_forest.lua +++ b/mapgen_crystal_forest.lua @@ -223,3 +223,114 @@ end register_crystal_grass_decoration(-0.03, 0.09, 3) register_crystal_grass_decoration(-0.015, 0.075, 2) register_crystal_grass_decoration(0, 0.06, 1) + +-- +-- On Generated +-- + +local chance = 20 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_quartz_temple.mts' +local size = { x = 16, y = 13, z = 16 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 1 + +local c_dirt_with_crystal_grass = minetest.get_content_id('everness:dirt_with_crystal_grass') + +local biome_id_everness_crystal_forest = minetest.get_biome_id('everness:crystal_forest') + +Everness:add_to_queue_on_generated({ + name = 'everness:crystal_forest', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_crystal_forest) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_dirt_with_crystal_grass + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Quartz Temple + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:dirt_with_crystal_grass' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_quartz_temple = shared_args.schem_positions.everness_quartz_temple or {} + + table.insert(shared_args.schem_positions.everness_quartz_temple, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Quartz Temple was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_crystal_forest_dunes.lua b/mapgen_crystal_forest_dunes.lua index 79b46fd..17bc962 100644 --- a/mapgen_crystal_forest_dunes.lua +++ b/mapgen_crystal_forest_dunes.lua @@ -139,3 +139,122 @@ Everness:register_decoration({ flags = 'place_center_x, place_center_z', rotation = 'random', }) + +-- +-- On Generated +-- + +local chance = 20 +local disp = 16 +local schem = minetest.read_schematic(minetest.get_modpath('everness') .. '/schematics/everness_quartz_fountain.mts', {}) +local size = { x = 11, y = 10, z = 11 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 1 + +local c_crystal_sand = minetest.get_content_id('everness:crystal_sand') + +local biome_id_everness_crystal_forest_dunes = minetest.get_biome_id('everness:crystal_forest_dunes') + +Everness:add_to_queue_on_generated({ + name = 'everness:crystal_forest_dunes', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_crystal_forest_dunes) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_crystal_sand + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Quartz Fountain + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:crystal_sand' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + local replacements + + if rand:next(0, 100) < 50 then + replacements = { + ['everness:chest'] = 'everness:quartz_pillar' + } + end + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + replacements, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_quartz_fountain = shared_args.schem_positions.everness_quartz_fountain or {} + + table.insert(shared_args.schem_positions.everness_quartz_fountain, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Quartz Fountain was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_cursed_lands.lua b/mapgen_cursed_lands.lua index d8bc9a7..6f60aa1 100644 --- a/mapgen_cursed_lands.lua +++ b/mapgen_cursed_lands.lua @@ -311,3 +311,114 @@ Everness:register_decoration({ schematic = minetest.get_modpath('everness') .. '/schematics/everness_cursed_bush.mts', flags = 'place_center_x, place_center_z', }) + +-- +-- On Generated +-- + +local chance = 20 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_haunted_house.mts' +local size = { x = 11, y = 22, z = 10 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 1 + +local c_dirt_with_cursed_grass = minetest.get_content_id('everness:dirt_with_cursed_grass') + +local biome_id_everness_cursed_lands = minetest.get_biome_id('everness:cursed_lands') + +Everness:add_to_queue_on_generated({ + name = 'everness:cursed_lands', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_cursed_lands) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_dirt_with_cursed_grass + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Haunted House + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:dirt_with_cursed_grass' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_haunted_house = shared_args.schem_positions.everness_haunted_house or {} + + table.insert(shared_args.schem_positions.everness_haunted_house, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Haunted House was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_cursed_lands_dunes.lua b/mapgen_cursed_lands_dunes.lua index f6a2610..6728169 100644 --- a/mapgen_cursed_lands_dunes.lua +++ b/mapgen_cursed_lands_dunes.lua @@ -161,3 +161,113 @@ Everness:register_decoration({ flags = 'place_center_x, place_center_z', rotation = 'random', }) + +-- +-- On Generated +-- + +local chance = 30 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_cursed_cabin.mts' +local size = { x = 7, y = 7, z = 12 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) + +local c_cursed_sand = minetest.get_content_id('everness:cursed_sand') + +local biome_id_everness_cursed_lands_dunes = minetest.get_biome_id('everness:cursed_lands_dunes') + +Everness:add_to_queue_on_generated({ + name = 'everness:cursed_lands_dunes', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_cursed_lands_dunes) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_cursed_sand + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Cursed Cabin + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:cursed_sand' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_cursed_cabin = shared_args.schem_positions.everness_cursed_cabin or {} + + table.insert(shared_args.schem_positions.everness_cursed_cabin, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Cursed Cabin was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_cursed_lands_swamp.lua b/mapgen_cursed_lands_swamp.lua index b8439ac..e25aeb6 100644 --- a/mapgen_cursed_lands_swamp.lua +++ b/mapgen_cursed_lands_swamp.lua @@ -177,3 +177,117 @@ Everness:register_decoration({ y_min = y_max, schematic = minetest.get_modpath('everness') .. '/schematics/everness_marsh_grass.mts', }) + +-- +-- On Generated +-- + +local chance = 30 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_cursed_cabin.mts' +local size = { x = 7, y = 7, z = 12 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = -1 + +local c_cursed_stone = minetest.get_content_id('everness:cursed_stone') +local c_water_source = minetest.get_content_id('mapgen_water_source') + +local biome_id_everness_cursed_lands_swamp = minetest.get_biome_id('everness:cursed_lands_swamp') + +Everness:add_to_queue_on_generated({ + name = 'everness:cursed_lands_swamp', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_cursed_lands_swamp) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == c_water_source + and data[vi] == c_cursed_stone + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Cursed Cabin + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:cursed_stone', + 'mapgen_water_source' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air', + 'mapgen_water_source' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_cursed_cabin = shared_args.schem_positions.everness_cursed_cabin or {} + + table.insert(shared_args.schem_positions.everness_cursed_cabin, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Cursed Cabin was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_forsaken_desert.lua b/mapgen_forsaken_desert.lua index 7e7c3d7..87ecde8 100644 --- a/mapgen_forsaken_desert.lua +++ b/mapgen_forsaken_desert.lua @@ -193,3 +193,112 @@ Everness:register_decoration({ flags = 'place_center_x, place_center_z', rotation = 'random', }) + +-- +-- On Generated +-- + +local chance = 20 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_forsaken_desert_temple.mts' +local size = { x = 9, y = 16, z = 9 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) + +local c_forsaken_desert_sand = minetest.get_content_id('everness:forsaken_desert_sand') + +local biome_id_everness_forsaken_desert = minetest.get_biome_id('everness:forsaken_desert') + +Everness:add_to_queue_on_generated({ + name = 'everness:forsaken_desert', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_forsaken_desert) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_forsaken_desert_sand + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Forsaken Desert Temple + -- + + local schem_pos = vector.new(s_pos.x, s_pos.y, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:forsaken_desert_sand' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_forsaken_desert_temple = shared_args.schem_positions.everness_forsaken_desert_temple or {} + + table.insert(shared_args.schem_positions.everness_forsaken_desert_temple, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Forsaken Desert Temple was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_forsaken_desert_ocean.lua b/mapgen_forsaken_desert_ocean.lua index d19fab3..9154138 100644 --- a/mapgen_forsaken_desert_ocean.lua +++ b/mapgen_forsaken_desert_ocean.lua @@ -44,6 +44,113 @@ Everness:register_biome({ humidity_point = 30, }) + -- --- Register decorations +-- On Generated -- + +local chance = 20 +local disp = 16 +local schem = minetest.get_modpath('everness') .. '/schematics/everness_forsaken_desert_temple_3.mts' +local size = { x = 11, y = 13, z = 13 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = -1 + +local c_dry_ocean_dirt = minetest.get_content_id('everness:dry_ocean_dirt') + +local biome_id_everness_forsaken_desert_ocean = minetest.get_biome_id('everness:forsaken_desert_ocean') + +Everness:add_to_queue_on_generated({ + name = 'everness:forsaken_desert_ocean', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_forsaken_desert_ocean) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and data[vi] == c_dry_ocean_dirt + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Forsaken Desert Temple 3 + -- + + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:dry_ocean_dirt' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_forsaken_desert_temple_3 = shared_args.schem_positions.everness_forsaken_desert_temple_3 or {} + + table.insert(shared_args.schem_positions.everness_forsaken_desert_temple_3, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Forsaken Desert Temple 3 was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_frosted_icesheet.lua b/mapgen_frosted_icesheet.lua index 50b54f3..6e3c118 100644 --- a/mapgen_frosted_icesheet.lua +++ b/mapgen_frosted_icesheet.lua @@ -120,3 +120,119 @@ Everness:register_decoration({ spawn_by = 'everness:frosted_snowblock', num_spawn_by = 8, }) + +-- +-- On Generated +-- + +local chance = 20 +local disp = 16 +local schem = minetest.read_schematic(minetest.get_modpath('everness') .. '/schematics/everness_frosted_icesheet_igloo.mts', {}) +local size = { x = 16, y = 13, z = 16 } +local size_x = math.round(size.x / 2) +local size_z = math.round(size.z / 2) +local y_dis = 8 + +local c_frosted_snowblock = minetest.get_content_id('everness:frosted_snowblock') +local c_frosted_ice = minetest.get_content_id('everness:frosted_ice') + +local biome_id_everness_frosted_icesheet = minetest.get_biome_id('everness:frosted_icesheet') + +Everness:add_to_queue_on_generated({ + name = 'everness:frosted_icesheet', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_frosted_icesheet) ~= -1 + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) + local sidelength = maxp.x - minp.x + 1 + local x_disp = rand:next(0, disp) + local z_disp = rand:next(0, disp) + shared_args.schem_positions = {} + + for y = minp.y, maxp.y do + local vi = area:index(minp.x + sidelength / 2 + x_disp, y, minp.z + sidelength / 2 + z_disp) + + if data[vi + area.ystride] == minetest.CONTENT_AIR + and ( + data[vi] == c_frosted_snowblock + or data[vi] == c_frosted_ice + ) + and rand:next(0, 100) < chance + then + local s_pos = area:position(vi) + + -- + -- Igloo + -- + + -- add Y displacement + local schem_pos = vector.new(s_pos.x, s_pos.y - y_dis, s_pos.z) + + -- find floor big enough + local positions = minetest.find_nodes_in_area_under_air( + vector.new(s_pos.x - size_x, s_pos.y - 1, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + 1, s_pos.z + size_z), + { + 'everness:frosted_snowblock', + 'everness:frosted_ice' + } + ) + + if #positions < size.x * size.z then + -- not enough space + return + end + + -- enough air to place structure ? + local air_positions = minetest.find_nodes_in_area( + vector.new(s_pos.x - size_x, s_pos.y, s_pos.z - size_z), + vector.new(s_pos.x + size_x, s_pos.y + size.y, s_pos.z + size_z), + { + 'air' + } + ) + + if #air_positions > (size.x * size.y * size.z) / 2 then + minetest.place_schematic_on_vmanip( + vm, + schem_pos, + schem, + 'random', + nil, + true, + 'place_center_x, place_center_z' + ) + + shared_args.schem_positions.everness_frosted_icesheet_igloo = shared_args.schem_positions.everness_frosted_icesheet_igloo or {} + + table.insert(shared_args.schem_positions.everness_frosted_icesheet_igloo, { + pos = schem_pos, + minp = vector.new(s_pos.x - size_x, s_pos.y - y_dis, s_pos.z - size_z), + maxp = vector.new(s_pos.x + size_x, s_pos.y - y_dis + size.y, s_pos.z + size_z) + }) + + minetest.log('action', '[Everness] Igloo was placed at ' .. schem_pos:to_string()) + end + end + end + end, + after_write_to_map = function(shared_args) + local schem_positions = shared_args.schem_positions or {} + + for name, tbl in pairs(schem_positions) do + if next(tbl) then + for i, v in ipairs(tbl) do + local chest_positions = minetest.find_nodes_in_area( + v.minp, + v.maxp, + { 'everness:chest' } + ) + + if #chest_positions > 0 then + Everness:populate_loot_chests(chest_positions) + end + end + end + end + end +}) diff --git a/mapgen_mineral_waters.lua b/mapgen_mineral_waters.lua index 8f0e7f4..b3a0905 100644 --- a/mapgen_mineral_waters.lua +++ b/mapgen_mineral_waters.lua @@ -294,11 +294,6 @@ local function place_decoration(pos, vm, area, data, deco_id, callback) end end --- Localize data buffer table outside the loop, to be re-used for all --- mapchunks, therefore minimising memory use -local data = {} -local p2data = {} - minetest.set_gen_notify({ decoration = true }, { d_everness_palm_trees, d_everness_water_geyser, @@ -307,28 +302,14 @@ minetest.set_gen_notify({ decoration = true }, { }) -- Called after generating a piece of world. Modifying nodes inside the area is a bit faster than usual. -minetest.register_on_generated(function(minp, maxp, blockseed) - -- Start time of mapchunk generation. - -- local t0 = os.clock() - -- Returns an array containing the biome IDs of nodes in the most recently generated chunk by the current mapgen - local biomemap = minetest.get_mapgen_object('biomemap') - local chest_positions = {} - - -- Above sea level - if maxp.y >= y_min and table.indexof(biomemap, biome_id_everness_mineral_waters) ~= -1 then - local rand = PcgRandom(blockseed) +Everness:add_to_queue_on_generated({ + name = 'everness:mineral_waters', + can_run = function(biomemap) + return table.indexof(biomemap, biome_id_everness_mineral_waters) ~= -1 + end, + on_data = function(minp, maxp, area, data, p2data, gennotify, rand, shared_args) local rand_version = rand:next(1, 2) - -- Load the voxelmanip with the result of engine mapgen - local vm, emin, emax = minetest.get_mapgen_object('voxelmanip') - -- Returns a table mapping requested generation notification types to arrays of positions at which the corresponding generated structures are located within the current chunk - local gennotify = minetest.get_mapgen_object('gennotify') - -- 'area' is used later to get the voxelmanip indexes for positions - local area = VoxelArea:new({ MinEdge = emin, MaxEdge = emax }) - -- Get the content ID data from the voxelmanip in the form of a flat array. - -- Set the buffer parameter to use and reuse 'data' for this. - vm:get_data(data) - vm:get_param2_data(p2data) - + local chest_positions = {} local pot_pos = {} if rand_version == 1 then @@ -564,6 +545,7 @@ minetest.register_on_generated(function(minp, maxp, blockseed) end -- Place decorations after generating (2nd pass) + -- luacheck: ignore 512 for y = minp.y, maxp.y do for z = minp.z, maxp.z do for x = minp.x, maxp.x do @@ -721,12 +703,15 @@ minetest.register_on_generated(function(minp, maxp, blockseed) end end - vm:set_data(data) - vm:set_param2_data(p2data) - + -- Set `shared_args` + shared_args.chest_positions = chest_positions + shared_args.pot_pos = pot_pos + end, + after_set_data = function(minp, maxp, vm, area, data, p2data, gennotify, rand, shared_args) -- -- Place Decorations -- + local pot_pos = shared_args.pot_pos or {} -- -- Palm Trees @@ -820,25 +805,14 @@ minetest.register_on_generated(function(minp, maxp, blockseed) inv:set_stack('main', 1, stack) end end - - -- Set the lighting within the `VoxelManip` to a uniform value - vm:set_lighting({ day = 0, night = 0 }, minp, maxp) - -- Calculate lighting for what has been created. - vm:calc_lighting() - -- Liquid nodes were placed so set them flowing. - vm:update_liquids() - -- Write what has been created to the world. - vm:write_to_map() - + end, + after_write_to_map = function(shared_args) -- Populate loot chest inventory + local chest_positions = shared_args.chest_positions or {} local chest_def = minetest.registered_nodes['everness:chest'] if chest_def and next(chest_positions) then Everness:populate_loot_chests(chest_positions) end end - - -- Print generation time of this mapchunk. - -- local chugent = math.ceil((os.clock() - t0) * 1000) - -- print('[lvm_example] Mapchunk generation time ' .. chugent .. ' ms') -end) +}) diff --git a/schematics/everness_cursed_cabin.mts b/schematics/everness_cursed_cabin.mts new file mode 100644 index 0000000000000000000000000000000000000000..cf445ad028da3564d7feef59317fbf3e486b73a6 GIT binary patch literal 825 zcmeYb3HD`RVPFSBo_Yvi5N2Rb%q(J1EiM64#a3V{KDo50I5j0csVFl!JH9-#BqKh( zD8IZUgF!yEEVU>vwYb;{s-!qEFQvF7KQA>tDJMTUn?V_yIp~U12$&LIo|u!vAP!fR zmYSEG8lO^B8DE~CpTZyomnhCI&B=i{Fd68OoKyxSxLiq5VnIrNei6(wAg%HF1*v%q zf^an;BTI@>QyHWYLg-o&(bR*TzymV5*eWA4B?V}pD2k`yhKf}bBm%<<7F0=zMe%7l zi6smoFy%RkNnl@roq#WBLGi#Kif|*)*-1r-dC3{6#SDTescDI&IVDy}`T5z!8L2sG z4192vAQdGQbG8O|mo+Q!@LmdiUQ%jZTf;a1*m`~b1s8+3Z*#P_D42&kFE?D zA;MyT-2&ChX60APQBDHO{I%CAuJM_c$Z_#x)V23-B73Y4aL8M*$4Gy3`^I7WFzc9Q ztH@mS$LUc@@J2$z&mAw|8Ouk#a3zgMa7BPsd@1!sl};9CGkl`naSA< z@;K#_^OKTtQW=;NGm99si%Wo1u@#t#M>i=sBeOU)Cp9I$xFkO>l|c!okzgz1i&9e< z)N!gw%}XyzEQ1>+23MGynU`9Wm=j-;UzD7|papYLPGS-v2l2tpNX|$tE@4oH=>>TT zQ#07#6?5K3corQ|;1QW;`aR{7jQ!bo|3tB^4m}5}wI-hGTeH#ivWa(V2hYya_j>nB z%YR<~ZRhQq`lpWG;Q0~8!BMeriSLnwwToBpw-TJa(Qn1|$}MVcKiJYV)3)vs-<4YD z>6V{e7GQa+RpZTXA>DAtuZEw`=&aP0st}KUTN7RGP$hr+u-BckjNVPVyl)yV(wp_< zc;<7q`}Y==b;w<0w*O{*PADaC=ew6$o7A%0leXSESuLkE`NT;x4vYN4lRU8gn~4`b$CJ2%B^OX1bu!OLamom~6IXTATh#ZTH4?DMc@LDMuf>m|I-A>!QV^-)T2if3iLO_Ev|}JRyVE``lz7 zbbQ!V+-A%DUA4CD<2=*Sdk<&$+ey5>`Rj9^jQ7cBzvj*FD>OS9TdU2Zdi~s~j{fKW zu6cYheU#DqW?8#rs6|hQC=9l3s;j&kSQ*WHi zy4oUIyZHM7EiIE4txZOAWNxe~(CQL>$n*N}&7Qf5BB}pxZ@t`q@t3i7m6Y7(cL4(7 zQv23#D+&EJVM+ntoX|BFnioGYs`#Xw{N!u~33TD) zjLhQHoYWKs(UjD*#L}D+tMbH>)S~#boc!|4ymSW1;u4^7#a3V{9>pv%bh8RFb8-@k z82I4g$r-7|B@7~{CKuVE5VPumpF zq750#Jh@yCbGbjB>2xw6$mU3I`lY2QSw~VdWp}Q&()LH4hZrH|Nyb`mW#2E#XspKKgn2$=*dhoAb@s z+)o}@F1&VfVEI(0|EFtG!a|PysCt|o-T7qMyYE)}HoFyh-??@8RL_oOj8j7xj?1(} zcD{MFN3)?}>FiE!nOT{;F6V5kUy;;3Uz%-B^la0OD>7ns{ZqG|zx`PiGt;9WV*oum B(jfo< literal 0 HcmV?d00001 diff --git a/stairs.lua b/stairs.lua index a920d75..496e08e 100644 --- a/stairs.lua +++ b/stairs.lua @@ -71,6 +71,45 @@ stairs.register_stair_and_slab( true ) +stairs.register_stair_and_slab( + 'cursed_sandstone_block', + 'everness:cursed_sandstone_block', + { cracky = 2 }, + { 'everness_cursed_sandstone_block.png' }, + 'Cursed Sandstone Block Stair', + 'Cursed Sandstone Block Slab', + Everness.node_sound_stone_defaults(), + true +) + +stairs.register_stair_and_slab( + 'cursed_sandstone_brick', + 'everness:cursed_sandstone_brick', + { cracky = 2 }, + { 'everness_cursed_sandstone_brick.png' }, + 'Cursed Sandstone Brick Stair', + 'Cursed Sandstone Brick Slab', + Everness.node_sound_stone_defaults(), + true +) + +stairs.register_stair_and_slab( + 'cursed_stone_carved', + 'everness:cursed_stone_carved', + { cracky = 2 }, + { + { + name = 'everness_cursed_stone_carved.png', + align_style = 'world', + scale = 2 + } + }, + 'Cursed Stone Carved Stair', + 'Cursed Stone Carved Slab', + Everness.node_sound_stone_defaults(), + true +) + -- Quartz stairs.register_stair_and_slab( @@ -131,6 +170,17 @@ stairs.register_stair_and_slab( true ) +stairs.register_stair_and_slab( + 'dry_tree', + 'everness:dry_tree', + { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + { 'everness_dry_tree_top.png', 'everness_dry_tree_top.png', 'everness_dry_tree.png' }, + S('Dry Tree Trunk Stair'), + S('Dry Tree Trunk Slab'), + Everness.node_sound_wood_defaults(), + true +) + -- Coral Wood stairs.register_stair_and_slab( @@ -203,6 +253,39 @@ stairs.register_stair_and_slab( true ) +stairs.register_stair_and_slab( + 'forsaken_desert_engraved_stone', + 'everness:forsaken_desert_engraved_stone', + { cracky = 2, stone = 1 }, + { 'everness_forsaken_desert_engraved_stone.png' }, + S('Forsaken Desert Engraved Stone Stair'), + S('Forsaken Desert Engraved Stone Slab'), + Everness.node_sound_stone_defaults(), + true +) + +stairs.register_stair_and_slab( + 'forsaken_desert_cobble', + 'everness:forsaken_desert_cobble', + { cracky = 2, stone = 1 }, + { 'everness_forsaken_desert_cobble.png' }, + S('Forsaken Desert Cobblestone Stair'), + S('Forsaken Desert Cobblestone Slab'), + Everness.node_sound_stone_defaults(), + true +) + +stairs.register_stair_and_slab( + 'forsaken_desert_cobble_red', + 'everness:forsaken_desert_cobble_red', + { cracky = 2, stone = 1 }, + { 'everness_forsaken_desert_cobble_red.png' }, + S('Forsaken Desert Cobblestone Red Stair'), + S('Forsaken Desert Cobblestone Red Slab'), + Everness.node_sound_stone_defaults(), + true +) + -- Baobab Wood stairs.register_stair_and_slab( diff --git a/walls.lua b/walls.lua index 99e5f1a..6fcde39 100644 --- a/walls.lua +++ b/walls.lua @@ -163,3 +163,85 @@ walls.register( 'everness:crystal_mossy_cobble', Everness.node_sound_stone_defaults() ) + +walls.register( + 'everness:cursed_sandstone_brick_wall', + S('Cursed Sandstone Brick Wall'), + { 'everness_cursed_sandstone_brick.png' }, + 'everness:cursed_sandstone_brick', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:cursed_sandstone_block_wall', + S('Cursed Sandstone Block Wall'), + { 'everness_cursed_sandstone_block.png' }, + 'everness:cursed_sandstone_block', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:cursed_stone_carved_wall', + S('Cursed Stone Carved Wall'), + { + { + name = 'everness_cursed_stone_carved.png', + align_style = 'world', + scale = 2 + } + }, + 'everness:cursed_stone_carved', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_cobble_wall', + S('Forsaken Desert Cobblestone Wall'), + { 'everness_forsaken_desert_cobble.png' }, + 'everness:forsaken_desert_cobble', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_cobble_red_wall', + S('Forsaken Desert Cobblestone Red Wall'), + { 'everness_forsaken_desert_cobble_red.png' }, + 'everness:forsaken_desert_cobble_red', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_brick_wall', + S('Forsaken Desert Brick Wall'), + { 'everness_forsaken_desert_brick.png' }, + 'everness:forsaken_desert_brick', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_brick_red_wall', + S('Forsaken Desert Brick Red Wall'), + { 'everness_forsaken_desert_brick_red.png' }, + 'everness:forsaken_desert_brick_red', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_chiseled_stone_wall', + S('Forsaken Desert Chiseled Stone'), + { + 'everness_forsaken_desert_chiseled_stone_top.png', + 'everness_forsaken_desert_chiseled_stone_bottom.png', + 'everness_forsaken_desert_chiseled_stone_side.png' + }, + 'everness:forsaken_desert_chiseled_stone', + Everness.node_sound_stone_defaults() +) + +walls.register( + 'everness:forsaken_desert_engraved_stone_wall', + S('Forsaken Desert Engraved Stone Wall'), + { 'everness_forsaken_desert_engraved_stone.png' }, + 'everness:forsaken_desert_engraved_stone', + Everness.node_sound_stone_defaults() +)