#Autor: Dinekkk #Wersja: v1.0 #Nazwa: dnBans # - Uprawnienia # "skript.ban" - banowanie na czas # "skript.kick" - kickowanie graczy # "skript.sprawdz" - sprawdzanie graczy # "skript.unban" - odbanowywanie graczy # "skript.spr" - ustawia miejsce sprawdzania # "skript.zbanowani" - lista zbanowanych graczy # "skript.czysty" - oczyszczenie gracza z zarzutow command /dinekkk: trigger: send "&2~~~~~~~[ &aKomendy &2]~~~~~~~" send "&2* &a/ban &8- banowanie na czas" send "&2* &a/unban &8- odbanowywanie graczy" send "&2* &a/kick &8- kickowanie graczy" send "&2* &a/sprawdz &8- sprawdzanie graczy" send "&2* &a/spr &8- ustawia miejsce sprawdzania" send "&2* &a/czysty &8- oczyszczenie gracza z zarzutów" send "&2* &a/zbanowani &8- lista zbanowanych graczy" #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[_Skript_Start_]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# # - Zmienne (trzymam je dla siebie) variables: {ban.%player%} = false {bany} = 0 {cheater.%player%} = false # - Niepotrzebna funkcja, trzymam ją dla siebie on first join: set {ban.%player%} to false # - Jednostką banowania są minuty, a to jest glowny mechanizm działania banów every minute: loop {waiting::*}: {waiting::%loop-value%} is not 0: subtract 1 from {waiting::%loop-value%} {waiting::%loop-value%} is 0: set {ban.%loop-value%} to false # - Komenda na banowanie command /ban [] [] []: trigger: player has permissions "skript.ban": argument-offlineplayer is set: argument-integer is set: argument 1 is set: if {ban.%argument-offlineplayer%} is true: send "&cGracz jest juz zbanowany!" else: set {ban.%argument-offlineplayer%} to true set {waiting::%offlineplayer-argument%} to integer-argument add offlineplayer-argument to {lista::*} add 1 to {bany} kick argument-offlineplayer due to "&cZostales zbanowany na serwerze za: &8%argument 3%" broadcast "&3%offlineplayer-argument% &3zostal zbanowany przez %player%! &8(%argument 3%&8)" else: send "&cPrzyklad: /ban " else: send "&cPrzyklad: /ban " else: send "&cPrzyklad: /ban " else: send "&cNie masz uprawnien!" # - Wyrzucanie graczy z serwera jeśli są zbanowani on join: if {ban.%player%} is true: kick player due to "&aPrzykro nam, ale zostales zbanowany na serwerze :( Bedziesz musial troche poczekac zanim dostaniesz unbana." # - Komenda na odbanowywanie command /unban []: trigger: player has permissions "skript.unban": argument 1 is set: if {ban.%argument 1%} is false: send "&cGracz nie jest zbanowany!" else: remove argument-offlineplayer from {lista::*} remove 1 from {bany} set {ban.%argument 1%} to false broadcast "&3%argument 1% zostal odbanowany przez %player%!" else: send "&cPrzyklad: /unban " # - Komenda pokazująca ilość zbanowanych graczy oraz ich nicki command /zbanowani: trigger: player has permission "skript.zbanowani": replace all "and" with "i" in {lista::*} send "&3Zbanowani gracze: &8[%{bany}%] &8%{lista::*}%" else: send "&cNie masz uprawnien!" # - Komenda na wyrzucanie graczy command /kick [] []: trigger: player has permission "skript.kick": argument-offlineplayer is set: argument 1 is set: offlineplayer-argument is online: broadcast "&3%argument-offlineplayer% zostal wyrzucony z serwera przez %player%! &8(%argument 2%)" kick offlineplayer-argument due to "&cZostales wyrzucony z serwera za: &8%argument 2%" else: send "&cNie ma takiego gracza na serwerze!" else: send "&cPrzyklad: /kick " else: send "&cPrzyklad: /kick " else: send "&cNie masz uprawnien!" # - To chyba najbardziej dopracowana funkcja w tym skrypcie, czyli sprawdzanie graczy command /sprawdz []: trigger: player has permission "skript.sprawdz": argument-offlineplayer is set: argument-offlineplayer is online: send "&aSprawdzanie gracza... &8(%argument-offlineplayer%)" to player send "&aJestes sprawdzany w celu wykrycia niedozwolonych modyfikacji!" to argument-offlineplayer send "&aZrob ss'y swojego menu w minecraft, folderu .minecraft. Masz na to 10 minut, inaczej zostaniesz zabity i zbanowany!" to argument-offlineplayer send "&aMozesz sie rownie dobrze przyznac od razu, wtedy kara bedzie mniejsza." to argument-offlineplayer set {_m.%argument-offlineplayer%} to location of argument-offlineplayer teleport argument-offlineplayer to {sprawdzanie} set {cheater.%argument-offlineplayer%} to true wait 10 seconds teleport argument-offlineplayer to {_m.%argument-offlineplayer%} if {cheater.%argument-offlineplayer%} is true: send "&cNiestety, za cheatowanie dosteniesz bana :(" to argument-offlineplayer wait 3 seconds kill argument-offlineplayer set {cheater.%argument-offlineplayer%} to false wait 10 seconds broadcast "&4Itemy cheatera leza na kordach %{_m.%argument-offlineplayer%}%!" clear {_m.%argument-offlineplayer%} else: send "&aJestes czysty, zyczymy milej gry :)" clear {_m.%argument-offlineplayer%} else: send "&cNie ma takiego gracza na serwerze!" else: send "&cPrzyklad: /sprawdz " else: send "&cNie masz uprawnien!" # - Jesli gracz lognie podczas sprawdzania pokazuje sie komunikat dla wszystkich graczy on logout: if {cheater.%player%} is true: broadcast "&4%player% wylogowal sie podczas sprawdzania niedozwolonych modyfikacji!" # - Komenda ustawiajaca miejsce do którego będą trafiać sprawdzani gracze command /spr: trigger: player has permission "skript.spr": set {sprawdzanie} to location of the player send "&aMiejsce sprawdzania ustawiono na: %{wiezienie}%" else: send "&cNie masz uprawnien!" # - Jesli osoba sprawdzająca uważa, że gracz sprawdzany nie ma cheatow po prostu pisze ta komende command /czysty []: trigger: player has permission "skript.czysty": argument-offlineplayer is set: argument-offlineplayer is online: if {cheater.%argument-offlineplayer%} is true: set {cheater.%argument-offlineplayer%} to false send "&aWyczysciles gracza %argument-offlineplayer% z podejrzenia o cheaty!" else: send "&cGracz nie jest podejrzany o cheaty!" else: send "&cNie ma takiego gracza na serwerze!" else: send "&cPrzyklad: /czysty " else: send "&cNie masz uprawnien!" #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[_End_Of_Skript_]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#