miércoles, 25 de noviembre de 2015

Clase movimientoJugador

package pacman;

import java.io.IOException;

import javax.swing.ImageIcon;

public class movimientoJugador {
static int dirDerecha=1;
static int dirArriba=2;
static int dirIzquierda=3;
static int dirAbajo=4;


public static void controlar(int clieJugador, Pantalla pantalla) throws IOException {
controlarColisionesJugadores.interseccionPacmanConFantasma(pantalla);
pantalla.comerBolitas(clieJugador);
pantalla.comerSuperBolitas(clieJugador);
if(clieJugador!=1)
controlarColisionesJugadores.interseccionFantasmaConFantasma(pantalla);

if(Direccion.getDir(clieJugador)==dirArriba){//QUIERO IR ARRIBA
    if(Direccion.getActualDir(clieJugador)==dirDerecha || Direccion.getActualDir(clieJugador)==dirIzquierda){ //SI ESTA ACTUALMENTE LLENDO A LA DERECHA O A LA IZQUIERDA
    if(pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirArriba)!=0){ //SI EN ESTA POSICION PUEDO SUBIR
    Direccion.setActualDir(dirArriba,clieJugador);//SUBIR
    }
    }
    if(Direccion.getActualDir(clieJugador)==dirAbajo){ //SI ESTA LLENDO PARA ABAJO, ACTUALIZA LAS DIRECCIONES PARA QUE SE MUEVA HACIA ABAJO
    Direccion.setActualDir(dirArriba,clieJugador);
    Direccion.setDir(dirArriba,clieJugador);
    }
    }
   
    else if(Direccion.getDir(clieJugador)==dirAbajo){//QUIERO IR ABAJO
    if(Direccion.getActualDir(clieJugador)==dirDerecha || Direccion.getActualDir(clieJugador)==dirIzquierda){ //SI ESTA ACTUALMENTE LLENDO A LA DERECHA O A LA IZQUIERDA
    if(pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirAbajo)!=0){ //SI EN ESTA POSICION PUEDO BAJAR
    Direccion.setActualDir(dirAbajo,clieJugador);//BAJAR
    }
    }
    if(Direccion.getActualDir(clieJugador)==dirArriba){//SI ESTA LLENDO PARA ARRIBA, ACTUALIZA LAS DIRECCIONES PARA QUE SE MUEVA HACIA ARRIBA
    Direccion.setActualDir(dirAbajo,clieJugador);
    Direccion.setDir(dirAbajo,clieJugador);
    }
    }
   
    else if(Direccion.getDir(clieJugador)==dirDerecha){//QUIERO IR A LA DERECHA
    if(Direccion.getActualDir(clieJugador)==dirArriba || Direccion.getActualDir(clieJugador)==dirAbajo){ //SI ESTA ACTUALMENTE LLENDO ARRIBA O ABAJO
    if(pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirDerecha)!=0){ //SI EN ESTA POSICION PUEDE IR A LA DERECHA
    Direccion.setActualDir(dirDerecha,clieJugador);//DERECHA
    }
    }
    if(Direccion.getActualDir(clieJugador)==dirIzquierda){//SI ESTA LLENDO PARA LA IZQUIERDA, ACTUALIZA LAS DIRECCIONES PARA QUE SE MUEVA HACIA LA DERECHA
    Direccion.setActualDir(dirDerecha,clieJugador);
    Direccion.setDir(dirDerecha,clieJugador);
    }
    }
   
    else if(Direccion.getDir(clieJugador)==dirIzquierda){//QUIERO IR A LA IZQUIERDA
    if(Direccion.getActualDir(clieJugador)==dirArriba || Direccion.getActualDir(clieJugador)==dirAbajo){ //SI ESTA ACTUALMENTE LLENDO ARRIBA O ABAJO
    if(pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirIzquierda)!=0){ //SI EN ESTA POSICION PUEDE IR A LA IZQUIERDA
    Direccion.setActualDir(dirIzquierda,clieJugador);//IZQUIERDA
    }
    }
    if(Direccion.getActualDir(clieJugador)==dirDerecha){//SI ESTA LLENDO PARA LA DERECHA, ACTUALIZA LAS DIRECCIONES PARA QUE SE MUEVA HACIA LA IZQUIERDA
    Direccion.setActualDir(dirIzquierda,clieJugador);
    Direccion.setDir(dirIzquierda,clieJugador);
    }
    }

    int valor;
if(Direccion.getActualDir(clieJugador)==dirDerecha){ //PERSONAJE A LA DERECHA
    valor=pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirDerecha);
    if(valor==0){
    pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),clieJugador);//SE QUEDA QUIETO POR QUE HAY UNA PARED
    }
    else if(valor ==2){
    pantalla.setLabelLocation(pantalla.getLabelX(clieJugador)-425, pantalla.getLabelY(clieJugador),clieJugador);//SE TRANSPORTA AL LADO IZQUIERDO DEL MAPA
    ClienteServidor.envioDeMovimiento(clieJugador,dirDerecha,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
    }
    else{
    pantalla.setLabelLocation(pantalla.getLabelX(clieJugador)+1, pantalla.getLabelY(clieJugador),clieJugador);//SE PUEDE MOVER
    ClienteServidor.envioDeMovimiento(clieJugador,dirDerecha,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
    }
    }
   
    else if(Direccion.getActualDir(clieJugador)==dirIzquierda){//PERSONAJE A LA IZQUIERDA
valor=pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirIzquierda);
if(valor==0){
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),clieJugador);//SE QUEDA QUIETO POR QUE HAY UNA PARED
}
else if(valor ==2){
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador)+425, pantalla.getLabelY(clieJugador),clieJugador);//SE TRANSPORTA AL LADO DERECHO DEL MAPA
ClienteServidor.envioDeMovimiento(clieJugador,dirIzquierda,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
}
else{
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador)-1, pantalla.getLabelY(clieJugador),clieJugador);//SE PUEDE MOVER
ClienteServidor.envioDeMovimiento(clieJugador,dirIzquierda,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
}

    }
   
    else if(Direccion.getActualDir(clieJugador)==dirArriba){//PERSONAJE ARRIBA
valor=pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirArriba);
if(valor==0){
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),clieJugador);//SE QUEDA QUIETO POR QUE HAY UNA PARED
}
else{
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador)-1,clieJugador);//SE PUEDE MOVER
ClienteServidor.envioDeMovimiento(clieJugador,dirArriba,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
}
    }
    else if(Direccion.getActualDir(clieJugador)==dirAbajo){//PERSONAJE ABAJO
valor=pantalla.getValorMapa(pantalla.getLabelX(clieJugador),pantalla.getLabelY(clieJugador), dirAbajo);
if(valor==0){
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),clieJugador);//SE QUEDA QUIETO POR QUE HAY UNA PARED
}
else{
pantalla.setLabelLocation(pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador)+1,clieJugador);//SE PUEDE MOVER
ClienteServidor.envioDeMovimiento(clieJugador,dirAbajo,pantalla.getLabelX(clieJugador), pantalla.getLabelY(clieJugador),controlarColisionesJugadores.getTransformacion(clieJugador));//ENVIO Numero de Cliente, hacia donde se mueve, y las posiciones X e Y
}
   
    }

}

}

No hay comentarios:

Publicar un comentario