Skocz do zawartości
  • 0

Podzielenie graczy na dwa teamy


Pytanie

Witam, podam przykład o co mi chodzi:
add player to {bez teamu}         -              i przykładowo jest w nim 20 osób

Jak zrobić zeby te 20 osób podzielono na pół? czyli 10 / 10

jedną polowe dodać do {team1} a drugą do {team2}

Edytowane przez Krzych1998
Odnośnik do komentarza
https://skript.pl/temat/43732-podzielenie-graczy-na-dwa-teamy/
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
Teraz, Krzych1998 napisał:

Witam, podam przykład o co mi chodzi:
add player to {bez teamu}         -              i przykładowo jest w nim 20 osób

Jak zrobić zeby te 20 osób podzielono na pół? czyli 10 / 10

jedną polowe dodać do {team1} a drugą do {team2}

Jeżeli kod wygląda załóżmy tak:

add player to {_lista::*}

Czyli dodajesz graczy do jakiejś tam listy i wiesz, że rozmiar listy wynosi 20, wtedy możesz zrobić to na dwa sposoby:

1. Pętla wykonująca się określoną ilość razy.

loop 20 times:
	if loop-number is <= 10:
		set {_lista1::%loop-number%} to {_lista::%loop-number%}
	else:
		set {_lista2::%loop-number%} to {_lista::%loop-number%}

2. Zapętlanie listy z tymi graczami:

loop {_lista::*}:
	if (loop-index parsed as integer) is <= floor(size of {_lista::*} / 2):
		set {_lista1::%loop-index%} to {_lista::%loop-index%}
	else:
		set {_lista2::%loop-index%} to {_lista::%loop-index%}

Z dwóch tych rozwiązań drugie jest lepsze, gdyż jest w stanie się ustosunkować do różnych rozmiarów listy. Użycie funkcji floor() jest wymagane na wypadek gdyby rozmiar listy {_lista::*} był nieparzysty. Wtedy przy dzieleniu wyszedłby ułamek, który należy zaokrąglić w dół właśnie za pomocą tej funkcji. Oczywiście zaokrąglanie w dół liczby całkowitej zwróci nam dokładnie taką samą liczbę.

Odnośnik do komentarza
https://skript.pl/temat/43732-podzielenie-graczy-na-dwa-teamy/#findComment-273921
Udostępnij na innych stronach

  • 0
Teraz, Krzych1998 napisał:

@KormicDrugi sposób przydziela osoby do teamu czy jest to po prostu wynik?

I pierwszy, i drugi sposób przydziela osoby do teamu.

Dodam, że zamiast:

set {_lista1::%loop-index%} to {_lista::%loop-index%}

możesz to zrobić tak:

add {_lista::%loop-index%} to {_lista1::*} # I tak samo z {_lista2::*}

 

Odnośnik do komentarza
https://skript.pl/temat/43732-podzielenie-graczy-na-dwa-teamy/#findComment-273928
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.

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

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