Skocz do zawartości
  • 0

Problem ze sprawdzeniem czy gracz się powtarza w zmiennej grupowej


Slupik98
 Udostępnij

Pytanie

Mam taki(no tutaj wam dałem wersję bardzo uproszczoną, pozbywając się nieistotnych dla was fragmentów) kod:

on join:	set {_jest} to false	loop {gracze.save::*}:		if player is loop-value:			set {_jest} to true	if {_jest} is false:		add player to {gracze.save::*}

Podczas debugu zauważyłem, że:

Zmienna {_jest} ustawia się na false(czyli prawdiłowo), potem wykonuje się pętla, ALE porównanie czy gracz to loopowana wartość pętli już nie działa prawidłowo. Za każdym razem wartość pętli to co innego niż gracz, więc cały czas dodaje np. mnie.

Chciałem sprowadzić gracz do textu używając parsed as text, ale nie działało, potem z loop-value patrzyłem czy zadziała z parsed as player i też nic :(

Macie jakieś pomysły?

 

Problem juz rozwiązałem w ten sposób:

on join:	set {_jest.%player%} to false	loop {gracze.nicki.save::*}:		if player's name is loop-value:			set {_jest.%player%} to true	if {_jest.%player%} is false:		add player's name to {gracze.nicki.save::*}		add player to {gracze.save::*} 

Ale niezbyt mnie to zadowala, bo będę musiał potem kombinowac jeszcze przy przywracaniu danych z backupu, by przywróciło nie tylko do {gracze.save: :*} , ale też do {gracze.nicki.save: :*}. Oczywiście mogę to zrobić, ale mi jednak zależy na prostocie, więc nadal czekam na zgrabne rozwiązanie.

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

8 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
on join:    set {_nick} to player's name    set {_jest} to false    {gracze.save::*} contains {_nick}:        set {_jest} to true    if {_jest} is false:        add {_nick} to {gracze.save::*}
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
	set {_nick} to player's name	set {_jest} to false	{gracze.test.save::*} contains {_nick}:		set {_jest} to true	if {_jest} is false:		add {_nick} to {gracze.test.save::*}

nadal nic. Ale teraz prosiłbym, byś teraz zamiast {gracze.save: :*} używał {gracze.test.save: :*}

 

PS: Masz like bo ciekawy pomysł, nieskuteczny ale ciekawy :)

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

  • 0

Jeżeli relogne ja a potem ja to nic nie dodaje, ale jeżeli relogne ja ktoś i ja to znowu dodaje mnie.

Dobra już obmyśliłem co i jak :)

Tutaj mam rozwiązanie:

on join:	set {_jest} to false	loop {gracze.save::*}:		if "%loop-value%" is "%player%":			set {_jest} to true	{_jest} is false:		add "%player%" to {gracze.save::*}

Nie jest ono najzgrabniejsze ale nie jest złe jest tak na 5, ale nie na 6 :)

Temat do zamknięcia thx za pomoc.

 

Zamykam ;) ~Dragon

Edytowane przez PoweredDragon
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ę...