Red de conocimiento informático - Conocimiento de la instalación - ¡Buscando código de Tetris escrito en java! ¡Preferiblemente la versión en línea! ¡La versión independiente también es buena! Gracias

¡Buscando código de Tetris escrito en java! ¡Preferiblemente la versión en línea! ¡La versión independiente también es buena! Gracias

De hecho, hay muchos códigos fuente para el juego Tetris creados en Java en Internet. Espero que te guste y puedas estudiar el código. es el siguiente:

import java.awt.*

import java.awt.event.*

import javax.swing.*; p>

clase pública Els extiende JFrame implementa KeyListener, Runnable

{

public Els()

{

setSize( 240, 320);

setUndecorated(true);

int H=(int) (this.getToolkit().getScreenSize().height); >int W=(int) (this.getToolkit ().getScreenSize().width

setLocation(W/2-120, H/2-160); setResizable(false);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

pintura vacía pública (Gráficos g)

{

super.paint(g );

Graphics2D g2=(Graphics2D)g

g2.setColor(Color.darkGray.brighter().brighter(); );

// Dibuja un marco pequeño

for(int m=192; mlt; =232; m =10)

{

g2.drawLine(m, 52, m, 92

}

for(int m=52; mlt; =92; m =10)

{

g2.drawLine(192, m, 232, m

}

//Dibuja un marco grande

for(int m=0; mlt ;=180; m =15)

{

g2.drawLine(m, 0, m, 300); >

}

for(int m=0;mlt;=300;m =15)

{

g2.drawLine(0, m , 180, m);

}

//Ennegrecer las cuadrículas con valores distintos de 0

for(int i=1; ilt; 13 ; i)

{

for(int j=0;jlt;20;j)

{

g2.setColor( Color.DARK_GRAY);

if (o[i][j]!=0) g2.fillRect(15*i-13, 15*j 2, 13, 13); p>}

}

//Dibuja el siguiente modelo en el marco pequeño

swi

tch(nextMODE)

{

caso 0: g2.fillRect(204, 54, 8, 8);

g2.fillRect(204, 64, 8, 8);

g2.fillRect(204, 74, 8, 8);

g2.fillRect(204, 84, 8, 8); p>romper;

caso 1: g2.fillRect(194, 64, 8, 8);

g2.fillRect(204, 64, 8, 8); >

g2.fillRect(214, 64, 8, 8);

g2.fillRect(224, 64, 8, 8);

romper

;

caso 2: g2.fillRect(214, 64, 8, 8);

g2.fillRect(214, 74, 8, 8);

g2.fillRect( 214, 84, 8, 8);

g2.fillRect(204, 84, 8, 8);

descanso

caso 3: g2. fillRect(204, 64, 8, 8);

g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8);

g2.fillRect(224, 74, 8, 8);

romper

caso 4: g2.fillRect(204, 64, 8, 8);

g2.fillRect(214, 64, 8, 8);

g2.fillRect(204, 74, 8, 8); g2.fillRect(204, 84, 8, 8);

romper;

caso 5: g2.fillRect(204, 64, 8, 8); p>g2.fillRect(214, 64, 8, 8);

g2.fillRect(224, 64, 8, 8);

g2.fillRect(224, 74, 8, 8);

romper;

caso 6: g2.fillRect(204, 54, 8, 8); 64, 8, 8);

g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8); >

romper;

caso 7: g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8); /p>

g2.fillRect(224, 74, 8, 8);

g2.fillRect(224, 64, 8, 8); p>

p>

caso 8: g2.fillRect(204, 64, 8, 8

g2.fillRect(214, 64, 8, 8);

>

g2.fillRect(214, 74, 8, 8);

g2.fillRect(214, 84, 8, 8);

romper;

caso 9: g2.fillRect(204, 64, 8, 8);

g2.fillRect(214, 64, 8, 8);

g2.fillRect( 224, 64, 8, 8);

g2.fillRect(204, 74, 8, 8);

descanso

caso 10: g2. fillRect(204, 64, 8, 8);

g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8);

g2.fillRect(214, 84, 8, 8);

romper

caso 11: g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8);

g2.fillRect(214, 64, 8, 8); g2.fillRect(224, 64, 8, 8);

romper;

caso 12: g2.fillRect(214, 64, 8, 8); p>g2.fillRect(214, 74, 8, 8);

g2.fillRect(204, 74, 8, 8);

g2.fillRect(204, 84, 8, 8);

descanso;

caso 13: g2.fillRect(204, 64, 8, 8); 64, 8, 8);

g2.fillRect(214, 74, 8, 8);

g2.fillRect(224, 74, 8, 8); >

romper;

caso 14: g2.fillRect(204, 64, 8, 8);

g2.fillRect(214, 64, 8, 8); /p>

g2.fillRect(204, 74, 8, 8);

g2.fillRect(214, 74, 8, 8); p>

p>

}

g2.setColor(Color.negro)

g2.drawLine(180, 0, 180, 300); >

g2 .setColor(Color.DARK_GRAY);

g2.drawString("NIVEL", 194, 10);

g2.drawString("" NIVEL, 210, 28);

p>

g2.drawString("SIGUIENTE", 196, 45);

g2.drawString("PUNTUACIÓN", 193, 110); p>

g2.drawString(" " PUNTUACIÓN, 205, 130);

g2.drawString("Xi);

ong", 205, 160);

g2.drawString("Xuan", 205, 180);

}

//Cómo soltar el bloque

public void down()

{

Y

cambiar(MODO)

{

caso 0: o[X 2][Y]=1

o[X 2][Y 1]=1

o[X 2] [Y 2]=1;

o[X 2][Y 3]

o[X 2][Y-1]=0; > romper;

caso 1: o[X][Y 1];

o[X 1][Y 1]; ] [Y 1];

o[X 3][Y 1];

o[X][Y]=0

o[X] 1 ][Y]=0;

o[X 2][Y]=0

o[X 3][Y]=0; > romper;

caso 2: o[X 2][Y]=1

o[X 2][Y 1]=1; o [X 2][Y 2];

o[X 1][Y 2]

o[X 2][Y-1]=0; >

o[X 1][Y 1]=0

romper;

caso 3: o[X][Y]=1; p >o[X][Y 1];

o[X 1][Y 1]

o[X 2][Y 1]; p >o[X][Y-1]=0

//o[X][Y]=0

o[X 1][Y]=0; ;

o[X 2][Y]=0;

romper

caso 4: o[X 1][Y]=1; /p>

romper; p>

o[X 2][Y];

o[X 1][Y 1]=1

o[; X 1][Y 2];

o[X 1][Y-1]=0

o[X 2][Y-1]=0; p>

romper;

caso 5: o[X][Y];

o[X 1][Y]; X 2][Y]=1 ;

o[X 2][Y 1]

o[X][Y-1]=0; p>o[X 1][Y-1]=0;

o[X 2][Y-1]=0

romper; >caso 6: o[X 1 ][Y]=1

o[X 1][Y 1]=1

o[X 1][Y 2] ;

o[X 2][Y 2]

o[X 1][Y-1]=0

//o[X] 1][Y]=0;

//o[X 1][Y 1]=0

o[X 2][Y 1]=0; p>

romper;

caso 7: o[X][Y 1];

o[X 1][Y 1]; o[X 2][Y 1 ]

>

o[X 2][Y]=1

o[X][Y]=0

o[X 1][Y]=0;

//o[X 2][Y]=0

o[X 2][Y-1]=0

romper; /p>

caso 8: o[X 1][Y];

o[X 2][Y]=1

o[X 2][Y] 1]=1;

o[X 2][Y 2];

o[X 1][Y-1]=0; [X 2][Y-1]=0;

//o[X 2][Y]=0

//o[X 2][Y 1] =0;

romper;

caso 9: o[X 1][Y]=1

o[X 2][Y]; /p>

o[X 3][Y];

o[X 1][Y 1]

o[X 1][Y-1]= 0;

o[X 2][Y-1]=0

o[X 3][Y-1]=0; /o[X 1][Y]=0;

romper;

caso 10: o[X 1][Y]=1; [X 1][Y 1];

o[X 2][Y 1]=1

o[X 2][Y 2]; p>o[X 1][Y-1]=0;

//o[X 1][Y]=0

o[X 2][Y] =0;

//o[X 2][Y 1]=0;

romper

caso 11: o[X 2][Y ]=1;

o[X 3][Y]

o[X 1][Y 1]

o[X 2][ Y 1];

o[X 2][Y-1]=0

o[X 3][Y-1]=0; >o[X 1][Y]=0;

//o[X 2][Y]=0;

caso 12; :o[X 1][Y 1]=1

o[X 2][Y 1]

o[X 1][Y 2]; >

o[X 2][Y]=1

o[X 1][Y]=0

//o[X 2][Y] =0;

//o[X 1][Y 1]=0

o[X 2][Y-1]=0; >romper;

caso 13: o[X 1][Y];

o[X 2][Y]=1; 2][Y 1];

o[X 3][Y 1]

o[X 1][Y-1]=0

o[X 2][Y-1]=0;

//o[X 2][Y]=0

o[X 3][Y]= 0;

romper;

caso 14: o[X 1][Y]=1

o[X 2][Y]=1;

o[X 1][Y 1]

o[X 2][Y 1]

o[X 1][Y-1; ]=0;

o[

X 2][Y-1]=0;

//o[X 1][Y]=0

//o[X 2][Y]=0; ;

break;

}

//Si hay una colisión, automáticamente aumentará un espacio

for(int i =0; ilt ;13;i)

{

for(int j=0;jlt;21;j)

{

if ( o[i][j]==2) arriba();

}

}

}

//El método de aumento del bloque

public void up()

{

Y--

switch(MODE)

switch(MODE)

p>

{

caso 0: o[X 2][Y];

o[X 2][Y 1]=1; >o[X 2][Y 2]=1

o[X 2][Y 3]=1

o[X 2][Y 4]-- ;

romper;

caso 1: o[X][Y 1]

o[X 1][Y 1];

o [X 2][Y 1];

o[X 3][Y 1]

o[X][Y 2]--; p>

o[X 1][Y 2]--;

o[X 2][Y 2]--; 2]-- ;

romper;

caso 2: o[X 2][Y]

o[X 2][Y 1]= 1;

p>

o[X 2][Y 2]=1

o[X 1][Y 2]; o[X 2][Y 3]--;

o[X 1][Y 3]--;

caso 3: o[X][Y];

o[X][Y 1]=1

o[X 1][Y 1]

o[X 2][Y 1]

o[X][Y 2]--;

//o[X][Y]=0; >

o[X 1] [Y 2]--;

o[X 2][Y 2]--; >caso 4: o[X 1] [Y];

o[X 2][Y]

o[X 1][Y 1]=1; p>

o[X 1 ][Y 2]=1

o[X 1][Y 3]--; 1]--;

romper;

caso 5: o[X][Y]

o[X 1][Y]; p>

o[X 2 ][Y];

o[X 2][Y 1]=1

o[X][Y 1]--

o [X 1][Y 1]--;

o[X 2][Y 2]--; p>

caso 6: o [X 1][Y];

o[X 1][Y 1]=1

o[X 1][Y] 2]=1;

o[X 2][Y 2]

;

o[X 1][Y 3]--;

//o[X 1][Y]=0

//o; [X 1][Y 1]=0;

o[X 2][Y 3]--;

romper

caso 7: o [X][Y 1];

o[X 1][Y 1]

o[X 2][Y 1]=1; >o[X 2][Y];

o[X][Y 2]--

o[X 1][Y 2]--; >

//o[X 2][Y]=0;

o[X 2][Y 2]--;

romper

caso 8: o[X 1][Y];

o[X 2][Y]

o[X 2][Y 1]=1; /p>

o[X 2][Y 2]=1

o[X 1][Y 1]--; Y 3]--;

//o[X 2][Y]=0

//o[X 2][Y 1]=0; >

romper;

caso 9: o[X 1][Y]

o[X 2][Y]; X 3][Y];

o[X 1][Y 1]=1

o[X 1][Y 2]--; p>o[X 2][Y 1]--;

o[X 3][Y 1]--;

//o[X 1][Y] =0;

romper;

caso 10: o[X 1][Y]

o[X 1][Y 1]=1;

o[X 2][Y 1]

o[X 2][Y 2]=1

o[X 1][Y] 2]--;

//o[X 1][Y]=0

o[X 2][Y 3]--; >//o[X 2][Y 1]=0;

romper;

caso 11: o[X 2][Y]; o[X 3][Y];

o[X 1][Y 1]

o[X 2][Y 1]=1; p>o[X 2][Y 2]--;

o[X 1][Y 2]--

o[X 3][Y 1]-; -;

//o[X 2][Y]=0;

romper

caso 12: o[X 1][Y 1]

o[X 2][Y 1]=1

o[X 1][Y 2]=1

o[X 2; ][Y];

o[X 2][Y 2]--;

//o[X 2][Y]=0; >//o[X 1][Y 1]=0;

o[X 1][Y 3]--;

romper

caso 13: o[X 1][Y];

o[X 2][Y]

o[X 2][Y 1]=1; >

o[X 3][Y 1]

o[X 1][Y 1]--;

X 2][Y 2]--;

//o[X 2][Y]=0

o[X 3][Y 2]--; /p>

romper;

caso 14: o[X 1][Y]

o[X 2][Y]; o[X 1][Y 1]=1

o[X 2][Y 1]=1

o[X 1][Y 2]--;

o[X 2][Y 2]--;

//o[X 1][Y]=0

//o[; X 2][Y]=0;

romper;

}

for(int i=0; ilt; 20; i)

{

if (o[1][i]==1amp; amp;

o[2][i]==1amp; amp;

o[3][i]==1amp

o[4][i]==1amp

o[5][i] ==1amp; amplificador

o[6][i]==1amp;

o[7][i]==1amp;

o [8][i]==1amp

o[9][i]==1amp

o[10][i] ==1amp;amp; p>

o[11][i]==1amp;amp

o[12][i]==1

)

{for(int k=1;klt;=12;k)

{

for(int j=i;jgt;=1; j--)

{

o[k][j]=o[k][j-1]

}

}

PUNTUACIÓN;

if(PUNTUACIÓN==5)NIVEL;

if(PUNTUACIÓN==10)NIVEL; >}

X=5; Y=0;

MODE=nextMODE;

abajo();

nextMODE=(int)(Math.random()*14

}

public void left()

{

X--;

cambiar(MODO)

{

caso 0:

p>

o[X 2][Y];

o[X 2][Y 1]

o[X 2][Y 2]; p>o[X 2][Y 1]; p>

o[X 2][Y 3]

o[X 3][Y]--; p>o[X 3][Y 1]- -;

o[X 3][Y 2]--

o[X 3][Y 3]-; -;

romper;

caso 1:

o[X][Y 1]

o[X 1][ Y 1]=1;

o[X 2][Y 1]=1

o[X 3][Y 1]=1; >//o[X 1][Y 1] =0

//o[X 2][Y 1]=0;

p>

//o[X 3][Y 1]=0;

o[X 4][Y 1]--; >

caso 2:

//if(X==-2)X;

o[X 2][Y]; [X 2][Y 1];

o[X 2][Y 2]=1

o[X 1][Y 2]; p>o[X 3][Y]--;

o[X 3][Y 1]--

o[X 3][Y 2]--; ;

//o[X 2][Y 2]=0;

romper

caso 3: //if(X==-1 )X;

o[X][Y];

o[X][Y 1]

o[X 1][Y 1]; =1;

o[X 2][Y 1]=1;

o[X 1][Y]--; [X 1][Y 1]=0;

//o[X 2][Y 1]=0

o[X 3][Y 1]--

romper;

caso 4: //if(X==-2)X

o[X 1][Y]; p>

p>

o[X 2][Y]=1;

o[X 1][Y 1]

o[X 1]; [Y 2];

//o[X 2][Y]=0

o[X 3][Y]--; o[X 2] [Y 1]--;

o[X 2][Y 2]--;

caso 5: //si(X ==-1)X;

o[X][Y]

o[X 1][Y]=1; p>o[X 2][Y]=1;

o[X 2][Y 1]

//o[X 1][Y]=0;

//o[X 2][Y]=0;

o[X 3][Y]--;

o[X 3] [Y 1]- -;

romper;

caso 6: //if(X==-2)X

o[X 1] [Y];

o[X 1][Y 1];

o[X 1][Y 2]

o[X 2]; [Y 2]= 1;

o[X 2][Y]--;

o[X 2][Y 1]--; >//o[ X 2][Y 2]=0;

o[X 3][Y 2]--;

romper

caso 7: // if(X==-1)X;

o[X][Y 1]

o[X 1][Y 1]=1;

o[X 2][Y 1]=1

o[X 2][Y]

//o[X 1][ Y 1]=0 ;

//o[X 2][Y 1]=0

o[X 3][Y 1]--;

o[ X 3][Y]--;

romper;

caso 8: //if(X==-2)X;

o[X 1][Y];

o[X 2][Y]=1

o[X 2][Y 1]; >

o[X 2][Y 2]

//o[X 2][Y]=0

o[X 3][Y]- -;

o[X 3][Y 1]--;

o[X 3][Y 2]--; /p>

caso 9: //if(X==-2)X;

o[X 1][Y]

o[X 2][ Y]=1;

o[X 3][Y]=1;

o[X 1][Y 1]

//o; [X 2][Y]=0;

//o[X 3][Y]=0

o[X 4][Y]--; p> p>

o[X 2][Y 1]--;

romper;

caso 10: //if(X==-2)X;

romper; p>

o[X 1][Y];

o[X 1][Y 1]; 2][Y 1]=1;

o[X 2][Y 2]

o[X 2][Y]--; >//o[X 3][Y 1]=0;

o[X 3][Y 1]--; --;

romper;

caso 11: //if(X==-2)X

o[X 2][Y];

o[X 3][Y]=1

o[X 1][Y 1]

o[X 2][Y 1; ]=1;

//o[X 3][Y]=0;

o[X 4][Y]--; /o[X 2][Y 1 ]=0;

o[X 3][Y 1]--;

ruptura

caso 12; : //si(X==- 2)X;

o[X 1][Y 1]

o[X 2][Y 1]=1; /p>

o[X 1][Y 2];

o[X 2][Y]

//o[X 2][Y 1]; =0;

o[X 3][Y 1]--;

o[X 2][Y 2]--; X 3][Y]--;

romper;

caso 13: //if(X==-2)X

o[X; 1][Y];

o[X 2][Y]=1

o[X 2][Y 1]

o[; X 3][Y 1]=1

//o[X 2][Y]=0

o[X 3][Y]--; p>

//o[ X 3][Y 1]=0;

o[X 4][Y 1]--; >

caso 14:// if(X==-2)X;

o[X 1][Y]

o[X 2][Y]; =1;

o[X 1][Y 1];

o[X 2][Y 1]=1

//o[; X2][Y]=0

;

o[X 3][Y]--;

//o[X 2][Y 1]=0

o[X] 3][Y 1]--;

romper;

}

for(int i=0; ilt; 13; i)

{

for(int j=0;jlt;21;j)

{

si (o[i][j]== 2) derecha();

}

}

}

derecha vacía pública()

{

X;

cambiar(MODO)

{

caso 0:

o[X 2] [Y];

o[X 2][Y 1];

o[X 2][Y 2]

o[X 2]; [Y 3];

o[X 1][Y]--;

o[X 1][Y 1]--; [X 1][Y 2]--;

o[X 1][Y 3]--;

caso 1: / /if(X==11)X--;

o[X][Y 1]=1

o[X 1][Y 1]=1; /p>

o[X 2][Y 1]=1

o[X 3][Y 1]

o[X-1][Y]; 1]--;

//o[X][Y 1]=0

//o[X 1][Y 1]=0;

//o[X 2][Y 1]=0;

romper;

caso 2: //if(X==10)X--; /p>

o[X 2][Y];

o[X 2][Y 1]

o[X 2][Y 2]; /p>

o[X 1][Y 2]=1

o[X 1][Y]--; 1]--;

//o[X 1][Y 2]=0

o[X][Y 2]--; >romper;

caso 3:

o[X][Y]

o[X][Y 1]=1;

o[X 1][Y 1]=1

o[X 2][Y 1]

o[X-1][Y]-- ;

o[X-1][Y 1]--;

//o[X][Y 1]=0

// o[X 1][Y 1]=0;

romper;

caso 4: //if(X==10)X--; >o[X 1][Y]=1;

o[X 2][Y]

o[X 1][Y 1]; p>o[X 1][Y 2];

o[X][Y]--;

//o[X 1][Y]=0; /p>

o[X][Y 1]--;

o[X][Y 2]--;

romper

caso 5: //si(X==10)X--

o[X][Y]

=1;

o[X 1][Y]=1;

o[X 2][Y]

o[X 2][ Y 1];

o[X-1][Y]--;

//o[X][Y]=0

/ /o[X 1][Y]=0;

o[X 1][Y 1]--;

ruptura

caso 6: //si(X==9)X--;

o[X 1][Y]

o[X 1][Y 1];

o[X 1][Y 2]=1

o[X 2][Y 2]

o[X][Y]--; /p>

o[X][Y 1]--;

o[X][Y 2]--

//o[X 1][ Y 2]=0;

romper;

caso 7: //if(X==10)X--; Y 1]=1;

o[X 1][Y 1]=1

o[X 2][Y 1]

o; [X 2][Y];

o[X-1][Y 1]--;

//o[X][Y 1]=0; p>

o[X-1][Y 1]--; p>

//o[X 1][Y 1]=0

o[X 1][ Y]--;

romper;

caso 8: //if(X==10)X--; Y]=1;

o[X 2][Y];

o[X 2][Y 1]

o[X 2]; [Y 2];

o[X][Y ]--;

//o[X 1][Y]=0; [X 1][Y 1]--;

o[X 1][Y 2]--;

caso 9: / /if(X==11)X--;

o[X 1][Y]=1

o[X 2][Y]=1; p>

o[X 3][Y];

o[X 1][Y 1]

o[X][Y]--; p>

//o[X 1][Y]=0;

//o[X 2][Y]=0

o[X][ Y 1]--;

romper;

caso 10: //if(X==10)X--; [Y];

o[X 1][Y 1]=1

o[X 2][Y 1]

o[X] 2][Y 2] ;

o[X] [Y]--;

o[X][Y 1]--; /o[X 1][Y 1]=0;

o[X 1][Y 2]--;

descanso

caso 11; : //si(X==11)X--;

o[X 2][Y]=1

o[X 3][Y]; p>

o[X 1][Y 1]=1

o[X 2][Y 1]

o[X 1][Y]-; -;

//o[X 2][Y ]=0

o[X][Y ]

1]--;

//o[X 1][Y 1]=0;

romper;

caso 12://if(X ==10)X--;

o[X 1][Y 1]=1

o[X 2][Y 1]; >o[X 1][Y 2];

o[X 2][Y]

o[X][Y 1]--; p>//o[X 1][Y 1]=0;

o[X][Y 2]--

o[X 1][Y]-; -;

romper;

caso 13: //if(X==11)X--; 1;

o[X 2][Y];

o[X 2][Y 1]=1

o[X 3][ Y 1];

o[X][Y]--;

//o[X 1][Y]=0

o[; X 1][Y 1]--;

//o[X 2][Y 1]=0

caso 14: //si(X==10)X--;

o[X 1][Y]=1

o[X 2][Y]; >

o[X 1][Y 1]=1

o[X 2][Y 1]

o[X][Y]--;

//o[X 1][Y]=0;

o[X][Y 1]--; 1][Y 1]=0;

romper;

}

for(int i=0; ilt; 14; i)

{

for(int j=0;jlt;21;j)

{

si (o[i][j]== 2) izquierda();

}

}

}

cambio de vacío público()

{

cambiar(MODO)

{

caso 0: o[X 2][Y]--; 2][Y 1]--;

o[X 2][Y 2]--;

o[X 2][Y 3]--; >

o[X][Y 1];

o[X 1][Y 1]

o[X 2][Y 1]; >

o[X 3][Y 1];

MODO=1;

romper

caso 1: o[X][Y 1]--;

o[X 1][Y 1]--;

o[X 2][Y 1]--; o[X 3][Y 1]--;

o[X 2][Y]

o[X 2][Y 1]; p>o[X 2][Y 2];

o[X 2][Y 3];

MODO=0

romper; /p>

caso 2: o[X 2][Y]--;

o[X 2][Y 1]--;

o[X 2] ][Y 2]--;

o[

X 1][Y 2]--;

o[X][Y];

o[X 1][Y]

o[; X 2][Y];

o[X 2][Y 1];

MODO=5

romper; >caso 3: o[X][Y]--;

o[X][Y 1]--

o[X 1][Y 1]--; ;

o[X 2][Y 1]--

o[X 2][Y]

o[X 2][Y] 1];

o[X 2][Y 2];

o[X 1][Y 2]

MODO=2; p>

p>

romper;

caso 4: o[X 1][Y]--

o[X 2][Y]--;

o[X 1][Y 1]--;

o[X 1][Y 2]--; [Y];

o[X][Y 1];

o[X 1][Y 1]

o[X 2][ Y 1];

MODO=3;

romper;

caso 5: o[X][Y]--; >o[X 1 ][Y]--;

o[X 2][Y]--

o[X 2][Y 1]--; /p>

o[X 1][Y];

o[X 2][Y]

o[X 1][Y 1]; p>

o[X 1][Y 2];

MODO=4;

romper

caso 6: o[X 1] [Y]-- ;

o[X 1][Y 1]--

o[X 1][Y 2]--; >o[X 2 ][Y 2]--;

o[X][Y 1]

o[X 1][Y 1];

o[ X 2][Y 1];

o[X 2][Y];

MODO=7

romper; /p>

caso 7: o[X][Y 1]--;

o[X 1][Y 1]--; ][Y 1] --;

o[X 2][Y]--;

o[X 1][Y]; [X 2][Y];

o[X 2][Y 1];

o[X 2][Y 2]; =8;

p>

romper;

caso 8: o[X 1][Y]--; [Y]--;

o[X 2][Y 1]--

o[X 2][Y 2]--; >o[X 1][Y];

o[X 2][Y];

o[X 3][Y]

o; [X 1][Y 1];

MODO=9;

romper;

caso 9: o[X 1][Y]--;

o[X 2][Y]--;

>o[X 3][Y]--;

o[X 1][Y 1]--

o[X 1][Y]; >

o[X 1][Y 1];

o[X 1][Y 2]

o[X 2][Y 2]; p>

o[X 1][Y 2];

p>

MODO=6;

caso 10: o[X 1][Y]--;

o[X 1 ][Y 1]--

o[X 2][Y 1]--; /p>

o[X 2][Y 2]--;

o[X 2][Y]

o[X 3][Y];

o[X 1][Y 1]

o[X 2][Y 1]

MODO=11; p>romper;

caso 11: o[X 2][Y] --;

o[X 3][Y]--; o[X 1][Y 1]--;

o[X 2][Y 1]--

o[X 1][Y]; >

o[X 1][Y 1];

o [X 2][Y 1]

o[X 2][Y 2]; p>

MODO=10;

romper;

caso 12: o[X 1][Y 1]--; 2][Y 1]--;

o[X 1][ Y 2]--

o[X 2][Y]--;

o[X 1][Y];

o[X 2][Y]

o[X 2][Y 1]; p>o[X 3][Y 1];

MODO=13

romper;

caso 13: o[X 1][Y] --;

o[X 2][Y]--;

o[X 2][Y 1]--; 3][Y 1]--;

o[X 1][ Y 1]

o[X 2][Y 1]; o[X 1][Y 2];

o[X 2] [Y];

MODO=12

romper;

caso 14: o[X 1][Y]=1

o[X 2][Y]=1

o[X 1][Y 1; ]=1;

o[X 2][Y 1]=1

romper

}

for(int; i=0;ilt;14;i)

{

for(int j=0;jlt;21;j)

{

if (o[i][j]==2) cambio();

p>

}

}

}

cambio público vacío()

{

cambiar (MODO)

{

caso 0: o[X 2] [Y]--;

o[X 2][Y 1]--

o[X 2][Y 2]--; >o[X 2][Y 3

]--;

o[X][Y 1];

o[X 1][Y 1]

o[X 2][ Y 1];

o[X 3][Y 1];

MODO=1;

caso 1; :o[X][Y 1]--;

o[X 1][Y 1]--;

o[X 2][Y 1]--;

o[X 3][Y 1]--;

o[X 2][Y]

o[X 2][Y 1; ] ;

o[X 2][Y 2]

o[X 2][Y 3]

MODO=0; >

romper;

caso 2: o[X 2][Y]--

o[X 2][Y 1]--;

o[X 2][Y 2]--;

o[X 1][Y 2]--

o[X][Y]; /p>

o[X][Y 1];

o[X 1][Y 1]

o[X 2][Y 1]; /p>

MODO=3;

romper;

caso 3: o[X][Y]--; [Y 1]--;

o[X 1][Y 1]--

o[X 2][Y 1]--; p>o[X 1][Y];

o[X 2][Y];

o[X 1][Y 1]; >o[X 1][Y 2];

MODO=4;

romper;

caso 4: o[X 1][Y]- -;

o[X 2][Y]--;

o[X 1][Y 1]--; ][Y 2]--;

o[X][Y];

o[X 1][Y]

o[X 2] ][Y] ;

o[X 2][Y 1]

MODO=5

caso; 5: o[X][Y]--;

o[X 1][Y]--

o[X 2][Y]--; p>

o[X 1][Y]--; p>

o[X 2][Y 1]--;

o[X 2][Y]; /p>

o[X 2][Y 1];

o[X 2][Y 2]

o[X 1][Y 2];

MODO=2;

romper;

caso 6: o[X 1][Y]--; X 1][Y 1]--;

o[X 1][Y 2]--

o[X 2][Y 2]--; p>

o[X 1][Y];

o[X 2][Y 2]--; p>

o[X 2][Y]; >

o[X 3][Y];

o[X 1][Y 1];

MODO=9;

caso 7: o[X][Y 1]--;

o[X 1] [Y 1]--;

2][Y 1]--;

o[X 2][Y]--;

o[X 1][Y]; o[X 1][Y 1];

o[X 1][Y 2]

o[X 2][Y 2]; >MODO=6;

romper;

caso 8: o[X 1][Y]--; --;

o[X 2][Y 1]--;

o[X 2][Y 2]--; X][Y 1];

o[X 1][Y 1];

o[X 2][Y 1]

o[; X 2][Y];

MODO=7;

romper;

caso 9: o[X 1][Y]--; p>

romper; p>

o[X 2][Y]--;

o[X 3][Y]--; X 1][Y 1] --;

o[X 1][Y]

o[X 2][Y]

o; [X 2][Y 1 ] ;

o[X 2][Y 2]

MODO=8

romper;

caso 10: o [X 1][Y]--;

o[X 1][Y 1]--;

o[X 2][Y] 1]--;

p>

o[X 2][Y 2]--;

o[X 2][Y]; p>o[X 3][Y];

o[X 1][Y 1]

o[X 2][Y 1]; p>MODO=11;

romper;

caso 11: o[X 2][Y]--;

o[X 3][Y] ]--;

o [X 1][Y 1]--;

o[X 2][Y 1]--; [X 1][Y];

o[X 1][Y 1]

o[X 2][Y 1]

o; [X 2][Y 2];

MODO=10;

romper;

caso 12: o[X 1][Y 1]--

o[X 2 ][Y 1]--;

o[X 1][Y 2]--; ][Y]--;

o[X 1][Y];

o[X 2][Y]

o[X 2] ][Y 1];

o[X 3][Y 1];

MODO=13

romper; caso 13: o[X 1][Y]- -

o[X 2][Y]--

o[X 2][Y 1]--;

o[X 3 ][Y 1]--;

o[X 1][Y 1]

o[X 2][ Y 1];

o [X 1][Y 2];

o[X 2][Y]

MODO=12; p>

rotura;

caso 14:o

[X 1][Y]=1;

o[X 2][Y]=1

o[X 1][Y 1]=1; >

o[X 2][Y 1]=1

romper

}

}

Lo siento, si se envían todos los códigos, superará las 10.000 palabras, por lo que no se pueden enviar los siguientes códigos. Si quieres, deja tu dirección de correo electrónico y te la enviaré

p>.