xNawi

Castle

Jan 4th, 2016
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Author: Nawo
  2. # contact: romug1337@gmail.com
  3. # Presentation: https://skript.pl/temat/6478-skywars/
  4. # Launge: Polish
  5.  
  6. variables:
  7.  
  8.     {skywars::gracz::kill::%player%} = 0
  9.     {skywars::gracz::death::%player%} = 0
  10.     {skywars::gracz::win::%player%} = 0
  11.     {skywars::gracz::pkt::%player%} = 0
  12.     {skywars::gracz::%player%::dolacz} = false
  13.     {skywars::gracz::%player%::invite} = false
  14.    
  15. options:
  16.    
  17.     # General
  18.     prefix: &8[&6SkyWars&8]
  19.     time countdown: 15
  20.     permission: skywars.*
  21.    
  22.     # Coins
  23.     coins add: 50
  24.    
  25.     # Class
  26.     item 1: ender pearl of silk touch 1
  27.     name 1: Ninja
  28.     lore 1:  &2Klasa zawiera:||&9- 1 ender perla||&9- 1 Double Jump||&9- Niewidzialnosc na 3 sekundy
  29.  
  30.     item 2: stick of silk touch 1
  31.     name 2: Menel
  32.     lore 2: &2Klasa zawiera:||&9- 1 Patyk Menela(strzela sniezkami)||&9- 16 sniezek
  33.  
  34.     item 3: dirt of silk touch 1
  35.     name 3: Przemytnik
  36.     lore 3: &2Klasa zawiera:||&9- 1 dirt odrzut 2||&9- 24 sniezki
  37.  
  38.     item 4: gold ingot of silk touch 1
  39.     name 4: SWAG
  40.     lore 4: &2Klasa zawiera:||&9- 1 zloty miecz||&9- 1 zlote buty||&9- 1 zlote spodnie||&9- 1 zloty napiersnik||&9- 1 zloty helm||&9- 32 zlota||&9- 16 sniezek
  41.  
  42.     item 5: bow of silk touch 1
  43.     name 5: Lowca
  44.     lore 5: &2Klasa zawiera:||&9- 64 sniezki||&9- 1 zelazny miecz ostrosc 1||&9- 1 zelazne buty||&9- 1 zelazne spodnie||&9- 1 zelazny napiersnik||&9- 1 zelazny helm||&9- 1 luk odrzut 1 i moc 1||&9- 32 strzaly
  45.  
  46.     item 6: iron sword of silk touch 1
  47.     name 6: Zolnierz
  48.     lore 6: &2Klasa zawiera:||&9- 1 zelazny miecz ostrosc 3 i odrzut 1||&9- zelazny helm||&9- diamentowy napiersnik||&9- zelazne spodnie||&9- diamentowe buty  
  49.  
  50.     item 7: diamond axe of silk touch 1
  51.     name 7: Topornik
  52.     lore 7: &2Klasa zawiera:||&9- diamentowa siekiera ostrosc 4||&9- skorzana tunika
  53.  
  54.     item 8: bread of silk touch 1
  55.     name 8: Kucharz
  56.     lore 8: &2Klasa zawiera:||&9- zelazny miecz||&9- 5 chlebow||&9- 3 zlote jablka
  57.  
  58.     item 9: tnt of silk touch 1
  59.     name 9: Pirotechnik
  60.     lore 9: &2Klasa zawiera:||&9- drewniany miecz||&9- 5 tnt||&9- zapalniczka
  61.  
  62. command /skywars [<text="info">] [<text>] [<text>]:
  63.     aliases: sw
  64.     trigger:
  65.         if arg 1 is "info":
  66.             send "&8>======{@prefix}&8======"
  67.             send " "
  68.             send "&8> &6/skywars join &8- &7Dolacza do rozgrywki."
  69.             send "&8> &6/skywars leave &8- &7opuszcza rozgrywke."
  70.             send "&8> &6/skywars list &8- &7lista aren."
  71.             send "&8> &6/skywars top &8- &7Najlepsi gracze."
  72.             send "&8> &6/skywars stats &8- &7Statystyki gracza."
  73.             send "&8> &6/skywars gui &8- &7Otwiera menu."
  74.             send "&8> &6/skywars select &8- &7Wybiera klase."
  75.             send "&8> &6/skywars start &8- &7Glosuje na start gry."
  76.             if player has permission "{@permission}":
  77.                 send " "
  78.                 send "&8> &6/skywars create &8- &7Tworzy nowa arene."
  79.                 send "&8> &6/skywars remove &8- &7Usuwa arene."
  80.                 send "&8> &6/skywars setspawn &8- &7Ustawia spawny dla graczy."
  81.                 send "&8> &6/skywars setlobby &8- &7Ustawia lobby dla areny."
  82.                 send "&8> &6/skywars reload &8- &7Przeladowuje skrypt."
  83.                 send "&8> &6/skywars setplayers &8- &7Ustawia liczbe graczy na arenie."
  84.                 send "&8> &6/skywars seteq &8- &7Ustawia inwentarz klas."
  85.                 send "&8> &6/skywars setpkt &8- &7Ustawia punkty graczy."
  86.             send " "
  87.             send "&8>======{@prefix}&8======"
  88.         if arg 1 is "start":
  89.             if {skywars::gracz::%player%::dolacz} is true:
  90.                 if {skywars::status::%{skywars::gracz::%player%::arena}%} is not "w trakcie" or "odliczanie":
  91.                     if {skywars::gracz::%player%::invite} is false:
  92.                         if (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) > 1:
  93.                             set {skywars::gracz::%player%::invite} to true
  94.                             add 1 to {skywars::invite::%{skywars::gracz::%player%::arena}%}
  95.                             set {_num} to rounded up ({skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%} / 2)
  96.                             send "{@prefix} &7Zaglosowales na start gry. &8[&e%{skywars::invite::%{skywars::gracz::%player%::arena}%}%&8/&6%{_num}%&8]"
  97.                             if {skywars::invite::%{skywars::gracz::%player%::arena}%} = {_num}:
  98.                                 loop {skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%} times:
  99.                                     set {_random%loop-number%} to random element out of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  100.                                     teleport {_random%loop-number%} to {skywars::arena::spawn%loop-number%::%{skywars::gracz::%player%::arena}%}
  101.                                     remove {_random%loop-number%} from {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  102.                                     add {_random%loop-number%} to {_num::*}
  103.                                 loop {_num::*}:
  104.                                     add loop-value to {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  105.                                 loop blocks in radius 100 around player:
  106.                                     if loop-block is chest:
  107.                                         clear inventory of block at location of loop-block
  108.                                         set {_num} to a random integer between 1 and 5
  109.                                         loop {_num} times:
  110.                                             set {_random} to a random element out of {skywars::eqrandom::*}
  111.                                             add {_random} to inventory of block at location of loop-block
  112.                                 set {skywars::status::%{skywars::gracz::%player%::arena}%} to "odliczanie"
  113.                                 loop {@time countdown} times:
  114.                                     loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  115.                                         play raw sound "note.pling" at loop-value with pitch 1 volume 5
  116.                                         set {_x} to level of loop-value - 1
  117.                                         set level of loop-value to {_x}
  118.                                     wait 1 second
  119.                                 set {skywars::status::%{skywars::gracz::%player%::arena}%} to "w trakcie"
  120.                                 loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  121.                                     add location of block under loop-value to {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}
  122.                                     add type of block under loop-value to {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::*}
  123.                                     set block under loop-value to air
  124.                                     play raw sound "note.pling" at loop-value-1 with pitch 2 volume 5
  125.                                     send "{@prefix} &7Gra wystartowala!" to loop-value
  126.                                     clear loop-value's inventory
  127.                                     loop {skywars::eq%{skywars::gracz::inv::%loop-value%}%::*}:
  128.                                         add loop-value-2 to loop-value-1's inventory
  129.                                     set level of loop-value to 0
  130.                         else:
  131.                             send "{@prefix} &7Na arenie jest zbyt malo graczy!"
  132.                     else:
  133.                         send "{@prefix} &7Juz glosowales!"
  134.         if arg 1 is "seteq":
  135.             if player has permission "{@permission}":
  136.                 if arg 2 is set:
  137.                     if arg 2 is "{@name 1}" or "{@name 2}" or "{@name 3}" or "{@name 4}" or "{@name 5}" or "{@name 6}" or "{@name 7}" or "{@name 8}" or "{@name 9}" or "random":
  138.                         open chest with 3 rows named "&7Edytujesz &6%arg 2%" to player
  139.                         wait 1 tick
  140.                         set {_slot} to 0
  141.                         loop {skywars::eq%arg 2%::*}:
  142.                             set slot {_slot} of current inventory of player to loop-value-1
  143.                             add 1 to {_slot}
  144.                         set {skywars::player::%player%::openedit} to "%arg 2%"
  145.                         send "{@prefix} &7Edytujesz &6%arg 2%"
  146.                         while inventory name of player is "&7Edytujesz &6%arg 2%":
  147.                             set {skywars::player::%player%::openedit} to "%arg 2%"
  148.                             wait 5 tick
  149.                         stop
  150.                     else:
  151.                         send "{@prefix} &7Uzycie: &6/skywars buy &c<klasa>"
  152.                         send " "
  153.                         send "&8>&6 {@name 1}"
  154.                         send "&8>&6 {@name 2}"
  155.                         send "&8>&6 {@name 3}"
  156.                         send "&8>&6 {@name 4}"
  157.                         send "&8>&6 {@name 5}"
  158.                         send "&8>&6 {@name 6}"
  159.                         send "&8>&6 {@name 7}"
  160.                         send "&8>&6 {@name 8}"
  161.                         send "&8>&6 {@name 9}"
  162.                         send "&8>&6 random"
  163.                 else:
  164.                     send "{@prefix} &7Uzycie: &6/skywars buy &7<&6KLASA&7>"
  165.                     send " "
  166.                     send "&8>&6 {@name 1}"
  167.                     send "&8>&6 {@name 2}"
  168.                     send "&8>&6 {@name 3}"
  169.                     send "&8>&6 {@name 4}"
  170.                     send "&8>&6 {@name 5}"
  171.                     send "&8>&6 {@name 6}"
  172.                     send "&8>&6 {@name 7}"
  173.                     send "&8>&6 {@name 8}"
  174.                     send "&8>&6 {@name 9}"
  175.                     send "&8>&6 random"
  176.             else:
  177.                 send "&cNie posiadasz uprawnien!"
  178.         if arg 1 is "setpkt":
  179.             if player has permission "{@permission}":
  180.                 if arg 2 is set:
  181.                     if arg 2 is "add" or "remove" or "set":
  182.                         if arg 3 is set:
  183.                             set {_player} to arg 3 parsed as player
  184.                         else:
  185.                             set {_player} to player
  186.                         if arg 3 is set:
  187.                             if arg 2 is "add":
  188.                                 add arg 3 to {skywars::gracz::pkt::%{_player}%}
  189.                                 send "{@prefix} &7Dodales &6%arg 3% punktow &7dla gracza &6%{_player}%&7."
  190.                             if arg 2 is "remove":
  191.                                 remove arg 3 from {skywars::gracz::pkt::%{_player}%}
  192.                                 send "{@prefix} &7Zabrales &6%arg 3% punktow &7dla gracza &6%{_player}%&7."
  193.                             if arg 2 is "set":
  194.                                 set {skywars::gracz::pkt::%{_player}%} to arg 3
  195.                                 send "{@prefix} &7Ustawiles &6%arg 3% punktow &7dla gracza &6%{_player}%&7."
  196.                         else:
  197.                             send "{@prefix} &7Uzycie: &6/skywars setpkt &7<&6ADD&8/&6REMOVE&8/&6SET&7> <&6GRACZ&7> <&6LICZBA&7>"
  198.                     else:
  199.                         send "{@prefix} &7Uzycie: &6/skywars setpkt &7<&6ADD&8/&6REMOVE&8/&6SET&7> <&6GRACZ&7> <&6LICZBA&7>"
  200.                 else:
  201.                     send "{@prefix} &7Uzycie: &6/skywars setpkt &7<&6ADD&8/&6REMOVE&8/&6SET&7> <&6GRACZ&7> <&6LICZBA&7>"
  202.             else:
  203.                 send "&cNie posiadasz uprawnien!"
  204.         if arg 1 is "select":
  205.             if {skywars::gracz::%player%::dolacz} is true:
  206.                 if arg 2 is set:
  207.                     if arg 2 is "{@name 1}" or "{@name 2}" or "{@name 3}" or "{@name 4}" or "{@name 5}" or "{@name 6}" or "{@name 7}" or "{@name 8}" or "{@name 9}":
  208.                         set {skywars::gracz::inv::%player%} to arg 2
  209.                         send "{@prefix} &7Ustawiles klase &6%arg 2%"
  210.                     else:
  211.                         send "{@prefix} &7Uzycie: &6/skywars select &c<klasa>"
  212.                         send " "
  213.                         send "&8>&6 {@name 1}"
  214.                         send "&8>&6 {@name 2}"
  215.                         send "&8>&6 {@name 3}"
  216.                         send "&8>&6 {@name 4}"
  217.                         send "&8>&6 {@name 5}"
  218.                         send "&8>&6 {@name 6}"
  219.                         send "&8>&6 {@name 7}"
  220.                         send "&8>&6 {@name 8}"
  221.                         send "&8>&6 {@name 9}"
  222.                 else:
  223.                     send "{@prefix} &7Uzycie: &6/skywars select &7<&6KLASA&7>"
  224.                     send " "
  225.                     send "&8>&6 {@name 1}"
  226.                     send "&8>&6 {@name 2}"
  227.                     send "&8>&6 {@name 3}"
  228.                     send "&8>&6 {@name 4}"
  229.                     send "&8>&6 {@name 5}"
  230.                     send "&8>&6 {@name 6}"
  231.                     send "&8>&6 {@name 7}"
  232.                     send "&8>&6 {@name 8}"
  233.                     send "&8>&6 {@name 9}"
  234.             else:
  235.                 send "{@prefix} &7Nie jestes na zadnej arenie!"
  236.         if arg 1 is "gui":
  237.             if {skywars::gracz::%player%::dolacz} is true:
  238.                 open chest with 1 rows named "&6Wybierz klase" to player
  239.                 wait 1 tick
  240.                 format slot 0 of player with 1 of {@item 1} named "&6{@name 1}" with lore "{@lore 1}" to run [execute player command "/skywars select {@name 1}"]
  241.                 format slot 1 of player with 1 of {@item 2} named "&6{@name 2}" with lore "{@lore 2}" to run [execute player command "/skywars select {@name 2}"]
  242.                 format slot 2 of player with 1 of {@item 3} named "&6{@name 3}" with lore "{@lore 3}" to run [execute player command "/skywars select {@name 3}"]
  243.                 format slot 3 of player with 1 of {@item 4} named "&6{@name 4}" with lore "{@lore 4}" to run [execute player command "/skywars select {@name 4}"]
  244.                 format slot 4 of player with 1 of {@item 5} named "&6{@name 5}" with lore "{@lore 5}" to run [execute player command "/skywars select {@name 5}"]
  245.                 format slot 5 of player with 1 of {@item 6} named "&6{@name 6}" with lore "{@lore 6}" to run [execute player command "/skywars select {@name 6}"]
  246.                 format slot 6 of player with 1 of {@item 7} named "&6{@name 7}" with lore "{@lore 7}" to run [execute player command "/skywars select {@name 7}"]
  247.                 format slot 7 of player with 1 of {@item 8} named "&6{@name 8}" with lore "{@lore 8}" to run [execute player command "/skywars select {@name 8}"]
  248.                 format slot 8 of player with 1 of {@item 9} named "&6{@name 9}" with lore "{@lore 9}" to run [execute player command "/skywars select {@name 9}"]
  249.             else:
  250.                 send "{@prefix} &7Nie jestes na arenie."
  251.         if arg 1 is "setplayers":
  252.             if player has permission "{@permission}":
  253.                 if arg 2 is set:
  254.                     if {skywars::arena::id::%arg 2%} is set:
  255.                         if arg 3 is set:
  256.                             set {skywars::arena::minimumplayers::%arg 2%} to arg 3 parsed as integer
  257.                             send "{@prefix} &7Ustawiono &6%arg 3% &7graczy dla areny o o ID &6%arg 2%&7."
  258.                         else:
  259.                             send "{@prefix} &7Uzycie: &6/skywars setplayers &7<&6ID&7> <&6liczba&7>"
  260.                     else:
  261.                         send "{@prefix} &7Arena o ID &6%arg 2% &7nie istnieje."
  262.                 else:
  263.                     send "{@prefix} &7Uzycie: &6/skywars setplayers &7<&6ID&7> <&6liczba&7>"
  264.             else:
  265.                 send "&cNie posiadasz uprawnien!"
  266.         if arg 1 is "create":
  267.             if player has permission "{@permission}":
  268.                 if arg 2 is set:
  269.                     if {skywars::arena::id::%arg 2%} is set:
  270.                         send "{@prefix} &7Arena o ID &6%arg 2% &7juz istnieje!"
  271.                         stop
  272.                     else:
  273.                         add arg 2 to {skywars::list::*}
  274.                         set {skywars::arena::minimumplayers::%arg 2%} to 8
  275.                         set {skywars::arena::id::%arg 2%} to true
  276.                         send "{@prefix} &7Utworzono arene o ID &6%arg 2%&7."
  277.                         set {skywars::status::%arg 2%} to "niedostepna"
  278.                 else:
  279.                     send "{@prefix} &7Uzycie: &6/skywars create &7<&6ID&7>"
  280.             else:
  281.                 send "&cNie posiadasz uprawnien!"
  282.         if arg 1 is "remove":
  283.             if player has permission "{@permission}":
  284.                 if arg 2 is set:
  285.                     if {skywars::arena::id::%arg 2%} is set:
  286.                         remove arg 2 from {skywars::list::*}
  287.                         delete {skywars::status::%arg 2%}
  288.                         delete {skywars::arena::id::%arg 2%}
  289.                         loop {skywars::arena::minimumplayers::%arg 2%} times:
  290.                             delete {skywars::arena::spawn%loop-number%::%arg 2%}
  291.                         send "{@prefix} &7Usunieto arene o ID &6%arg 2%&7."
  292.                     else:
  293.                         send "{@prefix} &7Arena o ID &6%arg 2% &7nie istnieje."
  294.                 else:
  295.                     send "{@prefix} &7Uzycie: &6/skywars remove &7<&6ID&7>"
  296.             else:
  297.                 send "&cNie posiadasz uprawnien!"
  298.         if arg 1 is "list":
  299.             send "{@prefix} &7Dostepne areny:"
  300.             send " "
  301.             if (size of {skywars::list::*}) > 0:
  302.                 loop {skywars::list::*}:
  303.                     if {skywars::status::%loop-value%} is "w trakcie":
  304.                         send "&8> &7ID &6%loop-value% &cW trakcie.."
  305.                     if {skywars::status::%loop-value%} is "oczekuje":
  306.                         send "&8> &7ID &6%loop-value% &aOczekuje!"
  307.                     if {skywars::status::%loop-value%} is "niedostepna":
  308.                         send "&8> &7ID &6%loop-value% &6Niedostepna."
  309.             else:
  310.                 send "&8> &cBrak."
  311.         if arg 1 is "top":
  312.             if arg 2 is set:
  313.                 if arg 2 is "kill" or "death" or "win" or "pkt":
  314.                     send "&8>====={@prefix}&8====="
  315.                     send "&8> "
  316.                     send "&8>     &7Top &6%arg 2%"
  317.                     set {_num} to size of {skywars::gracz::%arg 2%::*}
  318.                     loop {_num} times:
  319.                         loop {skywars::gracz::%arg 2%::*}:
  320.                             if {_v.%loop-number%} is not set:
  321.                                 set {_v.%loop-number%} to loop-value
  322.                                 set {_n.%loop-number%} to loop-index
  323.                             if loop-value is greater than {_v.%loop-number%}:
  324.                                 set {_v.%loop-number%} to loop-value
  325.                                 set {_n.%loop-number%} to loop-index
  326.                         remove {_v.%loop-number%} from {skywars::gracz::%arg 2%::*}
  327.                     loop {_num} times:
  328.                         if loop-number is less than or equal to 5:
  329.                             send "&8> %loop-number%. &7%{skywars::nick::%{_n.%loop-number%}%}% &8- &6%{_v.%loop-number%}%"
  330.                         set {skywars::gracz::%arg 2%::%{_n.%loop-number%}%} to {_v.%loop-number%}
  331.                 else:
  332.                     send "{@prefix} &7Uzycie:"
  333.                     send "&8> &6/skywars top kill"
  334.                     send "&8> &6/skywars top death"
  335.                     send "&8> &6/skywars top win"
  336.                     send "&8> &6/skywars top pkt"
  337.             else:
  338.                 send "{@prefix} &7Uzycie:"
  339.                 send "&8> &6/skywars top kill"
  340.                 send "&8> &6/skywars top death"
  341.                 send "&8> &6/skywars top win"
  342.                 send "&8> &6/skywars top pkt"
  343.         if arg 1 is "staty":
  344.             send "&8>====={@prefix}&8====="
  345.             send "   &6Twoje statystyki:"
  346.             send "&8> &eZabojstwa&8: &c%{skywars::gracz::kill::%player%}%"
  347.             send "&8> &eSmierci&8: &c%{skywars::gracz::death::%player%}%"
  348.             send "&8> &eWygrane&8: &c%{skywars::gracz::win::%player%}%"
  349.             send "&8> &ePunkty&8: &c%{skywars::gracz::pkt::%player%}%"
  350.             send "&8>====={@prefix}&8====="
  351.         if arg 1 is "setspawn":
  352.             if player has permission "{@permission}":
  353.                 if arg 2 is set:
  354.                     if {skywars::arena::id::%arg 2%} is set:
  355.                         if arg 3 is set:
  356.                             set {_integer} to arg 3 parsed as integer
  357.                             if {_integer} > 0:
  358.                                 if {skywars::arena::minimumplayers::%arg 2%} is set:
  359.                                     if {_integer} < {skywars::arena::minimumplayers::%arg 2%}+1:
  360.                                         set {skywars::arena::spawn%{_integer}%::%arg 2%} to location of player
  361.                                         send "{@prefix} &7Ustawiono &6%{_integer}% &7spawn dla areny o ID &6%arg 2%&7."
  362.                                         loop {skywars::arena::minimumplayers::%arg 2%} times:
  363.                                             if {skywars::arena::spawn%loop-number%::%arg 2%} is set:
  364.                                                 set {skywars::status::%arg 2%} to "oczekuje"
  365.                                             else:
  366.                                                 set {skywars::status::%arg 2%} to "niedostepna"
  367.                                                 send "{@prefix} &7Ustaw jeszcze &6%loop-number% &7spawn."
  368.                                     else:
  369.                                         send "{@prefix} &7Spawny ustawia sie od &61 &7do &6%{skywars::arena::minimumplayers::%arg 2%}%&7."
  370.                                 else:
  371.                                     send "{@prefix} &7Ustaw liczbe graczy na arenie! &6/skywars setplayers &7<&6ID&7> <&6LICZBA&7>"
  372.                             else:
  373.                                 send "{@prefix} &7Spawny ustawia sie od &61 &7do &6%{skywars::arena::minimumplayers::%arg 2%}%&7."
  374.                         else:
  375.                             send "{@prefix} &7Uzycie: &6/skywars setspawn &7<&6ID&7> <&6NUMER&7>"
  376.                     else:
  377.                         send "{@prefix} &7Arena o ID &6%arg 2% &7nie istnieje."
  378.                 else:
  379.                     send "{@prefix} &7Uzycie: &6/skywars setspawn &7<&6ID&7> <&6NUMER&7>"
  380.             else:
  381.                 send "&cNie posiadasz uprawnien!"
  382.         if arg 1 is "setlobby":
  383.             if player has permission "{@permission}":
  384.                 if arg 2 is set:
  385.                     if {skywars::arena::id::%arg 2%} is set:
  386.                         set {skywars::lobby::%arg 2%} to location of player
  387.                         send "{@prefix} &7Ustawiono &6lobby&7 dla areny o ID &6%arg 2%&7."
  388.                     else:
  389.                         send "{@prefix} &7Arena o ID &6%arg 2% &7nie istnieje."
  390.                 else:
  391.                     send "{@prefix} &7Uzycie: &6/skywars setlobby &7<&6ID&7>"
  392.             else:
  393.                 send "&cNie posiadasz uprawnien!"
  394.         if arg 1 is "reload":
  395.             if player has permission "{@permission}":
  396.                 loop {skywars::list::*}:
  397.                     loop all players:
  398.                         if {skywars::gracz::%loop-player%::dolacz} is true:
  399.                             clear loop-player's inventory
  400.                             restore inventory of loop-player from {skywars::gracz::%loop-player%::eq}
  401.                             set level of loop-player to 0
  402.                             set {skywars::gracz::%loop-player%::dolacz} to false
  403.                             remove loop-player from {skywars::gracze::%loop-value%::*}
  404.                             send "{@prefix} &7Arena zostala zrestartowana." to loop-player
  405.                             clear {skywars::gracz::%loop-player%::arena}
  406.                             set {skywars::gracz::%loop-player%::invite} to false
  407.                             teleport loop-player to {spawn}
  408.                     clear {skywars::gracze::%loop-value%::*}
  409.                     clear {skywars::invite::%loop-value%}
  410.                     loop {skywars::rebuild::location::%loop-value%::*}:
  411.                         set block at loop-value-2 to {skywars::rebuild::type::%loop-value-2%::%loop-index-2%}
  412.                         wait 2 tick
  413.                     delete {skywars::rebuild::type::%loop-value%::*}
  414.                     delete {skywars::rebuild::location::%loop-value%::*}
  415.                     set {skywars::status::%loop-value%} to "oczekuje"
  416.                 execute player command "sk reload %script%"
  417.             else:
  418.                 send "&cNie posiadasz uprawnien!"
  419.         if arg 1 is "join":
  420.             if {skywars::gracz::%player%::dolacz} is false:
  421.                 if arg 2 is set:
  422.                     if {skywars::arena::id::%arg 2%} is set:
  423.                         if {skywars::status::%arg 2%} is "oczekuje":
  424.                             if (size of {skywars::gracz::%arg 2%::*}) < {skywars::arena::minimumplayers::%arg 2%}+1:
  425.                                 set {skywars::gracz::%player%::eq} to serialized inventory of player
  426.                                 clear player's inventory
  427.                                 set slot 0 of player to diamond named "&6Wybierz klase"
  428.                                 set slot 1 of player to gold ingot named "&6Zaglosuj na start"
  429.                                 set slot 8 of player to bone named "&6Wyjdz"
  430.                                 teleport player to {skywars::lobby::%arg 2%}
  431.                                 set {skywars::gracz::%player%::arena} to arg 2
  432.                                 set {skywars::gracz::%player%::dolacz} to true
  433.                                 add player to {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  434.                                 loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  435.                                     set level of loop-value to {@time countdown}+1
  436.                                     send "{@prefix} &7Gracz &6%player% &7dolaczyl do gry. &8[&e%size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}%&8/&6%{skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%}%&8]" to loop-value
  437.                                 if (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) = {skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%}:
  438.                                     loop {skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%} times:
  439.                                         set {_random%loop-number%} to random element out of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  440.                                         teleport {_random%loop-number%} to {skywars::arena::spawn%loop-number%::%{skywars::gracz::%player%::arena}%}
  441.                                         remove {_random%loop-number%} from {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  442.                                         add {_random%loop-number%} to {_num::*}
  443.                                     loop {_num::*}:
  444.                                         add loop-value to {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  445.                                     loop blocks in radius 100 around player:
  446.                                         if loop-block is chest:
  447.                                             clear inventory of block at location of loop-block
  448.                                             set {_num} to a random integer between 1 and 5
  449.                                             loop {_num} times:
  450.                                                 set {_random} to a random element out of {skywars::eqrandom::*}
  451.                                                 add {_random} to inventory of block at location of loop-block
  452.                                     set {skywars::status::%{skywars::gracz::%player%::arena}%} to "odliczanie"
  453.                                     loop {@time countdown} times:
  454.                                         if (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) = {skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%}:
  455.                                             loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  456.                                                 play raw sound "note.pling" at loop-value with pitch 1 volume 5
  457.                                                 set {_x} to level of loop-value - 1
  458.                                                 set level of loop-value to {_x}
  459.                                             wait 1 second
  460.                                         else:
  461.                                             exit loop
  462.                                             loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  463.                                                 send "{@prefix} &cOdliczanie przerwane." to loop-value
  464.                                                 set level of loop-value to 0
  465.                                             set {skywars::status::%{skywars::gracz::%player%::arena}%} to "oczekuje"
  466.                                             stop
  467.                                     if (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) = {skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%}:
  468.                                         loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  469.                                             add location of block under loop-value to {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}
  470.                                             add type of block under loop-value to {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::*}
  471.                                             set block under loop-value to air
  472.                                             play raw sound "note.pling" at loop-value-1 with pitch 2 volume 5
  473.                                             send "{@prefix} &7Gra wystartowala!" to loop-value
  474.                                             clear loop-value's inventory
  475.                                             loop {skywars::eq%{skywars::gracz::inv::%loop-value%}%::*}:
  476.                                                 add loop-value-2 to loop-value-1's inventory
  477.                                             set level of loop-value to 0
  478.                                         set {skywars::status::%{skywars::gracz::%player%::arena}%} to "w trakcie"
  479.                                 stop
  480.                             else:
  481.                                 send "{@prefix} &7Arena o ID &6%arg 2% &7jest pelna."
  482.                         else if {skywars::status::%arg 2%} is "w trakcie":
  483.                             send "{@prefix} &7Arena o ID &6%arg 2% &7jest w trakcie grania."
  484.                         else if {skywars::status::%arg 2%} is "niedostepna":
  485.                             send "{@prefix} &7Arena o ID &6%arg 2% &7nie jest dostepna."
  486.                     else:
  487.                         send "{@prefix} &7Arena o ID &6%arg 2% &7nie istnieje."
  488.                 else:
  489.                     send "{@prefix} &7Uzycie: &6/skywars join &7<&6ID&7>"
  490.             else:
  491.                 send "{@prefix} &7Jestes juz na arenie."
  492.         if arg 1 is "leave":
  493.             if {skywars::gracz::%player%::dolacz} is true:
  494.                 if {skywars::gracz::%player%::invite} is true:
  495.                     set {skywars::gracz::%player%::invite} to false
  496.                     remove 1 from {skywars::invite::%{skywars::gracz::%player%::arena}%}
  497.                 display board named "" to player
  498.                 clear player's inventory
  499.                 restore inventory of player from {skywars::gracz::%player%::eq}
  500.                 set {skywars::gracz::%player%::dolacz} to false
  501.                 teleport player to {spawn}
  502.                 set level of player to 0
  503.                 loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  504.                     set {_num} to (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) - 1
  505.                     send "{@prefix} &7Gracz &6%player% &7opuscil gre. &8[&e%{_num}%&8/&6%{skywars::arena::minimumplayers::%{skywars::gracz::%player%::arena}%}%&8]" to loop-value
  506.                 remove player from {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  507.                 if {skywars::status::%{skywars::gracz::%player%::arena}%} is "w trakcie":
  508.                     if (size of {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}) = 1:
  509.                         loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  510.                             display board named "" to loop-value
  511.                             clear loop-value's inventory
  512.                             restore inventory of loop-value from {skywars::gracz::%player%::eq}
  513.                             add 1 to {skywars::gracz::win::%loop-value%}
  514.                             loop 10 times:
  515.                                 wait 5 tick
  516.                                 launch flickering trailing ball firework colored green at loop-value timed 1
  517.                             set level of loop-value to 0
  518.                             set {skywars::gracz::%loop-value%::dolacz} to false
  519.                             broadcast "{@prefix} &7Gracz &6%loop-value% &7wygral na arenie &6%{skywars::gracz::%loop-value%::arena}% &7!"
  520.                             add {@coins add} to {skywars::gracz::pkt::%loop-value%}
  521.                             send "{@prefix} &7Wygrales! &8[&7+&6{@coins add} pkt&8]" to loop-value
  522.                             if {skywars::gracz::%loop-value%::invite} is true:
  523.                                 set {skywars::gracz::%loop-value%::invite} to false
  524.                                 remove 1 from {skywars::invite::%{skywars::gracz::%loop-value%::arena}%}
  525.                         wait 5 seconds
  526.                         loop {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}:
  527.                             teleport loop-value to {spawn}
  528.                         set {skywars::status::%{skywars::gracz::%player%::arena}%} to "niedostepna"
  529.                         clear {skywars::gracze::%{skywars::gracz::%player%::arena}%::*}
  530.                         loop {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}:
  531.                             set block at loop-value to {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::%loop-index%}
  532.                             wait 2 tick
  533.                         delete {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::*}
  534.                         delete {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}
  535.                         set {skywars::status::%{skywars::gracz::%player%::arena}%} to "oczekuje"
  536.             else:
  537.                 send "&8> &7Nie jestes na zadnej arenie."
  538. on damage of player:
  539.     if {skywars::gracz::%victim%::dolacz} is true:
  540.         if damage cause is fall:
  541.             cancel event
  542.         if damage cause is void:
  543.             if {skywars::status::%{skywars::gracz::%victim%::arena}%} is "w trakcie":
  544.                 if {skywars::gracz::%victim%::invite} is true:
  545.                     set {skywars::gracz::%victim%::invite} to false
  546.                     remove 1 from {skywars::invite::%{skywars::gracz::%victim%::arena}%}
  547.                 display board named "" to victim
  548.                 clear victim's inventory
  549.                 restore inventory of victim from {skywars::gracz::%victim%::eq}
  550.                 add 1 to {skywars::gracz::death::%victim%}
  551.                 set {skywars::gracz::%victim%::dolacz} to false
  552.                 teleport victim to {spawn}
  553.                 loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  554.                     set {_num} to (size of {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}) - 1
  555.                     send "{@prefix} &7Gracz &6%victim% &7wypadl z mapy! &8[&e%{_num}%&8/&6%{skywars::arena::minimumplayers::%{skywars::gracz::%victim%::arena}%}%&8]" to loop-value
  556.                 remove victim from {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}
  557.                 if (size of {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}) = 1:
  558.                     loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  559.                         display board named "" to loop-value
  560.                         clear loop-value's inventory
  561.                         restore inventory of loop-value from {skywars::gracz::%victim%::eq}
  562.                         add 1 to {skywars::gracz::win::%loop-value%}
  563.                         loop 10 times:
  564.                             wait 5 tick
  565.                             launch flickering trailing ball firework colored green at loop-value timed 1
  566.                         set level of loop-value to 0
  567.                         set {skywars::gracz::%loop-value%::dolacz} to false
  568.                         broadcast "{@prefix} &7Gracz &6%loop-value% &7wygral na arenie &6%{skywars::gracz::%loop-value%::arena}% &7!"
  569.                         add {@coins add} to {skywars::gracz::pkt::%loop-value%}
  570.                         send "{@prefix} &7Wygrales! &8[&7+&6{@coins add} pkt&8]" to loop-value
  571.                         if {skywars::gracz::%loop-value%::invite} is true:
  572.                             set {skywars::gracz::%loop-value%::invite} to false
  573.                             remove 1 from {skywars::invite::%{skywars::gracz::%loop-value%::arena}%}
  574.                     wait 5 seconds
  575.                     loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  576.                         teleport loop-value to {spawn}
  577.                     set {skywars::status::%{skywars::gracz::%victim%::arena}%} to "niedostepna"
  578.                     clear {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}
  579.                     loop {skywars::rebuild::location::%{skywars::gracz::%victim%::arena}%::*}:
  580.                         set block at loop-value to {skywars::rebuild::type::%{skywars::gracz::%victim%::arena}%::%loop-index%}
  581.                         wait 2 tick
  582.                     delete {skywars::rebuild::type::%{skywars::gracz::%victim%::arena}%::*}
  583.                     delete {skywars::rebuild::location::%{skywars::gracz::%victim%::arena}%::*}
  584.                     set {skywars::status::%{skywars::gracz::%victim%::arena}%} to "oczekuje"
  585. on death of player:
  586.     if {skywars::gracz::%victim%::dolacz} is true:
  587.         if {skywars::status::%{skywars::gracz::%victim%::arena}%} is "w trakcie":
  588.             if {skywars::gracz::%victim%::invite} is true:
  589.                 set {skywars::gracz::%victim%::invite} to false
  590.                 remove 1 from {skywars::invite::%{skywars::gracz::%victim%::arena}%}
  591.             clear victim's inventory
  592.             restore inventory of victim from {skywars::gracz::%victim%::eq}
  593.             display board named "" to player
  594.             add 1 to {skywars::gracz::death::%victim%}
  595.             if attacker is a player:
  596.                 add 1 to {skywars::gracz::kill::%attacker%}
  597.             set {skywars::gracz::%victim%::dolacz} to false
  598.             teleport victim to {spawn}
  599.             loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  600.                 set {_num} to (size of {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}) - 1
  601.                 send "{@prefix} &7Gracz &6%victim% &7zostal zabity przez &6%attacker%&7! &8[&e%{_num}%&8/&6%{skywars::arena::minimumplayers::%{skywars::gracz::%victim%::arena}%}%&8]" to loop-value
  602.             remove victim from {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}
  603.             if (size of {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}) = 1:
  604.                 loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  605.                     display board named "" to loop-value
  606.                     clear loop-value's inventory
  607.                     restore inventory of loop-value from {skywars::gracz::%victim%::eq}
  608.                     add 1 to {skywars::gracz::win::%loop-value%}
  609.                     loop 10 times:
  610.                         wait 5 tick
  611.                         launch flickering trailing ball firework colored green at loop-value timed 1
  612.                     set level of loop-value to 0
  613.                     set {skywars::gracz::%loop-value%::dolacz} to false
  614.                     broadcast "{@prefix} &7Gracz &6%loop-value% &7wygral na arenie &6%{skywars::gracz::%loop-value%::arena}% &7!"
  615.                     add {@coins add} to {skywars::gracz::pkt::%loop-value%}
  616.                     send "{@prefix} &7Wygrales! &8[&7+&6{@coins add} pkt&8]" to loop-value
  617.                     if {skywars::gracz::%loop-value%::invite} is true:
  618.                         set {skywars::gracz::%loop-value%::invite} to false
  619.                         remove 1 from {skywars::invite::%{skywars::gracz::%loop-value%::arena}%}
  620.                 wait 5 seconds
  621.                 loop {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}:
  622.                     teleport loop-value to {spawn}
  623.                 set {skywars::status::%{skywars::gracz::%victim%::arena}%} to "niedostepna"
  624.                 clear {skywars::gracze::%{skywars::gracz::%victim%::arena}%::*}
  625.                 loop {skywars::rebuild::location::%{skywars::gracz::%victim%::arena}%::*}:
  626.                     set block at loop-value to {skywars::rebuild::type::%{skywars::gracz::%victim%::arena}%::%loop-index%}
  627.                     wait 2 tick
  628.                 delete {skywars::rebuild::type::%{skywars::gracz::%victim%::arena}%::*}
  629.                 delete {skywars::rebuild::location::%{skywars::gracz::%victim%::arena}%::*}
  630.                 set {skywars::status::%{skywars::gracz::%victim%::arena}%} to "oczekuje"
  631. every 1 seconds:
  632.     loop all players:
  633.         loop all blocks in radius 10 of loop-player:
  634.             if loop-block is sign:
  635.                 if line 1 of loop-block is "{@prefix}":
  636.                     if line 2 of loop-block is set:
  637.                         if line 2 of loop-block is not "leave" or "first":
  638.                             if {skywars::arena::id::%uncolored line 2 of loop-block%} is set:
  639.                                 if {skywars::status::%uncolored line 2 of loop-block%} is "oczekuje":
  640.                                     set line 3 of loop-block to "&aOczekuje"
  641.                                     set line 4 of loop-block to "&8[&e%size of {skywars::gracze::%uncolored line 2 of loop-block%::*}%&8/&6%{skywars::arena::minimumplayers::%uncolored line 2 of loop-block%}%&8]"
  642.                                 if {skywars::status::%uncolored line 2 of loop-block%} is "w trakcie":
  643.                                     set line 3 of loop-block to "&cW trakcie"
  644.                                     set line 4 of loop-block to "&8[&e%size of {skywars::gracze::%uncolored line 2 of loop-block%::*}%&8/&6%{skywars::arena::minimumplayers::%uncolored line 2 of loop-block%}%&8]"
  645.                                 if {skywars::status::%uncolored line 2 of loop-block%} is "odliczanie":
  646.                                     set line 3 of loop-block to "&2Odlicznie..."
  647.                                     set line 4 of loop-block to "&8[&e%size of {skywars::gracze::%uncolored line 2 of loop-block%::*}%&8/&6%{skywars::arena::minimumplayers::%uncolored line 2 of loop-block%}%&8]"
  648.                                 if {skywars::status::%uncolored line 2 of loop-block%} is "niedostepna":
  649.                                     set line 3 of loop-block to "&6Niedostepna"
  650.                                     set line 4 of loop-block to " "
  651.         if {skywars::gracz::%loop-player%::dolacz} is true:
  652.             display board named "&6SkyWars" to loop-player
  653.             loop {skywars::gracze::%{skywars::gracz::%loop-player%::arena}%::*}:
  654.                 make score "&a%loop-value%" in board of loop-player to 0
  655.             move display of loop-player to sidebar
  656. on inventory close:
  657.     if {skywars::player::%player%::openedit} is set:
  658.         clear {skywars::eq%{skywars::player::%player%::openedit}%::*}
  659.         loop 27 times:
  660.             if slot "%loop-number - 1%" parsed as an integer of current inventory of player is not air:
  661.                 set {_item} to slot loop-number - 1 of current inventory of player
  662.                 add {_item} to {skywars::eq%{skywars::player::%player%::openedit}%::*}
  663.         clear {skywars::player::%player%::openedit}
  664.         send "{@prefix} &7Zapisano."
  665. on quit:
  666.     if {skywars::gracz::%player%::dolacz} is true:
  667.         execute player command "skywars leave"
  668. on join:
  669.     if {skywars::nick::%player%} is not set:
  670.         set {skywars::nick::%player%} to uncolored display name of player
  671. on break:
  672.     if {skywars::gracz::%player%::dolacz} is true:
  673.         if {skywars::status::%{skywars::gracz::%player%::arena}%} is "oczekiwanie" or "odliczanie":
  674.             cancel event
  675.         if {skywars::status::%{skywars::gracz::%player%::arena}%} is "w trakcie":
  676.             add location of event-block to {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}
  677.             add air to {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::*}
  678. on place:
  679.     if {skywars::gracz::%player%::dolacz} is true:
  680.         if {skywars::status::%{skywars::gracz::%player%::arena}%} is "oczekiwanie" or "odliczanie":
  681.             cancel event
  682.         if {skywars::status::%{skywars::gracz::%player%::arena}%} is "w trakcie":
  683.             if {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*} contains location of event-block:
  684.                 stop
  685.             else:
  686.                 add location of event-block to {skywars::rebuild::location::%{skywars::gracz::%player%::arena}%::*}
  687.                 add air to {skywars::rebuild::type::%{skywars::gracz::%player%::arena}%::*}
  688. on sign change:
  689.     if line 1 is "skywars":
  690.         set line 1 to "{@prefix}"
  691.         if line 2 is set:
  692.             if line 2 is not "leave" or "first":
  693.                 if {skywars::arena::id::%line 2%} is set:
  694.                     set line 2 to "&a%line 2%"
  695.                 else:
  696.                     set line 2 to "&c<none>"
  697.             if line 2 is "first":
  698.                 set line 2 to "&9Random arena"
  699.             if line 2 is "leave":
  700.                 set line 2 to "&cleave"
  701. on rightclick:
  702.     if event-block is sign:
  703.         if line 1 of clicked block is "{@prefix}":
  704.             if line 2 of clicked block is set:
  705.                 if line 2 of clicked block is not "&cleave":
  706.                     if {skywars::arena::id::%uncolored line 2 of clicked block%} is set:
  707.                         execute player command "/skywars join %uncolored line 2 of clicked block%"
  708.                 if line 2 of clicked block is "&9Random arena":
  709.                     loop {skywars::list::*}:
  710.                         if {skywars::status::%loop-value%} is "oczekuje":
  711.                             execute player command "skywars join %loop-value%"
  712.                             stop
  713.                     send "{@prefix} &7Brak dostepnych aren."
  714.                 if line 2 of clicked block is "&cleave":
  715.                     execute player command "/skywars leave"
  716.     if player's tool is diamond:
  717.         if name of player's tool is "&6Wybierz klase":
  718.             execute player command "skywars gui"
  719.     if player's tool is bone:
  720.         if name of player's tool is "&6Wyjdz":
  721.             execute player command "skywars leave"
  722.     if player's tool is gold ingot:
  723.         if name of player's tool is "&6Zaglosuj na start":
  724.             execute player command "skywars start"
  725. on command "/setspawn":
  726.     set {spawn} to location of player
Add Comment
Please, Sign In to add comment