> Samouczek
Lista pozwala przechowywać kilka wartości w określonej kolejności.
Listę można utworzyć następującą składnią:
Pierwsza pozycja na liście to pozycja 0. Do konkretnego elementu listy mamy dostęp przez:
Liczne funkcje są dostępne do manipulowania listami, w sekcji "Listy" dokumentacji. Najbardziej godne uwagi to:
for inMożna iterować po każdej z wartości listy używając zwykłej pętli for, w ten sposób:
Ale istnieje wariant pętli for, który pozwala iterować po każdej z wartości listy prościej, pętla for in. Następujący kod jest równoważny poprzedniemu, będąc bardziej zwięzłym:
Nasze obecne AI ma problem, który być może zauważyłeś: gdy wróg jest prawie martwy, nasz por będzie używał swoich boostów, leczeń, tarcz przed użyciem swojej broni, podczas gdy mógłby dobić wroga!
Aby poprawić tę sytuację końca walki, oszacujemy obrażenia, które możemy zadać wrogowi, aby wiedzieć czy możemy go dobić.
Zaczynamy od użycia funkcji getWeaponEffects, która podaje listę efektów broni:
Efekt sam w sobie jest listą zawierającą następujące 6 elementów: [type, min, max, turns, targets, modifiers]. Obliczamy końcowe obrażenia dla tego efektu:
Dodajemy obrażenia do sumy:
Kończymy warunkiem: jeśli całkowite obrażenia są większe niż życie wroga, zabijemy go: atakujemy! W przeciwnym razie czekamy z chipami:
> Wskazówka: można uzyskać dostęp do zakresu listy używając składni lista[2:8].
> Wskazówka: można zagnieżdżać listy: lista w liście [ [1, 2, 3] ] i dostęp do listy w liście: lista[0][0]
Do czego może służyć lista?
Przechowywać kilka wartości Sortować wartości Wykonywać instrukcje równolegle Wykonywać kilka obliczeń
Które kody są poprawne?
var a = [1, 2, 3] a[0] + a[2] var [a] = [1, 2] var [1, 2, 3] count([1, 2, 3]) [ [1, 2], [3, 4], [5, 6] ] lista[5][10]
Impossible de charger les données du jeu.
Vérifiez votre connexion et réessayez.