Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #author: karingijs272
- # _____________________
- #+ + + + + + / /++/
- #+ Edit + / WorldEdit++ /++/
- #+ This + / Version 1.4.3 /++/
- #+ Block + / /++/
- #+ + + + + + /_________________/++/
- #With the world edit /tool
- #all right reserved by karingijs
- #Copyright © karingijs
- #Recomended to hold this to false there are allready more antylags in code
- #when you turn antylag to true worldedit will place 20 blocks per second
- options:
- antylag: false
- procentage: true
- on left click with stick:
- if player is op:
- if player has stick named "&cWorld_Edit_tool":
- set {X1::%player%} to x-coordinate of event-block
- set {Y1::%player%} to y-coordinate of event-block
- set {Z1::%player%} to z-coordinate of event-block
- send "&8[&cWorldEdit++&8] &7< &4X: &c%{X1::%player%}% &4y: &c%{Y1::%player%}% &4z: &c%{Z1::%player%}% &7>"
- cancel event
- on right click with stick:
- if player is op:
- if player has stick named "&cWorld_Edit_tool":
- set {X2::%player%} to x-coordinate of event-block
- set {Y2::%player%} to y-coordinate of event-block
- set {Z2::%player%} to z-coordinate of event-block
- send "&8[&cWorldEdit++&8] &7< &4X: &c%{X2::%player%}% &4y: &c%{Y2::%player%}% &4z: &c%{Z2::%player%}% &7>"
- cancel event
- command /worldedit++ [<string>]:
- aliases: worldedit, wand, wd
- trigger:
- if player is op:
- if arg 1 is not set:
- send "&8* &4/&cwd tool &8- &7The world edit tool for everything"
- send "&8* &4/&cwd info &8- &7Information about this skipt and author"
- send "&8* &4/&cwd commands &8- &7List of commands to use"
- if arg 1 is "tool":
- give stick named "&cWorld_Edit_tool" to player
- send "&8[&cWorldEdit++&8] &cSelect (2) points with &4left &cand &4right &cclick"
- if arg 1 is "info":
- send "&cAuthor : karingijs"
- send "&cVersion: 1.4.3"
- if arg 1 is "command" or "commands":
- send "&7* &2/&aball &e- make a ball around the player"
- send "&7* &2/&awalls &e- to make a cube wall"
- else:
- send "&8[&cWorldEdit++&8] &cSkript Version 1.0"
- command /tool:
- aliases: tools
- trigger:
- if player is op:
- give stick named "&cWorld_Edit_tool" to player
- send "&8[&cWorldEdit++&8] &cSelect (2) points with &4left &cand &4right &cclick"
- else:
- send "&8[&cWorldEdit++&8] Only ops"
- command /place [<item>] [<item>] [<item>] [<item>] [<item>] [<item>] [<item>] [<item>] [<item>] [<item>]:
- trigger:
- if player is op:
- if arg 1 is not set:
- send "&c/place [Block-ID] or more..."
- stop
- add 1 to {WORLDEDIT::%player%::TIMES}
- if {X1::%player%} is smaller than {X2::%player%}:
- set {_x1} to 1
- set {_x2} to 2
- else:
- set {_x1} to 2
- set {_x2} to 1
- if {Y1::%player%} is smaller than {Y2::%player%}:
- set {_y1} to 1
- set {_y2} to 2
- else:
- set {_y1} to 2
- set {_y2} to 1
- if {Z1::%player%} is smaller than {Z2::%player%}:
- set {_z1} to 1
- set {_z2} to 2
- else:
- set {_z1} to 2
- set {_z2} to 1
- if {WORLDEDIT::%player%::STATUS} is set:
- send "&4Error(1/1)"
- stop
- set {WORLDEDIT::%player%::STATUS} to true
- set {_x} to difference between {X%{_x1}%::%player%} and {X%{_x2}%::%player%}
- set {_y} to difference between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}
- set {_z} to difference between {Z%{_z1}%::%player%} and {Z%{_z2}%::%player%}
- add 1 to {_x}
- add 1 to {_y}
- add 1 to {_z}
- set {_Blocks} to 0
- set {_xx} to "%{X%{_x1}%::%player%} - 1%" parsed as number
- set {_yy} to "%{Y%{_y1}%::%player%} - 1%" parsed as number
- set {_zz} to "%{Z%{_z1}%::%player%} - 1%" parsed as number
- set {_Amount} to "%{_x} * {_z}%" parsed as number
- set {_Amount} to "%{_Amount} * {_y}%" parsed as number
- set {_procent} to "%{_Amount} / 100%" parsed as number
- set {_procentadd} to "%{_procent}%" parsed as number
- if {_Amount} is greater than 20000:
- set {_antylag} to true
- send "&8[&cWorldEdit++&8] &7< &cAntyLag protect to many blocks you can't use /unplace for this "
- wait 2.5 second
- else:
- send "&8[&cWorldEdit++&8] &7< &cchange %{_Amount}% blocks &7>"
- wait 2 second
- if arg 1 is set:
- add arg 1 to {_BLOCKTYPES::*}
- if arg 2 is set:
- add arg 2 to {_BLOCKTYPES::*}
- if arg 3 is set:
- add arg 3 to {_BLOCKTYPES::*}
- if arg 4 is set:
- add arg 4 to {_BLOCKTYPES::*}
- if arg 5 is set:
- add arg 5 to {_BLOCKTYPES::*}
- if arg 6 is set:
- add arg 6 to {_BLOCKTYPES::*}
- if arg 7 is set:
- add arg 7 to {_BLOCKTYPES::*}
- if arg 8 is set:
- add arg 8 to {_BLOCKTYPES::*}
- if arg 9 is set:
- add arg 9 to {_BLOCKTYPES::*}
- if arg 10 is set:
- add arg 10 to {_BLOCKTYPES::*}
- set {_randMax} to size of {_BLOCKTYPES::*}
- loop {_y} times:
- add 1 to {_yy}
- if "%loop-number%" is not "1":
- set {_xx} to "%{X%{_x1}%::%player%} - 1%" parsed as number
- set {_zz} to "%{Z%{_z1}%::%player%} - 1%" parsed as number
- loop {_z} times:
- if {_procent} is greater than {_procentold}:
- set {_procentold} to "%{_procent}%" parsed as number
- if {@procentage} is true:
- send "&8[&cWorldEdit++&8] &7< &aFinished &2%{_procents}% &aProcent! &7>"
- wait 2 tick
- add 1 to {_zz}
- loop {_x} times:
- set {_randBlock} to random number between 1 and {_randMax}
- #send "&a%{_randBlock}%"
- set {_randBlock} to rounded {_randBlock}
- #send "&c%{_randBlock}%"
- if {_blocks} is greater or equal to {_procent}:
- set {_procentold} to "%{_procent}%" parsed as number
- add {_procentadd} to {_procent}
- add 1 to {_procents}
- add 1 to {_Blocks}
- add 1 to {_xx}
- if {_antylag} is not set:
- set {WORLDEDIT::%player%::LOCATION::%{WORLDEDIT::%player%::TIMES}%::%{_blocks}%} to location at ({_xx}, {_yy}, {_zz})
- set {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%{_blocks}%} to block at location of {WORLDEDIT::%player%::LOCATION::%{WORLDEDIT::%player%::TIMES}%::%{_blocks}%}
- set {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%{_blocks}%} to "%{WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%{_blocks}%}%" parsed as item
- set block at location ({_xx}, {_yy}, {_zz}) to {_BLOCKTYPES::%{_randBlock}%}
- if {@antylag} is true:
- wait 0.03 second
- #else:
- # send "&cX: %{_xx}% Y:%{_yy}% Z: %{_zz}% %loop-number-1%/%loop-number-2%/%loop-number-3%"
- if "%{_zz}%" is "%{Z%{_z2}%::%player%} + 1%":
- set {_zz} to "%{Z%{_z1}%::%player%} - 1%" parsed as number
- if "%{_xx}%" is "%{X%{_x2}%::%player%}%":
- set {_xx} to "%{X%{_x1}%::%player%} - 1%" parsed as number
- send "&8[&cWorldEdit++&8] &7< &cYou replaced %{_Amount}% bolcks with %arg 1%. &7>"
- wait 10 tick
- if {_antylag} is not set:
- send "&8[&cWorldEdit++&8] &7< &c/unplace for unplace of %{_Amount}% blocks &7>"
- delete {WORLDEDIT::%player%::STATUS}
- stop
- command /ball [<item>] [<number>]:
- trigger:
- if player is op:
- if arg 1 is not set:
- send "&c/ball &c&l[Item-ID] &c[Radius]"
- stop
- if arg 2 is not set:
- send "&c/ball [Item-ID] &c&l[Radius]"
- stop
- loop blocks in radius arg 2 around the player:
- set loop-block to arg 1
- add 1 to {_Amount}
- send "&8[&cWorldEdit++&8] &7< &cYou replaced %{_Amount}% bolcks with %arg 1%. &7>"
- command /walls [<item>]:
- aliases: wall
- trigger:
- if player is op:
- if arg 1 is not set:
- send "&c/walls [Block-ID]"
- stop
- add 1 to {WORLDEDIT::%player%::TIMES}
- if {X1::%player%} is smaller than {X2::%player%}:
- set {_x1} to 1
- set {_x2} to 2
- else:
- set {_x1} to 2
- set {_x2} to 1
- if {Y1::%player%} is smaller than {Y2::%player%}:
- set {_y1} to 1
- set {_y2} to 2
- else:
- set {_y1} to 2
- set {_y2} to 1
- if {Z1::%player%} is smaller than {Z2::%player%}:
- set {_z1} to 1
- set {_z2} to 2
- else:
- set {_z1} to 2
- set {_z2} to 1
- set {_x} to difference between {X%{_x1}%::%player%} and {X%{_x2}%::%player%}
- set {_y} to difference between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}
- set {_z} to difference between {Z%{_z1}%::%player%} and {Z%{_z2}%::%player%}
- set {_z} to {Z%{_z1}%::%player%}
- loop numbers between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}:
- loop numbers between {X%{_x1}%::%player%} and {X%{_x2}%::%player%}:
- set {_y} to "%loop-number-1%" parsed as number
- set {_x} to "%loop-number-2%" parsed as number
- set block at location ({_x}, {_y}, {_z}) to arg 1
- set {_z} to {Z%{_z2}%::%player%}
- loop numbers between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}:
- loop numbers between {X%{_x1}%::%player%} and {X%{_x2}%::%player%}:
- set {_y} to "%loop-number-1%" parsed as number
- set {_x} to "%loop-number-2%" parsed as number
- set block at location ({_x}, {_y}, {_z}) to arg 1
- set {_x} to {X%{_x1}%::%player%}
- loop numbers between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}:
- loop numbers between {Z%{_z1}%::%player%} and {Z%{_z2}%::%player%}:
- set {_y} to "%loop-number-1%" parsed as number
- set {_z} to "%loop-number-2%" parsed as number
- set block at location ({_x}, {_y}, {_z}) to arg 1
- set {_x} to {X%{_x2}%::%player%}
- loop numbers between {Y%{_y1}%::%player%} and {Y%{_y2}%::%player%}:
- loop numbers between {Z%{_z1}%::%player%} and {Z%{_z2}%::%player%}:
- set {_y} to "%loop-number-1%" parsed as number
- set {_z} to "%loop-number-2%" parsed as number
- set block at location ({_x}, {_y}, {_z}) to arg 1
- on quit:
- loop {WORLDEDIT::%player%::TIMES} times:
- loop {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::*}:
- delete {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%loop-index%}
- delete {WORLDEDIT::%player%::LOCATION::%{WORLDEDIT::%player%::TIMES}%::%loop-index%}
- set {WORLDEDIT::%player%::TIMES} to 0
- delete {WORLDEDIT::%player%::STATUS}
- command /unplace:
- trigger:
- if player is op:
- if {WORLDEDIT::%player%::TIMES} is set:
- if {WORLDEDIT::%player%::STATUS} is not set:
- if {WORLDEDIT::%player%::TIMES} is greater than 0:
- set {WORLDEDIT::%player%::STATUS} to true
- loop {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::*}:
- add 1 to {_blocks}
- set {_procent} to "%{_blocks} / 100%" parsed as number
- set {_procentadd} to "%{_procent}%" parsed as number
- set {_blocks} to 0
- loop {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::*}:
- add 1 to {_blocks}
- if {_blocks} is greater than {_procent}:
- add 1 to {_procents}
- set {_procent} to "%{_procent} + {_procentadd}%" parsed as number
- if {@procentage} is true:
- send "&8[&cWorldEdit++&8] &7< &aFinished &2%{_procents}% &aProcent! &7>"
- wait 2 tick
- set block at {WORLDEDIT::%player%::LOCATION::%{WORLDEDIT::%player%::TIMES}%::%loop-index%} to {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%loop-index%}
- delete {WORLDEDIT::%player%::BLOCKS::%{WORLDEDIT::%player%::TIMES}%::%loop-index%}
- delete {WORLDEDIT::%player%::LOCATION::%{WORLDEDIT::%player%::TIMES}%::%loop-index%}
- if {@antylag} is true:
- wait 0.03 second
- subtract 1 from {WORLDEDIT::%player%::TIMES}
- delete {WORLDEDIT::%player%::STATUS}
- else:
- send "&cError(3/3)"
- else:
- send "&cError(2/3)"
- else:
- send "&cError(1/3)"
Add Comment
Please, Sign In to add comment