on enable: access "readconfig" stop command /loch []: trigger: if sender is console: send "Nope. Sam sobie je dodaj (y)" to console if sender is player: if player has permission "dungeons.admin": if arg-1 is not set: send "&7Poprawne uzycie: &9/loch pomoc" stop if arg-1 is "pomoc": send "&9/loch tower &7- tworzy wieze w wyznaczonym miejscu" send "&9/loch farm &7- tworzy farme w wyznaczonym miejscu" send "&9/loch odswiez &7- odswieza zmienne konfiguracyjne" send "&9/loch biom &7- sprawdz nazwe biomu" stop if arg-1 is "biom": set {_x} to biome at player's location set {_y} to biome at location of targeted block send "&7Znajdujesz sie na biomie &9%{_x}%" send "&7Patrzysz na biom &9%{_y}%" if arg-1 is "farm": set {center} to location of targeted block set {_chunk} to chunk at {center} set {_biome} to biome at {center} if {dungeons.farm.log.advanced} is true: if {dungeons.farm.log.file} is true: wf "[%now%] FARM GENERATED: %{center}% [chunk: %{_chunk}%] at biome %{_biome}% built with %{dungeons.farm.fence.block}% as fence around farm. Crops of %{dungeons.farm.crops.types::*}% has been planted. Cellar (%{dungeons.farm.cellar.enabled}%)." to "plugins/Skript/scripts/Dungeons/logs/farm.txt" if {dungeons.farm.log.console} is true: send "&f[&7%now%&f] FARM GENERATED: &7%{center}% &f[chunk: &7%{_chunk}%&f] at biome &7%{_biome}% &fbuilt with &7%{dungeons.farm.fence.block}% &fas fence around farm. Crops of &7%{dungeons.farm.crops.types::*}% &fhas been planted. Cellar (&7%{dungeons.farm.cellar.enabled}%&f)." to console if {dungeons.farm.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] FARM GENERATED: &7%{center}% &f[chunk: &7%{_chunk}%&f] at biome &7%{_biome}% &fbuilt with &7%{dungeons.farm.fence.block}% &fas fence around farm. Crops of &7%{dungeons.farm.crops.types::*}% &fhas been planted. Cellar (&7%{dungeons.farm.cellar.enabled}%&f)." to loop-player else: if {dungeons.farm.log.file} is true: wf "[%now%] FARM GENERATED: %{center}%" to "plugins/Skript/scripts/Dungeons/logs/farm.txt" if {dungeons.farm.log.console} is true: send "&f[&7%now%&f] FARM GENERATED: &7%{center}%" to console if {dungeons.farm.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] FARM GENERATED: &7%{center}%" to loop-player access "farm" stop if arg-1 is "tower": set {center} to location of targeted block set {_chunk} to chunk at {center} set {_biome} to biome at {center} if {dungeons.tower.log.advanced} is true: if {dungeons.tower.log.file} is true: wf "[%now%] TOWER GENERATED: %{center}% [chunk: %{_chunk}%] at biome %{_biome}% built with %{dungeons.tower.blocks.wallblocks::*}% as walls and %{dungeons.tower.blocks.floorblocks::*}% as floor. Cellar (%{dungeons.tower.cellar}%), lantern (%{dungeons.tower.fancy.lantern.enabled}%), crown (%{dungeons.tower.fancy.crown.enabled}%), gate (%{dungeons.tower.fancy.gate.enabled}%), decorative wall block (%{dungeons.tower.blocks.specialblock.enabled}%). Chests has been equipped with %{dungeons.tower.chest.chestloot::*}%." to "plugins/Skript/scripts/Dungeons/logs/tower.txt" if {dungeons.tower.log.console} is true: send "&f[&7%now%&f] TOWER GENERATED: &7%{center}% &f[chunk: &7%{_chunk}%&f] at biome &7%{_biome}%&f built with &7%{dungeons.tower.blocks.wallblocks::*}% &fas walls and &7%{dungeons.tower.blocks.floorblocks::*}% &fas floor. Cellar (&7%{dungeons.tower.cellar}%&f), lantern (&7%{dungeons.tower.fancy.lantern.enabled}%&f), crown (&7%{dungeons.tower.fancy.crown.enabled}%&f), gate (&7%{dungeons.tower.fancy.gate.enabled}%&f), decorative wall block (&7%{dungeons.tower.blocks.specialblock.enabled}%&f). Chests has been equipped with &7%{dungeons.tower.chest.chestloot::*}%&f." to console if {dungeons.tower.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] TOWER GENERATED: &7%{center}% &f[chunk: &7%{_chunk}%&f] at biome &7%{_biome}%&f built with &7%{dungeons.tower.blocks.wallblocks::*}% &fas walls and &7%{dungeons.tower.blocks.floorblocks::*}% &fas floor. Cellar (&7%{dungeons.tower.cellar}%&f), lantern (&7%{dungeons.tower.fancy.lantern.enabled}%&f), crown (&7%{dungeons.tower.fancy.crown.enabled}%&f), gate (&7%{dungeons.tower.fancy.gate.enabled}%&f), decorative wall block (&7%{dungeons.tower.blocks.specialblock.enabled}%&f). Chests has been equipped with &7%{dungeons.tower.chest.chestloot::*}%&f." to loop-player else: if {dungeons.tower.log.file} is true: wf "[%now%] TOWER GENERATED: %{center}%" to "plugins/Skript/scripts/Dungeons/logs/tower.txt" if {dungeons.tower.log.console} is true: send "&f[&7%now%&f] TOWER GENERATED: &7%{center}%" to console if {dungeons.tower.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] TOWER GENERATED: &7%{center}%" to loop-player access "tower" stop if arg-1 is "odswiez": send "&7Zmienne odswiezone!" access "readconfig" stop else: send "&cBRAK POZWOLEN" stop send "&7Poprawne uzycie: &9/loch pomoc" stop function "readconfig": # Lista struktur clear {dungeons.structurelist::*} add "farm" and "tower" to {dungeons.structurelist::*} # Zmienna dla kierunków clear {anemonex.dirs::*} add "north" and "south" and "east" and "west" to {anemonex.dirs::*} # TOWER: biomy set {dungeons.tower.biome.enabled} to value "tower.biome.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.biome.allowed::*} to value list "tower.biome.allowed" get of "plugins/Skript/scripts/Dungeons/config.yml" # TOWER: potwory set {dungeons.tower.mob.spawnchance} to value "tower.mob.spawnchance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.mob.type} to value "tower.mob.type" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.mob.guardian} to value "tower.mob.guardian" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.mob.name} to coloured value "tower.mob.name" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as string set {dungeons.tower.mob.items.helmet} to value "tower.mob.items.helmet" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.mob.items.chestplate} to value "tower.mob.items.chestplate" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.mob.items.leggings} to value "tower.mob.items.leggings" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.mob.items.boots} to value "tower.mob.items.boots" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.mob.items.hand} to value "tower.mob.items.hand" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item # TOWER: bloki set {dungeons.tower.blocks.specialblock.enabled} to value "tower.blocks.specialblock.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.blocks.specialblock.type} to value "tower.blocks.specialblock.type" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.blocks.wallblocks::*} to value list "tower.blocks.wallblocks" get of "plugins/Skript/scripts/Dungeons/config.yml" set {dungeons.tower.blocks.floorblocks::*} to value list "tower.blocks.floorblocks" get of "plugins/Skript/scripts/Dungeons/config.yml" set {dungeons.tower.blocks.destroyedwall} to value "tower.blocks.destroyedwall" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.blocks.destroyedfloor} to value "tower.blocks.destroyedfloor" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # TOWER: skrzynki set {dungeons.tower.chest.chestchance} to value "tower.chest.chestchance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.chest.chestloot::*} to value list "tower.chest.chestloot" get of "plugins/Skript/scripts/Dungeons/config.yml" set {dungeons.tower.chest.chestminitems} to value "tower.chest.chestminitems" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.chest.chestmaxitems} to value "tower.chest.chestmaxitems" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # TOWER: generator set {dungeons.tower.generator.chance} to value "tower.generator.chance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.generator.height.min} to value "tower.generator.height.min" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.generator.height.max} to value "tower.generator.height.max" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # TOWER: podstawy set {dungeons.tower.floors} to value "tower.floors" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.cellar} to value "tower.cellar" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean # TOWER: logi set {dungeons.tower.log.advanced} to value "tower.log.advanced" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.log.file} to value "tower.log.file" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.log.console} to value "tower.log.console" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.log.op} to value "tower.log.op" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean # TOWER: dekoracje > latarnia set {dungeons.tower.fancy.lantern.enabled} to value "tower.fancy.lantern.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.fancy.lantern.blocks.topblock} to value "tower.fancy.lantern.blocks.topblock" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.lantern.blocks.hiddenblock} to value "tower.fancy.lantern.blocks.hiddenblock" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.lantern.blocks.slab} to value "tower.fancy.lantern.blocks.slab" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.lantern.blocks.regular} to value "tower.fancy.lantern.blocks.regular" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.lantern.blocks.decorative} to value "tower.fancy.lantern.blocks.decorative" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.lantern.blocks.stairs} to value "tower.fancy.lantern.blocks.stairs" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as string # TOWER: dekoracje > korona set {dungeons.tower.fancy.crown.enabled} to value "tower.fancy.crown.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.fancy.crown.block} to value "tower.fancy.crown.block" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item # TOWER: dekoracje > brama set {dungeons.tower.fancy.gate.enabled} to value "tower.fancy.gate.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.tower.fancy.gate.direction} to value "tower.fancy.gate.direction" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.fancy.gate.length} to value "tower.fancy.gate.length" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.tower.fancy.gate.blocks.top} to value "tower.fancy.gate.blocks.top" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.gate.blocks.decorative} to value "tower.fancy.gate.blocks.decorative" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.tower.fancy.gate.blocks.stairs} to value "tower.fancy.gate.blocks.stairs" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item # FARM: płot set {dungeons.farm.fence.block} to value "farm.fence.block" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as item set {dungeons.farm.fence.chance} to value "farm.fence.chance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # FARM: piwnice set {dungeons.farm.cellar.enabled} to value "farm.cellar.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.farm.cellar.height} to value "farm.cellar.height" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # FARM: nasiona set {dungeons.farm.crops.chance} to value "farm.crops.chance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.farm.crops.types::*} to value list "farm.crops.types" get of "plugins/Skript/scripts/Dungeons/config.yml" # FARM: biomy set {dungeons.farm.biome.enabled} to value "farm.biome.enabled" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.farm.biome.allowed::*} to value list "farm.biome.allowed" get of "plugins/Skript/scripts/Dungeons/config.yml" # FARM: generator set {dungeons.farm.generator.chance} to value "farm.generator.chance" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.farm.generator.height.min} to value "farm.generator.height.min" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer set {dungeons.farm.generator.height.max} to value "farm.generator.height.max" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as integer # FARM: logi set {dungeons.farm.log.advanced} to value "farm.log.advanced" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.farm.log.file} to value "farm.log.file" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.farm.log.console} to value "farm.log.console" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean set {dungeons.farm.log.op} to value "farm.log.op" get of "plugins/Skript/scripts/Dungeons/config.yml" parsed as boolean function "farm": set {_pos.x} to block 2 meter east 2 meter north {center} set {_pos.y} to block -2 meter east -2 meter north {center} set {_pos.xcellar} to block 1 meter under 2 meter east 2 meter north {center} set {_pos.ycellar} to block {dungeons.farm.cellar.height} meter under -2 meter east -2 meter north {center} loop blocks within {_pos.x} to {_pos.y}: set loop-block to grass set block above loop-block to air set block at location of {center} to water set {_loopnum.1} to -3 loop 4 times: add 1 to {_loopnum.1} chance of {dungeons.farm.fence.chance}%: set block 1 meter above 2 meter west {_loopnum.1} meter north {center} to {dungeons.farm.fence.block} chance of {dungeons.farm.fence.chance}%: set block 1 meter above 2 meter east {_loopnum.1} meter south {center} to {dungeons.farm.fence.block} chance of {dungeons.farm.fence.chance}%: set block 1 meter above 2 meter north {_loopnum.1} meter east {center} to {dungeons.farm.fence.block} chance of {dungeons.farm.fence.chance}%: set block 1 meter above 2 meter south {_loopnum.1} meter west {center} to {dungeons.farm.fence.block} set {_loopnum.2} to -2 loop blocks within {_pos.x} to {_pos.y}: loop-block is grass block above loop-block is air chance of {dungeons.farm.crops.chance}%: set loop-block to soil set {_get.1} to random element of {dungeons.farm.crops.types::*} if {_get.1} is "carrot" or "potato": set {_get.2} to "%{_get.1}% block" set {_item} to {_get.2} parsed as item if {_get.1} is "wheat": set {_item} to "crops" parsed as item if {_get.1} is "pumpkin" or "melon": set {_get.2} to "%{_get.1}% stem" set {_item} to {_get.2} parsed as item set block above loop-block to {_item} if {dungeons.farm.cellar.enabled} is true: loop blocks within {_pos.xcellar} to {_pos.ycellar}: if loop-block is air or any tall grass or small flower or dandelion or water or lava: set loop-block to dirt function "tower": set {_loopnum.2} to 0 set {_loopnum.3} to 4 loop {dungeons.tower.floors} times: loop 5 times: set {_loopnum.1} to 4 add 1 to {_loopnum.2} add 1 to {_loopnum.3} if {_loopnum.3} is 5: set {_loopnum.3} to 0 set {_loc.1} to location of block {_loopnum.2} meter above 5 meter east 5 meter north {center} set {_loc.2} to location of block {_loopnum.2} meter above 5 meter west 5 meter north {center} set {_loc.3} to location of block {_loopnum.2} meter above 5 meter east 5 meter south {center} set {_loc.4} to location of block {_loopnum.2} meter above 5 meter west 5 meter south {center} loop blocks within {_loc.1} to {_loc.4}: set {_get} to random element of {dungeons.tower.blocks.floorblocks::*} set {_item} to {_get} parsed as item set loop-block to {_item} chance of {dungeons.tower.mob.spawnchance}%: if {dungeons.tower.mob.type} is 1: spawn zombie above loop-block if {dungeons.tower.mob.type} is 2: spawn skeleton above loop-block if {dungeons.tower.mob.type} is 3: spawn skeleton or zombie above loop-block if {dungeons.tower.mob.guardian} is true: last spawned entity is adult zombie or skeleton set name of last spawned entity to "%{dungeons.tower.mob.name}%" set helmet of last spawned entity to {dungeons.tower.mob.items.helmet} set chestplate of last spawned entity to {dungeons.tower.mob.items.chestplate} set leggings of last spawned entity to {dungeons.tower.mob.items.leggings} set boots of last spawned entity to {dungeons.tower.mob.items.boots} set weapon of last spawned entity to {dungeons.tower.mob.items.hand} chance of {dungeons.tower.blocks.destroyedfloor}%: set loop-block to air loop-block is not air block 1 meter above 1 meter north loop-block is not chest block 1 meter above 1 meter south loop-block is not chest block 1 meter above 1 meter east loop-block is not chest block 1 meter above 1 meter west loop-block is not chest chance of {dungeons.tower.chest.chestchance}%: set block above loop-block to chest set {_amount} to random integer between {dungeons.tower.chest.chestminitems} and {dungeons.tower.chest.chestmaxitems} loop {_amount} times: set {_slot} to random integer between 0 and 26 set {_get} to random element of {dungeons.tower.chest.chestloot::*} set {_chestitem} to {_get} parsed as item set slot {_slot} of block above loop-block to {_chestitem} loop 4 times: set block at location of {_loc.%loop-number-3%} to air set block above {_loc.%loop-number-3%} to air set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 5 meter east 4 meter north {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 5 meter east 4 meter south {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 4 meter east 5 meter north {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 4 meter east 5 meter south {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 5 meter west 4 meter north {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 5 meter west 4 meter south {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 4 meter west 5 meter north {center} to {_item} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.2} meter above 4 meter west 5 meter south {center} to {_item} chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 5 meter east 4 meter north {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 5 meter east 4 meter south {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 4 meter east 5 meter north {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 4 meter east 5 meter south {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 5 meter west 4 meter north {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 5 meter west 4 meter south {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 4 meter west 5 meter north {center} to air chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of block {_loopnum.2} meter above 4 meter west 5 meter south {center} to air loop 7 times: remove 1 from {_loopnum.1} set {_north} to location of block {_loopnum.2} meter above 6 meter north {_loopnum.1} meter west {center} set {_south} to location of block {_loopnum.2} meter above 6 meter south {_loopnum.1} meter east {center} set {_west} to location of block {_loopnum.2} meter above 6 meter west {_loopnum.1} meter south {center} set {_east} to location of block {_loopnum.2} meter above 6 meter east {_loopnum.1} meter north {center} loop {anemonex.dirs::*}: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of {_%loop-value%} to {_item} chance of {dungeons.tower.blocks.destroyedwall}%: set block at location of {_%loop-value%} to air if {_loopnum.3} is 0: if {dungeons.tower.blocks.specialblock.enabled} is true: set block {_loopnum.2} meter above 6 meter north {center} to {dungeons.tower.blocks.specialblock.type} set block {_loopnum.2} meter above 6 meter south {center} to {dungeons.tower.blocks.specialblock.type} set block {_loopnum.2} meter above 6 meter west {center} to {dungeons.tower.blocks.specialblock.type} set block {_loopnum.2} meter above 6 meter east {center} to {dungeons.tower.blocks.specialblock.type} # Generator dodatków > latarnia if {dungeons.tower.fancy.lantern.enabled} is true: set {_num} to {dungeons.tower.floors}*5-3 set {_lantern} to location of block {_num} meter above {center} set block at {_lantern} to {dungeons.tower.fancy.lantern.blocks.hiddenblock} set block 1 meter above {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 2 meter above {_lantern} to {dungeons.tower.fancy.lantern.blocks.decorative} set block 3 meter above {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 4 meter above {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 6 meter above {_lantern} to {dungeons.tower.fancy.lantern.blocks.topblock} set {_loopnum.6} to -1 set {_loopnum.7} to -3 loop 2 times: add 1 to {_loopnum.6} set block 1 meter north {_loopnum.6} meter west {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 1 meter west {_loopnum.6} meter south {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 1 meter south {_loopnum.6} meter east {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} set block 1 meter east {_loopnum.6} meter north {_lantern} to {dungeons.tower.fancy.lantern.blocks.regular} loop 4 times: add 1 to {_loopnum.7} set block 2 meter north {_loopnum.7} meter west {_lantern} to {dungeons.tower.fancy.lantern.blocks.slab} set block 2 meter west {_loopnum.7} meter south {_lantern} to {dungeons.tower.fancy.lantern.blocks.slab} set block 2 meter south {_loopnum.7} meter east {_lantern} to {dungeons.tower.fancy.lantern.blocks.slab} set block 2 meter east {_loopnum.7} meter north {_lantern} to {dungeons.tower.fancy.lantern.blocks.slab} set {_eaststair} to "east %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_weststair} to "west %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_southstair} to "south %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_northstair} to "north %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_upeaststair} to "up-east %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_upweststair} to "up-west %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_upsouthstair} to "up-south %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set {_upnorthstair} to "up-north %{dungeons.tower.fancy.lantern.blocks.stairs}%" parsed as item set block 1 meter above 1 meter east {_lantern} to {_eaststair} set block 1 meter above 1 meter west {_lantern} to {_weststair} set block 1 meter above 1 meter south {_lantern} to {_southstair} set block 1 meter above 1 meter north {_lantern} to {_northstair} set block 3 meter above 1 meter east {_lantern} to {_upeaststair} set block 3 meter above 1 meter west {_lantern} to {_upweststair} set block 3 meter above 1 meter south {_lantern} to {_upsouthstair} set block 3 meter above 1 meter north {_lantern} to {_upnorthstair} set block 4 meter above 2 meter east {_lantern} to {_upeaststair} set block 4 meter above 2 meter west {_lantern} to {_upweststair} set block 4 meter above 2 meter south {_lantern} to {_upsouthstair} set block 4 meter above 2 meter north {_lantern} to {_upnorthstair} set block 4 meter above 1 meter east {_lantern} to {_weststair} set block 4 meter above 1 meter west {_lantern} to {_eaststair} set block 4 meter above 1 meter south {_lantern} to {_northstair} set block 4 meter above 1 meter north {_lantern} to {_southstair} set block 5 meter above 2 meter east {_lantern} to {dungeons.tower.fancy.lantern.blocks.decorative} set block 5 meter above 2 meter west {_lantern} to {dungeons.tower.fancy.lantern.blocks.decorative} set block 5 meter above 2 meter south {_lantern} to {dungeons.tower.fancy.lantern.blocks.decorative} set block 5 meter above 2 meter north {_lantern} to {dungeons.tower.fancy.lantern.blocks.decorative} set block 6 meter above 2 meter east {_lantern} to {_eaststair} set block 6 meter above 2 meter west {_lantern} to {_weststair} set block 6 meter above 2 meter south {_lantern} to {_southstair} set block 6 meter above 2 meter north {_lantern} to {_northstair} # Generator dodatków > korona if {dungeons.tower.fancy.crown.enabled} is true: set {_loopnum.8} to -4 set {_loopnum.9} to {dungeons.tower.floors}*5 loop 7 times: add 1 to {_loopnum.8} set block {_loopnum.9} meter above 6 meter north {_loopnum.8} meter west {center} to {dungeons.tower.fancy.crown.block} set block {_loopnum.9} meter above 6 meter south {_loopnum.8} meter east {center} to {dungeons.tower.fancy.crown.block} set block {_loopnum.9} meter above 6 meter west {_loopnum.8} meter south {center} to {dungeons.tower.fancy.crown.block} set block {_loopnum.9} meter above 6 meter east {_loopnum.8} meter north {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 5 meter east 4 meter north {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 5 meter east 4 meter south {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 4 meter east 5 meter north {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 4 meter east 5 meter south {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 5 meter west 4 meter north {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 5 meter west 4 meter south {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 4 meter west 5 meter north {center} to {dungeons.tower.fancy.crown.block} set block at location of block {_loopnum.9} meter above 4 meter west 5 meter south {center} to {dungeons.tower.fancy.crown.block} # Generator dodatków > brama if {dungeons.tower.fancy.gate.enabled} is true: set {_eaststair} to "east %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_weststair} to "west %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_southstair} to "south %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_northstair} to "north %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_upeaststair} to "up-east %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_upweststair} to "up-west %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_upsouthstair} to "up-south %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item set {_upnorthstair} to "up-north %{dungeons.tower.fancy.gate.blocks.stairs}%" parsed as item if {dungeons.tower.fancy.gate.direction} is 0 or 1 or 2 or 3: set {_dir.gate} to {dungeons.tower.fancy.gate.direction} else: set {_dir.gate} to 0 or 1 or 2 or 3 if {_dir.gate} is 0: set {_loopnum.10} to -2 loop 3 times: add 1 to {_loopnum.10} set {_loopnum.11} to 1 loop 4 times: add 1 to {_loopnum.11} set block 6 meter south {_loopnum.11} meter above {_loopnum.10} meter west {center} to air set block 6 meter south 5 meter above 1 meter west {center} to {_upeaststair} set block 6 meter south 5 meter above -1 meter west {center} to {_upweststair} set {_maxnum} to 6 + {dungeons.tower.fancy.gate.length} loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.12} to 6 + loop-number set {_loopnum.13} to 0 if {_maxnum} is {_loopnum.12}: set block {_loopnum.12} meter south 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.decorative} else: set block {_loopnum.12} meter south 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.top} loop 4 times: add 1 to {_loopnum.13} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter south {_loopnum.13} meter above -2 meter west {center} to {_item} set block {_loopnum.12} meter south {_loopnum.13} meter above 2 meter west {center} to {_item} set block {_loopnum.12} meter south 5 meter above -2 meter west {center} to {_eaststair} set block {_loopnum.12} meter south 5 meter above 2 meter west {center} to {_weststair} set block {_loopnum.12} meter south 6 meter above -1 meter west {center} to {_eaststair} set block {_loopnum.12} meter south 6 meter above 1 meter west {center} to {_weststair} set block {_loopnum.12} meter south 5 meter above -1 meter west {center} to {_upweststair} set block {_loopnum.12} meter south 5 meter above 1 meter west {center} to {_upeaststair} set {_loopnum.14} to -2 loop 3 times: add 1 to {_loopnum.14} set {_get} to random element of {dungeons.tower.blocks.floorblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter south 1 meter above {_loopnum.14} meter west {center} to {_item} chance of {dungeons.tower.blocks.destroyedfloor}%: set block {_loopnum.12} meter south 1 meter above {_loopnum.14} meter west {center} to air if {_dir.gate} is 1: set {_loopnum.10} to -2 loop 3 times: add 1 to {_loopnum.10} set {_loopnum.11} to 1 loop 4 times: add 1 to {_loopnum.11} set block 6 meter west {_loopnum.11} meter above {_loopnum.10} meter north {center} to air set block 6 meter west 5 meter above 1 meter north {center} to {_upsouthstair} set block 6 meter west 5 meter above -1 meter north {center} to {_upnorthstair} set {_maxnum} to 6 + {dungeons.tower.fancy.gate.length} loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.12} to 6 + loop-number set {_loopnum.13} to 0 if {_maxnum} is {_loopnum.12}: set block {_loopnum.12} meter west 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.decorative} else: set block {_loopnum.12} meter west 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.top} loop 4 times: add 1 to {_loopnum.13} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter west {_loopnum.13} meter above -2 meter north {center} to {_item} set block {_loopnum.12} meter west {_loopnum.13} meter above 2 meter north {center} to {_item} set block {_loopnum.12} meter west 5 meter above -2 meter north {center} to {_southstair} set block {_loopnum.12} meter west 5 meter above 2 meter north {center} to {_northstair} set block {_loopnum.12} meter west 6 meter above -1 meter north {center} to {_southstair} set block {_loopnum.12} meter west 6 meter above 1 meter north {center} to {_northstair} set block {_loopnum.12} meter west 5 meter above -1 meter north {center} to {_upnorthstair} set block {_loopnum.12} meter west 5 meter above 1 meter north {center} to {_upsouthstair} set {_loopnum.14} to -2 loop 3 times: add 1 to {_loopnum.14} set {_get} to random element of {dungeons.tower.blocks.floorblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter west 1 meter above {_loopnum.14} meter north {center} to {_item} chance of {dungeons.tower.blocks.destroyedfloor}%: set block {_loopnum.12} meter west 1 meter above {_loopnum.14} meter north {center} to air if {_dir.gate} is 2: set {_loopnum.10} to -2 loop 3 times: add 1 to {_loopnum.10} set {_loopnum.11} to 1 loop 4 times: add 1 to {_loopnum.11} set block 6 meter north {_loopnum.11} meter above {_loopnum.10} meter east {center} to air set block 6 meter north 5 meter above 1 meter east {center} to {_upweststair} set block 6 meter north 5 meter above -1 meter east {center} to {_upeaststair} set {_maxnum} to 6 + {dungeons.tower.fancy.gate.length} loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.12} to 6 + loop-number set {_loopnum.13} to 0 if {_maxnum} is {_loopnum.12}: set block {_loopnum.12} meter north 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.decorative} else: set block {_loopnum.12} meter north 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.top} loop 4 times: add 1 to {_loopnum.13} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter north {_loopnum.13} meter above -2 meter east {center} to {_item} set block {_loopnum.12} meter north {_loopnum.13} meter above 2 meter east {center} to {_item} set block {_loopnum.12} meter north 5 meter above -2 meter east {center} to {_weststair} set block {_loopnum.12} meter north 5 meter above 2 meter east {center} to {_eaststair} set block {_loopnum.12} meter north 6 meter above -1 meter east {center} to {_weststair} set block {_loopnum.12} meter north 6 meter above 1 meter east {center} to {_eaststair} set block {_loopnum.12} meter north 5 meter above -1 meter east {center} to {_upeaststair} set block {_loopnum.12} meter north 5 meter above 1 meter east {center} to {_upweststair} set {_loopnum.14} to -2 loop 3 times: add 1 to {_loopnum.14} set {_get} to random element of {dungeons.tower.blocks.floorblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter north 1 meter above {_loopnum.14} meter east {center} to {_item} chance of {dungeons.tower.blocks.destroyedfloor}%: set block {_loopnum.12} meter north 1 meter above {_loopnum.14} meter east {center} to air if {_dir.gate} is 3: set {_loopnum.10} to -2 loop 3 times: add 1 to {_loopnum.10} set {_loopnum.11} to 1 loop 4 times: add 1 to {_loopnum.11} set block 6 meter east {_loopnum.11} meter above {_loopnum.10} meter south {center} to air set block 6 meter east 5 meter above 1 meter south {center} to {_upnorthstair} set block 6 meter east 5 meter above -1 meter south {center} to {_upsouthstair} set {_maxnum} to 6 + {dungeons.tower.fancy.gate.length} loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.12} to 6 + loop-number set {_loopnum.13} to 0 if {_maxnum} is {_loopnum.12}: set block {_loopnum.12} meter east 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.decorative} else: set block {_loopnum.12} meter east 6 meter above {center} to {dungeons.tower.fancy.gate.blocks.top} loop 4 times: add 1 to {_loopnum.13} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter east {_loopnum.13} meter above -2 meter south {center} to {_item} set block {_loopnum.12} meter east {_loopnum.13} meter above 2 meter south {center} to {_item} set block {_loopnum.12} meter east 5 meter above -2 meter south {center} to {_northstair} set block {_loopnum.12} meter east 5 meter above 2 meter south {center} to {_southstair} set block {_loopnum.12} meter east 6 meter above -1 meter south {center} to {_northstair} set block {_loopnum.12} meter east 6 meter above 1 meter south {center} to {_southstair} set block {_loopnum.12} meter east 5 meter above -1 meter south {center} to {_upsouthstair} set block {_loopnum.12} meter east 5 meter above 1 meter south {center} to {_upnorthstair} set {_loopnum.14} to -2 loop 3 times: add 1 to {_loopnum.14} set {_get} to random element of {dungeons.tower.blocks.floorblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.12} meter east 1 meter above {_loopnum.14} meter south {center} to {_item} chance of {dungeons.tower.blocks.destroyedfloor}%: set block {_loopnum.12} meter east 1 meter above {_loopnum.14} meter south {center} to air set block {_loopnum.12} meter east 1 meter above {_loopnum.14} meter south {center} to air # Generator dodatków > piwnica if {dungeons.tower.cellar} is true: set {_loopnum.4} to -1 loop {dungeons.tower.floors} times: loop 5 times: if block at location of block {_loopnum.4} meter under 5 meter east 4 meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 5 meter east 4 meter north {center} to {_item} if block at location of block {_loopnum.4} meter under 5 meter east 4 meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 5 meter east 4 meter south {center} to {_item} if block at location of block {_loopnum.4} meter under 4 meter east 5 meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 4 meter east 5 meter north {center} to {_item} if block at location of block {_loopnum.4} meter under 4 meter east 5 meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 4 meter east 5 meter south {center} to {_item} if block at location of block {_loopnum.4} meter under 5 meter west 4 meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 5 meter west 4 meter north {center} to {_item} if block at location of block {_loopnum.4} meter under 5 meter west 4 meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 5 meter west 4 meter south {center} to {_item} if block at location of block {_loopnum.4} meter under 4 meter west 5 meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 4 meter west 5 meter north {center} to {_item} if block at location of block {_loopnum.4} meter under 4 meter west 5 meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of block {_loopnum.4} meter under 4 meter west 5 meter south {center} to {_item} add 1 to {_loopnum.4} set {_loopnum.5} to 4 loop 7 times: remove 1 from {_loopnum.5} set {_north} to location of block {_loopnum.4} meter under 6 meter north {_loopnum.5} meter west {center} set {_south} to location of block {_loopnum.4} meter under 6 meter south {_loopnum.5} meter east {center} set {_west} to location of block {_loopnum.4} meter under 6 meter west {_loopnum.5} meter south {center} set {_east} to location of block {_loopnum.4} meter under 6 meter east {_loopnum.5} meter north {center} loop {anemonex.dirs::*}: block at location of {_%loop-value%} is air or any tall grass or small flower or dandelion or water or lava set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block at location of {_%loop-value%} to {_item} if {dungeons.tower.fancy.gate.enabled} is true: if {_dir.gate} is 0: loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.15} to loop-number-3 + 5 add 1 to {_loopnum.15} if block at location of block {_loopnum.4} meter under 2 meter west {_loopnum.15} meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under 2 meter west {_loopnum.15} meter south {center} to {_item} if block at location of block {_loopnum.4} meter under -2 meter west {_loopnum.15} meter south {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under -2 meter west {_loopnum.15} meter south {center} to {_item} set {_loopnum.16} to {dungeons.tower.fancy.gate.length}+6 set {_loopnum.17} to -2 loop 3 times: add 1 to {_loopnum.17} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under {_loopnum.17} meter west {_loopnum.16} meter south {center} to {_item} if {_dir.gate} is 1: loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.15} to loop-number-3 + 5 add 1 to {_loopnum.15} if block at location of block {_loopnum.4} meter under 2 meter north {_loopnum.15} meter west {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under 2 meter north {_loopnum.15} meter west {center} to {_item} if block at location of block {_loopnum.4} meter under -2 meter north {_loopnum.15} meter west {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under -2 meter north {_loopnum.15} meter west {center} to {_item} set {_loopnum.16} to {dungeons.tower.fancy.gate.length}+6 set {_loopnum.17} to -2 loop 3 times: add 1 to {_loopnum.17} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under {_loopnum.17} meter north {_loopnum.16} meter west {center} to {_item} if {_dir.gate} is 2: loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.15} to loop-number-3 + 5 add 1 to {_loopnum.15} if block at location of block {_loopnum.4} meter under 2 meter east {_loopnum.15} meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under 2 meter east {_loopnum.15} meter north {center} to {_item} if block at location of block {_loopnum.4} meter under -2 meter east {_loopnum.15} meter north {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under -2 meter east {_loopnum.15} meter north {center} to {_item} set {_loopnum.16} to {dungeons.tower.fancy.gate.length}+6 set {_loopnum.17} to -2 loop 3 times: add 1 to {_loopnum.17} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under {_loopnum.17} meter east {_loopnum.16} meter north {center} to {_item} if {_dir.gate} is 3: loop {dungeons.tower.fancy.gate.length} times: set {_loopnum.15} to loop-number-3 + 5 add 1 to {_loopnum.15} if block at location of block {_loopnum.4} meter under 2 meter south {_loopnum.15} meter east {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under 2 meter south {_loopnum.15} meter east {center} to {_item} if block at location of block {_loopnum.4} meter under -2 meter south {_loopnum.15} meter east {center} is air or any tall grass or small flower or dandelion or water or lava: set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under -2 meter south {_loopnum.15} meter east {center} to {_item} set {_loopnum.16} to {dungeons.tower.fancy.gate.length}+6 set {_loopnum.17} to -2 loop 3 times: add 1 to {_loopnum.17} set {_get} to random element of {dungeons.tower.blocks.wallblocks::*} set {_item} to {_get} parsed as item set block {_loopnum.4} meter under {_loopnum.17} meter south {_loopnum.16} meter east {center} to {_item} # Generator on chunk generate: set {_biome} to biome at {center} loop {dungeons.structurelist::*}: set {_dungeon} to "%loop-value-1%" parsed as string chance of {dungeons.%{_dungeon}%.generator.chance}%: set {_world} to event-world set {_x} to "%event-chunk%" parsed as string replace all "chunk (" with "" in {_x} replace all ") of %{_world}%" with "" in {_x} set {_get::*} to {_x} split at "," set {_loopnum} to 0 loop {_get::*}: add 1 to {_loopnum} set {_loop} to "%loop-value-2%" parsed as integer set {_minus} to false if {_loop} contains "-": replace all "-" with "" in {_loop} set {_minus} to true set {_num} to {_loop} * 16 if {_loopnum} is 1: set {_set} to {_num} if {_minus} is true: set {_x} to "-%{_set}%" parsed as number else: set {_x} to "%{_set}%" parsed as number if {_loopnum} is 2: set {_set} to {_num} if {_minus} is true: set {_z} to "-%{_set}%" parsed as number else: set {_z} to "%{_set}%" parsed as number set {_locdown} to location at {_x}, {dungeons.%{_dungeon}%.generator.height.min}, {_z} in world {_world} set {_locup} to location at {_x}, {dungeons.%{_dungeon}%.generator.height.max}, {_z} in world {_world} loop blocks within {_locdown} to {_locup}: loop-block is air block under loop-block is not air set {center} to location of loop-block if {dungeons.%{_dungeon}%.biome.enabled} is true: set {_allowed} to false loop {dungeons.%{_dungeon}%.biome.allowed::*}: set {_x} to "%loop-value-2%" if "%{_x}%" is "%{_biome}%": set {_allowed} to true if {_allowed} is false: stop if "%{_dungeon}%" is "farm": if {dungeons.farm.log.advanced} is true: if {dungeons.farm.log.file} is true: wf "[%now%] FARM GENERATED: %{center}% [chunk: %event-chunk%] at biome %{_biome}% built with %{dungeons.farm.fence.block}% as fence around farm. Crops of %{dungeons.farm.crops.types::*}% has been planted. Cellar (%{dungeons.farm.cellar.enabled}%)." to "plugins/Skript/scripts/Dungeons/logs/farm.txt" if {dungeons.farm.log.console} is true: send "&f[&7%now%&f] FARM GENERATED: &7%{center}% &f[chunk: &7%event-chunk%&f] at biome &7%{_biome}% &fbuilt with &7%{dungeons.farm.fence.block}% &fas fence around farm. Crops of &7%{dungeons.farm.crops.types::*}% &fhas been planted. Cellar (&7%{dungeons.farm.cellar.enabled}%&f)." to console if {dungeons.farm.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] FARM GENERATED: &7%{center}% &f[chunk: &7%event-chunk%&f] at biome &7%{_biome}% &fbuilt with &7%{dungeons.farm.fence.block}% &fas fence around farm. Crops of &7%{dungeons.farm.crops.types::*}% &fhas been planted. Cellar (&7%{dungeons.farm.cellar.enabled}%&f)." to loop-player else: if {dungeons.farm.log.file} is true: wf "[%now%] FARM GENERATED: %{center}%" to "plugins/Skript/scripts/Dungeons/logs/farm.txt" if {dungeons.farm.log.console} is true: send "&f[&7%now%&f] FARM GENERATED: &7%{center}%" to console if {dungeons.farm.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] FARM GENERATED: &7%{center}%" to loop-player if "%{_dungeon}%" is "tower": if {dungeons.tower.log.advanced} is true: if {dungeons.tower.log.file} is true: wf "[%now%] TOWER GENERATED: %{center}% [chunk: %event-chunk%] at biome %{_biome}% built with %{dungeons.tower.blocks.wallblocks::*}% as walls and %{dungeons.tower.blocks.floorblocks::*}% as floor. Cellar (%{dungeons.tower.cellar}%), lantern (%{dungeons.tower.fancy.lantern.enabled}%), crown (%{dungeons.tower.fancy.crown.enabled}%), gate (%{dungeons.tower.fancy.gate.enabled}%), decorative wall block (%{dungeons.tower.blocks.specialblock.enabled}%). Chests has been equipped with %{dungeons.tower.chest.chestloot::*}%." to "plugins/Skript/scripts/Dungeons/logs/tower.txt" if {dungeons.tower.log.console} is true: send "&f[&7%now%&f] TOWER GENERATED: &7%{center}% &f[chunk: &7%event-chunk%&f] at biome &7%{_biome}%&f built with &7%{dungeons.tower.blocks.wallblocks::*}% &fas walls and &7%{dungeons.tower.blocks.floorblocks::*}% &fas floor. Cellar (&7%{dungeons.tower.cellar}%&f), lantern (&7%{dungeons.tower.fancy.lantern.enabled}%&f), crown (&7%{dungeons.tower.fancy.crown.enabled}%&f), gate (&7%{dungeons.tower.fancy.gate.enabled}%&f), decorative wall block (&7%{dungeons.tower.blocks.specialblock.enabled}%&f). Chests has been equipped with &7%{dungeons.tower.chest.chestloot::*}%&f." to console if {dungeons.tower.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] TOWER GENERATED: &7%{center}% &f[chunk: &7%event-chunk%&f] at biome &7%{_biome}%&f built with &7%{dungeons.tower.blocks.wallblocks::*}% &fas walls and &7%{dungeons.tower.blocks.floorblocks::*}% &fas floor. Cellar (&7%{dungeons.tower.cellar}%&f), lantern (&7%{dungeons.tower.fancy.lantern.enabled}%&f), crown (&7%{dungeons.tower.fancy.crown.enabled}%&f), gate (&7%{dungeons.tower.fancy.gate.enabled}%&f), decorative wall block (&7%{dungeons.tower.blocks.specialblock.enabled}%&f). Chests has been equipped with &7%{dungeons.tower.chest.chestloot::*}%&f." to loop-player else: if {dungeons.tower.log.file} is true: wf "[%now%] TOWER GENERATED: %{center}%" to "plugins/Skript/scripts/Dungeons/logs/tower.txt" if {dungeons.tower.log.console} is true: send "&f[&7%now%&f] TOWER GENERATED: &7%{center}%" to console if {dungeons.tower.log.op} is true: loop all players: loop-player is op send "&f[&7%now%&f] TOWER GENERATED: &7%{center}%" to loop-player access "%{_dungeon}%" stop stop