Skocz do zawartości
  • 0

(yml) Ilość przedmiotów w ekwipunku gracza zawsze = 0


uiuin
 Udostępnij

Pytanie

Witam
Mam problem z sprawdzaniem czy gracz posiada dany przedmiot.
Typ przedmiotu jest zapisany w pliku config.yml 

item: GOLD INGOT

Zapisuję to co jest w pliku do zmiennej tymczasowej
 

set {_type} to yaml value "item" from file "plugins\LPCore\addons\LPHome\config.yml"
set {_type} to {_type} parsed as material

Następnie sprawdzam ile gracz ma przedmiotów tego typu w ekwipunku
 

set {_pamount} to amount of {_it} in {_p}'s inventory


Jednak ilość zawsze jest równa 0.

Ktoś może wie jak to naprawić?

Odnośnik do komentarza
Udostępnij na innych stronach

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Nie chciałem tutaj pisać tego słynnego cytatu wielkich programistów... ale mi to działa :) 

on rightclick:
	set {_} to "GOLD INGOT" parsed as material
	send "%(the amount of {_} in the inventory of player)%" to player

Prawdopodobny błąd:

  • Przedmiot nie jest przedmiotem - jego nazwa lub alias nie istnieje, spróbuj po ID
  • Gracz jest zły - może nie jest ustawiony jako gracz albo w ogóle nie istnieje
  • Jesteś pewien, że masz w inventory odpowiedni przedmiot - sztabkę złota?
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Godzinę temu, LuckyPotato napisał:

Nie chciałem tutaj pisać tego słynnego cytatu wielkich programistów... ale mi to działa :) 


on rightclick:
	set {_} to "GOLD INGOT" parsed as material
	send "%(the amount of {_} in the inventory of player)%" to player

Prawdopodobny błąd:

  • Przedmiot nie jest przedmiotem - jego nazwa lub alias nie istnieje, spróbuj po ID
  • Gracz jest zły - może nie jest ustawiony jako gracz albo w ogóle nie istnieje
  • Jesteś pewien, że masz w inventory odpowiedni przedmiot - sztabkę złota?
on rightclick:
	set {_wp} to "GOLD INGOT" parsed as material
	set yaml value "test" from file "plugins\test\test.yml" to "%{_wp}%"
	set {_type} to yaml value "test" from file "plugins\test\test.yml"
	set {_} to "{_type}" parsed as material
	set {_g} to the amount of {_} in the inventory of player
	send "%{_g}%" to player

Dalej wyświetla 0 :/ 

b3de5a014cee2.png

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

No dobra, ale po co sobie tak utrudniasz życie w tym momencie? Sprawdziłeś chociaż kod, który ja ci wysłałem?

on rightclick:	
    set {_wp} to "GOLD INGOT" parsed as material	
    set yaml value "test" from file "plugins\test\test.yml" to "%{_wp}%"	
    set {_type} to yaml value "test" from file "plugins\test\test.yml"	
    set {_} to "%{_type}%" parsed as material	
    set {_g} to the amount of {_} in the inventory of player	
    send "%{_g}%" to player
Edytowane przez ZiemniaQ
bvcz

Wstawiam kod w znaczniki [ code]

Notatka dodana przez bvcz

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
2 minuty temu, LuckyPotato napisał:

No dobra, ale po co sobie tak utrudniasz życie w tym momencie? Sprawdziłeś chociaż kod, który ja ci wysłałem?


on rightclick:
	set {_wp} to "GOLD INGOT" parsed as material
	set yaml value "test" from file "plugins\test\test.yml" to "%{_wp}%"
	set {_type} to yaml value "test" from file "plugins\test\test.yml"
	set {_} to "%{_type}%" parsed as material
	set {_g} to the amount of {_} in the inventory of player
	send "%{_g}%" to player

Tak twój kod działa.
Tylko, że rodzaj przedmiotu jest zapisany w pliku i stamtąd ma być wczytywany.
Jeśli w pliku wpiszę DIRT to wtedy będzie wyświetlać ile tego dirtu posiada gracz.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Jak widzisz lub nie - poprawiłem ci błąd w twoim kodzie:

set {_} to "%{_type}%" parsed as material

I tak jak ci pisałem wcześniej - u ciebie problemem jest to że przedmiot nie jest przedmiotem, jeżeli chcesz wyświetlić zmienną w tekscie, musisz ją zapisać w procentach jako wyrażenie. W tym przypadku, skrypt nie wyszukiwał ci itemu, bo jego rodzajem było "{_type}" a nie "gold ingot"

 

@bvcz mogę cię prosić o zostawienie tego w takiej postaci? Po to zostawiam bez code, żeby mu kolorem błąd zaznaczyć, temat chyba na przejrzystości nie straci?

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

  • 0
6 minut temu, LuckyPotato napisał:

Jak widzisz lub nie - poprawiłem ci błąd w twoim kodzie:

set {_} to "%{_type}%" parsed as material

I tak jak ci pisałem wcześniej - u ciebie problemem jest to że przedmiot nie jest przedmiotem, jeżeli chcesz wyświetlić zmienną w tekscie, musisz ją zapisać w procentach jako wyrażenie. W tym przypadku, skrypt nie wyszukiwał ci itemu, bo jego rodzajem było "{_type}" a nie "gold ingot"

 

@bvcz mogę cię prosić o zostawienie tego w takiej postaci? Po to zostawiam bez code, żeby mu kolorem błąd zaznaczyć, temat chyba na przejrzystości nie straci?

Dzięki
Już wiem gdzie był błąd <3 

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

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

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