Skocz do zawartości
  • 0

GUI


kaol48s

Pytanie

Witam ,mam zrobiony config w YML i chciałbym z niego skorzystać w sklepie w pliku YML jest:

Spoiler

sklep:
 itemy:
  16 ender pearl: 1000
  diamond helmet of protection 4: 1000
  dirt: 1
  stone: 100

 

a kod do GUI:

Spoiler

command /sklep [<player>]:
	trigger:
		open chest with 6 rows named "SKLEP" to player-arg
		wait 2 tick
		loop 54 times:
			format slot loop-number -1 of player-arg with light gray glass pane to be unstealable
		set {_111::*} to configuration section "sklep.itemy" get of "plugins/Skript/config.yml"
		set {_sloty} to 0
		loop {_111::*}:
			set {_coinsy::%loop-value%} to single value "sklep.itemy.%loop-value%" get of "plugins/Skript/config.yml" parsed as integer
			set {_2::%loop-value%} to loop-value parsed as item
			format slot {_sloty} of player-arg with {_2::%loop-value%} with lore "&6&lCena: &9&l%{_coinsy::%loop-value%}%" to close then run [execute player-arg command "kup s %{_2::%loop-value%}% %{_coinsy::%loop-value%}%"]
			add 1 to {_sloty}

 

komenda na kupowanie:

Spoiler

command /kup [<text>] [<item>] [<integer>]:
	trigger:
		if arg-1 is not set:
			send "Unknown command. Type ""/help"" for help."
			stop
		if player is op:
			if arg-1 is "s":
				set {_coinsy} to single value "coinsy" get of "plugins/Skript/Gracze/%player%.yml" parsed as integer
				set {_::*} to yaml list "stale itemy" of file "plugins/Skript/Gracze/%player%.yml"
				loop {_::*}:
					set {_} to loop-value parsed as item
					if arg-2 is {_}:
						send "juz kupiłes %arg-2%"
						stop
				if {_coinsy} >= arg-3:
					add "%arg-2%" to yaml list "stale itemy" of file "plugins/Skript/Gracze/%player%.yml"
					send "&2Kuipono %arg-2%"
				else:
					send "Niemasz tyle hajsu"

 

problem wygląda tak itemki sie pokazują kasa w lore jest pokazywana ale jak klikam na jakikolwiek item to kupuje zawsze mi ostatni loopwany item pomocy czyli jak klikam np perełki to i tak kupi mi stone

Odnośnik do komentarza
https://skript.pl/temat/18190-gui/
Udostępnij na innych stronach

6 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Kupi ci stone, bo w obrębie tego wydarzenia w każdej komendzie jest zmienna {_2::%loop-value%}, która na końcu zmienia wartość na stone właśnie; musisz ją zróżnicować i zadziała - skrypt odczytuje zmienne w komendach po kliknięciu, nie po utworzeniu sklepu :v

Odnośnik do komentarza
https://skript.pl/temat/18190-gui/#findComment-124479
Udostępnij na innych stronach

  • 0
command /sklep [<player>]:
	trigger:
		open chest with 6 rows named "SKLEP" to player-arg
		wait 2 tick
		loop 54 times:
			format slot loop-number -1 of player-arg with light gray glass pane to be unstealable
		set {_111::*} to configuration section "sklep.itemy" get of "plugins/Skript/config.yml"
		set {_sloty} to 0
		loop {_111::*}:
			set {_coinsy::%{_sloty}%::%loop-value%} to single value "sklep.itemy.%loop-value%" get of "plugins/Skript/config.yml" parsed as integer
			set {_item::%{_sloty}%::%loop-value%} to loop-value parsed as item
			format slot {_sloty} of player-arg with {_item::%{_sloty}%::%loop-value%} with lore "&6&lCena: &9&l%{_coinsy::%{_sloty}%::%loop-value%}%" to close then run [execute player-arg command "kup s %{_item::%{_sloty}%::%loop-value%}% %{_coinsy::%{_sloty}%::%loop-value%}%"]
			add 1 to {_sloty}

 

Odnośnik do komentarza
https://skript.pl/temat/18190-gui/#findComment-124655
Udostępnij na innych stronach

  • 0
 
set {_coinsy::%{_sloty}%::%loop-value%} to single value "sklep.itemy.%loop-value%" get of "plugins/Skript/config.yml" parsed as integer
set {_item::%{_sloty}%::%loop-value%} to loop-value parsed as item

zamień na to

set {_coinsy::%{_sloty}%} to single value "sklep.itemy.%loop-value%" get of "plugins/Skript/config.yml" parsed as integer
set {_item::%{_sloty}%} to loop-value parsed as item
Odnośnik do komentarza
https://skript.pl/temat/18190-gui/#findComment-124815
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ę...