options:
#do not touch this -_-
plugin-version: 0.0.9
#
# * SETTINGS *
#
wand-item: wooden axe
#you can also use seconds "example, block-place-speed: 2 seconds"
block-place-speed: 2 ticks
#Block from bellow will not be broken.
block-break-blacklist: sign or chest or bedrock or mob spawner
#When this is false, the player needs to wait until the current job is done to start another.
multiple-jobs: false
# * MESSAGES *
prefix: &6&lWORLD EDIT &8&l> &7
position-set: &ePozisyon &3%{_pos}% &eayarlandı.
position-not-set: &ePozisyon &3%{_pos}% &eayarlanamamış.
out-of-blocks: &eOBlokların dışında.
cannot-use-this-item: &eBu ürünü kullanamazsın.
started-job: &eBlok yerleştirmeye başladı...
already-started: &eLütfen mevcut işin yapılmasını bekleyin.
finished-job: &eBlok yerleştirme bitti.
block-blacklisted: &cBu blok kara listeye alındı.
no-permission: &cÜzgünüm, yetkin yok.
function leaf_we_set_pos(p: player, loc: location, pos: text):
set {_uuid} to uuid of {_p}
set {LEAF-WE::%{_uuid}%.POS-%{_pos}%} to {_loc}
send "{@prefix}{@position-set}" to {_p}
on left-click with {@wand-item}:
cancel event
target block is not air
distance between player and target block is smaller than 5
leaf_we_set_pos(player, location of target block, "1")
on right-click with {@wand-item}:
cancel event
target block is not air
distance between player and target block is smaller than 5
leaf_we_set_pos(player, location of target block, "2")
command set [<material>]:
trigger:
if player has permission "leafwe.set":
if {LEAF-WE::%uuid of player%.POS-1} is set:
if {LEAF-WE::%uuid of player%.POS-2} is set:
if arg-1 is not set:
set {_block} to player's tool
if arg-1 is set:
set {_block} to arg-1
if {_block} is solid:
if {@multiple-jobs} is false:
{LEAF-WE::%uuid of player%.RUNNING} is set
send "{@prefix}{@already-started}"
stop
set {LEAF-WE::%uuid of player%.RUNNING} to true
send "{@prefix}{@started-job}"
loop blocks within {LEAF-WE::%uuid of player%.POS-1} and {LEAF-WE::%uuid of player%.POS-2}:
if player is online:
if number of {_block} in player's inventory is greater than 0:
if island at loop-block is island of player:
set {_allow} to true
else:
loop asb player's team members:
island at loop-block is island of loop-value-2
set {_allow} to true
{_allow} is true
if block at loop-value is not air or {@block-break-blacklist}:
set {_b-give} to block at loop-value
{_b-give} is not any leaves
give {_b-give} to player
if block at loop-value is not {@block-break-blacklist}:
set block at loop-value to {_block}
play "%{_block}% break" parsed as visual effect at location of loop-value
remove 1 of {_block} from player's inventory
wait {@block-place-speed}
else:
send "{@prefix}{@out-of-blocks}"
stop
else:
stop
delete {LEAF-WE::%uuid of player%.RUNNING}
send "{@prefix}{@finished-job}"
else:
send "{@prefix}{@cannot-use-this-item}"
else:
set {_pos} to 2
send "{@prefix}{@position-not-set}"
else:
set {_pos} to 1
send "{@prefix}{@position-not-set}"
else:
send "{@prefix}{@no-permission}"
on quit:
delete {LEAF-WE::%uuid of player%.POS-1}, {LEAF-WE::%uuid of player%.POS-2} and {LEAF-WE::%uuid of player%.RUNNING}
on load:
send "&8|--------------------------------------------&8|" to console
send " " to console
send "{@prefix}&3&lLoading &ev.{@plugin-version}&3..." to console
send "{@prefix}&3&lPlugin loaded!" to console
send " " to console
send "&8|--------------------------------------------&8|" to console
delete {LEAF-WE::*}
on unload:
send "&8|--------------------------------------------&8|" to console
send " " to console
send "{@prefix}&3&lDisabling &ev.{@plugin-version}&3&l..." to console
send "{@prefix}&3&lv.{@plugin-version} disabled!" to console
send " " to console
send "&8|--------------------------------------------&8|" to console
stop