Skocz do zawartości
  • 0

Poprawienie Skryptu "InventoryClickEvent"


Pytanie

Witam, znalazłem skrypt na forum skript pl na topki aczkolwiek spami on błędem w konsoli

Cytat

[Skript] In 1.13+ you cannot get the title name of an inventory outside of an InventoryClickEvent, Only if this inventory has an InventoryHolder may it be used in this state.

Poprawi mi ktoś ten skrypt aby ten błąd nie wyskakiwał? z góry dzięki

Cytat

on join:
    if {topki2::%player%} is not set:
        set {topki2::%player%} to true
        set {koxy2::%player%} to 0
        set {refile2::%player%} to 0
        set {wykstone2::%player%} to 0
        set {kill2::%player%} to 0
        set {wykobsydian2::%player%} to 0
        set {death2::%player%} to 0
        set {dystans2::%player%} to 0
        set {czas2::%player%} to 0
        set {czas2m::%player%} to 0
        set {czas2g::%player%} to 0
        
command /resettopki [<text>]:
    trigger:
        if player has permission "*":
            delete {topki2::*}
            delete {koxy2::*}
            delete {refile2::*}
            delete {kill2::*}
            delete {wykstone2::*}
            delete {wykobsydian2::*}
            delete {death2::*}
            delete {dystans2::*}
            delete {czas2::*}
            delete {czas2m::*}
            delete {czas2g::*}
            broadcast "&b&LMC&F&LSKY &8» &7Administrator &c%player% &7zresetowal wszystkie dostepne topki na serwerze!"
        else:
            send "&b&LMC&F&LSKY &8» &7Nie ma takiej &bKomendy!"
command /topki [<text>]:
    aliases: topka
    trigger:
        close player's inventory
        open chest with 4 rows named "&b&LMC&F&LSKY &8» &7Serwerowe &b&lTopki" to player
        loop 36 times:
            set player's current inventory's slot loop-number -1 to gray glass pane named " "
        set player's current inventory's slot 20 to stone named "&f&l✦ &b&lKAMIEŃ &f&l✦"
        set player's current inventory's slot 13 to enchanted golden apple named "&f&l✦ &b&lKOXY &f&l✦"
        set player's current inventory's slot 14 to golden apple named "&f&l✦ &b&lREFILE &f&l✦"
        set player's current inventory's slot 11 to diamond sword named "&f&l✦ &b&lTOP ZABÓJSTW &f&l✦"
        set player's current inventory's slot 12 to golden sword named "&f&l✦ &b&lTOP ŚMIERCI &f&l✦"
        set player's current inventory's slot 21 to diamond ore named "&f&l✦ &b&lWYKOPANE DIAXY &f&l✦"
        set player's current inventory's slot 22 to feather named "&f&l✦ &b&lPRZEBYTY DYSTANS &f&l✦"
        set player's current inventory's slot 23 to clock named "&f&l✦ &b&lSPĘDZONY CZAS &f&l✦"
        set player's current inventory's slot 25 to paper named "&f&l✦ &b&lTWOJE STATYSTYKI &f&l✦" with lore " &f&l• &7Zabójstw: &b%{kill2::%player%}%" and " &f&l• &7Śmierci: &b%{death2::%player%}%" and " &f&l• &7Zjedzone koxy: &b%{koxy2::%player%}%" and " &f&l• &7Zjedzone refile: &b%{refile2::%player%}%" and " &f&l• &7Wykopany kamień: &b%{wykstone2::%player%}%" and " &f&l• &7Wykopane diamenty: &b%{wykobsydian2::%player%}%" and " &f&l• &7Przebyty dystans: &b%{dystans2::%player%}/1000% km" and " &f&l• &7Czas gry: &b%{czas2g::%player%}% h %{czas2m::%player%}% min"
        set {_t1} to size of {wykstone2::*}
        loop {_t1} times:
            loop {wykstone2::*}:
                if {_v.%loop-number%} is not set:
                    set {_v.%loop-number%} to loop-value-2
                    set {_n.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v.%loop-number%}:
                    set {_v.%loop-number%} to loop-value-2
                    set {_n.%loop-number%} to loop-index
            remove {_v.%loop-number%} from {wykstone2::*}
        wait 2 tick
        loop {_t1} times:
            if loop-number is smaller than or equal to 10:
                set {_lore::%loop-number%} to " &f%loop-number%. &b%{_n.%loop-number%}% &8- &7wykopał &b%{_v.%loop-number%}% &7kamienia"
            set {wykstone2::%{_n.%loop-number%}%} to {_v.%loop-number%}
        set {_lore} to join {_lore::*} with newline
        if {_lore} is set:
            set lore of player's current inventory's slot 20 to {_lore}
        else:
            set lore of player's current inventory's slot 20 to "&cBrak danych!"

        set {_t2} to size of {koxy2::*}
        loop {_t2} times:
            loop {koxy2::*}:
                if {_v2.%loop-number%} is not set:
                    set {_v2.%loop-number%} to loop-value-2
                    set {_n2.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v2.%loop-number%}:
                    set {_v2.%loop-number%} to loop-value-2
                    set {_n2.%loop-number%} to loop-index
            remove {_v2.%loop-number%} from {koxy2::*}
        wait 2 tick
        loop {_t2} times:
            if loop-number is smaller than or equal to 10:
                set {_lore2::%loop-number%} to " &f%loop-number%. &b%{_n2.%loop-number%}% &8- &7zjedzonych &b%{_v2.%loop-number%}% &7koxów"
            set {koxy2::%{_n2.%loop-number%}%} to {_v2.%loop-number%}
        set {_lore2} to join {_lore2::*} with newline
        if {_lore2} is set:
            set lore of player's current inventory's slot 13 to {_lore2}
        else:
            set lore of player's current inventory's slot 13 to "&cBrak danych!"

        set {_t3} to size of {refile2::*}
        loop {_t3} times:
            loop {refile2::*}:
                if {_v3.%loop-number%} is not set:
                    set {_v3.%loop-number%} to loop-value-2
                    set {_n3.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v3.%loop-number%}:
                    set {_v3.%loop-number%} to loop-value-2
                    set {_n3.%loop-number%} to loop-index
            remove {_v3.%loop-number%} from {refile2::*}
        wait 2 tick
        loop {_t3} times:
            if loop-number is smaller than or equal to 10:
                set {_lore3::%loop-number%} to " &f%loop-number%. &b%{_n3.%loop-number%}% &8- &7zjedzonych &b%{_v3.%loop-number%}% &7refili"
            set {refile2::%{_n3.%loop-number%}%} to {_v3.%loop-number%}
        set {_lore3} to join {_lore3::*} with newline
        if {_lore3} is set:
            set lore of player's current inventory's slot 14 to {_lore3}
        else:
            set lore of player's current inventory's slot 14 to "&cBrak danych!"

        set {_t4} to size of {kill2::*}
        loop {_t4} times:
            loop {kill2::*}:
                if {_v4.%loop-number%} is not set:
                    set {_v4.%loop-number%} to loop-value-2
                    set {_n4.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v4.%loop-number%}:
                    set {_v4.%loop-number%} to loop-value-2
                    set {_n4.%loop-number%} to loop-index
            remove {_v4.%loop-number%} from {kill2::*}
        wait 2 tick
        loop {_t4} times:
            if loop-number is smaller than or equal to 10:
                set {_lore4::%loop-number%} to " &f%loop-number%. &b%{_n4.%loop-number%}% &8- &7zabitych &b%{_v4.%loop-number%}% &7graczy"
            set {kill2::%{_n4.%loop-number%}%} to {_v4.%loop-number%}
        set {_lore4} to join {_lore4::*} with newline
        if {_lore4} is set:
            set lore of player's current inventory's slot 11 to {_lore4}
        else:
            set lore of player's current inventory's slot 11 to "&cBrak danych!"

        set {_t5} to size of {death2::*}
        loop {_t5} times:
            loop {death2::*}:
                if {_v5.%loop-number%} is not set:
                    set {_v5.%loop-number%} to loop-value-2
                    set {_n5.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v5.%loop-number%}:
                    set {_v5.%loop-number%} to loop-value-2
                    set {_n5.%loop-number%} to loop-index
            remove {_v5.%loop-number%} from {death2::*}
        wait 2 tick
        loop {_t5} times:
            if loop-number is smaller than or equal to 10:
                set {_lore5::%loop-number%} to " &f%loop-number%. &b%{_n5.%loop-number%}% &8- &7umarł &b%{_v5.%loop-number%}% &7razy"
            set {death2::%{_n5.%loop-number%}%} to {_v5.%loop-number%}
        set {_lore5} to join {_lore5::*} with newline
        if {_lore5} is set:
            set lore of player's current inventory's slot 12 to {_lore5}
        else:
            set lore of player's current inventory's slot 12 to "&cBrak danych!"
            

        set {_t6} to size of {wykobsydian2::*}
        loop {_t6} times:
            loop {wykobsydian2::*}:
                if {_v6.%loop-number%} is not set:
                    set {_v6.%loop-number%} to loop-value-2
                    set {_n6.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v6.%loop-number%}:
                    set {_v6.%loop-number%} to loop-value-2
                    set {_n6.%loop-number%} to loop-index
            remove {_v6.%loop-number%} from {wykobsydian2::*}
        wait 2 tick
        loop {_t6} times:
            if loop-number is smaller than or equal to 10:
                set {_lore6::%loop-number%} to " &f%loop-number%. &b%{_n6.%loop-number%}% &8- &7wykopał &b%{_v6.%loop-number%}% &7diamentów"
            set {wykobsydian2::%{_n6.%loop-number%}%} to {_v6.%loop-number%}
        set {_lore6} to join {_lore6::*} with newline
        if {_lore6} is set:
            set lore of player's current inventory's slot 21 to {_lore6}
        else:
            set lore of player's current inventory's slot 21 to "&cBrak danych!"
            
        set {_t7} to size of {dystans2::*}
        loop {_t7} times:
            loop {dystans2::*}:
                if {_v7.%loop-number%} is not set:
                    set {_v7.%loop-number%} to loop-value-2
                    set {_n7.%loop-number%} to loop-index
                if loop-value-2 is larger than {_v7.%loop-number%}:
                    set {_v7.%loop-number%} to loop-value-2
                    set {_n7.%loop-number%} to loop-index
            remove {_v7.%loop-number%} from {dystans2::*}
        wait 2 tick
        loop {_t7} times:
            if loop-number is smaller than or equal to 10:
                set {_lore7::%loop-number%} to " &f%loop-number%. &b%{_n7.%loop-number%}% &8- &7przebył &b%{_v7.%loop-number%}/1000% km"
            set {dystans2::%{_n7.%loop-number%}%} to {_v7.%loop-number%}
        set {_lore7} to join {_lore7::*} with newline
        if {_lore7} is set:
            set lore of player's current inventory's slot 22 to {_lore7}
        else:
            set lore of player's current inventory's slot 22 to "&cBrak danych!"
            
        set {_t8} to size of {czas2::*} 
        loop {_t8} times:
            loop {czas2::*}:
                if {_v8.%loop-number%} is not set:
                    set {_v8.%loop-number%} to loop-value-2
                    set {_n8.%loop-number%} to loop-index 
                if loop-value-2 is larger than {_v8.%loop-number%}:
                    set {_v8.%loop-number%} to loop-value-2
                    set {_n8.%loop-number%} to loop-index
            remove {_v8.%loop-number%} from {czas2::*}
        wait 2 tick
        loop {_t8} times:
            if loop-number is smaller than or equal to 10:
                set {_lore8::%loop-number%} to " &f%loop-number%. &b%{_n8.%loop-number%}% &8- &7spędził u nas &b%{_v8.%loop-number%}/60% h"
            set {czas2::%{_n8.%loop-number%}%} to {_v8.%loop-number%}
        set {_lore8} to join {_lore8::*} with newline
        if {_lore8} is set:
            set lore of player's current inventory's slot 23 to {_lore8}
        else:
            set lore of player's current inventory's slot 23 to "&cBrak danych!"
on inventory click:
    if inventory names of current inventory of the player is "&b&LMC&F&LSKY &8» &7Serwerowe &b&lTopki":
        cancel event

on join:
    if {zabity.%player%} is not set:
        set {zabity.%player%} to false
on death of player:
    if {zabity.%victim%} is true:
        stop
    else:
        attacker is a player
        victim is a player
        add 1 to {kill2::%attacker%}
        set {zabity.%victim%} to true
    if {zabity.%victim%} is true:
        wait 300 seconds
        set {zabity.%victim%} to false
        
    
on death of a player:
    add 1 to {death2::%victim%}
on eat of golden apple:
    add 1 to {refile2::%player%}
on consume of enchanted golden apple:
    add 1 to {koxy2::%player%}
on mine of stone:
    add 1 to {wykstone2::%player%}
on mine of diamond_ore:
    add 1 to {wykobsydian2::%player%}
on walking on grass block or dirt or obsidian or stone or leaves:
    add 1 to {dystans2::%player%}
    
every 60 seconds:
    loop all players:
        add 1 to {czas2::%loop-player%}
        add 1 to {czas2m::%loop-player%}
        if {czas2m::%loop-player%} is bigger than 60:
            remove 60 from {czas2m::%loop-player%}
            add 1 to {czas2g::%loop-player%}
 

 

Odnośnik do komentarza
https://skript.pl/temat/54294-poprawienie-skryptu-inventoryclickevent/
Udostępnij na innych stronach

2 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
5 godzin temu, SaSekOfficial napisał:

Witam, znalazłem skrypt na forum skript pl na topki aczkolwiek spami on błędem w konsoli

Poprawi mi ktoś ten skrypt aby ten błąd nie wyskakiwał? z góry dzięki

 

Słuchaj sam mam ten błąd ale z tego co widzę on nie przeszkadza w niczym

Odnośnik do komentarza
https://skript.pl/temat/54294-poprawienie-skryptu-inventoryclickevent/#findComment-329631
Udostępnij na innych stronach

  • 0

Rozkminialiśmy temat z @knugi wielokrotnie i najlepsze rozwiązanie to :

 


on inventory click:
    if name of event-inventory is  "&b&LMC&F&LSKY &8» &7Serwerowe &b&lTopki":
        cancel event

inna sprawa to optymalizacja tego kodu co znalazles jest jaka jest.. xD

Odnośnik do komentarza
https://skript.pl/temat/54294-poprawienie-skryptu-inventoryclickevent/#findComment-329632
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...