Skocz do zawartości
  • 0

Problem z GUI w skrypcie


wujszczmek

Pytanie

Cześć !

Otóż mój problem wygląda w ten sposób. Napisałem skrypt na drop ze stone wszystko działa tylko gdy chce dodać Gui które przenosi do następnego to gdy klikam przedmiot z przypisaną komendą do otworzenia GUI to nic się nie dzieje.

Tutaj jest tan skrypt :

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

8 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
40 minut temu, wujszczmek napisał:

Otóż mój problem wygląda w ten sposób. Napisałem skrypt na drop ze stone wszystko działa tylko gdy chce dodać Gui które przenosi do następnego to gdy klikam przedmiot z przypisaną komendą do otworzenia GUI to nic się nie dzieje.

Komenda wymaga argumentu z wielkiej litery ("Turbo"), tymczasem ty w formatowaniu slotu podałeś "turbo", czyli z małej litery. Podejrzewam, że to właśnie jest przyczyną.

Dodam, że formatowanie GUI za pomocą SkQuery można dość łatwo zbugować, zalecam użyć formatowania z natywnego Skripta (w skrócie 'set slot').

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Godzinę temu, Kormic napisał:

Komenda wymaga argumentu z wielkiej litery ("Turbo"), tymczasem ty w formatowaniu slotu podałeś "turbo", czyli z małej litery. Podejrzewam, że to właśnie jest przyczyną.

Dodam, że formatowanie GUI za pomocą SkQuery można dość łatwo zbugować, zalecam użyć formatowania z natywnego Skripta (w skrócie 'set slot').

Niestety zmiana wielkości małej na dużą literę nie pomogła :/

btw sory że 3 wiadomości wysłałem w odpowiedzi ( miss click )

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, wujszczmek napisał:

Niestety zmiana wielkości małej na dużą literę nie pomogła :/

btw sory że 3 wiadomości wysłałem w odpowiedzi ( miss click )

 

Czy w konsoli nie ma błędów przy przeładowaniu skryptu lub próbie wykonania komendy?

Zauważyłem dodatkowo dziwne przerwy w formatowaniu GUI, mam na myśli podwójne spacje przed typami itemów (np. stone, paper, diamond itd.).

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
2 godziny temu, Kormic napisał:

Czy w konsoli nie ma błędów przy przeładowaniu skryptu lub próbie wykonania komendy?

Zauważyłem dodatkowo dziwne przerwy w formatowaniu GUI, mam na myśli podwójne spacje przed typami itemów (np. stone, paper, diamond itd.).

W konsoli nie ma żadnych błędów , usunąłem podwójne spacje i dalej nie działa :c

 

 
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
8 minut temu, wujszczmek napisał:

W konsoli nie ma żadnych błędów , usunąłem podwójne spacje i dalej nie działa :c

 

 

W takim razie spróbuj jeszcze z dwóch komend w ostatnich dwóch linijkach usunąć ukośniki. Zresztą, zobacz czy przy klikaniu na odpowiedni slot wykonuje się jakakolwiek komenda w konsoli.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
W dniu 16.11.2020 o 18:38, Kormic napisał:

W takim razie spróbuj jeszcze z dwóch komend w ostatnich dwóch linijkach usunąć ukośniki. Zresztą, zobacz czy przy klikaniu na odpowiedni slot wykonuje się jakakolwiek komenda w konsoli.

wykonuje się komenda /drop Gracz

Czy może nie działać dlatego że między zamknięciem jednego Gui a otwarciem drugiego nie ma przerwy ( odstępu czasowego ) ?

 

W dniu 16.11.2020 o 18:51, Kormic napisał:

Z SkQuery (szczególnie pierwotną wersją) wszystko jest możliwe. Dlatego też gardzę tym dodatkiem. Na twoim miejscu (o ile jest to możliwe technicznie i posiadasz wersję powiedzmy, że2.2-dev36+) przesiadłbym się na formatowanie w Skript'cie.

Dam mały przykład na zachętę:



command /test:
	trigger:
		open chest inventory with 3 rows named "&6&lTest" to player # Otwieranie GUI z nazwą "&6&lTest"
		# Ustawianie slotów
		set slot (integers between 0 and 26) of player's current inventory to white stained glass pane named " "
		set slot (integers between 10 and 16) of player's current inventory to gray stained glass pane named " "
		set slot 13 of player's current inventory to emerald named "&aKliknij mnie!"
		set slot 26 of player's current inventory to barrier named "&cWyjdź"
		
on inventory click:
	name of player's current inventory is "&6&lTest" # Sprawdzanie nazwy GUI
	clicked inventory is not player's inventory # Sprawdzanie czy gracz nie kliknął swojego ekwipunku podczas pokazywania GUI z komendy /test
	cancel event # Anulowanie kliknięcia, aby niemożliwym było wyjęcie itemów
	clicked slot is 13: # Sprawdzanie czy gracz kliknął slot nr 13
		send "&aWitaj!" to player
	else if clicked slot is 26: # Jeżeli powyższy warunek okazał się być fałszem, wtedy przechodzi do tego warunku (na tym polega "else if") i sprawdza czy gracz kliknął slot nr 26
		close player's inventory

Dodałem komentarze dla zrozumienia

Dzięki bardzo ! Zrobię tak jak piszesz i przerzucę się na ten sposób .

Nieaktywny

Łączę posty.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1
17 minut temu, wujszczmek napisał:

wykonuje się komenda /drop Gracz

Czy może nie działać dlatego że między zamknięciem jednego Gui a otwarciem drugiego nie ma przerwy ( odstępu czasowego ) ?

Z SkQuery (szczególnie pierwotną wersją) wszystko jest możliwe. Dlatego też gardzę tym dodatkiem. Na twoim miejscu (o ile jest to możliwe technicznie i posiadasz wersję Skripta powiedzmy, że 2.2-dev36+) przesiadłbym się na formatowanie w Skript'cie.

Dam mały przykład na zachętę:

command /test:
	trigger:
		open chest inventory with 3 rows named "&6&lTest" to player # Otwieranie GUI z nazwą "&6&lTest"
		# Ustawianie slotów
		set slot (integers between 0 and 26) of player's current inventory to white stained glass pane named " "
		set slot (integers between 10 and 16) of player's current inventory to gray stained glass pane named " "
		set slot 13 of player's current inventory to emerald named "&aKliknij mnie!"
		set slot 26 of player's current inventory to barrier named "&cWyjdź"
		
on inventory click:
	name of player's current inventory is "&6&lTest" # Sprawdzanie nazwy GUI
	clicked inventory is not player's inventory # Sprawdzanie czy gracz nie kliknął swojego ekwipunku podczas pokazywania GUI z komendy /test
	cancel event # Anulowanie kliknięcia, aby niemożliwym było wyjęcie itemów
	clicked slot is 13: # Sprawdzanie czy gracz kliknął slot nr 13
		send "&aWitaj!" to player
	else if clicked slot is 26: # Jeżeli powyższy warunek okazał się być fałszem, wtedy przechodzi do tego warunku (na tym polega "else if") i sprawdza czy gracz kliknął slot nr 26
		close player's inventory

Dodałem komentarze dla zrozumienia.

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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