La otra vez estuve jugando mucho este juego (Fable), donde eliges diferentes decisiones y acciones, pero esto determina tu camino como "HÉROE" o "VILLANO". Me estuve preguntando cómo podría hacerse en AS, pero creo que le dí al clavo.
Para determinar un camino se hace a base de acciones buenas o malas (++ o --), entonces obviamente se usaría una variable Numérica tipo "int" (entero).
Así al final del juego y cada etapa, a base de este contador de decisiones determina qué camino has tomado.
Por lo tanto más o menos quedaría algo parecido en AS3:
Código ActionScript :
// Importamos el Evento del Teclado
import flash.events.KeyboardEvent;
// Creamos un contador tipo Entero, para que no haga decimales
var contador:int = 0;
// Añadimos el evento del teclado
stage.addEventListener(KeyboardEvent.KEY_DOWN, teclado);
// Con la función en ejecusión, contamos las decisiones
function teclado (evt:KeyboardEvent):void
{
switch (evt.keyCode)
{
case 38:
// Decisión Buena, Tleca Arriba
contador++;
miContador();
trace("MÁS");
trace("/////");
break;
case 40:
// Decisión Mala, Tecla Abajo
contador--;
miContador();
trace("MENOS");
trace("/////");
break;
}
}
// Se invocó la función para saber qué tan malvados o héroe somos
// Pero obviamente esto se invoca al final de cada etapa (nivel)
function miContador ()
{
if (contador >= 5)
{
trace("HÉROE");
}
else if (contador <= -5)
{
trace("VILLANO");
}
else
{
trace("NEUTRAL");
}
}También me tomé la libertad de hacerlo en AS2:
Código ActionScript :
var contador:Number = 0;
var teclado:Object = new Object();
teclado.onKeyDown = function()
{
tecla = Key.getCode();
if (tecla == 38)
{
contador++;
miContador();
trace("MÁS");
}
else if (tecla == 40)
{
contador--;
miContador();
trace("MENOS");
}
}
teclado.onKeyUp = function()
{
tecla = false;
}
Key.addListener(teclado);
function miContador ()
{
if (contador >= 5)
{
trace("HÉROE");
}
else if (contador <= -5)
{
trace("VILLANO");
}
else
{
trace("NEUTRAL");
}
}Tal vez este tema no era para este foro, (sección en particular) y mucho menos un tema de complejidad, porque de verdad que es muy sencillo. Pero denme sus opiniones.
