Facebook
From RoRap, 7 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 245
  1. Author: RoRap
  2. # Launge: Polish
  3.  
  4. variables:
  5.     {case::player::%player%::open} = false
  6.     {case::player::%player%::openwait} = false
  7.  
  8. options:
  9.    
  10.     # General
  11.    
  12.     tag: &5[&8&l>&4&l>&8&l>&5] # Przedrostek wiadomosci
  13.    
  14.     # Drop case
  15.    
  16.     chance drop key: 1.5% # Szansa na wykopanie klucza podana w procentach
  17.     chance drop chest: 5.2% # Szansa na wykopanie skrzyni podana w procentach
  18.     block drop: stone or dirt or gravel # Z jakiego bloku mozna wykopac skrzynie/klucz
  19.    
  20.     chance death key: 1.4% # Szansa na wypadniecie klucza po zabiciu gracza
  21.     chance death chest: 5.6% # Szansa na wypadniecie skrzyni po zabiciu gracza
  22.    
  23.     # Colour message:
  24.    
  25.     important: &6
  26.     general: &7
  27.     leere: &8
  28.    
  29.     lore: &c
  30.    
  31. command /case [<text="help">] [<text>] [<text>] [<text>]:
  32.     trigger:
  33.         if player has permission "case.*":
  34.             if arg 1 is "help":
  35.                 send "{@tag}"
  36.                 send "{@important}/case add <name> <type> {@leere}- {@general}Dodaje nowa skrzynke."
  37.                 send "{@important}/case remove <name> {@leere}- {@general}Usuwa skrzynke."
  38.                 send "{@important}/case edit <name> {@leere}- {@general}Edytuje zawartosc skrzyni."
  39.                 send "{@important}/case give <name> [<player/all>] [<number>] {@leere}- {@general}Daje nam klucz i skrzynie."
  40.                 send "{@important}/case list {@leere}- {@general}Lista skrzyn w gui."
  41.                 send "{@important}/case stats [<player>] {@leere}- {@general}Statystyki gracza."
  42.                 send "{@important}/case open <name> [<player>] {@leere}- {@general}Otwiera skrzynie."
  43.             if arg 1 is "add":
  44.                 if arg 2 is set:
  45.                     set {_name} to arg 2
  46.                     replace all "_" with " " in {_name}
  47.                     loop {case::chestlist::*}:
  48.                         if loop-value is {_name}:
  49.                             send "{@tag} {@general}Taka skrzynia juz istnieje!"
  50.                             stop
  51.                     if arg 3 is set:
  52.                         if arg 3 is "key" or "notkey":
  53.                             add {_name} to {case::chestlist::*}
  54.                             send "{@tag} {@general}Dodano skrzynie o nazwie {@important}%{_name}%{@general}."
  55.                             if arg 3 is "key":
  56.                                 set {case::type::%{_name}%} to "key"
  57.                                 send "{@tag} {@general}Skrzynia wymaga klucza."
  58.                             if arg 3 is "notkey":
  59.                                 set {case::type::%{_name}%} to "notkey"
  60.                                 send "{@tag} {@general}Skrzynia nie wymaga klucza."
  61.                         else:
  62.                             send "{@tag} {@important}/case add <name> <type=""key""or""notkey""> "
  63.                     else:
  64.                         send "{@tag} {@important}/case add <name> <type=""key""or""notkey""> "
  65.                 else:
  66.                     send "{@tag} {@important}/case add <name> <type=""key""or""notkey""> "
  67.             if arg 1 is "remove":
  68.                 if arg 2 is set:
  69.                     set {_name} to arg 2
  70.                     replace all "_" with " " in {_name}
  71.                     loop {case::chestlist::*}:
  72.                         if loop-value is {_name}:
  73.                             remove {_name} from {case::chestlist::*}
  74.                             delete {case::%{_name}%::itemlist::*}
  75.                             delete {case::type::%{_name}%}
  76.                             send "{@tag} {@general}Usunieto skrzynie o nazwie {@important}%{_name}%{@general}."
  77.                             stop
  78.                     send "{@tag} {@general}Taka skrzynia nie istnieje!"
  79.                 else:
  80.                     send "{@tag} {@important}/case remove <name>"
  81.             if arg 1 is "edit":
  82.                 if arg 2 is set:
  83.                     set {_name} to arg 2
  84.                     replace all "_" with " " in {_name}
  85.                     loop {case::chestlist::*}:
  86.                         if loop-value is {_name}:
  87.                             open chest with 3 rows named "{@important}Edytujesz: {@lore}%{_name}%" to player
  88.                             wait 1 tick
  89.                             set {_slot} to 0
  90.                             loop {case::%{_name}%::itemlist::*}:
  91.                                 set slot {_slot} of current inventory of player to loop-value-2
  92.                                 add 1 to {_slot}
  93.                             set {case::player::%player%::openedit} to "%{_name}%"
  94.                             send "{@tag} {@general}Edytujesz zawartosc skrzyni {@important}%{_name}%{@general}." to player
  95.                             while inventory name of player is "{@important}Edytujesz: {@lore}%{_name}%":
  96.                                 set {case::player::%player%::openedit} to "%{_name}%"
  97.                                 wait 5 tick
  98.                             stop
  99.                     send "{@tag} {@general}Taka skrzynia nie istnieje!"
  100.                 else:
  101.                     send "{@tag} {@important}/case additem <name>"
  102.             if arg 1 is "give":
  103.                 if arg 2 is set:
  104.                     set {_name} to arg 2
  105.                     replace all "_" with " " in {_name}
  106.                     loop {case::chestlist::*}:
  107.                         if loop-value is {_name}:
  108.                             set {_lore} to "%{case::%{_name}%::itemlist::*}%"
  109.                             replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  110.                             replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  111.                             if arg 3 is set:
  112.                                 if arg 4 is set:
  113.                                     set {_number} to arg 4 parsed as integer
  114.                                 else:
  115.                                     set {_number} to 64
  116.                                 if arg 3 is "all":
  117.                                     loop all players:
  118.                                         if {case::type::%{_name}%} is "key":
  119.                                             add {_number} of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to loop-player's inventory
  120.                                             add {_number} of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to loop-player's inventory
  121.                                         else if {case::type::%{_name}%} is "notkey":
  122.                                             add {_number} of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to loop-player's inventory
  123.                                 if arg 3 is not "all":
  124.                                     set {_player} to arg 3 parsed as offlineplayer
  125.                                     if {case::type::%{_name}%} is "key":
  126.                                         add {_number} of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to {_player}'s inventory
  127.                                         add {_number} of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to {_player}'s inventory
  128.                                     else if {case::type::%{_name}%} is "notkey":
  129.                                         add {_number} of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to {_player}'s inventory
  130.                             else:
  131.                                 if {case::type::%{_name}%} is "key":
  132.                                     add 64 of chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to player's inventory
  133.                                     add 64 of tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" to player's inventory
  134.                                 else:
  135.                                     add 64 of ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to player's inventory
  136.                             stop
  137.                     send "{@tag} {@general}Taka skrzynia nie istnieje!"
  138.                 else:
  139.                     send "{@tag} {@important}/case give <name> [<type=""%%player%%""or""all"">] [<number>]"
  140.             if arg 1 is "list":
  141.                 open chest with 6 rows named "{@important}Lista skrzynek:" to player
  142.                 wait 1 tick
  143.                 set {_slot} to 0
  144.                 loop {case::chestlist::*}:
  145.                     if loop-value contains "<none>":
  146.                         remove loop-value from {case::chestlist::*}
  147.                     set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  148.                     set {_name%loop-index%} to loop-value
  149.                     replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  150.                     replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  151.                     replace all " " with "_" in {_name%loop-index%}
  152.                     if {case::type::%loop-value%} is "key":
  153.                         format slot {_slot} of player with 1 of chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  154.                     else:
  155.                         format slot {_slot} of player with 1 of ender chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  156.                     add 1 to {_slot}
  157.                     wait 1 tick
  158.             if arg 1 is "stats":
  159.                 if arg 2 is set:
  160.                     set {_player} to arg 2 parsed as player
  161.                 else:
  162.                     set {_player} to player
  163.                 send "{@tag} {@general}Otworzone skrzynie gracza {@important}%{_player}%{@general}:"
  164.                 loop {case::chestlist::*}:
  165.                     if {case::player::%{_player}%::stats::%loop-value%} is set:
  166.                         send " {@important}%loop-value%{@leere}: {@general}%{case::player::%{_player}%::stats::%loop-value%}%"
  167.                     else:
  168.                         send " {@important}%loop-value%{@leere}: {@general}0"
  169.         if arg 1 is "open":
  170.             if arg 2 is set:
  171.                 if arg 3 is set:
  172.                     if player has permission "case.*":
  173.                         set {_player} to arg 3 parsed as player
  174.                     else:
  175.                         send "{@tag} {@general}Nie posiadasz uprawnien!"
  176.                 else:
  177.                     set {_player} to player
  178.                 set {_name} to arg 2
  179.                 replace all "_" with " " in {_name}
  180.                 loop {case::chestlist::*}:
  181.                     if loop-value is {_name}:
  182.                         set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  183.                         replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  184.                         replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  185.                         set lore of player's tool to " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  186.                         if {case::type::%{_name}%} is "key":
  187.                             if {_player}'s inventory contains tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%":
  188.                                 if {_player}'s inventory contains chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || ":
  189.                                     if {case::player::%{_player}%::openwait} is true:
  190.                                         send "{@tag} {@general}Juz otwierasz skrzynie!" to {_player}
  191.                                     else:
  192.                                         if (size of {case::%{_name}%::itemlist::*}) > 0:
  193.                                             add 1 to {case::player::%{_player}%::stats::%{_name}%}
  194.                                             remove 1 tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_name}%" from {_player}'s inventory
  195.                                             remove 1 chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " from {_player}'s inventory
  196.                                             set {case::player::%{_player}%::open} to true
  197.                                             set {case::player::%{_player}%::openwait} to true
  198.                                             open chest with 6 rows named "{@important}Skrzynia {@lore}%{_name}%" to {_player}
  199.                                             wait 1 tick
  200.                                             loop 9 times:
  201.                                                 set {_item%loop-number%} to random element out of {case::%{_name}%::itemlist::*}
  202.                                                 format slot loop-number + 8 of {_player} with {_item%loop-number%} to be unstealable
  203.                                                 format slot loop-number - 1 of {_player} with 1 of black stained glass pane to be unstealable
  204.                                                 format slot loop-number + 17 of {_player} with 1 of black stained glass pane to be unstealable
  205.                                             format slot 4 of {_player} with 1 of hopper to be unstealable
  206.                                             set {_slot} to 0
  207.                                             loop {case::%{_name}%::itemlist::*}:
  208.                                                 if {case::player::%{_player}%::open} is true:
  209.                                                     add 1 to {_slot}
  210.                                                     format slot {_slot} + 26 of {_player} with loop-value-2 to be unstealable
  211.                                                     wait 1 tick
  212.                                             set {_random} to random integer between 20 and 30
  213.                                             wait 1 seconds
  214.                                             loop {_random} times:
  215.                                                 if loop-number > 15:
  216.                                                     loop loop-number - 12 times:
  217.                                                         wait 1 tick
  218.                                                 else:
  219.                                                     wait 3 tick
  220.                                                 play raw sound "mob.skeleton.death" at {_player} with pitch 8 volume 1
  221.                                                 loop 8 times:
  222.                                                     set {_item%loop-number-2%} to {_item%loop-number-2 + 1%}
  223.                                                     if {case::player::%{_player}%::open} is true:
  224.                                                         format slot loop-number-2 + 8 of {_player} with {_item%loop-number-2%} to be unstealable
  225.                                                 set {_item9} to random element out of {case::%{_name}%::itemlist::*}
  226.                                                 if {case::player::%{_player}%::open} is true:
  227.                                                     format slot 17 of {_player} with {_item9} to be unstealable
  228.                                             set {case::player::%{_player}%::open} to false
  229.                                             wait 3 seconds
  230.                                             launch flickering trailing ball firework colored green at {_player} timed 1
  231.                                             add {_item5} to {_player}'s inventory
  232.                                             play raw sound "mob.endermen.portal" at {_player} with pitch 0.1 volume 1
  233.                                             set {case::player::%{_player}%::openwait} to false
  234.                                         else:
  235.                                             send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
  236.                                 else:
  237.                                     send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
  238.                             else:
  239.                                 send "{@tag} {@general}Nie posiadasz klucza do tej skrzyni!" to {_player}
  240.                         else:
  241.                             if {_player}'s inventory contains ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || ":
  242.                                 if {case::player::%{_player}%::openwait} is true:
  243.                                     send "{@tag} {@general}Juz otwierasz skrzynie!" to {_player}
  244.                                 else:
  245.                                     if (size of {case::%{_name}%::itemlist::*}) > 0:
  246.                                         add 1 to {case::player::%{_player}%::stats::%{_name}%}
  247.                                         remove 1 ender chest named "{@important}%{_name}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " from {_player}'s inventory
  248.                                         set {case::player::%{_player}%::open} to true
  249.                                         set {case::player::%{_player}%::openwait} to true
  250.                                         open chest with 6 rows named "{@important}Skrzynia {@lore}%{_name}%" to {_player}
  251.                                         wait 1 tick
  252.                                         loop 9 times:
  253.                                             set {_item%loop-number%} to random element out of {case::%{_name}%::itemlist::*}
  254.                                             format slot loop-number + 8 of {_player} with {_item%loop-number%} to be unstealable
  255.                                             format slot loop-number - 1 of {_player} with 1 of black stained glass pane to be unstealable
  256.                                             format slot loop-number + 17 of {_player} with 1 of black stained glass pane to be unstealable
  257.                                         format slot 4 of {_player} with 1 of hopper to be unstealable
  258.                                         set {_slot} to 0
  259.                                         loop {case::%{_name}%::itemlist::*}:
  260.                                             if {case::player::%{_player}%::open} is true:
  261.                                                 add 1 to {_slot}
  262.                                                 format slot {_slot} + 26 of {_player} with loop-value-2 to be unstealable
  263.                                                 wait 1 tick
  264.                                         set {_random} to random integer between 20 and 30
  265.                                         wait 1 seconds
  266.                                         loop {_random} times:
  267.                                             if loop-number > 15:
  268.                                                 loop loop-number - 12 times:
  269.                                                     wait 1 tick
  270.                                             else:
  271.                                                 wait 3 tick
  272.                                             play raw sound "mob.skeleton.death" at {_player} with pitch 8 volume 1
  273.                                             loop 8 times:
  274.                                                 set {_item%loop-number-2%} to {_item%loop-number-2 + 1%}
  275.                                                 if {case::player::%{_player}%::open} is true:
  276.                                                     format slot loop-number-2 + 8 of {_player} with {_item%loop-number-2%} to be unstealable
  277.                                             set {_item9} to random element out of {case::%{_name}%::itemlist::*}
  278.                                             if {case::player::%{_player}%::open} is true:
  279.                                                 format slot 17 of {_player} with {_item9} to be unstealable
  280.                                         set {case::player::%{_player}%::open} to false
  281.                                         wait 3 seconds
  282.                                         broadcast "{@tag} {@general}Gracz {@important}%{_player}% {@general}wylosowal {@important}%{_item5}% {@general}ze skrzyni {@important}%{_name}%{@general}. Gratulacje!"
  283.                                         launch flickering trailing ball firework colored green at {_player} timed 1
  284.                                         add {_item5} to {_player}'s inventory
  285.                                         play raw sound "mob.endermen.portal" at {_player} with pitch 0.1 volume 1
  286.                                         set {case::player::%{_player}%::openwait} to false
  287.                                     else:
  288.                                         send "{@tag} {@general}W tej skrzyni nie mozna nic wylosowac!" to {_player}
  289.                             else:
  290.                                 send "{@tag} {@general}Nie posiadasz tej skrzyni!" to {_player}
  291.                         stop
  292.                 send "{@tag} {@general}Taka skrzynia nie istnieje!" to {_player}
  293. on inventory close:
  294.     if {case::player::%player%::open} is true:
  295.         set {case::player::%player%::open} to false
  296.         send "{@tag} {@general}Zamknieto podglad losowania."
  297.     if {case::player::%player%::openedit} is set:
  298.         clear {case::%{case::player::%player%::openedit}%::itemlist::*}
  299.         loop 27 times:
  300.             if slot "%loop-number - 1%" parsed as an integer of current inventory of player is not air:
  301.                 set {_item} to slot loop-number - 1 of current inventory of player
  302.                 add {_item} to {case::%{case::player::%player%::openedit}%::itemlist::*}
  303.         clear {case::player::%player%::openedit}
  304.         send "{@tag} {@general}Zapisano."
  305. on quit:
  306.     set {case::player::%player%::open} to false
  307.     set {case::player::%player%::openwait} to false
  308.     clear {case::player::%player%::openedit}
  309. on death:
  310.     set {case::player::%victim%::open} to false
  311.     set {case::player::%victim%::openwait} to false
  312.     clear {case::player::%player%::openedit}
  313.     if attacker is a player:
  314.         chance of {@chance death chest}:
  315.             set {_element} to random element out of {case::chestlist::*}
  316.             set {_lore} to "%{case::%{_element}%::itemlist::*}%"
  317.             replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  318.             replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  319.             if {case::type::%{_element}%} is "key":
  320.                 drop chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " at location of victim
  321.             else:
  322.                 drop ender chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " at location of victim
  323.         chance of {@chance death key}:
  324.             set {_element} to random element out of {case::chestlist::*}
  325.             if {case::type::%{_element}%} is "notkey":
  326.                 drop tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_element}%" at location of victim
  327. on right click:
  328.     if player's tool is chest or ender chest:
  329.         loop {case::chestlist::*}:
  330.             if uncolored name of player's tool is loop-value:
  331.                 cancel event
  332.                 set {_name} to uncolored name of player's tool
  333.                 replace all " " with "_" in {_name}
  334.                 execute player command "case open %{_name}%"
  335.                 stop
  336.     if player's tool is tripwire hook:
  337.         if name of player's tool contains "Klucz do skrzyni":
  338.             cancel event
  339.             open chest with 6 rows named "{@important}Lista skrzynek:" to player
  340.             wait 1 tick
  341.             set {_slot} to 0
  342.             loop {case::chestlist::*}:
  343.                 if loop-value contains "<none>":
  344.                     remove loop-value from {case::chestlist::*}
  345.                 set {_lore} to "%{case::%loop-value%::itemlist::*}%"
  346.                 set {_name%loop-index%} to loop-value
  347.                 replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  348.                 replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  349.                 replace all " " with "_" in {_name%loop-index%}
  350.                 if {case::type::%loop-value%} is "key":
  351.                     format slot {_slot} of player with 1 of chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  352.                 else:
  353.                     format slot {_slot} of player with 1 of ender chest named "{@important}%loop-value%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || " to run [close player's inventory]->[wait 2 tick]->[execute player command "case open %{_name%{_slot}%}%"]
  354.                 add 1 to {_slot}
  355.                 wait 1 tick
  356. on mine of {@block drop}:
  357.     chance of {@chance drop chest}:
  358.         set {_element} to random element out of {case::chestlist::*}
  359.         set {_lore} to "%{case::%{_element}%::itemlist::*}%"
  360.         replace all ", " with "|| {@leere}- {@lore}" in {_lore}
  361.         replace all "and " with "|| {@leere}- {@lore}" in {_lore}
  362.         if {case::type::%{_element}%} is "key":
  363.             drop chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  364.         else:
  365.             drop ender chest named "{@important}%{_element}%" with lore " || {@important}W tej skrzyni mozesz zdobyc: || || {@leere}- {@lore}%{_lore}% || "
  366.         play raw sound "mob.endermen.portal" at player with pitch 0.001 volume 1
  367.         send "{@tag} {@general}Zdobyles skrzynie {@important}%{_element}%{@general}!"
  368.     chance of {@chance drop key}:
  369.         set {_element} to random element out of {case::chestlist::*}
  370.         if {case::type::%{_element}%} is "key":
  371.             drop tripwire hook named "{@important}Klucz do skrzyni {@lore}%{_element}%"
  372.             play raw sound "mob.endermen.portal" at player with pitch 0.001 volume 1
  373.             send "{@tag} {@general}Zdobyles klucz do skrzyni {@important}%{_element}%{@general}!"