Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- options:
- # ################################### #
- # LEVELS #
- # ################################### #
- author: MatiX119
- version: 1.13.3
- # ZAKAZ EDYTOWANIA TYCH INFORMACJI!!! #
- # ################################### #
- # ###################################################################### #
- # Oficjalna strona skryptu: #
- # http://www.matix119.esy.es/skrypty/levels.html #
- # Ważne zasady użytkowania skryptu: #
- # http://www.matix119.esy.es/skrypty/zasady-uzytkowania-skryptow.html #
- # ###################################################################### #
- # ####################################################################################### #
- # JAK DAWAĆ EXPA ZA WYKONANIE OKREŚLONEJ CZYNNOŚCI ? #
- # Umieść w swoim oddzielnym skrypcie linijkę, która będzie wywoływać komendę: #
- # execute console command "/exp-give <gracz> <ilość> [-s] [-n] [-c]" #
- # UWAGA: do tego celu musisz mieć opanowaną podstawową znajomość Skripta! #
- # #
- # ####################################################################################### #
- # ####################################################################################### #
- # USTAWIENIA #
- # #
- # Ustaw tryb ustawiania progu maksymalnego expa w zależności od poziomu u graczy: #
- # 1 (AUTOMATYCZNIE) = maks. exp będzie ustawiany za pomocą działania matematycznego. #
- # 2 (RĘCZNIE) = maksymalny exp będzie ustawiany ręcznie indywidualnie dla każdego #
- # poziomu. Ustawienia te znajdziesz na samym dole kodu skryptu! #
- max-exp-mode: 2
- # #
- # Maksymalny level, który można zdobyć. W zależności od powyższego ustawienia: #
- # - Jeśli MAX-EXP-MODE: 1, to możesz zrobić "nieskończony" level podając np 1000. #
- # - Jeśli MAX-EXP-MODE: 2, to lepiej ograniczyć level, aby nie przesadzić (np 30, 50, #
- # 100). To ustawienie wiąże się z ustawieniem na samym dole skryptu! UWAGA: zmniej- #
- # szenie max levela skutkuje cofnięciem leveli u graczy, którzy zdobyli większy. #
- max-lvl: 99
- # #
- # [Jeśli MAX-EXP-MODE: 1] Skonstruuj własne działanie matematyczne, które będzie #
- # przydzielało maksymalny exp w zależności od poziomu. OBJAŚNIENIA: #
- # - {_lvl} - zmienna z informacją o poziomie gracza. #
- # - {_maxexp} - zmienna z informacją o bieżącym maksymalnym expie gracza. #
- # - "+" "-" "*" "/" "(" ")" - operatory do działania matematycznego. #
- max-exp-math: 100+({_lvl}-1)*150
- # #
- # [Jeśli MAX-EXP-MODE: 1] Czy maksymalny exp z powyższego działania ma być zaokrąglany? #
- # Zalecane w przypadku, jeśli działanie matematyczne będzie ustawiać maksymalny exp #
- # z liczbami po przecinku (typu 2530.66). #
- max-exp-math-rounding: false
- # #
- # Ustaw funkcję przydzielania expa podczas zdobycia awansu na kolejny poziom: #
- # 1 = Reszta expa przechodzi na kolejny poziom. Dodatkowo zapewnione jest wsparcie, #
- # podczas gdy gracz wbije o 2 lub więcej poziomów. Zalecane ustawienie. #
- # 2 = Exp zostaje wyzerowany. Niezależnie od ilości zdobytego expa, poziom można #
- # zwiększyć tylko o 1. #
- large-exp-mode: 1
- # #
- # Ustaw najważniejsze wiadomości wyświetlane na czacie. Staraj się nie ruszać #
- # zmiennych. Resztę wiadomości można ustawić niżej w kodzie skryptu. #
- msg-no-perm: Unknown command. Type /help for help.
- msg-not-found: Unknown command. Type /help for help.
- msg-lvl-set: &6&lLvl %{_p}% &aUstawiono na: &7%{lv::%{_p}%}% &6[&c%{xp::%{_p}%}%&9/&3%{mxp::%{_p}%}%
- msg-lvl-set-prev: &6&lLvl %{_p}% &8Poprzednio: &7%{_lv::%{_p}%}% &8[&7%{_xp::%{_p}%}%&8/&7%{_mxp::%{_p}%}%
- msg-exp: &6&l%{_exp}% %{_znak}%%{_ilosc}% &c%{xp::%{_p}%}%&7/&6%{mxp::%{_p}%}%
- msg-exp-other: &6&l%{_exp}% %{_p}% %{_znak}%%{_ilosc}% &7[&a%{xp::%{_p}%}%&9/&c%{mxp::%{_p}%}%&7] &2Poziom: &e%{lv::%{_p}%}%
- msg-lvl-up: &7Gratulacje! Awansujesz na &6%{lv::%{_p}%}% &7poziom!
- msg-lvl-change: &7Twój poziom został zmieniony na: &6%{lv::%{_p}%}%
- msg-lvl-up-bc: &6%{_p}% &7awansował na &6%{lv::%{_p}%}% &7poziom!
- msg-doubleexp-warn-on: &7Funkcja &6%{_exp}% &7teraz jest &aaktywna&e.
- msg-doubleexp-warn-off: &7Funkcja &6%{_exp}% &7teraz jest &cnieaktywna&e.
- msg-doubleexp-on: &6%{_exp}% &7został &6aktywowany&7!
- msg-doubleexp-off: &6%{_exp}% &7został &czdezaktywowany&7!
- # #
- # [Ustawienie odwołuje do opcji MSG-EXP i MSG-EXP-OTHER] Ustaw formatowanie znaków "+" #
- # i "-" dla zmiennej {_znak} w zależności czy exp został dodany lub zabrany u gracza. #
- # UWAGA: dla expa ujemnego nie ma konieczności wpisywania "-" bo jest już wyświetlany! #
- exp-give-plus: &2+
- exp-give-minus: &4
- # #
- # [Ustawienie odwołuje do opcji MSG-EXP] Ustaw nazwy prefiksów trybu mnożnika expa dla #
- # zmiennej {_exp}. #
- prefix-exp: EXP
- prefix-doubleexp: 2xEXP
- prefix-tripleexp: 3xEXP
- # #
- # Czy administracja po wejściu na serwer ma być informowana o włączonym DoubleExpie? #
- doubleexp-warn: true
- # #
- # Czy wszyscy gracze mają być informowani o aktywowanym lub dezaktywowanym DoubleExpie? #
- doubleexp-bc: false
- # #
- # Ustaw, czy TripleExp ma być aktywowany u gracza, jeśli gracz posiada indywidualnego #
- # DoubleExpa oraz DoubleExp globalny jest włączony. #
- allow-tripleexp: false
- # #
- # Czy ma być wyświetlana wiadomość do wszystkich graczy, jeśli gracz osiągnął wyróż- #
- # niony poziom? Wskaż, które poziomy mają być wyróżniane. Zamiast przecinka użyj "or". #
- broadcast-lvlup: false
- distinction-levels: 10 or 20 or 30 or 40 or 50 or 60 or 70 or 80 or 90 or 99
- # #
- # Czy po zdobyciu kolejnego poziomu ma być użyty efekt (nieszkodliwego) pioruna? #
- lvlup-lighting-effect: true
- # #
- # Ustaw ograniczenie dla komendy /exp-give dotyczące maksymalnej liczby expa. #
- max-exp-give-limit: 1000000
- # #
- # Ustaw maksymalny ujemny exp wpisując liczbę mniejszą niż 0 (np. -100). Wartość 0 #
- # (domyślnie) wyłącza tą funkcjonalność. Ta funkcja może nieco zwiększyć trudność #
- # zdobywania expa, jeśli decydujesz się na zabieranie expa za np. przegranie walki. #
- max-negative-exp: 0
- # #
- # Ustaw, czy DoubleExp ma podwajać także expa ujemnego. Jeśli tak, to może zwiększyć #
- # trudność zdobywania expa, choć jest równowaga, jeśli gracz zdobywa też dodatni exp. #
- doubleexp-negative-exp: false
- # #
- # Ustaw, czy exp ma być zaokrąglany podczas przydzielania dla gracza. #
- exp-rounding: false
- # #
- # Czy Minecraftowy pasek poziomu ma wskazywać poziom oraz exp ze skryptu? Zalecane #
- # ustawienie, jeśli na twoim serwerze nie funkcjonują zielone kulki expa. UWAGA: włą- #
- # czenie ustawienia spowoduje utratę Minecraftowego levela u wszystkich graczy! #
- use-levels-bar: true
- # #
- # [Jeśli USE-LEVELS-BAR: true] Czy dropienie zielonych kulek expa ma być wyłączone? Czy #
- # używanie enchantu i kowadła ma być zablokowane? Nie dotyczy to trybu gry creative. #
- disable-xp-orb: true
- disable-enchant: true
- disable-anvil: true
- # #
- # Czy formatowanie nicków na TAB liście ma być używane? Ustaw także formatowanie. #
- # UWAGA: W starszych wersjach MC występuje ograniczenie znaków do 16! #
- tab-list-nick-enabled: false
- tab-list-nick-format: &8[&7%{lv::%player-arg%}%&8] &r
- # #
- # Czy formatowanie nicku nad głową graczy ma być używane? Ustaw także formatowanie. #
- # UWAGA: domyślnie ta funkcja jest zablokowana, ponieważ wymaga dodatku WildSkript, a #
- # następnie odblokowania wyłączonych linijek w kodzie w wyznaczonym miejscu! #
- # UWAGA: W starszych wersjach MC występuje ograniczenie znaków do 16! #
- head-nick-enabled: false
- head-nick-format: &8[&7%{lv::%player-arg%}%&8] &r
- # #
- # Ustaw, czy level ma być wyświetlany nad głową graczy, ale w linijce pod nazwą gracza. #
- # UWAGA: ta funkcja wykorzystuje funkcję scoreboard z Minecrafta, więc level może nie #
- # być od razu wyświetlany. W celu prawidłowego działania nicki graczy muszą być odświe- #
- # żane dzięki funkcji dostępnej z pod opcji HEAD-NICK-ENABLED (niezależnie od wartości #
- # TRUE lub FALSE), która wymaga WildSkript. Ustaw także skrót, który będzie oznaczał #
- # poziom - kolory nieobsługiwane! UWAGA: jeśli zmieniasz nazwę tego skrótu, to przełącz #
- # opcję na FALSE (restart) i ponownie na TRUE (restart) w celu zastosowania zmian! #
- # UWAGA: ta funkcja może stwarzać spam w konsoli w zależności od ilości graczy!!! #
- head-level-enabled: false
- head-level-suffix: Lvl
- # #
- # Ustaw co ile sekund nicki nad głową gracza i na TAB liście mają być odświeżane. #
- nick-refresh: 1
- # #
- # Ustaw, czy chcesz używać formatowania czatu ze skryptu (umożliwiające wyświetlanie #
- # levela obok nicku)? Dodatkowo należy ustawić formatowania czatu poniżej. #
- use-Levels-chat: true
- # #
- # Ustaw format czatu, aby level był wyświetlany obok nicku ze zmiennej {lvl::%player%}. #
- # Ustaw dla każdej z rang formatowanie czatu, a także nadaj uprawnienie, które wykorzy- #
- # stasz w pluginie na uprawniena (np. PermissionsEx). UWAGA: proszę nadawać priorytet #
- # rangi definiując w kolejności rosnącej - do najwyższego stopnia (admin). Jeśli gracz #
- # posiada wiele rang, to ma przydzielany format czatu z rangi o wyższym priorytecie. #
- # * GRUPA 1 [Zwykli gracze, którzy nie potrzebują dodatkowych uprawnień] #
- chat-default: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&eGRACZ&8] &c* &f%player% &c» &7%{_message}%
- # * GRUPA 2 #
- chat-group-2: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&6VIP&8] &c* &f%player% &c» &7%{_message}%
- permission-group-2: vip
- # * GRUPA 3 #
- chat-group-3: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&9HELPER&8] &c* &f%player% &c» &7%{_message}%
- permission-group-3: helper
- # * GRUPA 4 #
- chat-group-4: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&bMODERATOR&8] &c* &f%player% &c» &7%{_message}%
- permission-group-4: moderator
- # * GRUPA 5 #
- chat-group-5: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&3BUDOWNICZY&8] &c* &f%player% &c» &7%{_message}%
- permission-group-5: budowniczy
- # * GRUPA 6 #
- chat-group-6: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&cADMIN&8] &c* &f%player% &c» &7%{_message}%
- permission-group-6: admin
- # * GRUPA 7 [Domyślnie OP (główni administratorzy), którzy posiadają już uprawnienia] #
- chat-op: &8[&cLVL.&c%{lv::%player%}%&8] &c* &8[&4WLASCICIEL&8] &c* &f%player% &c» &7%{_message}%
- # #
- # Ustaw, jakie rangi mogą używać kolorów. Podaj uprawienia ustawione już wyżej. Główni #
- # administratorzy (OP) obsługują pisanie kolorem i nie dotyczy ich ta opcja. #
- allow-use-colors-for-groups: "headadmin"
- # * Czy domyślni gracze (bez uprawnień) mogą używać kolorów? #
- allow-use-colors-for-default-players: false
- # * UWAGA: jeśli występuje bug, że kolory nadal działają w wykluczonych rangach, to #
- # ustaw tą opcję na "true" - wyłącza całkowite używanie znaczka "&". #
- force-disable-colors: false
- # #
- # ####################################################################################### #
- # ############################# #
- # Zmienne, czat, zabezpieczenia #
- # i inne funkcje #
- # ############################# #
- # *** RESETOWANIE POSTĘPÓW GRACZY ***
- # Odblokuj poniższą część kodu, aby zresetować WSZYSTKIE postępy graczy, zrestartuj skrypt,
- # a następnie zablokuj ten kod i ponownie zrestartuj skrypt. Rekomendowany restart serwera.
- #on load:
- # delete {lv::*}
- # delete {xp::*}
- # delete {mxp::*}
- # wait 3 second
- # execute console command "restart"
- # ################################################################################## #
- # OBJAŚNIENIA ZMIENNYCH #
- # {lv::%player%} - poziom {xp::%player%} - exp {mxp::%player%} - max exp #
- # ################################################################################## #
- variables:
- {doubleexp} = false
- on chat:
- {@use-Levels-chat} is true
- cancel event
- {lv::%player%} is set
- if player is op:
- set {_message} to coloured message
- broadcast "{@chat-op}"
- else:
- set {_message} to uncoloured message
- if player has permission {@allow-use-colors-for-groups}:
- set {_message} to coloured message
- if {@force-disable-colors} is true:
- replace all "&" with "" in {_message}
- if player has permission "{@permission-group-6}":
- broadcast "{@chat-group-6}"
- stop
- if player has permission "{@permission-group-5}":
- broadcast "{@chat-group-5}"
- stop
- if player has permission "{@permission-group-4}":
- broadcast "{@chat-group-4}"
- stop
- if player has permission "{@permission-group-3}":
- broadcast "{@chat-group-3}"
- stop
- if player has permission "{@permission-group-2}":
- broadcast "{@chat-group-2}"
- stop
- if {@allow-use-colors-for-default-players} is true:
- set {_message} to coloured message
- if {@force-disable-colors} is true:
- replace all "&" with "" in {_message}
- broadcast "{@chat-default}"
- every 10 tick:
- loop all players:
- {@use-levels-bar} is true
- {lv::%loop-player%} is set
- if loop-player's level progress is not {xp::%loop-player%}/{mxp::%loop-player%}:
- if {xp::%loop-player%} <= 0:
- set loop-player's level progress to 0
- else:
- set loop-player's level progress to {xp::%loop-player%}/{mxp::%loop-player%}
- if loop-player's level is not {lv::%loop-player%}:
- set the loop-player's level to {lv::%loop-player%}
- every 3 second:
- loop all players:
- if {lv::%loop-player%} is not set:
- set {xp::%loop-player%} to 0
- set {lv::%loop-player%} to 1
- execute console command "/maxexpchange %loop-player%"
- if {lv::%loop-player%} > {@max-lvl}:
- set {lv::%loop-player%} to {@max-lvl}-1
- execute console command "/maxexpchange %loop-player%"
- set {xp::%loop-player%} to {mxp::%loop-player%}
- set {lv::%loop-player%} to {@max-lvl}
- else if {lv::%loop-player%} is not {@max-lvl}:
- if {xp::%loop-player%} = {mxp::%loop-player%}:
- set {xp::%loop-player%} to 0
- execute console command "/maxexpchange %loop-player%"
- if {dxppl.%loop-player%} < now:
- delete {dxppl.%loop-player%}
- on join:
- if {lv::%player%} is not set:
- set {xp::%player%} to 0
- set {lv::%player%} to 1
- execute console command "/maxexpchange %player%"
- if {@head-level-enabled} is true:
- execute console command "/scoreboard players set %player% Levels %{lv::%player%}%"
- if {@doubleexp-warn} is true:
- player has permission "admin"
- wait 1 second
- {doubleexp} is true
- set {_exp} to "{@prefix-doubleexp}"
- send "{@msg-doubleexp-warn-on}" to player
- on experience spawn:
- if {@use-levels-bar} is true:
- if {@disable-xp-orb} is true:
- cancel event
- on rightclick:
- {@use-levels-bar} is true
- player's gamemode is not creative
- if {@disable-enchant} is true:
- if "%id of clicked block%" is "116":
- cancel event
- if {@disable-anvil} is true:
- if "%id of clicked block%" is "145":
- cancel event
- on skript start:
- send "[Skript] Skrypt Levels v{@version} zostal uruchomiony!" to console
- on skript stop:
- send "[Skript] Skrypt Levels v{@version} zostal wylaczony!" to console
- # ############################# #
- # Level nad głową gracza i #
- # na TAB liście #
- # ############################# #
- every {@nick-refresh} second:
- loop all players:
- execute console command "/levels-set-nick %loop-player%"
- command /levels-set-nick [<player>]:
- executable by: console
- trigger:
- if {@tab-list-nick-enabled} is true:
- set player-arg's tablist name to "{@tab-list-nick-format}%player-arg%"
- if {@tab-list-nick-enabled} is false:
- set player-arg's tablist name to "%player-arg%"
- # Odblokuj ten fragment kodu usuwając "#", jeśli używasz dodatku WildSkript #
- # if {@head-nick-enabled} is true:
- # set player-arg's tag to "{@head-nick-format}"
- # if {@head-nick-enabled} is false:
- # set player-arg's tag to ""
- on load:
- if {@head-level-enabled} is true:
- execute console command "/gamerule sendCommandFeedback false"
- execute console command "/scoreboard objectives add Levels dummy {@head-level-suffix}"
- execute console command "/scoreboard objectives setdisplay belowName Levels"
- loop all players:
- execute console command "/scoreboard players set %loop-player% Levels %{lv::%loop-player%}%"
- if {@head-level-enabled} is false:
- execute console command "/scoreboard objectives remove Levels"
- # ############################# #
- # Spis komend + #
- # dodatkowe komendy #
- # ############################# #
- command /levels [<text>] [<text>]:
- permission: admin
- permission message: {@msg-no-perm}
- executable by: console and player
- trigger:
- if arg 1 is not set:
- send "&5&l&m===================&r&5&l[&2&lLevels&5&l]&5&l&m==================="
- send "&c/poziom [gracz] &9- &3Wyświetla aktualny poziom i postęp expa."
- send "&c/double-exp [sprawdź] &9- &3Aktywuje/dezaktywuje mnożnik expa x2."
- send "&c/double-exp-player <gracz> <on|off|czas w minutach|sprawdź> &9- &3Aktywuje DoubleExpa indywidualnie u gracza."
- send "&c/level-set <gracz> <poziom> [-s] &9- &3Zmienia aktualny poziom gracza. Wpisanie &l-s &3wyłącza informację u docelowego gracza."
- send "&c/exp-give <gracz> <ilość> [-s] [-n] [-c] &9- &3Dodaje expa u gracza. Wpisanie &l-s &3wyłącza informację na czacie, &l-n &3ignoruje DoubleExpa, &l-c &3wymusza wyświetlenie informacji dla konsoli."
- send "&c/levels info &9- &3Informacje o skrypcie."
- send "&c/levels reload &9- &3Restartuje system leveli ""Levels""."
- send "&5&l&m============================================="
- else:
- if arg 1 is "reload" or "restart" or "r":
- set {_t1} to now
- execute console command "/skript reload %script%"
- set {_t2} to now
- set {_t} to "%difference between {_t1} and {_t2}%" parsed as text
- replace " seconds" with "s" in {_t}
- send "&5[&2Levels&5] &7Zrestartowano skrypt (&oczas: %{_t}%&7). Sprawdź konsolę czy nie ma błędów."
- if arg 1 is "info" or "informacje":
- send "&5&l&m===================&r&5&l[&2&lLevels&5&l]&5&l&m==================="
- send "&5» &2Skrypt napisany przez: &3{@author}"
- send "&5» &2Wersja: &3{@version}"
- send "&5» &2Informacje: &3www.matix119.esy.es/skrypty/levels.html"
- send "&aDziękuję za używanie najlepszego systemu leveli ""Levels""! :)"
- send "&5&l&m============================================="
- if arg 1 is not "reload" or "restart" or "r" or "info" or "informacje":
- if executor is console:
- execute console command "/levels"
- if executor is player:
- execute player command "/levels"
- # ############################# #
- # Sprawdzanie aktualnego #
- # poziomu #
- # ############################# #
- command /poziom [<text>]:
- aliases: /exp, /stats, /staty, /statystyki, /lvl, /level, /lv
- executable by: console and player
- trigger:
- if arg 1 is set:
- if executor is player:
- if player has permission "admin":
- set {_p} to arg 1 parsed as offlineplayer
- else:
- send "{@msg-no-perm}"
- stop
- if executor is console:
- set {_p} to arg 1 parsed as offlineplayer
- if arg 1 is not set:
- if executor is player:
- set {_p} to player
- if executor is console:
- send "&f/poziom &c<gracz>"
- stop
- if {lv::%{_p}%} is set:
- # Tutaj sformatuj wygląd wyświetlania statystyk #
- send "&7&l&m============================="
- send " &6Statystyki "
- send " &7Poziom: &6%{lv::%{_p}%}%"
- send " &7Exp: &c%{xp::%{_p}%}%&7/&6%{mxp::%{_p}%}%"
- send "&7&l&m============================="
- if {dxppl.%{_p}%} < now:
- delete {dxppl.%{_p}%}
- else:
- send "{@msg-not-found}"
- # ############################# #
- # Aktywowanie podwójnego expa #
- # ############################# #
- command /double-exp [<text>]:
- aliases: /doubleexp, /double
- permission: admin
- permission message: {@msg-no-perm}
- executable by: console and player
- trigger:
- set {_exp} to "{@prefix-doubleexp}"
- if arg 1 is not set:
- if {doubleexp} is false:
- set {doubleexp} to true
- if {@doubleexp-bc} is false:
- send "{@msg-doubleexp-on}"
- else:
- broadcast "{@msg-doubleexp-on}"
- stop
- else:
- set {doubleexp} to false
- if {@doubleexp-bc} is false:
- send "{@msg-doubleexp-off}"
- else:
- broadcast "{@msg-doubleexp-off}"
- else:
- if arg 1 is "sprawdz" or "sprawdź" or "check":
- if {doubleexp} is false:
- send "{@msg-doubleexp-warn-off}"
- else:
- send "{@msg-doubleexp-warn-on}"
- else:
- send "&f/double-exp &c[sprawdź]"
- # ############################# #
- # Indywidualny stały lub #
- # czasowy DoubleExp #
- # ############################# #
- command /double-exp-player [<text>] [<text>]:
- aliases: /dxppl, /double-exp-player, /doubleexp-player
- permission: admin
- permission message: {@msg-no-perm}
- executable by: console and player
- trigger:
- if arg 1 is not set:
- send "&f/double-exp-player &c<gracz> &f<on|off|czas w minutach|sprawdź>"
- stop
- set {_p} to arg 1 parsed as offlineplayer
- if {lv::%{_p}%} is not set:
- send "{@msg-not-found}"
- stop
- if {dxppl.%{_p}%} < now:
- delete {dxppl.%{_p}%}
- if arg 2 is not set:
- send "&f/double-exp-player <gracz> &c<on|off|czas w minutach|sprawdź>"
- stop
- if arg 2 is "on" or "true" or "enable":
- set {dxppl.%{_p}%} to -1
- executor is player
- send "&aAktywowano indywidualnego DoubleExpa dla %{_p}% na stałe."
- if arg 2 is "off" or "false" or "disable":
- if {dxppl.%{_p}%} is set:
- delete {dxppl.%{_p}%}
- send "&aZdezaktywowano indywidualnego DoubleExpa dla %{_p}%."
- else:
- send "&c%{_p}% nie używa indywidualnego DoubleExpa."
- if arg 2 is "sprawdz" or "sprawdź" or "check":
- if {dxppl.%{_p}%} is not set:
- send "&e%{_p}% nie używa indywidualnego DoubleExpa."
- else:
- if {dxppl.%{_p}%} is -1:
- send "&e%{_p}% ma aktywowanego DoubleExpa na stałe."
- if {dxppl.%{_p}%} is not -1:
- send "&e%{_p}% ma aktywowanego DoubleExpa do %{dxppl.%{_p}%}%."
- if arg 2 is not "on" or "true" or "enable" or "off" or "false" or "disable" or "sprawdz" or "sprawdź" or "check":
- set {_arg2} to arg 2 parsed as integer
- if {_arg2} is integer:
- if {_arg2} is not between 1 and 525600:
- send "&cPodany czas w minutach musi być w zakresie od 1 do 525600"
- stop
- if {dxppl.%{_p}%} is not set:
- set {dxppl.%{_p}%} to now
- if {dxppl.%{_p}%} is -1:
- set {dxppl.%{_p}%} to now
- set {_time} to "%{_arg2}% minutes" parsed as timespan
- add {_time} to {dxppl.%{_p}%}
- send "&aAktywowano indywidualnego DoubleExpa dla %{_p}% do %{dxppl.%{_p}%}%."
- else:
- send "&f/double-exp-player <gracz> &c<on|off|czas w minutach|sprawdź>"
- # ############################# #
- # Zmienianie levela #
- # ############################# #
- command /level-set [<text>] [<text>] [<text>]:
- aliases: /lvl-set, /lv-set
- usage: /level-set <gracz> <poziom> [-s]
- permission: admin
- permission message: {@msg-no-perm}
- executable by: console and player
- trigger:
- if arg 1 is not set:
- send "&f/level-set &c<gracz> &f<poziom> [-s]"
- stop
- set {_p} to arg 1 parsed as offlineplayer
- if {lv::%{_p}%} is not set:
- send "{@msg-not-found}"
- stop
- if arg 2 is not set:
- send "&f/level-set <gracz> &c<poziom> &f[-s]"
- stop
- set {_i} to arg 2 parsed as integer
- if {_i} is not between 1 and {@max-lvl}:
- send "&cPodany level musi być w zakresie od 1 do {@max-lvl}."
- stop
- if {dxppl.%{_p}%} < now:
- delete {dxppl.%{_p}%}
- set {_lv::%{_p}%} to "%{lv::%{_p}%}%" parsed as text
- set {_xp::%{_p}%} to {xp::%{_p}%}
- set {_mxp::%{_p}%} to {mxp::%{_p}%}
- set {lv::%{_p}%} to {_i}
- if {lv::%{_p}%} = {@max-lvl}:
- set {lv::%{_p}%} to {lv::%{_p}%}-1
- execute console command "/maxexpchange %{_p}%"
- set {xp::%{_p}%} to {mxp::%{_p}%}
- set {lv::%{_p}%} to {@max-lvl}
- else:
- execute console command "/maxexpchange %{_p}%"
- set {xp::%{_p}%} to 0
- send "{@msg-lvl-set}"
- if {_lv::%{_p}%} is not "<none>":
- send "{@msg-lvl-set-prev}"
- if {@head-level-enabled} is true:
- execute console command "/scoreboard players set %{_p}% Levels %{lv::%{_p}%}%"
- if arg 3 is "-s":
- stop
- if executor is player:
- if player is not {_p}:
- send "{@msg-lvl-change}" to {_p}
- if executor is console:
- send "{@msg-lvl-change}" to {_p}
- # ############################# #
- # Dawanie expa + główny #
- # system leveli #
- # ############################# #
- command /exp-give [<text>] [<number>] [<text>] [<text>] [<text>]:
- usage: /exp-give <gracz> <ilość> [-s] [-n] [-c]
- permission: admin
- permission message: {@msg-no-perm}
- executable by: console and player
- trigger:
- if arg 1 is not set:
- send "&f/exp-give &c<gracz> &f<ilość> [-s] [-n] [-c]"
- stop
- set {_p} to arg 1 parsed as offlineplayer
- if {lv::%{_p}%} is not set:
- send "{@msg-not-found}"
- stop
- if arg 2 is not set:
- send "&f/exp-give <gracz> &c<ilość> &f[-s] [-n] [-c]"
- stop
- if arg 2 > {@max-exp-give-limit}:
- send "&cPodana ilość expa jest zbyt duża."
- stop
- if arg 2 < -{@max-exp-give-limit}:
- send "&cPodana ilość expa jest zbyt duża."
- stop
- if {dxppl.%{_p}%} < now:
- delete {dxppl.%{_p}%}
- {lv::%{_p}%} < {@max-lvl}
- set {_arg2} to arg 2
- if {@exp-rounding} is true:
- set {_arg2} to round {_arg2}
- if {doubleexp} is false:
- if arg 3 or arg 4 or arg 5 is "-n":
- set {_x2} to 1
- set {_exp} to "{@prefix-exp}"
- else:
- set {_x2} to 1
- set {_exp} to "{@prefix-exp}"
- if {dxppl.%{_p}%} is set:
- set {_x2} to 2
- set {_exp} to "{@prefix-doubleexp}"
- if {doubleexp} is true:
- if arg 3 or arg 4 or arg 5 is "-n":
- set {_x2} to 1
- set {_exp} to "{@prefix-exp}"
- else:
- set {_x2} to 2
- set {_exp} to "{@prefix-doubleexp}"
- if {@allow-tripleexp} is true:
- if {dxppl.%{_p}%} is set:
- set {_x2} to 3
- set {_exp} to "{@prefix-tripleexp}"
- if {_arg2} < 0:
- if {@doubleexp-negative-exp} is false:
- set {_x2} to 1
- set {_exp} to "{@prefix-exp}"
- set {_prexp::%{_p}%} to {xp::%{_p}%}
- if {xp::%{_p}%} < {mxp::%{_p}%}:
- add {_arg2}*{_x2} to {xp::%{_p}%}
- set {_ilosc} to "%{_arg2}*{_x2}%"
- if {_arg2} > 0:
- set {_znak} to "{@exp-give-plus}"
- if {_arg2} <= 0:
- set {_znak} to "{@exp-give-minus}"
- if {xp::%{_p}%} < 0:
- if {@max-negative-exp} <= 0:
- if {xp::%{_p}%} < {@max-negative-exp}:
- if {_prexp::%{_p}%} < {@max-negative-exp}:
- set {xp::%{_p}%} to {_prexp::%{_p}%}
- else:
- set {xp::%{_p}%} to {@max-negative-exp}
- if {xp::%{_p}%} >= {mxp::%{_p}%}:
- if {@large-exp-mode} is 1:
- set {_iloscgl.%{_p}%} to {_ilosc}-{mxp::%{_p}%}-{xp::%{_p}%}
- add 1 to {lv::%{_p}%}
- execute console command "/maxexpchange %{_p}%"
- loop {@max-lvl} times:
- if {_iloscgl.%{_p}%} >= {mxp::%{_p}%}:
- set {_iloscgl.%{_p}%} to {_iloscgl.%{_p}%}-{mxp::%{_p}%}
- add 1 to {lv::%{_p}%}
- execute console command "/maxexpchange %{_p}%"
- if {lv::%{_p}%} >= {@max-lvl}:
- stop loop
- if {_iloscgl.%{_p}%} < {mxp::%{_p}%}:
- set {xp::%{_p}%} to {_iloscgl.%{_p}%}
- stop loop
- if {@large-exp-mode} is 2:
- add 1 to {lv::%{_p}%}
- execute console command "/maxexpchange %{_p}%"
- if {lv::%{_p}%} >= {@max-lvl}:
- set {xp::%{_p}%} to {mxp::%{_p}%}
- set {lv::%{_p}%} to {@max-lvl}
- else:
- if {@large-exp-mode} is 2:
- set {xp::%{_p}%} to 0
- send "{@msg-lvl-up}" to {_p}
- if {@lvlup-lighting-effect} is true:
- strike lightning effect at {_p}
- if {@head-level-enabled} is true:
- execute console command "/scoreboard players set %{_p}% Levels %{lv::%{_p}%}%"
- if {@broadcast-lvlup} is true:
- if {lv::%{_p}%} is {@distinction-levels}:
- loop all players:
- if {_p} is not loop-player:
- send "{@msg-lvl-up-bc}" to loop-player
- if {xp::%{_p}%} is -0:
- set {xp::%{_p}%} to 0
- if executor is player:
- if player is not {_p}:
- send "{@msg-exp-other}"
- if arg 3 or arg 4 or arg 5 is "-c":
- if executor is console:
- send "{@msg-exp-other}"
- if arg 3 or arg 4 or arg 5 is "-s":
- stop
- else:
- send "{@msg-exp}" to {_p}
- # ############################# #
- # TEJ KOMENDY NIE WOLNO #
- # UŻYWAĆ RĘCZNIE!!! #
- # ############################# #
- command /maxexpchange [<text>]:
- executable by: console
- trigger:
- set {_p} to arg 1 parsed as offlineplayer
- {lv::%{_p}%} is set
- if {@max-exp-mode} is 1:
- set {_lvl} to "%{lv::%{_p}%}%" parsed as integer
- set {_maxexp} to "%{mxp::%{_p}%}%" parsed as number
- set {mxp::%{_p}%} to {@max-exp-math}
- if {@max-exp-math-rounding} is true:
- set {mxp::%{_p}%} to round {@max-exp-math}
- stop
- if {@max-exp-mode} is 2:
- # ########################################################################### #
- # #
- # [Jeśli MAX-EXP-MODE: 2] Tu znajdują się ręczne ustawienia maksymalnego #
- # expa do następnego levela. Oto przykład: #
- # Na poziomie 1 do awansu potrzeba 100 expa. #
- # Na poziomie 2 do awansu potrzeba 250 expa. #
- # Na poziomie 49 do awansu potrzeba 7300 expa. #
- # Na poziomie 50 jeśli jest maksymalny [ exp: 7300 / max-exp: 7300 ]. #
- # #
- # ########################################################################### #
- if {lv::%{_p}%} = 1:
- set {mxp::%{_p}%} to 30
- if {lv::%{_p}%} = 2:
- set {mxp::%{_p}%} to 50
- if {lv::%{_p}%} = 3:
- set {mxp::%{_p}%} to 80
- if {lv::%{_p}%} = 4:
- set {mxp::%{_p}%} to 100
- if {lv::%{_p}%} = 5:
- set {mxp::%{_p}%} to 120
- if {lv::%{_p}%} = 6:
- set {mxp::%{_p}%} to 150
- if {lv::%{_p}%} = 7:
- set {mxp::%{_p}%} to 180
- if {lv::%{_p}%} = 8:
- set {mxp::%{_p}%} to 250
- if {lv::%{_p}%} = 9:
- set {mxp::%{_p}%} to 300
- if {lv::%{_p}%} = 10:
- set {mxp::%{_p}%} to 400
- if {lv::%{_p}%} = 11:
- set {mxp::%{_p}%} to 600
- if {lv::%{_p}%} = 12:
- set {mxp::%{_p}%} to 750
- if {lv::%{_p}%} = 13:
- set {mxp::%{_p}%} to 800
- if {lv::%{_p}%} = 14:
- set {mxp::%{_p}%} to 900
- if {lv::%{_p}%} = 15:
- set {mxp::%{_p}%} to 1100
- if {lv::%{_p}%} = 16:
- set {mxp::%{_p}%} to 1200
- if {lv::%{_p}%} = 17:
- set {mxp::%{_p}%} to 1350
- if {lv::%{_p}%} = 18:
- set {mxp::%{_p}%} to 1400
- if {lv::%{_p}%} = 19:
- set {mxp::%{_p}%} to 1600
- if {lv::%{_p}%} = 20:
- set {mxp::%{_p}%} to 1700
- if {lv::%{_p}%} = 21:
- set {mxp::%{_p}%} to 2000
- if {lv::%{_p}%} = 22:
- set {mxp::%{_p}%} to 2400
- if {lv::%{_p}%} = 23:
- set {mxp::%{_p}%} to 2700
- if {lv::%{_p}%} = 24:
- set {mxp::%{_p}%} to 3100
- if {lv::%{_p}%} = 25:
- set {mxp::%{_p}%} to 3350
- if {lv::%{_p}%} = 26:
- set {mxp::%{_p}%} to 3600
- if {lv::%{_p}%} = 27:
- set {mxp::%{_p}%} to 4000
- if {lv::%{_p}%} = 28:
- set {mxp::%{_p}%} to 4200
- if {lv::%{_p}%} = 29:
- set {mxp::%{_p}%} to 4500
- if {lv::%{_p}%} = 30:
- set {mxp::%{_p}%} to 4800
- if {lv::%{_p}%} = 31:
- set {mxp::%{_p}%} to 5000
- if {lv::%{_p}%} = 32:
- set {mxp::%{_p}%} to 5500
- if {lv::%{_p}%} = 33:
- set {mxp::%{_p}%} to 6200
- if {lv::%{_p}%} = 34:
- set {mxp::%{_p}%} to 6500
- if {lv::%{_p}%} = 35:
- set {mxp::%{_p}%} to 6800
- if {lv::%{_p}%} = 36:
- set {mxp::%{_p}%} to 7500
- if {lv::%{_p}%} = 37:
- set {mxp::%{_p}%} to 7900
- if {lv::%{_p}%} = 38:
- set {mxp::%{_p}%} to 8400
- if {lv::%{_p}%} = 39:
- set {mxp::%{_p}%} to 9000
- if {lv::%{_p}%} = 40:
- set {mxp::%{_p}%} to 9700
- if {lv::%{_p}%} = 41:
- set {mxp::%{_p}%} to 12000
- if {lv::%{_p}%} = 42:
- set {mxp::%{_p}%} to 14000
- if {lv::%{_p}%} = 43:
- set {mxp::%{_p}%} to 16000
- if {lv::%{_p}%} = 44:
- set {mxp::%{_p}%} to 17500
- if {lv::%{_p}%} = 45:
- set {mxp::%{_p}%} to 18000
- if {lv::%{_p}%} = 46:
- set {mxp::%{_p}%} to 20000
- if {lv::%{_p}%} = 47:
- set {mxp::%{_p}%} to 24000
- if {lv::%{_p}%} = 48:
- set {mxp::%{_p}%} to 27000
- if {lv::%{_p}%} = 49:
- set {mxp::%{_p}%} to 28000
- if {lv::%{_p}%} >= 50:
- set {mxp::%{_p}%} to 30000
- # ###################################### #
- # W razie zmiany ustawienia maksymalnego #
- # poziomu, to należy dodać lub usunąć #
- # powyższą część kodu według wzoru. #
- # UWAGA: ostatnia linijka musi mieć #
- # znak >= dla niezawodności! #
- # ###################################### #
- on death:
- if victim is a zombie:
- if name of victim is "Slaby Zombie LVL.1":
- execute console command "/exp-give %attacker% 1"
- if name of victim is "Slaby Zombie LVL.3":
- execute console command "/exp-give %attacker% 3"
- if name of victim is "Dziwny Zombie LVL.5":
- execute console command "/exp-give %attacker% 4"
- if name of victim is "Brzydki Zombie LVL.8":
- execute console command "/exp-give %attacker% 5"
- if name of victim is "Silny Zombie LVL.12":
- execute console command "/exp-give %attacker% 7"
- if victim is a skeleton:
- if name of victim is "Slaby Lucznik LVL.17":
- execute console command "/exp-give %attacker% 12"
- if name of victim is "Niegrozny Lucznik LVL.23":
- execute console command "/exp-give %attacker% 15"
- if name of victim is "Szalony Lucznik LVL.28":
- execute console command "/exp-give %attacker% 22"
- if victim is a zombie pigman:
- if name of victim is "Zly Mutant LVL.23":
- execute console command "/exp-give %attacker% 48"
- if name of victim is "Wsciekly Mutant LVL.26":
- execute console command "/exp-give %attacker% 62"
- if name of victim is "Nieopanowany Mutant LVL.28":
- execute console command "/exp-give %attacker% 70"
- if victim is a creeper:
- if name of victim is "Dziwny Ork LVL.33":
- execute console command "/exp-give %attacker% 122"
- if name of victim is "Elitarny Ork LVL.35":
- execute console command "/exp-give %attacker% 156"
- if name of victim is "Glupi Ork LVL.39":
- execute console command "/exp-give %attacker% 175"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement