Foros del Web » Creando para Internet » Flash y Actionscript »

Hacer juego con as3

Estas en el tema de Hacer juego con as3 en el foro de Flash y Actionscript en Foros del Web. Buenos días para todos El juego consta de 16 clips que deben formar parejas, quedando 8 parejas. Cada clip tiene una animación que cuando se ...
  #1 (permalink)  
Antiguo 03/03/2012, 06:06
Avatar de ceaped  
Fecha de Ingreso: febrero-2004
Mensajes: 2.185
Antigüedad: 20 años, 9 meses
Puntos: 9
Pregunta Hacer juego con as3

Buenos días para todos
El juego consta de 16 clips que deben formar parejas, quedando 8 parejas.
Cada clip tiene una animación que cuando se presione se pone de un color que debe corresponder con otro clip del mismo color. Sí se encuentra una pareja del mismo color se bloquea esta pareja pues ya está correcta, pero si no que se devuelva a la posición inicial ambos clips.

Los clips los tengo nombrados así:
1-1a
2-2a
3-3a
4-4a
5-5a
6-6a
7-7a
8-8a
Como ven son 16 clips que forma 8 parejas.

Tengo este código que hice y que funciona hasta cierto punto (sólo pongo para el clip 1-1a y 2-2a).

Cita:
stop();


//Opción de botón para los MC//
concentrece_1_mc.buttonMode=true;
concentrece_1a_mc.buttonMode=true;
concentrece_2_mc.buttonMode=true;
concentrece_2a_mc.buttonMode=true;


//
concentrece_1_mc.addEventListener(MouseEvent.CLICK , concentrece_1);
concentrece_1a_mc.addEventListener(MouseEvent.CLIC K, concentrece_1a);

concentrece_2_mc.addEventListener(MouseEvent.CLICK , concentrece_2);
concentrece_2a_mc.addEventListener(MouseEvent.CLIC K, concentrece_2a);


//1 y 1a
function concentrece_1(event:MouseEvent):void {
concentrece_1_mc.gotoAndPlay(1);
//Respuestas buena para la 1
if (concentrece_1_mc.currentLabel=="uno"||concentrece _1a_mc.currentLabel=="uno") {
gotoAndStop(15);
}

//Respuestas equivocada con la 1 con la 2
if (concentrece_2_mc.currentLabel=="dos") {
concentrece_2_mc.gotoAndPlay(16);
concentrece_1_mc.gotoAndPlay(16);
}
//Respuestas equivocada con la 1 con la 2a
if (concentrece_2a_mc.currentLabel=="dos") {
concentrece_2a_mc.gotoAndPlay(16);
concentrece_1_mc.gotoAndPlay(16);
}

}

function concentrece_1a(event:MouseEvent):void {
concentrece_1a_mc.gotoAndPlay(1);

//Respuestas buena para la
if (concentrece_1_mc.currentLabel=="uno"||concentrece _1a_mc.currentLabel=="uno") {
gotoAndStop(15);
}

//Respuestas equivocada con la 1a con la 2a
if (concentrece_2a_mc.currentLabel=="dos") {
concentrece_2a_mc.gotoAndPlay(16);
concentrece_1a_mc.gotoAndPlay(16);
}
//Respuestas equivocada con la 1a con la 2
if (concentrece_2_mc.currentLabel=="dos") {
concentrece_2_mc.gotoAndPlay(16);
concentrece_1a_mc.gotoAndPlay(16);
}

}

//2 y 2a
function concentrece_2(event:MouseEvent):void {
concentrece_2_mc.gotoAndPlay(1);
//Respuestas buena para 2 y 2a
if (concentrece_2_mc.currentLabel=="dos"||concentrece _2a_mc.currentLabel=="dos") {
gotoAndStop(15);
}

//Respuestas equivocada con la 2 con la 1
if (concentrece_1_mc.currentLabel=="uno") {
concentrece_2_mc.gotoAndPlay(16);
concentrece_1_mc.gotoAndPlay(16);
}
//Respuestas equivocada con la 2 con la 1a
if (concentrece_1a_mc.currentLabel=="uno") {
concentrece_2_mc.gotoAndPlay(16);
concentrece_1a_mc.gotoAndPlay(16);
}


}

function concentrece_2a(event:MouseEvent):void {
concentrece_2a_mc.gotoAndPlay(1);
//Respuestas buena para la 2a
if (concentrece_2_mc.currentLabel=="dos"||concentrece _2a_mc.currentLabel=="dos") {
gotoAndStop(15);
}

//Respuestas equivocada con la 2a con la 1
if (concentrece_1_mc.currentLabel=="uno") {
concentrece_2a_mc.gotoAndPlay(16);
concentrece_1_mc.gotoAndPlay(16);
}
//Respuestas equivocada con la 1a con 2a 1a
if (concentrece_1a_mc.currentLabel=="uno") {
concentrece_2a_mc.gotoAndPlay(16);
concentrece_1a_mc.gotoAndPlay(16);
}

}



//
reiniciar_btn.addEventListener(MouseEvent.CLICK, reiniciar);


//
function reiniciar(event:MouseEvent) {
concentrece_1_mc.gotoAndPlay(16);
concentrece_1a_mc.gotoAndPlay(16);

concentrece_2_mc.gotoAndPlay(16);
concentrece_2a_mc.gotoAndPlay(16);

}
Sí hago clic sobre el 1 y luego sobre el 1a quedan del mismo color y se bloquean.
Sí hago clic sobre el 1 y luego sobre el 2 se devuelve por que es incorrecto.
Mi problema está en cuando hago clip en 1 y 1a y luego en 2 pues se devuelven la 1 y 1a.

Gracias por su ayuda
__________________
Diseñador Gráfico publicitario

Etiquetas: as3, juego, clips
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:55.