29
Source Code Of Tetris Game import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements KeyListener { int pos[] = {0,1}; boolean bottom = false; int n = 20; int m = 10; JButton b[][]; Color tmp[][] = new Color[m][n]; int rand = 0; int centralx = 0; int centraly = 0; int deltax = 0; int perim[][] = new int[m+4][n+4]; or[][][] prof = new or[4][4][7]; Color rnd[] = {Color.red, Color.yellow, Color.cyan, Color.green, Color.white, Color.blue, Color.orange}; int rowsclrd = 0; public Tetris(){

world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

  • Upload
    lynhan

  • View
    242

  • Download
    0

Embed Size (px)

Citation preview

Page 1: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

Source Code Of Tetris Game

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Tetris extends JFrame implements KeyListener {

int pos[] = {0,1};

boolean bottom = false;

int n = 20;

int m = 10;

JButton b[][];

Color tmp[][] = new Color[m][n];

int rand = 0;

int centralx = 0;

int centraly = 0;

int deltax = 0;

int perim[][] = new int[m+4][n+4];

or[][][] prof = new or[4][4][7];

Color rnd[] = {Color.red, Color.yellow, Color.cyan, Color.green, Color.white, Color.blue, Color.orange};

int rowsclrd = 0;

public Tetris(){

for(int a = 0;a<4;a++){

for(int b = 0;b<4;b++){

Page 2: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

for(int c = 0;c<7;c++){

prof[a][b][c] = new or();

}

}

}

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

prof[0][0][0].x = -1;

prof[0][1][0].x = 0;

prof[0][2][0].x = 0;

prof[0][3][0].x = 1;

prof[1][0][0].x = 0;

prof[1][1][0].x = 0;

prof[1][2][0].x = -1;

prof[1][3][0].x = -1;

prof[2][0][0].x = 1;

prof[2][1][0].x = 0;

prof[2][2][0].x = 0;

prof[2][3][0].x = -1;

prof[3][0][0].x = 0;

prof[3][1][0].x = 0;

prof[3][2][0].x = 1;

prof[3][3][0].x = 1;

prof[0][0][1].x = -1;

prof[0][1][1].x = -1;

prof[0][2][1].x = 0;

prof[0][3][1].x = 1;

prof[1][0][1].x = -1;

Page 3: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[1][1][1].x = 0;

prof[1][2][1].x = 0;

prof[1][3][1].x = 0;

prof[2][0][1].x = 1;

prof[2][1][1].x = 1;

prof[2][2][1].x = 0;

prof[2][3][1].x = -1;

prof[3][0][1].x = 1;

prof[3][1][1].x = 0;

prof[3][2][1].x = 0;

prof[3][3][1].x = 0;

prof[0][0][2].x = -1;

prof[0][1][2].x = 0;

prof[0][2][2].x = 1;

prof[0][3][2].x = 1;

prof[1][0][2].x = 0;

prof[1][1][2].x = 0;

prof[1][2][2].x = 0;

prof[1][3][2].x = -1;

prof[2][0][2].x = 1;

prof[2][1][2].x = 0;

prof[2][2][2].x = -1;

prof[2][3][2].x = -1;

prof[3][0][2].x = 0;

prof[3][1][2].x = 0;

prof[3][2][2].x = 0;

prof[3][3][2].x = 1;

Page 4: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[0][0][3].x = -1;

prof[0][1][3].x = 0;

prof[0][2][3].x = 0;

prof[0][3][3].x = 1;

prof[1][0][3].x = -1;

prof[1][1][3].x = -1;

prof[1][2][3].x = 0;

prof[1][3][3].x = 0;

prof[2][0][3].x = 1;

prof[2][1][3].x = 0;

prof[2][2][3].x = 0;

prof[2][3][3].x = -1;

prof[3][0][3].x = 1;

prof[3][1][3].x = 1;

prof[3][2][3].x = 0;

prof[3][3][3].x = 0;

prof[0][0][4].x = -1;

prof[0][1][4].x = 0;

prof[0][2][4].x = 0;

prof[0][3][4].x = 1;

prof[1][0][4].x = 0;

prof[1][1][4].x = 0;

prof[1][2][4].x = -1;

prof[1][3][4].x = 0;

prof[2][0][4].x = 1;

prof[2][1][4].x = 0;

prof[2][2][4].x = 0;

Page 5: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[2][3][4].x = -1;

prof[3][0][4].x = 0;

prof[3][1][4].x = 0;

prof[3][2][4].x = 1;

prof[3][3][4].x = 0;

prof[0][0][5].x = 0;

prof[0][1][5].x = 0;

prof[0][2][5].x = 1;

prof[0][3][5].x = 1;

prof[1][0][5].x = 0;

prof[1][1][5].x = 0;

prof[1][2][5].x = 1;

prof[1][3][5].x = 1;

prof[2][0][5].x = 0;

prof[2][1][5].x = 0;

prof[2][2][5].x = 1;

prof[2][3][5].x = 1;

prof[3][0][5].x = 0;

prof[3][1][5].x = 0;

prof[3][2][5].x = 1;

prof[3][3][5].x = 1;

prof[0][0][6].x = -1;

prof[0][1][6].x = 0;

prof[0][2][6].x = 1;

prof[0][3][6].x = 2;

prof[1][0][6].x = 0;

prof[1][1][6].x = 0;

Page 6: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[1][2][6].x = 0;

prof[1][3][6].x = 0;

prof[2][0][6].x = 1;

prof[2][1][6].x = 0;

prof[2][2][6].x = -1;

prof[2][3][6].x = -2;

prof[3][0][6].x = 0;

prof[3][1][6].x = 0;

prof[3][2][6].x = 0;

prof[3][3][6].x = 0;

prof[0][0][0].y = 0;

prof[0][1][0].y = 0;

prof[0][2][0].y = 1;

prof[0][3][0].y = 1;

prof[1][0][0].y = -1;

prof[1][1][0].y = 0;

prof[1][2][0].y = 0;

prof[1][3][0].y = 1;

prof[2][0][0].y = 0;

prof[2][1][0].y = 0;

prof[2][2][0].y = -1;

prof[2][3][0].y = -1;

prof[3][0][0].y = 1;

prof[3][1][0].y = 0;

prof[3][2][0].y = 0;

prof[3][3][0].y = -1;

prof[0][0][1].y = 0;

Page 7: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[0][1][1].y = 1;

prof[0][2][1].y = 0;

prof[0][3][1].y = 0;

prof[1][0][1].y = -1;

prof[1][1][1].y = -1;

prof[1][2][1].y = 0;

prof[1][3][1].y = 1;

prof[2][0][1].y = -1;

prof[2][1][1].y = 0;

prof[2][2][1].y = 0;

prof[2][3][1].y = 0;

prof[3][0][1].y = 1;

prof[3][1][1].y = 1;

prof[3][2][1].y = 0;

prof[3][3][1].y = -1;

prof[0][0][2].y = 0;

prof[0][1][2].y = 0;

prof[0][2][2].y = 0;

prof[0][3][2].y = 1;

prof[1][0][2].y = -1;

prof[1][1][2].y = 0;

prof[1][2][2].y = 1;

prof[1][3][2].y = 1;

prof[2][0][2].y = 0;

prof[2][1][2].y = 0;

prof[2][2][2].y = 0;

prof[2][3][2].y = -1;

Page 8: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[3][0][2].y = 1;

prof[3][1][2].y = 0;

prof[3][2][2].y = -1;

prof[3][3][2].y = -1;

prof[0][0][3].y = 1;

prof[0][1][3].y = 1;

prof[0][2][3].y = 0;

prof[0][3][3].y = 0;

prof[1][0][3].y = -1;

prof[1][1][3].y = 0;

prof[1][2][3].y = 0;

prof[1][3][3].y = 1;

prof[2][0][3].y = -1;

prof[2][1][3].y = -1;

prof[2][2][3].y = 0;

prof[2][3][3].y = 0;

prof[3][0][3].y = 1;

prof[3][1][3].y = 0;

prof[3][2][3].y = 0;

prof[3][3][3].y = -1;

prof[0][0][4].y = 0;

prof[0][1][4].y = 0;

prof[0][2][4].y = 1;

prof[0][3][4].y = 0;

prof[1][0][4].y = -1;

prof[1][1][4].y = 0;

prof[1][2][4].y = 0;

Page 9: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[1][3][4].y = 1;

prof[2][0][4].y = 0;

prof[2][1][4].y = 0;

prof[2][2][4].y = -1;

prof[2][3][4].y = 0;

prof[3][0][4].y = 1;

prof[3][1][4].y = 0;

prof[3][2][4].y = 0;

prof[3][3][4].y = -1;

prof[0][0][5].y = 0;

prof[0][1][5].y = 1;

prof[0][2][5].y = 0;

prof[0][3][5].y = 1;

prof[1][0][5].y = 0;

prof[1][1][5].y = 1;

prof[1][2][5].y = 0;

prof[1][3][5].y = 1;

prof[2][0][5].y = 0;

prof[2][1][5].y = 1;

prof[2][2][5].y = 0;

prof[2][3][5].y = 1;

prof[3][0][5].y = 0;

prof[3][1][5].y = 1;

prof[3][2][5].y = 0;

prof[3][3][5].y = 1;

prof[0][0][6].y = 0;

prof[0][1][6].y = 0;

Page 10: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

prof[0][2][6].y = 0;

prof[0][3][6].y = 0;

prof[1][0][6].y = -1;

prof[1][1][6].y = 0;

prof[1][2][6].y = 1;

prof[1][3][6].y = 2;

prof[2][0][6].y = 0;

prof[2][1][6].y = 0;

prof[2][2][6].y = 0;

prof[2][3][6].y = 0;

prof[3][0][6].y = -1;

prof[3][1][6].y = 0;

prof[3][2][6].y = 1;

prof[3][3][6].y = 2;

for (int y = 0;y<2;y++){

for (int x = 0;x<m+4;x++){

perim[x][y]= 1;

}}

for (int y = n+2;y<n+4;y++){

for (int x = 0;x<m+4;x++){

perim[x][y]= 4;

}}

for (int y = 2;y<n+2;y++){

for (int x = 0;x<2;x++){

perim[x][y]= 2;

}}

for (int y = 2;y<n+2;y++){

Page 11: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

for (int x = m+2;x<m+4;x++){

perim[x][y]= 2;

}}

for(int y = 0;y<n+4;y++){

for (int x = 0;x<m+4;x++){

System.out.print(perim[x][y]);

}

System.out.println("");

}

b = new JButton [m][n];

setLayout(new GridLayout(n,m));//Grid layouts x and y are SWAPPED!

for (int y = 0;y<n;y++){

for (int x = 0;x<m;x++){

b[x][y] = new JButton(" ");

tmp[x][y] = Color.DARK_GRAY;

b[x][y].setBackground(Color.DARK_GRAY);

add(b[x][y]);

b[x][y].setEnabled(true);

}//end inner for

}

setFocusable(true);

addKeyListener(this);

pack();

setVisible(true);

blockgen();

Page 12: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

}//end constructor Mine()

class or {

int x;

int y;

}

public void blockgen(){

Component temporaryLostComponent = null;

pos[0] = 0;

pos[1] = 1;

rand = (int) (Math.floor(Math.random()*7+1));

centralx = 4;

centraly = 0;

System.out.print(rand);

if ((b[4+prof[pos[0]][0][rand-1].x][prof[pos[0]][0][rand-1].y].getBackground() == Color.DARK_GRAY) &&

(b[4+prof[pos[0]][1][rand-1].x][prof[pos[0]][1][rand-1].y].getBackground() == Color.DARK_GRAY) &&

(b[4+prof[pos[0]][2][rand-1].x][prof[pos[0]][2][rand-1].y].getBackground() == Color.DARK_GRAY) &&

(b[4+prof[pos[0]][3][rand-1].x][prof[pos[0]][3][rand-1].y].getBackground() == Color.DARK_GRAY)){

b[4+prof[pos[0]][0][rand-1].x][prof[pos[0]][0][rand-1].y].setBackground(rnd[rand-1]);

b[4+prof[pos[0]][1][rand-1].x][prof[pos[0]][1][rand-1].y].setBackground(rnd[rand-1]);

b[4+prof[pos[0]][2][rand-1].x][prof[pos[0]][2][rand-1].y].setBackground(rnd[rand-1]);

b[4+prof[pos[0]][3][rand-1].x][prof[pos[0]][3][rand-1].y].setBackground(rnd[rand-1]);

Page 13: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

go();

} else {

JOptionPane.showMessageDialog(temporaryLostComponent, "Game Over! You cleared "+rowsclrd+" rows, well done!");

System.exit(0);

}

}

public void rotate(){

if (pos[0] < 3){

pos[1] = pos[0];

pos[0]++;

} else if (pos[0] == 3){

pos[0] = 0;

pos[1] = 3;

} else {

System.out.println("error");

}

if ((perim[2+centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y+2] != 4) && (perim[2+centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y+2] != 1) && (perim[2+centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y+2] != 2) && (perim[2+centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y+2] != 3)

&& (perim[centralx+2+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y+2] != 4) && (perim[centralx+2+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y+2] != 1) && (perim[centralx+2+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y+2] != 2) && (perim[centralx+2+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y+2] != 3)

&& (perim[centralx+2+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y+2] != 4) && (perim[centralx+2+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y+2] != 1) && (perim[centralx+2+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y+2] != 2) && (perim[centralx+2+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y+2] != 3)

&& (perim[centralx+prof[pos[0]][3][rand-1].x+2][centraly+prof[pos[0]][3][rand-1].y+2] != 4) && (perim[centralx+prof[pos[0]][3][rand-1].x+2][centraly+prof[pos[0]][3][rand-

Page 14: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

1].y+2] != 1) && (perim[centralx+prof[pos[0]][3][rand-1].x+2][centraly+prof[pos[0]][3][rand-1].y+2] != 2) && (perim[centralx+prof[pos[0]][3][rand-1].x+2][centraly+prof[pos[0]][3][rand-1].y+2] != 3)){

b[centralx+prof[pos[1]][0][rand-1].x][centraly+prof[pos[1]][0][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[1]][1][rand-1].x][centraly+prof[pos[1]][1][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[1]][2][rand-1].x][centraly+prof[pos[1]][2][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[1]][3][rand-1].x][centraly+prof[pos[1]][3][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+(prof[pos[0]][0][rand-1].x)][centraly+(prof[pos[0]][0][rand-1].y)].setBackground(rnd[rand-1]);

b[centralx+(prof[pos[0]][1][rand-1].x)][centraly+(prof[pos[0]][1][rand-1].y)].setBackground(rnd[rand-1]);

b[centralx+(prof[pos[0]][2][rand-1].x)][centraly+(prof[pos[0]][2][rand-1].y)].setBackground(rnd[rand-1]);

b[centralx+(prof[pos[0]][3][rand-1].x)][centraly+(prof[pos[0]][3][rand-1].y)].setBackground(rnd[rand-1]);

} else {

if (pos[1] > 0){

pos[0] = pos[1];

pos[1]--;

} else if (pos[1] == 0){

pos[0] = 0;

pos[1] = 3; }

}

}

public int getxs(){

int xs = 0;

Page 15: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

int[] xf = {-1, -1, -1, -1};

for (int d = 0;d<4;d++){

if ((xf[0] != prof[pos[0]][d][rand-1].x) || (xf[1] != prof[pos[0]][d][rand-1].x) || (xf[2] != prof[pos[0]][d][rand-1].x) || (xf[3] != prof[pos[0]][d][rand-1].x)){

xf[d] = prof[pos[0]][d][rand-1].x;

}

}

for (int d = 0;d<4;d++){

if (xf[d] != -1){

xs++;

}

}

return xs;

}

public void movedown(){

int[] m2 = {-1, -1, -1, -1};

int[] m1 = {-1, -1, -1, -1};

int[] zero = {-1, -1, -1, -1};

int[] one = {-1, -1, -1, -1};

int[] two = {-1, -1, -1, -1};

for (int d = 0;d<4;d++){

if (prof[pos[0]][d][rand-1].x == -2){

m2[d] = d;

} else if (prof[pos[0]][d][rand-1].x == -1){

m1[d] = d;

} else if (prof[pos[0]][d][rand-1].x == 0){

Page 16: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

zero[d] = d;

} else if (prof[pos[0]][d][rand-1].x == 1){

one[d] = d;

} else if (prof[pos[0]][d][rand-1].x == 2){

two[d] = d;

}

}

int tmpm2 = -5;

int tmpm1 = -5;

int tmpzero = -5;

int tmpone = -5;

int tmptwo = -5;

for (int d = 0;d<4;d++){

if (m2[d] != -1){

if (tmpm2<prof[pos[0]][m2[d]][rand-1].y){

tmpm2 = prof[pos[0]][m2[d]][rand-1].y;

}

}

if (m1[d] != -1){

if (tmpm1<prof[pos[0]][m1[d]][rand-1].y){

tmpm1 = prof[pos[0]][m1[d]][rand-1].y;

}

}

if (zero[d] != -1){

if (tmpzero<prof[pos[0]][zero[d]][rand-1].y){

tmpzero = prof[pos[0]][zero[d]][rand-1].y;

}

Page 17: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

}

if (one[d] != -1){

if (tmpone<prof[pos[0]][one[d]][rand-1].y){

tmpone = prof[pos[0]][one[d]][rand-1].y;

}

}

if (two[d] != -1){

if (tmptwo<prof[pos[0]][two[d]][rand-1].y){

tmptwo = prof[pos[0]][two[d]][rand-1].y;

}

}

}

int total = 0;

for (int d = 0;d<4;d++){

if (prof[pos[0]][d][rand-1].x == -2){

if (perim[2+centralx+-2][2+centraly+tmpm2+1] != 4){

if(b[centralx+-2][centraly+tmpm2+1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].x == -1){

if (perim[2+centralx+-1][2+centraly+tmpm1+1] != 4){

if (b[centralx+-1][centraly+tmpm1+1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].x == 0){

if (perim[2+centralx][2+centraly+tmpzero+1] != 4){

Page 18: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

if (b[centralx][centraly+tmpzero+1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].x == 1){

if (perim[2+centralx+1][2+centraly+tmpone+1] != 4){

if (b[centralx+1][centraly+tmpone+1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].x == 2){

if (perim[2+centralx+2][2+centraly+tmptwo+1] != 4){

if (b[centralx+2][centraly+tmptwo+1].getBackground() == Color.DARK_GRAY){

total++;

}}

}

}

if (total == 4){

b[centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][3][rand-1].x][centraly+prof[pos[0]][3][rand-1].y].setBackground(Color.DARK_GRAY);

centraly++;

b[centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y].setBackground(rnd[rand-1]);

Page 19: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

b[centralx+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y].setBackground(rnd[rand-1]);

b[centralx+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y].setBackground(rnd[rand-1]);

b[centralx+prof[pos[0]][3][rand-1].x][centraly+prof[pos[0]][3][rand-1].y].setBackground(rnd[rand-1]);

} else {

bottom = true;

}

}

public void go(){

do{

try {

Thread.sleep(1000L);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

movedown();

rowcheck();

}

while(bottom == false);

bottom = false;

blockgen();

}

Page 20: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

public void rowcheck(){

int row = 0;

for (int y = 0;y<20;y++){

for (int x = 0;x<10;x++){

if (b[x][y].getBackground() != Color.DARK_GRAY){

row++;

}

if (row == 10){

rowsclrd++;

rowclear(y);

}

}

row = 0;

}

}

public void rowclear(int y){

int inc = 0;

for (int x = 0;x<10;x++){

b[x][y].setBackground(Color.DARK_GRAY);

}

for (int c = y-1;c>-1;c--){

for (int x = 0;x<10;x++){

tmp[x][y-inc] = b[x][c].getBackground();

}inc++;}

for (int c = y;c>-1;c--){

Page 21: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

for (int x = 0;x<10;x++){

b[x][c].setBackground(tmp[x][c]);

}

}

}

public void movelr(){

int[] m2 = {-1, -1, -1, -1};

int[] m1 = {-1, -1, -1, -1};

int[] zero = {-1, -1, -1, -1};

int[] one = {-1, -1, -1, -1};

int[] two = {-1, -1, -1, -1};

for (int d = 0;d<4;d++){

if (prof[pos[0]][d][rand-1].y == -2){

m2[d] = d;

} else if (prof[pos[0]][d][rand-1].y == -1){

m1[d] = d;

} else if (prof[pos[0]][d][rand-1].y == 0){

zero[d] = d;

} else if (prof[pos[0]][d][rand-1].y == 1){

one[d] = d;

} else if (prof[pos[0]][d][rand-1].y == 2){

two[d] = d;

}

}

int tmpm2 = -5;

int tmpm1 = -5;

Page 22: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

int tmpzero = -5;

int tmpone = -5;

int tmptwo = -5;

if (deltax == 1){

for (int d = 0;d<4;d++){

if (m2[d] != -1){

if (tmpm2<prof[pos[0]][m2[d]][rand-1].x){

tmpm2 = prof[pos[0]][m2[d]][rand-1].x;

}

}

if (m1[d] != -1){

if (tmpm1<prof[pos[0]][m1[d]][rand-1].x){

tmpm1 = prof[pos[0]][m1[d]][rand-1].x;

}

}

if (zero[d] != -1){

if (tmpzero<prof[pos[0]][zero[d]][rand-1].x){

tmpzero = prof[pos[0]][zero[d]][rand-1].x;

}

}

if (one[d] != -1){

if (tmpone<prof[pos[0]][one[d]][rand-1].x){

tmpone = prof[pos[0]][one[d]][rand-1].x;

}

}

if (two[d] != -1){

if (tmptwo<prof[pos[0]][two[d]][rand-1].x){

Page 23: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

tmptwo = prof[pos[0]][two[d]][rand-1].x;

}

}

}

} else if (deltax == -1){

tmpm2 = 5;

tmpm1 = 5;

tmpzero = 5;

tmpone = 5;

tmptwo = 5;

for (int d = 0;d<4;d++){

if (m2[d] != -1){

if (tmpm2>prof[pos[0]][m2[d]][rand-1].x){

tmpm2 = prof[pos[0]][m2[d]][rand-1].x;

}

}

if (m1[d] != -1){

if (tmpm1>prof[pos[0]][m1[d]][rand-1].x){

tmpm1 = prof[pos[0]][m1[d]][rand-1].x;

}

}

if (zero[d] != -1){

if (tmpzero>prof[pos[0]][zero[d]][rand-1].x){

tmpzero = prof[pos[0]][zero[d]][rand-1].x;

}

}

if (one[d] != -1){

Page 24: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

if (tmpone>prof[pos[0]][one[d]][rand-1].x){

tmpone = prof[pos[0]][one[d]][rand-1].x;

}

}

if (two[d] != -1){

if (tmptwo>prof[pos[0]][two[d]][rand-1].x){

tmptwo = prof[pos[0]][two[d]][rand-1].x;

}

}

}

}

int total = 0;

for (int d = 0;d<4;d++){

if (prof[pos[0]][d][rand-1].y == -2){

if (perim[2+centralx+deltax+tmpm2][2+centraly-2] != 2){

if(b[centralx+deltax+tmpm2][centraly-2].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].y == -1){

if (perim[2+centralx+deltax+tmpm1][2+centraly-1] != 2){

if (b[centralx+deltax+tmpm1][centraly-1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].y == 0){

if (perim[2+centralx+deltax+tmpzero][2+centraly] != 2){

if (b[centralx+deltax+tmpzero][centraly].getBackground() == Color.DARK_GRAY){

Page 25: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

total++;

}}

} else if (prof[pos[0]][d][rand-1].y == 1){

if (perim[2+centralx+deltax+tmpone][2+centraly+1] != 2){

if (b[centralx+deltax+tmpone][centraly+1].getBackground() == Color.DARK_GRAY){

total++;

}}

} else if (prof[pos[0]][d][rand-1].y == 2){

if (perim[2+centralx+deltax+tmptwo][2+centraly+2] != 2){

if (b[centralx+deltax+tmptwo][centraly+2].getBackground() == Color.DARK_GRAY){

total++;

}}

}

} if (total == 4){

b[centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y].setBackground(Color.DARK_GRAY);

b[centralx+prof[pos[0]][3][rand-1].x][centraly+prof[pos[0]][3][rand-1].y].setBackground(Color.DARK_GRAY);

centralx = centralx+deltax;

b[centralx+prof[pos[0]][0][rand-1].x][centraly+prof[pos[0]][0][rand-1].y].setBackground(rnd[rand-1]);

b[centralx+prof[pos[0]][1][rand-1].x][centraly+prof[pos[0]][1][rand-1].y].setBackground(rnd[rand-1]);

b[centralx+prof[pos[0]][2][rand-1].x][centraly+prof[pos[0]][2][rand-1].y].setBackground(rnd[rand-1]);

Page 26: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

b[centralx+prof[pos[0]][3][rand-1].x][centraly+prof[pos[0]][3][rand-1].y].setBackground(rnd[rand-1]);

}

}

public static void main (String[] args){

new Tetris();

}

@Override

public void keyPressed(KeyEvent e) {

if (e.getKeyCode() == KeyEvent.VK_RIGHT){

deltax = 1;

movelr();

}

if (e.getKeyCode() == KeyEvent.VK_LEFT){

deltax = -1;

movelr();

}

if (e.getKeyCode() == KeyEvent.VK_UP){

rotate();

}

if (e.getKeyCode() == KeyEvent.VK_DOWN){

movedown();

}

}

Page 27: world4java.files.wordpress.com  · Web viewSource Code Of Tetris Game. import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame implements

@Override

public void keyReleased(KeyEvent e) {

// TODO Auto-generated method stub

}

@Override

public void keyTyped(KeyEvent e) {

// TODO Auto-generated method stub

}

}