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

Hola. Soy novato en AS3 (Flash CS6).

Estas en el tema de Hola. Soy novato en AS3 (Flash CS6). en el foro de Flash y Actionscript en Foros del Web. Hola. Soy novato en esto de Flash CS6 y AS3.0. Acabo de comenzar a crearme un minijueguito estilo Breakout donde con la pelotita hay que ...
  #1 (permalink)  
Antiguo 20/04/2014, 15:28
 
Fecha de Ingreso: mayo-2013
Ubicación: Bella Vista, Buenos Aires
Mensajes: 4
Antigüedad: 11 años, 6 meses
Puntos: 0
Hola. Soy novato en AS3 (Flash CS6).

Hola. Soy novato en esto de Flash CS6 y AS3.0. Acabo de comenzar a crearme un minijueguito estilo Breakout donde con la pelotita hay que ir destruyendo unos huevitos de pascua en pantalla (Estilo Breakout o Arkanoid).
El juego ya tiene sonido, la pelota rebota ok contra las paredes, techo, raqueta y destruye los huevitos de pascua y también rebota. Ahora las dudas:

a)- ¿Cómo "detectar" que el jugador haya destruido todos los huevos de pascua y que me aparezca una pantalla felicitándolo y saludándolo para las pascuas?

b)- ¿Qué puedo hacer para que cuando la pelota se sale por abajo que se pierda el juego y se reinicie todo el nivel/juego?. Me imagino que tengo que crear una función así:
function perderJuego():void
{

}

El tema sería como reiniciar todo.


Este es el código fuente en ActionScript 3.0:

import flash.events.Event;

var vpx:Number=8;
var vpy:Number=8;

var sReboteTecho:Sound = new sonidoReboteTecho();
var sReboteBarra:Sound = new sonidoReboteBarra();
var sRebotePared:Sound = new sonidoRebotePared();
var sHuevoRoto:Sound = new sonidoHuevoRoto();
var canal:SoundChannel = new SoundChannel();

var vector:Vector.<huevo> = new Vector.<huevo>();

barra.addEventListener(Event.ENTER_FRAME, moverBarra);
pelota.addEventListener(Event.ENTER_FRAME, moverPelota);

crearHuevos();

function moverBarra(e:Event):void
{
barra.x=mouseX-barra.width/2;

if(mouseX < barra.width/2)
{
barra.x=0;
}
if(mouseX > stage.stageWidth-barra.width/2)
{
barra.x=stage.stageWidth-barra.width;
}

}

function moverPelota(e:Event):void
{
pelota.x+=vpx;
pelota.y+=vpy;

if(pelota.x<=0)
{
canal.stop();
canal=sRebotePared.play();
vpx*=-1;
}
if(pelota.x>=stage.stageWidth-pelota.width)
{
canal.stop();
canal=sRebotePared.play();
vpx*=-1;
}
if(pelota.y<=0)
{
canal.stop();
canal=sReboteTecho.play();
vpy*=-1;
}
if(pelota.hitTestObject(barra))
{
canal.stop();
canal=sReboteBarra.play();
calcularAngulos();
}

for(var i:int=0; i<vector.length; i++)
{
if(pelota.hitTestObject(vector[i]))
{
canal.stop();
canal=sHuevoRoto.play();
stage.removeChild(vector[i]);
vector.splice(i,1);
vpy*=-1;
}
}


}

function calcularAngulos():void
{
var posPelota:Number=pelota.x-barra.x;
var porcentajeChoque=(posPelota/(barra.width-pelota.width))-.5;
vpx=porcentajeChoque*10;
vpy*=-1;
}

function crearHuevos():void
{
for(var i:int=0; i<9; i++)
{
for (var j:int=0; j<5; j++)
{
var nuevo:huevo = new huevo();
nuevo.x=i*40+20;
nuevo.y=j*60+50;
vector.unshift(nuevo)
stage.addChild(vector[0]);
}
}
}



Ayuda, please...
Saludos. Nicolás Matías Funtalas
  #2 (permalink)  
Antiguo 21/04/2014, 14:55
 
Fecha de Ingreso: mayo-2013
Ubicación: Bella Vista, Buenos Aires
Mensajes: 4
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Hola. Soy novato en AS3 (Flash CS6).

Respuesta, por favor...

Etiquetas: as, as3, flash
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 16:55.