El código es este, si veis alguna animalada aunque no tenga que ver con el problema podeis comentarla también:
Código :
fscommand("fullscreen", "true");
stage.scaleMode = "noScale";
Mouse.hide();
//
Player1_mc.stop();
Player2_mc.stop();
//
stage.addEventListener(Event.ENTER_FRAME, Main);
stage.addEventListener(KeyboardEvent.KEY_DOWN, Pulsa);
stage.addEventListener(KeyboardEvent.KEY_UP, Levanta);
//
ready_txt.visible = false;
ready_txt.x = (stage.stageWidth/2)-(ready_txt.width/2);
ready_txt.y = stage.stageHeight/2;
//
var sound1:Sound = new Sound(req);
var req:URLRequest = new URLRequest("sound1.mp3");
sound1.load(req);
//
var PELOTA_VELOC:int = 8;
var HACIA_DERECHA:Boolean = false;
var IMPACTO:int = 0;
var PULSADO_ABAJO:Boolean = false;
var PULSADO_ARRIBA:Boolean = false;
var REINICIA:Boolean = false;
var PELOTA_OUT:Boolean = false;
var SCORE_FLAG:Boolean = false;
var SCORE1:int = 0;
var SCORE2:int = 0;
//
function Ready(){
PELOTA_OUT = false;
ready_txt.visible = false;
pelota_mc.visible = true;
if(!HACIA_DERECHA){
pelota_mc.x = stage.stageWidth-200;
}else{
pelota_mc.x = 200;
}
SCORE_FLAG = false;
}
//
function Pulsa(e:KeyboardEvent) {
if (e.keyCode == 40) {//Abajo
PULSADO_ABAJO= true;
PULSADO_ARRIBA= false;
} else if (e.keyCode == 38) {//Arriba
PULSADO_ARRIBA= true;
} else {
PULSADO_ABAJO = false;
PULSADO_ARRIBA = false;
}
}
//
function Levanta(e:KeyboardEvent) {
PULSADO_ABAJO = false;
PULSADO_ARRIBA = false;
}
//
function Main(e:Event) {
score1_txt.text = String(SCORE1);
score2_txt.text = String(SCORE2);
if (PULSADO_ARRIBA) {
Player2_mc.y -= PELOTA_VELOC;
} else if (PULSADO_ABAJO) {
Player2_mc.y += PELOTA_VELOC;
}
var player1_sup:int = Player1_mc.y-(Player1_mc.height/2);
var player1_inf:int = Player1_mc.y+(Player1_mc.height/2);
var player2_sup:int = Player2_mc.y-(Player2_mc.height/2);
var player2_inf:int = Player2_mc.y+(Player2_mc.height/2);
//PELOTA
//Si pelota va hacia izquierda.
if (!HACIA_DERECHA) {
//Si no ha llegado a player1, ¡muévete!.
if (pelota_mc.x >= Player1_mc.x+Player1_mc.width) {
pelota_mc.x -= PELOTA_VELOC;
PELOTA_OUT = false;
}else{
//Si ha llegado a player1.
//Si pelota está dentro de player1.
if (!PELOTA_OUT && pelota_mc.y+(pelota_mc.height/2) > player1_sup && pelota_mc.y-(pelota_mc.height/2) < player1_inf) {
sound1.play();
Player1_mc.gotoAndPlay(1);
if ( pelota_mc.y < player1_sup+(pelota_mc.width/2) ) {//Si impacta en parte superior.
IMPACTO = 2;//rebota hacia arriba
} else if (pelota_mc.y > player1_inf-(pelota_mc.width/2)) {//Si impacta en parte inf.
IMPACTO = 1;//rebota hacia abajo
} else{//Si impacta en centro.
IMPACTO = 0;// rebota recto.
}
HACIA_DERECHA = true;
}else{ //Si pelota está fuera de player1.
PELOTA_OUT = true;
pelota_mc.x -= PELOTA_VELOC; // Continúa su camino.
if(!SCORE_FLAG){
SCORE2++;
SCORE_FLAG = true;
}
if(pelota_mc.x < 0){
ready_txt.visible = true;
pelota_mc.visible = false;
if(pelota_mc.x < -1000){
Ready();
}
}
}
}
}
//Si pelota va hacia derecha
if (HACIA_DERECHA) {
//Si no ha llegado a player2, ¡muévete!.
if (pelota_mc.x <= Player2_mc.x-Player2_mc.width) {
pelota_mc.x += PELOTA_VELOC;
PELOTA_OUT = false;
}else{
//Si ha llegado a player2.
//Si pelota está dentro de player2.
if (!PELOTA_OUT && pelota_mc.y+(pelota_mc.height/2) > player2_sup && pelota_mc.y-(pelota_mc.height/2) < player2_inf) {
sound1.play();
Player2_mc.gotoAndPlay(1);
//Si impacta en la parte player2_superior de la paleta
if ( pelota_mc.y < player2_sup+(pelota_mc.width/2) ) {
IMPACTO = 2;//rebota hacia arriba
} else if (pelota_mc.y > player2_inf-(pelota_mc.width/2)) {
IMPACTO = 1;//rebota hacia abajo
} else {
IMPACTO = 0;
}
HACIA_DERECHA = false;
}else{ //Si pelota está fuera de player2.
PELOTA_OUT = true;
pelota_mc.x += PELOTA_VELOC; // Continúa su camino.
if(!SCORE_FLAG){
SCORE1++;
SCORE_FLAG = true;
}
if(pelota_mc.x > stage.stageWidth){
ready_txt.visible = true;
pelota_mc.visible = false;
if(pelota_mc.x > stage.stageWidth+1000){
Ready();
}
}
}
}
}
//PLAYER 1
//Impide que Player 1 salga de la pantalla
//Si no te sales puedes moverte
if (player1_sup>=0 && player1_inf<=stage.stageHeight) {
Player1_mc.y = mouseY;
} else {
//Si te sales, recoloca la pala.
if (player1_sup<0) {
Player1_mc.y = Player1_mc.height/2;
} else if (player1_inf>stage.stageHeight) {
Player1_mc.y = stage.stageHeight-(Player1_mc.height/2);
}
}
//PELOTA
//Si golpea pala en extremos
if (IMPACTO==2) {
pelota_mc.y -= PELOTA_VELOC;
}
if (IMPACTO==1) {
pelota_mc.y += PELOTA_VELOC;
}
//Si golpea techo
if (pelota_mc.y < 0) {
sound1.play();
IMPACTO = 1;
}
//Si golpea suelo
if (pelota_mc.y > stage.stageHeight) {
sound1.play();
IMPACTO = 2;
}
//Debug
//campo_txt.text = "pelota_mc.x: "+String(pelota_mc.x)+"\nIMPACTO: "+String(IMPACTO)+"\nHACIA_DERECHA: "+String(HACIA_DERECHA);
} 