So I'm trying to make a skript for crates, and I wanted to make it so you can list all the crates that exist. I also wanted to list items inside crates. I'm not sure how to do this at all though... or if there is an easy way to make anything I already made. I just need help!
[doublepost=1564952833,1564952738][/doublepost]Oh right 1 more thing, I can get any addons I may need, and I already have a few to make this work 100%, I can make crates and delete them, add items and stuff, just don't know how to move on from here!
Code:
options:
prefix: &7[&dZarCrates&7]&f #What comes before everything
permission: zarcrates.
command /crates [<text>] [<text>] [<text>]:
aliases: /crate, /zarcrates, /zcrates, /zcrate, /zarcrate, /zarcrates:crate
permission: {@permission}*
trigger:
if arg 1 is not "create" or "make" or "delete" or "remove" or "item" or "give" or "list":
send ""
send "{@prefix} &bZarCrates&f usage:"
send ""
send "{@prefix} Creating and deleting crates:"
send "{@prefix} /crate (create/make) <crate_name> &7||&f Create crates"
send "{@prefix} /crate (delete/remove) <crate_name> &7||&f Delete crates"
send ""
send "{@prefix} Adding and removing items:"
send "{@prefix} /crate item (add/remove) <crate_name> &7||&f Remove/add the item you are holding to the crate"
send ""
send "{@prefix} Using crates:"
send "{@prefix} /crate give <crate_name> <player> &7||&f Give players crates"
send "{@prefix} /crate list &7||&f List all crates"
send ""
if arg 1 is "create" or "make":
if arg 2 is not set:
send "{@prefix} /crate (create/make) <crate_name>"
if arg 2 is set:
if {crates.%arg-2%} = 1:
send "{@prefix} Crate &b%arg-2%&f already exists!"
else:
set {crates.%arg-2%} to 1
send "{@prefix} Crate &b%arg-2%&f has been created!"
if arg 1 is "delete" or "remove":
if arg 2 is not set:
send "{@prefix} /crate (delete/remove) <crate_name>"
if arg 2 is set:
if {crates.%arg-2%} = 1:
delete {crates.%arg-2%}
delete {crates.%arg-2%.item1}
delete {crates.%arg-2%.item2}
delete {crates.%arg-2%.item3}
delete {crates.%arg-2%.item4}
delete {crates.%arg-2%.item5}
delete {crates.%arg-2%.item6}
delete {crates.%arg-2%.item7}
send "{@prefix} Crate &b%arg-2%&f has been deleted!"
else:
send "{@prefix} Crate &b%arg-2%&f does not exist!"
if arg 1 is "item":
if arg 2 is "add":
if arg 3 is set:
if {crates.%arg-3%} = 1:
if {crates.%arg-3%.item1} is not set:
set {crates.%arg-3%.item1} to player's held item
send "{@prefix} %{crates.%arg-3%.item1}% added!"
else:
if {crates.%arg-3%.item2} is not set:
set {crates.%arg-3%.item2} to player's held item
send "{@prefix} %{crates.%arg-3%.item2}% added!"
else:
if {crates.%arg-3%.item3} is not set:
set {crates.%arg-3%.item3} to player's held item
send "{@prefix} %{crates.%arg-3%.item3}% added!"
else:
if {crates.%arg-3%.item4} is not set:
set {crates.%arg-3%.item4} to player's held item
send "{@prefix} %{crates.%arg-3%.item4}% added!"
else:
if {crates.%arg-3%.item5} is not set:
set {crates.%arg-3%.item5} to player's held item
send "{@prefix} %{crates.%arg-3%.item5}% added!"
else:
if {crates.%arg-3%.item6} is not set:
set {crates.%arg-3%.item6} to player's held item
send "{@prefix} %{crates.%arg-3%.item6}% added!"
else:
if {crates.%arg-3%.item7} is not set:
set {crates.%arg-3%.item7} to player's held item
send "{@prefix} %{crates.%arg-3%.item7}% added!"
else:
send "{@prefix} Max items in a crate is 7"
else:
send "{@prefix} Crate &b%arg-3%&f does not exist!"
if arg 3 is not set:
send "{@prefix} /crate item add <crate_name>"
if arg 2 is "remove":
if arg 3 is set:
if {crates.%arg-3%} = 1:
if {crates.%arg-3%.item7} is set:
send "{@prefix} %{crates.%arg-3%.item7}% removed!"
delete {crates.%arg-3%.item7}
else:
if {crates.%arg-3%.item6} is set:
send "{@prefix} %{crates.%arg-3%.item6}% removed!"
delete {crates.%arg-3%.item6}
else:
if {crates.%arg-3%.item5} is set:
send "{@prefix} %{crates.%arg-3%.item5}% removed!"
delete {crates.%arg-3%.item5}
else:
if {crates.%arg-3%.item4} is set:
send "{@prefix} %{crates.%arg-3%.item4}% removed!"
delete {crates.%arg-3%.item4}
else:
if {crates.%arg-3%.item3} is set:
send "{@prefix} %{crates.%arg-3%.item3}% removed!"
delete {crates.%arg-3%.item3}
else:
if {crates.%arg-3%.item2} is set:
send "{@prefix} %{crates.%arg-3%.item2}% removed!"
delete {crates.%arg-3%.item2}
else:
if {crates.%arg-3%.item1} is set:
send "{@prefix} %{crates.%arg-3%.item1}% removed!"
delete {crates.%arg-3%.item1}
else:
send "{@prefix} There are no items to remove!"
else:
send "{@prefix} Crate &b%arg-3%&f does not exist!"
if arg 3 is not set:
send "{@prefix} /crate item remove <crate_name>"
if arg 2 is not set:
send "{@prefix} /crate item (add/remove) <crate_name>"
if arg 1 is "give":
if arg 2 is set:
if {crates.%arg-2%} = 1:
give player 1 of pink shulker box named "{@prefix} %arg-2% crate" with lore "&brightclick&f to open!"
else:
send "{@prefix} Crate &b%arg-2%&f does not exist!"
else:
send "{@prefix} /crate give <crate_name>"
if arg 1 is "list":
if arg 2 is set:
send "{@prefix} /crate list"
if arg 2 is not set:
open chest with 3 rows named "{@prefix} Crate list!" to player
wait 1 tick
make gui slot 0 of player with pink stained glass pane named "{@prefix}"
make gui slot 1 of player with pink stained glass pane named "{@prefix}"
make gui slot 2 of player with pink stained glass pane named "{@prefix}"
make gui slot 3 of player with pink stained glass pane named "{@prefix}"
make gui slot 4 of player with pink stained glass pane named "{@prefix}"
make gui slot 5 of player with pink stained glass pane named "{@prefix}"
make gui slot 6 of player with pink stained glass pane named "{@prefix}"
make gui slot 7 of player with pink stained glass pane named "{@prefix}"
make gui slot 8 of player with pink stained glass pane named "{@prefix}"
make gui slot 9 of player with pink stained glass pane named "{@prefix}"
make gui slot 10 of player with pink shulker box named "{@prefix} %arg-2% crate" to run [give player 1 of pink shulker box named "{@prefix} %arg-2% crate" with lore "&brightclick&f to open!"]