KrychaMC09 1 Opublikowano 12 listopada 2020 Udostępnij Opublikowano 12 listopada 2020 (edytowane) @ Piszcie co mógłbym poprawić z chęcio poprawie odrazu mówie nie działa mi loopowanie w gui! Wymagane pluginy: Skript SkQuery Edytowane 12 listopada 2020 przez KrychaMC09 Glicz 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Glicz 241 Opublikowano 12 listopada 2020 Udostępnij Opublikowano 12 listopada 2020 (edytowane) Przepraszam bardzo, ale zmienianie w każdej linijce z osobna nazwy czarnego szkła na inną jest męczące. Ustaw to na {@nazwa} czy coś, a na górze kodu dodaj options: nazwa: nazwa Zrób, że jeden event on inventory click Edytowane 12 listopada 2020 przez Michix Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kormic 1824 Opublikowano 12 listopada 2020 Udostępnij Opublikowano 12 listopada 2020 1. SkQuery jest tutaj zdecydowanie niepotrzebne. Wystarczy zamienić "open chest" na "open chest inventory". 7 godzin temu, KrychaMC09 napisał: odrazu mówie nie działa mi loopowanie w gui! 2. Pokaż jak zapętlasz sloty w GUI. 3. Definiujesz dziesiątki tych samych eventów, co jest niedobrą praktyką. To samo tyczy się dwukrotnego zapętlania tej samej listy w dwóch różnych periodicalach, co jest niewątpliwie bardziej obciążające dla serwera. 4. Dlaczego zamiast sprawdzać numer klikniętego slotu sprawdzasz jego zawartość? 5. Jeżeli miałbym zrobić kity, wykorzystałbym prosty mechanizm sprawdzania czy zmienna z czasem odbioru poprzedniego jest ustawiona, jeżeli tak to sprawdza różnicę między obecnym czasem i czasem w zmiennej. Jeżeli nie, kod przechodzi dalej. W obu przypadkach do zmiennej zostaje zapisany czas obecny. Fragment kodu dla wizualizacji. if {cooldown::gracz::%player%} is set: if difference between {cooldown::gracz::%player%} and now is less than 30 seconds: send "&cNie możesz jeszcze odebrać tego kitu!" to player stop set {cooldown::gracz::%player%} to now Jeżeli chciałbyś przechwycić czas pozostały do ponownego odbioru, musiałbyś zapisać zmienną {cooldown::%player%} do zmiennej lokalnej, do tej nowej zmiennej dodać czas równy cooldownowi danego kitu (w tym przykładzie 30 sekund) i wyświetlić różnicę między czasem w tej zmiennej a czasem obecnym. Taki kod jest niewątpliwie lepszy, gdyż nie zapętlasz co sekundę całej listy, której rozmiar może wynosić nawet kilka tysięcy zmiennych, a po prostu sprawdzasz różnicę między dwoma czasami. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
KrychaMC09 1 Opublikowano 12 listopada 2020 Autor Udostępnij Opublikowano 12 listopada 2020 58 minut temu, Kormic napisał: 1. SkQuery jest tutaj zdecydowanie niepotrzebne. Wystarczy zamienić "open chest" na "open chest inventory". 2. Pokaż jak zapętlasz sloty w GUI. 3. Definiujesz dziesiątki tych samych eventów, co jest niedobrą praktyką. To samo tyczy się dwukrotnego zapętlania tej samej listy w dwóch różnych periodicalach, co jest niewątpliwie bardziej obciążające dla serwera. 4. Dlaczego zamiast sprawdzać numer klikniętego slotu sprawdzasz jego zawartość? 5. Jeżeli miałbym zrobić kity, wykorzystałbym prosty mechanizm sprawdzania czy zmienna z czasem odbioru poprzedniego jest ustawiona, jeżeli tak to sprawdza różnicę między obecnym czasem i czasem w zmiennej. Jeżeli nie, kod przechodzi dalej. W obu przypadkach do zmiennej zostaje zapisany czas obecny. Fragment kodu dla wizualizacji. if {cooldown::gracz::%player%} is set: if difference between {cooldown::gracz::%player%} and now is less than 30 seconds: send "&cNie możesz jeszcze odebrać tego kitu!" to player stop set {cooldown::gracz::%player%} to now Jeżeli chciałbyś przechwycić czas pozostały do ponownego odbioru, musiałbyś zapisać zmienną {cooldown::%player%} do zmiennej lokalnej, do tej nowej zmiennej dodać czas równy cooldownowi danego kitu (w tym przykładzie 30 sekund) i wyświetlić różnicę między czasem w tej zmiennej a czasem obecnym. Taki kod jest niewątpliwie lepszy, gdyż nie zapętlasz co sekundę całej listy, której rozmiar może wynosić nawet kilka tysięcy zmiennych, a po prostu sprawdzasz różnicę między dwoma czasami. Ale ja chce zeby bylo widac za ile dany kit mozna odebrac i dla mnie takie cos jest slabe Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi