Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Author: Nawo
- # Contact: [email protected]
- # Presentation: http://www.mpcforum.pl/topic/1423401-skrypt-na-case-opening/
- # Launge: Polish
- options:
- tag: &e&lDROP &8ยป
- important: &6
- general: &7
- leere: &8
- lore: &c
- command /case [<text="help">] [<text>] [<text>] [<text>]:
- trigger:
- if player has permission "case.*":
- if arg 1 is "help":
- send "{@tag}"
- send "{@important}/case add <name> <type(zwykla/magiczna)> {@leere}- {@general}Dodaje nowa skrzynke."
- send "{@important}/case remove <name> {@leere}- {@general}Usuwa skrzynke."
- send "{@important}/case edit <name> {@leere}- {@general}Edytuje zawartosc skrzyni."
- send "{@important}/case give <name> [<player/all>] [<number>] {@leere}- {@general}Daje nam skrzynie."
- send "{@important}/case list {@leere}- {@general}Lista skrzyn."
- send "{@important}/case open <name> [<player>] {@leere}- {@general}Otwiera skrzynie."
- if arg 1 is "add":
- if arg 2 is set:
- set {_name} to arg 2
- replace all "_" with " " in {_name}
- loop {case::chestlist::*}:
- if loop-value is {_name}:
- send "{@tag} {@general}Taka skrzynia juz istnieje!"
- stop
- if arg 3 is set:
- if arg 3 is "zwykla" or "magiczna":
- add {_name} to {case::chestlist::*}
- send "{@tag} {@general}Dodano skrzynie o nazwie {@important}%{_name}%{@general}."
- if arg 3 is "zwykla":
- set {case::type::%{_name}%} to "zwykla"
- send "{@tag} {@general}Dodano zwykla skrzynke."
- if arg 3 is "magiczna":
- set {case::type::%{_name}%} to "magiczna"
- send "{@tag} {@general}Dodano magiczna skrzynke."
- else:
- send "{@tag} {@important}/case add <name> <type=""zwykla""or""magiczna""> "
- stop
- else:
- send "{@tag} {@important}/case add <name> <type=""zwykla""or""magiczna""> "
- stop
- if arg 1 is "remove":
- if arg 2 is set:
- set {_name} to arg 2
- replace all "_" with " " in {_name}
- loop {case::chestlist::*}:
- if loop-value is {_name}:
- remove {_name} from {case::chestlist::*}
- delete {case::%{_name}%::itemlist::*}
- delete {case::type::%{_name}%}
- send "{@tag} {@general}Usunieto skrzynie o nazwie {@important}%{_name}%{@general}."
- stop
- send "{@tag} {@general}Taka skrzynia nie istnieje!"
- else:
- send "{@tag} {@important}/case remove <name>"
- stop
- if arg 1 is "edit":
- if arg 2 is set:
- set {_name} to arg 2
- replace all "_" with " " in {_name}
- loop {case::chestlist::*}:
- if loop-value is {_name}:
- open chest with 6 rows named "{@important}Edit menu case" to player
- wait 1 tick
- set {_slot} to 0
- loop {case::%{_name}%::itemlist::*}:
- set slot {_slot} of current inventory of player to loop-value-2
- add 1 to {_slot}
- set {case::player::%player%::openedit} to "%{_name}%"
- send "{@tag} {@general}Edytujesz zawartosc skrzyni {@important}%{_name}%{@general}." to player
- while inventory name of player is "{@important}Edit menu case":
- set {case::player::%player%::openedit} to "%{_name}%"
- wait 5 tick
- stop
- send "{@tag} {@general}Taka skrzynia nie istnieje!"
- else:
- send "{@tag} {@important}/case additem <name>"
- stop
- if arg 1 is "give":
- if arg 2 is set:
- set {_name} to arg 2
- replace all "_" with " " in {_name}
- loop {case::chestlist::*}:
- if loop-value is {_name}:
- if arg 3 is set:
- if arg 4 is set:
- set {_number} to arg 4 parsed as integer
- else:
- set {_number} to 64
- if arg 3 is "all":
- loop all players:
- if {case::type::%{_name}%} is "zwykla":
- add {_number} of chest named "{@important}%{_name}%" to loop-player's inventory
- else if {case::type::%{_name}%} is "magiczna":
- add {_number} of ender chest named "{@important}%{_name}%" to loop-player's inventory
- if arg 3 is not "all":
- set {_player} to arg 3 parsed as offlineplayer
- if {case::type::%{_name}%} is "zwykla":
- add {_number} of chest named "{@important}%{_name}%" to {_player}'s inventory
- else if {case::type::%{_name}%} is "magiczna":
- add {_number} of ender chest named "{@important}%{_name}%" to {_player}'s inventory
- else:
- if {case::type::%{_name}%} is "zwykla":
- add 64 of chest named "{@important}%{_name}%" to player's inventory
- else:
- add 64 of ender chest named "{@important}%{_name}%" to player's inventory
- stop
- send "{@tag} {@general}Taka skrzynia nie istnieje!"
- else:
- send "{@tag} {@important}/case give <name> [<type=""%%player%%""or""all"">] [<number>]"
- stop
- if arg 1 is "list":
- set {_2} to "%arg-2%" parsed as integer
- remove 1 from {_2}
- if arg-2 is not set:
- set {_2} to 0
- open chest with 6 rows named "{@important}Lista skrzynek:" to player
- wait 1 tick
- set {_slot} to 0
- loop 54 times:
- set {_22} to 54 * {_2}
- set {_ln} to loop-number + {_22}
- if "%{case::chestlist::%{_ln}%}%" doesn't contain "<none>":
- set player's current inventory's slot {_slot} to chest named "{@important}%{case::chestlist::%{_ln}%}%"
- add 1 to {_slot}
- wait 0.2 tick
- if arg 1 is "open":
- if arg 2 is set:
- if arg 3 is set:
- if player has permission "case.*":
- set {_player} to arg 3 parsed as player
- else:
- send "{@tag} {@general}Nie posiadasz uprawnien!"
- else:
- set {_player} to player
- set {_name} to arg 2
- replace all "_" with " " in {_name}
- loop {case::chestlist::*}:
- if loop-value is {_name}:
- if {case::type::%{_name}%} is "zwykla":
- if {_player}'s inventory contains chest named "{@important}%{_name}%":
- if (size of {case::%{_name}%::itemlist::*}) > 0:
- chance of 10%:
- remove 1 chest named "{@important}%{_name}%" from {_player}'s inventory
- send "{@tag} {@general}Skrzynia jest pusta!" to {_player}
- else:
- set {_item} to random element out of {case::%{_name}%::itemlist::*}
- if "%{_item}%" is "cauldron item":
- remove 1 chest named "{@important}%{_name}%" from {_player}'s inventory
- send "{@tag} {@general}Skrzynia jest pusta!" to {_player}
- stop
- remove 1 chest named "{@important}%{_name}%" from {_player}'s inventory
- wait 3 ticks
- add {_item} to {_player}'s inventory
- send "{@tag} {@general}Otworzyles skrzynie!" to {_player}
- else:
- send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
- else:
- send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
- else:
- if {_player}'s inventory contains ender chest named "{@important}%{_name}%":
- if (size of {case::%{_name}%::itemlist::*}) > 0:
- chance of 10%:
- remove 1 ender chest named "{@important}%{_name}%" from {_player}'s inventory
- send "{@tag} {@general}Skrzynia jest pusta!" to {_player}
- else:
- set {_item} to random element out of {case::%{_name}%::itemlist::*}
- if "%{_item}%" is "cauldron item":
- remove 1 ender chest named "{@important}%{_name}%" from {_player}'s inventory
- send "{@tag} {@general}Skrzynia jest pusta!" to {_player}
- stop
- remove 1 ender chest named "{@important}%{_name}%" from {_player}'s inventory
- wait 3 ticks
- add {_item} to {_player}'s inventory
- send "{@tag} {@general}Otworzyles skrzynie!" to {_player}
- else:
- send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
- else:
- send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
- stop
- send "{@tag} {@general}Taka skrzynia nie istnieje!" to {_player}
- on inventory close:
- if {case::player::%player%::openedit} is set:
- clear {case::%{case::player::%player%::openedit}%::itemlist::*}
- loop 54 times:
- if slot "%loop-number - 1%" parsed as an integer of current inventory of player is not air:
- set {_item} to slot loop-number - 1 of current inventory of player
- add {_item} to {case::%{case::player::%player%::openedit}%::itemlist::*}
- clear {case::player::%player%::openedit}
- send "{@tag} {@general}Zapisano."
- on inventory click:
- if "%inventory name of player's current inventory%" contains "Lista Skrzynek:":
- cancel event
- set {_T} to "%uncoloured name of player's current inventory's slot slot%"
- replace all " " with "_" in {_t}
- close player's inventory
- make player execute command "case edit %{_T}%"
- on quit:
- clear {case::player::%player%::openedit}
- on right click:
- if player's tool is chest or ender chest:
- cancel event
- loop {case::chestlist::*}:
- if uncolored name of player's tool is loop-value:
- cancel event
- set {_name} to uncolored name of player's tool
- replace all " " with "_" in {_name}
- execute player command "case open %{_name}%"
- stop
Advertisement
Add Comment
Please, Sign In to add comment