¿Cómo crear distintos finales?
Tener distintos finales no es más que tener diferentes diálogos y mostrar uno u otro según lo que ha ocurrido. Pero para ello necesitamos "guardar" lo que ha ocurrido:
let aciertos = 0
diálogos .añade ( "aciertaAño" ,
() => aciertos = aciertos + 1,
{ personaje : "Juglar" } ,
"¡Correcto! Has acertado." ,
{ sigue : "continuaExplicaciónAño" } ,
)
Con la instrucción
definimos la variable
y ponemos los aciertos a cero. Luego, cuando llegamos a algún diálogo en el que hayamos acertado podemos aumentar el número de aciertos indicando que los nuevos aciertos son:
. Es decir, sumándoles uno al valor anterior.
Condiciones
Ahora, al llegar al final del juego, podemos escoger el final que mostraremos, dependiendo de distintas condiciones:
diálogos .añade ( "Finales" ,
{ si : () => aciertos == 0, sigue : "todoFallos" } ,
{ si : () => aciertos == 3, sigue : "todoAciertos" } ,
{ sigue : "algunosFallos" } ,
)
En las condiciones, los paréntesis y la flecha
se usan para crear funciones. En este caso una comparación. Por ejemplo, la comparación:
comprueba que el número de aciertos sea igual a 3.
El estado es un objeto en donde se guardará toda la información que guardemos con los diálogos. Entre corchetes podemos poner el nombre del dato que queramos, como "aciertos". Y por último podemos compararlo con otro valor. Hay varios operadores que podemos usar para esto:
- Igual (==)
- Distinto (!=)
- Mayor (>)
- Menor (<)
- Mayor o igual (>=)
- Menor o igual (<=)