Skocz do zawartości
  • 0

Błedy w Konsli


DeepesT
 Udostępnij

Pytanie

Witam po kliknięciu na sloty nawet jak mam w kodzie: if inventory name of player's current inventory is not Wyskakuję mi w konsoli masa błędów rodzaju: 

ERROR]: [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.
 
 
 
[23:00]
Odnośnik do komentarza
Udostępnij na innych stronach

1 odpowiedź na to pytanie

Rekomendowane odpowiedzi

  • 0
34 minuty temu, DeepesT napisał:

Witam po kliknięciu na sloty nawet jak mam w kodzie: if inventory name of player's current inventory is not Wyskakuję mi w konsoli masa błędów rodzaju: 

ERROR]: [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.
 
 
 
[23:00]

Istnieje kilka sposobów na rozwiązanie tego problemu.

1. Użycie dodatku skript-mirror bądź skript-reflect (polecam ten drugi):

import:
	org.bukkit.event.inventory.InventoryClickEvent
	
command /test:
	trigger:
		open chest inventory with 3 rows named "test" to player
		set slot 13 of player's current inventory to stone named "test"
 
on InventoryClickEvent:
	if event.getView().getTitle() is "test":
		cancel event
		if clicked slot is 13:
			send "hej"!

2. Ustawienie zmiennej przy otwieraniu i później odczytywanie jej.

command /test:
	trigger:
		open chest inventory with 3 rows named "test" to player
		set {gui::test::%player%} to true
		loop 27 times:
			set slot loop-number - 1 of player's current inventory to white stained glass pane named " "
		set slot 13 of player's current inventory to stone named "&atest"

on inventory click:
	if {gui::test::%player%} is not set:
		stop
	if clicked inventory is player's inventory:
		stop
	cancel event
	if clicked slot is 13:
		send "Hej!" to player
		
on inventory close:
	if {gui::test::%player%} is set:
		clear {gui::test::%player%}

3. Użycie dodatku Skellett.

on inventory click:
	set {_name} to method "getName" from event-inventory
	if {_name} is not "test":
		stop
	if clicked inventory is player's inventory:
		stop
	cancel event
	if clicked slot is 0:
		#twój kod

4. Skript - nie wiem czy zadziała:

if display name of event-inventory is "test":

 

EDIT:

Mimo wszystko mam wrażenie, że chyba jakoś pozbyli się tego problemu w nowszych wersjach. Nie wiem szczerze, musisz poszukać na własną rękę.

Edytowane przez Kormic
Odnośnik do komentarza
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.

 Udostępnij

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

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