Las listas

Las listas

> Tutorial

Una lista permite almacenar varios valores en un orden determinado.

Creación y uso de una lista

Se puede crear una lista con la siguiente sintaxis:

La primera posición en una lista es la posición 0. Se accede a un elemento concreto de la lista con:

Muchas funciones están disponibles para manipular listas, en la parte "Listas" de la documentación. Las más notables son:

Iterar sobre una lista con el bucle for in

Se puede iterar sobre cada uno de los valores de una lista usando un bucle for simple, así:

Pero existe una variante del bucle for que permite iterar sobre cada uno de los valores de una lista de forma más sencilla, el bucle for in. El siguiente código es equivalente al anterior pero más conciso:

Evaluación de daños de un arma y condición "finisher"

Nuestra IA actual tiene un problema que quizás hayas notado: cuando el enemigo está casi muerto, nuestro puerro usa sus potenciadores, curas, escudos antes de usar su arma, ¡cuando podría acabar con el enemigo!

Para mejorar esta situación al final del combate, vamos a estimar los daños que podemos infligir al enemigo para saber si podemos acabar con él.

Empezamos usando la función getWeaponEffects que da la lista de efectos de un arma:

Un efecto es a su vez una lista con los 6 elementos siguientes: [tipo, mín, máx, turnos, objetivos, modificadores]. Calculamos los daños finales para este efecto:

Añadimos los daños al total:

Terminamos con una condición: si el total de daños es mayor que la vida del enemigo, lo vamos a matar: ¡atacamos! Si no, esperamos con chips:

> Consejo: se puede acceder a un rango de una lista usando la sintaxis lista[2:8].

> Consejo: se pueden anidar listas: lista dentro de una lista [ [1, 2, 3] ] y acceso a una lista dentro de una lista: lista[0][0]

❓ Quiz

¿Para qué puede servir una lista?

Almacenar varios valores Ordenar valores Ejecutar instrucciones en paralelo Realizar varios cálculos

¿Qué códigos son válidos?

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]

IA completa