Arreglos menores y legibilidad
This commit is contained in:
parent
ebd75911fc
commit
faddc1fcb8
@ -20,13 +20,16 @@ public class ComunacacionJugador extends Thread{
|
||||
int sala = Integer.parseInt(bufferEntrada.readLine())-1;
|
||||
if(Servidor.addJugador(sala, this.socket)) {
|
||||
bufferSalida.println("Has entrado en la sala");
|
||||
if(Servidor.determinarJuego(sala) == 1) {
|
||||
switch(Servidor.determinarJuego(sala)){
|
||||
case Servidor.juego4:
|
||||
sala -= Servidor.salas3.size();
|
||||
bufferSalida.println("4");
|
||||
partida4(bufferEntrada, bufferSalida, sala);
|
||||
}else {
|
||||
break;
|
||||
case Servidor.juego3:
|
||||
bufferSalida.println("3");
|
||||
partida3(bufferEntrada, bufferSalida, sala);
|
||||
break;
|
||||
}
|
||||
}else {
|
||||
bufferSalida.println("Error al entrar en la sala");
|
||||
@ -53,6 +56,8 @@ public class ComunacacionJugador extends Thread{
|
||||
bufferSalida.println(Servidor.salas3.get(sala).tablero.getTablero());
|
||||
Servidor.salas3.get(sala).tablero.colocarFicha(Integer.parseInt(bufferEntrada.readLine()),
|
||||
Integer.parseInt(bufferEntrada.readLine()),jugador);
|
||||
/*Calculamos el modulo 2 de jugador para que cuando este sea 2 se acceda al socket del primero,
|
||||
y viceversa, ya que usamos los sockets como mutex*/
|
||||
synchronized (Servidor.salas3.get(sala).jugadores[jugador%2]) {
|
||||
Servidor.salas3.get(sala).jugadores[jugador%2].notify();
|
||||
}
|
||||
@ -71,6 +76,8 @@ public class ComunacacionJugador extends Thread{
|
||||
}
|
||||
while(continuar) {
|
||||
int finalJuego = Servidor.salas3.get(sala).tablero.finalJuego();
|
||||
/*funalJuego determinara quien ha ganado, mientras sea 0 nadie habra ganado,
|
||||
y cuando alguien gane contendra el numero del jugador que ha ganado*/
|
||||
if(finalJuego != 0) {
|
||||
continuar = false;
|
||||
if(finalJuego == jugador) {
|
||||
@ -78,10 +85,11 @@ public class ComunacacionJugador extends Thread{
|
||||
Servidor.salas3.remove(sala);
|
||||
}else {
|
||||
bufferSalida.println("f");
|
||||
}
|
||||
synchronized (Servidor.salas3.get(sala).jugadores[jugador%2]) {
|
||||
Servidor.salas3.get(sala).jugadores[jugador%2].notify();
|
||||
}
|
||||
}
|
||||
|
||||
}else {
|
||||
bufferSalida.println(Servidor.salas3.get(sala).tablero.getTablero());
|
||||
Servidor.salas3.get(sala).tablero.colocarFicha(Integer.parseInt(bufferEntrada.readLine()),
|
||||
@ -110,6 +118,8 @@ public class ComunacacionJugador extends Thread{
|
||||
bufferSalida.println("Primero");
|
||||
bufferSalida.println(Servidor.salas4.get(sala).tablero.getTablero());
|
||||
Servidor.salas4.get(sala).tablero.colocarFicha(Integer.parseInt(bufferEntrada.readLine()),jugador);
|
||||
/*Calculamos el modulo 2 de jugador para que cuando este sea 2 se acceda al socket del primero,
|
||||
y viceversa, ya que usamos los sockets como mutex*/
|
||||
synchronized (Servidor.salas4.get(sala).jugadores[jugador%2]) {
|
||||
Servidor.salas4.get(sala).jugadores[jugador%2].notify();
|
||||
}
|
||||
@ -128,6 +138,8 @@ public class ComunacacionJugador extends Thread{
|
||||
}
|
||||
while(continuar) {
|
||||
int finalJuego = Servidor.salas4.get(sala).tablero.finalJuego();
|
||||
/*funalJuego determinara quien ha ganado, mientras sea 0 nadie habra ganado,
|
||||
y cuando alguien gane contendra el numero del jugador que ha ganado*/
|
||||
if(finalJuego != 0) {
|
||||
continuar = false;
|
||||
if(finalJuego == jugador) {
|
||||
@ -135,10 +147,10 @@ public class ComunacacionJugador extends Thread{
|
||||
Servidor.salas4.remove(sala);
|
||||
}else {
|
||||
bufferSalida.println("f");
|
||||
}
|
||||
synchronized (Servidor.salas4.get(sala).jugadores[jugador%2]) {
|
||||
Servidor.salas4.get(sala).jugadores[jugador%2].notify();
|
||||
}
|
||||
}
|
||||
}else {
|
||||
bufferSalida.println(Servidor.salas4.get(sala).tablero.getTablero());
|
||||
Servidor.salas4.get(sala).tablero.colocarFicha(Integer.parseInt(bufferEntrada.readLine()),jugador);
|
||||
|
@ -7,6 +7,8 @@ public class Servidor {
|
||||
static Servidor instancia;
|
||||
static ArrayList<Sala3> salas3;
|
||||
static ArrayList<Sala4> salas4;
|
||||
static final int juego3 = 0;
|
||||
static final int juego4 = 1;
|
||||
|
||||
private Servidor() {
|
||||
ServerSocket server;
|
||||
@ -65,11 +67,12 @@ public class Servidor {
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
public static int determinarJuego(int sala) {
|
||||
if(Servidor.salas3.size() > sala) {
|
||||
return 0;
|
||||
return Servidor.juego3;
|
||||
}else {
|
||||
return 1;
|
||||
return Servidor.juego4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -39,6 +39,9 @@ public class Tablero3 {
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*Lo hice hace un anio y ni idea de como va pero va, es muy feo
|
||||
el de el 4 en raya es mas bonito y deberia ir en un tablero 3x3
|
||||
pero no me apetecia probarlo*/
|
||||
public int finalJuego() {
|
||||
int ret=0;
|
||||
for(int i=0;i<3;i++) {
|
||||
|
@ -47,8 +47,9 @@ public class Tablero4 {
|
||||
|
||||
public int finalJuego() {
|
||||
int ret=0;
|
||||
for(int i = 0;i < this.casillas.length-1; i++) {
|
||||
for(int i = 0;i < this.casillas.length; i++) {
|
||||
for(int j = 0;j < this.casillas[i].length; j++) {
|
||||
if(this.casillas[i][j] != 0) {
|
||||
if(comprobarHorizontal(i, j, this.casillas[i][j]) >= 3) {
|
||||
return this.casillas[i][j];
|
||||
}
|
||||
@ -63,6 +64,7 @@ public class Tablero4 {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -95,7 +97,7 @@ public class Tablero4 {
|
||||
if(x == this.casillas.length-1) {
|
||||
return 0;
|
||||
}
|
||||
if(this.casillas[x][y+1] == jugador) {
|
||||
if(this.casillas[x+1][y+1] == jugador) {
|
||||
return comprobarDiagonalArriba(x+1, y+1, jugador)+1;
|
||||
}else {
|
||||
return 0;
|
||||
@ -109,7 +111,7 @@ public class Tablero4 {
|
||||
if(x == this.casillas.length-1) {
|
||||
return 0;
|
||||
}
|
||||
if(this.casillas[x][y+1] == jugador) {
|
||||
if(this.casillas[x+1][y-1] == jugador) {
|
||||
return comprobarDiagonalAbajo(x+1, y-1, jugador)+1;
|
||||
}else {
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user