Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- options:
- cmdgtitle: <##58c465>CMD&fGlass &8|
- cmdghigh: <##58c465>
- on place of glass block:
- name of player's tool contains "{@cmdgtitle}":
- player has permission "cmdglass.place":
- cancel event
- spawn armor stand 1.18 below event-location
- add "{Invisible:1b,Invulnerable:1b,PersistenceRequired:1b,NoBasePlate:1b,NoGravity:1b,Small:1b,Marker:0b,DisabledSlots:4144959}" to nbt of last spawned armor stand
- set helmet of last spawned armor stand to glass block
- set {_loc} to event-location
- add -1.115 to y-coordinate of {_loc}
- if player's facing is north or south or down:
- add -0.2775 to z-coordinate of {_loc}
- add 0.19 to x-coordinate of {_loc}
- spawn armor stand at {_loc}
- add "{Invisible:1b,Invulnerable:1b,PersistenceRequired:1b,NoBasePlate:1b,NoGravity:1b,ShowArms:1b,Small:1b,Marker:0b,DisabledSlots:4144959,Pose:{RightArm:[270f,0f,0f]}}" to nbt of last spawned armor stand
- else if player's facing is west or east or up:
- add 0.035 to z-coordinate of {_loc}
- add 0.435 to x-coordinate of {_loc}
- spawn armor stand at {_loc}
- add "{Invisible:1b,Invulnerable:1b,PersistenceRequired:1b,NoBasePlate:1b,NoGravity:1b,ShowArms:1b,Small:1b,Marker:0b,DisabledSlots:4144959,Pose:{RightArm:[270f,90f,0f]}}" to nbt of last spawned armor stand
- set tool of last spawned armor stand to barrier
- set {_loc} to event-location
- spawn armor stand 1.88 below {_loc}
- add "{Invisible:1b,Invulnerable:1b,PersistenceRequired:1b,NoBasePlate:1b,NoGravity:1b,ShowArms:1b,Small:0b,Marker:1b,DisabledSlots:4144959,Pose:{RightArm:[345f,45f,0f]}}" to nbt of last spawned armor stand
- set helmet of last spawned armor stand to stone pressure plate
- set {_cmd::*} to uncolored name of player's tool split at "/"
- set {cmdglass::%event-location%} to "%{_cmd::2}%"
- else:
- cancel event
- remove player's tool from player's inventory
- on rightclick on armor stand:
- player is sneaking:
- player has permission "cmdglass.edit":
- loop all entities in radius 0.5 around event-location:
- loop-entity is armor stand:
- "%helmet of loop-entity%" contains "glass":
- set {cmdg::%player's uuid%::glassbox} to loop-entity
- else if tool of loop-entity is not air:
- set {cmdg::%player's uuid%::itemcarrier} to loop-entity
- set {_loc} to event-location
- add -0.75 to y-coordinate of {_loc}
- loop all entities in radius 0.4 around {_loc}:
- "%helmet of loop-entity%" contains "pressure plate":
- set {cmdg::%player's uuid%::baseplate} to loop-entity
- set {cmdg::%player's uuid%::command} to {cmdglass::%location of block above event-entity%}
- set {cmdg::%player's uuid%::commandloc} to location of block above event-entity
- cmdgEditGUI(player)
- else:
- make player execute command "%{cmdglass::%location of block above event-entity%}%"
- else:
- make player execute command "%{cmdglass::%location of block above event-entity%}%"
- function cmdgEditGUI(p: player):
- set {_pid} to uuid of {_p}
- set metadata tag "cmdgGUI" of {_p} to chest inventory with 1 rows named "{@cmdgtitle} &fEditing"
- set slot integers between 0 and 8 of metadata tag "cmdgGUI" of {_p} to white stained glass pane named " "
- set slot 0 of metadata tag "cmdgGUI" of {_p} to helmet of {cmdg::%{_pid}%::glassbox} named "&7Edit - {@cmdghigh}Glassbox"
- set slot 2 of metadata tag "cmdgGUI" of {_p} to helmet of {cmdg::%{_pid}%::baseplate} named "&7Edit - {@cmdghigh}Baseplate"
- set slot 4 of metadata tag "cmdgGUI" of {_p} to command block named "&7Edit - {@cmdghigh}Command" with lore "" and "&7Current: {@cmdghigh}/%{cmdg::%{_pid}%::command}%"
- set slot 6 of metadata tag "cmdgGUI" of {_p} to tool of {cmdg::%{_pid}%::itemcarrier} named "&7Edit - {@cmdghigh}Item"
- set slot 8 of metadata tag "cmdgGUI" of {_p} to tnt named "&7Edit - &cDelete"
- open (metadata tag "cmdgGUI" of {_p}) to {_p}
- function cmdgEditBox(p: player):
- set {_pid} to uuid of {_p}
- set metadata tag "cmdgselGUI" of {_p} to chest inventory with 5 rows named "{@cmdgtitle} &fGlassbox"
- set slot integers between 0 and 44 of metadata tag "cmdgselGUI" of {_p} to white stained glass pane named " "
- set slot 4 of metadata tag "cmdgselGUI" of {_p} to helmet of {cmdg::%{_pid}%::glassbox} named "&7Current"
- set slot 10 of metadata tag "cmdgselGUI" of {_p} to white stained glass named "&7Box - &fWhite Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 11 of metadata tag "cmdgselGUI" of {_p} to orange stained glass named "&7Box - &6Orange Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 12 of metadata tag "cmdgselGUI" of {_p} to magenta stained glass named "&7Box - &5Magenta Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 13 of metadata tag "cmdgselGUI" of {_p} to light blue stained glass named "&7Box - &bLight Blue Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 14 of metadata tag "cmdgselGUI" of {_p} to yellow stained glass named "&7Box - &eYellow Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 15 of metadata tag "cmdgselGUI" of {_p} to lime stained glass named "&7Box - &aLime Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 20 of metadata tag "cmdgselGUI" of {_p} to pink stained glass named "&7Box - &dPink Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 21 of metadata tag "cmdgselGUI" of {_p} to gray stained glass named "&7Box - &8Gray Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 22 of metadata tag "cmdgselGUI" of {_p} to light gray stained glass named "&7Box - &7Light Gray Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 23 of metadata tag "cmdgselGUI" of {_p} to cyan stained glass named "&7Box - &3Cyan Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 24 of metadata tag "cmdgselGUI" of {_p} to purple stained glass named "&7Box - <##663399>Purple Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 25 of metadata tag "cmdgselGUI" of {_p} to blue stained glass named "&7Box - &1Blue Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 28 of metadata tag "cmdgselGUI" of {_p} to brown stained glass named "&7Box - &fWhite Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 29 of metadata tag "cmdgselGUI" of {_p} to green stained glass named "&7Box - &2Green Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 30 of metadata tag "cmdgselGUI" of {_p} to red stained glass named "&7Box - &cRed Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 31 of metadata tag "cmdgselGUI" of {_p} to black stained glass named "&7Box - <##262626>Black Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 33 of metadata tag "cmdgselGUI" of {_p} to glass block named "&7Box - &fClear Glass" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 44 of metadata tag "cmdgselGUI" of {_p} to barrier named "&c&oBack >>>"
- open (metadata tag "cmdgselGUI" of {_p}) to {_p}
- function cmdgEditBase(p: player):
- set {_pid} to uuid of {_p}
- set metadata tag "cmdgbasGUI" of {_p} to chest inventory with 4 rows named "{@cmdgtitle} &fGlassbox"
- set slot integers between 0 and 35 of metadata tag "cmdgbasGUI" of {_p} to white stained glass pane named " "
- set slot 4 of metadata tag "cmdgbasGUI" of {_p} to helmet of {cmdg::%{_pid}%::baseplate} named "&7Current"
- set slot 10 of metadata tag "cmdgbasGUI" of {_p} to stone pressure plate named "&7Base - &7Stone Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 11 of metadata tag "cmdgbasGUI" of {_p} to oak pressure plate named "&7Base - <##b8945f>Oak Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 12 of metadata tag "cmdgbasGUI" of {_p} to spruce pressure plate named "&7Base - <##82613a>Spruce Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 13 of metadata tag "cmdgbasGUI" of {_p} to birch pressure plate named "&7Base - <##d7c185>Birch Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 14 of metadata tag "cmdgbasGUI" of {_p} to jungle pressure plate named "&7Base - <##b88764>Jungle Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 15 of metadata tag "cmdgbasGUI" of {_p} to acacia pressure plate named "&7Base - <##ba6337>Acacia Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 20 of metadata tag "cmdgbasGUI" of {_p} to dark oak pressure plate named "&7Base - <##4f3218>Dark Oak Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 21 of metadata tag "cmdgbasGUI" of {_p} to crimson pressure plate named "&7Base - <##7e3a56>Crimson Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 22 of metadata tag "cmdgbasGUI" of {_p} to warped pressure plate named "&7Base - <##398382>Warped Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 23 of metadata tag "cmdgbasGUI" of {_p} to polished blackstone pressure plate named "&7Base - <##312c36>Polished Blackstone Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 24 of metadata tag "cmdgbasGUI" of {_p} to gold pressure plate named "&7Base - <##ffec4f>Gold Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 25 of metadata tag "cmdgbasGUI" of {_p} to iron pressure plate named "&7Base - <##e6e6e6>Iron Base" with lore "", "&7○ <##58c465>&oClick &7&oto select" and ""
- set slot 35 of metadata tag "cmdgbasGUI" of {_p} to barrier named "&c&oBack >>>"
- open (metadata tag "cmdgbasGUI" of {_p}) to {_p}
- on inventory close:
- if player's current inventory = (metadata tag "cmdgGUI" of player), (metadata tag "cmdgselGUI" of player) or (metadata tag "cmdgbasGUI" of player):
- wait 1 tick
- if player's current inventory is not (metadata tag "cmdgGUI" of player), (metadata tag "cmdgselGUI" of player) or (metadata tag "cmdgbasGUI" of player):
- if {cmdg::%player's uuid%::changingcmd} or {cmdg::%player's uuid%::changingitem} is not true:
- delete {cmdg::%player's uuid%::glassbox}
- delete {cmdg::%player's uuid%::baseplate}
- delete {cmdg::%player's uuid%::itemcarrier}
- delete {cmdg::%player's uuid%::command}
- delete {cmdg::%player's uuid%::changingcmd}
- delete {cmdg::%player's uuid%::changingitem}
- on command:
- if {cmdg::%player's uuid%::changingcmd} is true:
- cancel event
- delete {cmdg::%player's uuid%::changingcmd}
- set {cmdglass::%{cmdg::%player's uuid%::commandloc}%} to full command
- send "{@cmdgtitle} &7The command has been set to: {@cmdghigh}/%full command%"
- on rightclick:
- if {cmdg::%player's uuid%::changingitem} is true:
- cancel event
- player's tool is not air:
- set tool of {cmdg::%player's uuid%::itemcarrier} to player's tool
- delete {cmdg::%player's uuid%::changingitem}
- send formatted "{@cmdgtitle} &7The item has been set to: {@cmdghigh}%player's tool%"
- else:
- send "{@cmdgtitle} &7Please don't use air for the item."
- on inventory click:
- if player's current inventory = (metadata tag "cmdgGUI" of player):
- cancel event
- index of event-slot = 0:
- cmdgEditBox(player)
- index of event-slot = 2:
- cmdgEditBase(player)
- index of event-slot = 4:
- close player's inventory
- set {cmdg::%player's uuid%::changingcmd} to true
- send "{@cmdgtitle} &7Use the command that you want to set."
- index of event-slot = 6:
- close player's inventory
- set {cmdg::%player's uuid%::changingitem} to true
- send "{@cmdgtitle} &7Rightclick with the item you want to use."
- index of event-slot = 8:
- close player's inventory
- kill {cmdg::%player's uuid%::glassbox}
- kill {cmdg::%player's uuid%::baseplate}
- kill {cmdg::%player's uuid%::itemcarrier}
- send "{@cmdgtitle} &7Successfully deleted!"
- else if player's current inventory = (metadata tag "cmdgselGUI" of player):
- cancel event
- index of event-slot = 44:
- cmdgEditGUI(player)
- else if index of event-slot > 9:
- "%event-slot%" doesn't contain "pane":
- set {_item} to event-slot
- set {_name} to name of event-slot
- clear lore of {_item}
- set helmet of {cmdg::%player's uuid%::glassbox} to {_item}
- replace "Box" in {_name} with "Current"
- set slot 4 of metadata tag "cmdgselGUI" of player to {_item} named "%{_name}%"
- else if player's current inventory = (metadata tag "cmdgbasGUI" of player):
- cancel event
- index of event-slot = 35:
- cmdgEditGUI(player)
- else if index of event-slot > 9:
- "%event-slot%" doesn't contain "pane":
- set {_item} to event-slot
- set {_name} to name of event-slot
- clear lore of {_item}
- set helmet of {cmdg::%player's uuid%::baseplate} to {_item}
- replace "Base" in {_name} with "Current"
- set slot 4 of metadata tag "cmdgbasGUI" of player to {_item} named "%{_name}%"
- command /cmdglass [<text>]:
- trigger:
- player has permission "cmdglass.use":
- if arg 1 is set:
- give player glass block named "{@cmdgtitle} {@cmdghigh}%arg 1%"
- else:
- send "{@cmdgtitle} &7Please write the command you want to use."
- else:
- send "{@cmdgtitle} &cInsufficient permissions!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement