// // Tetris game // mdm 2001 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Tetris extends JFrame { public static void main(String [] args){ world = new Tetris(panel); world.show(); } public static final int FrameWidth = 350; public static final int FrameHeight = 400; public static Tetris world; public static TetrisPanel panel = new TetrisPanel(); public PieceMover currentPieceMover; //thread that moves the current piece public Tetris (TetrisPanel panel) { setTitle("Tetris"); setSize (FrameWidth, FrameHeight); getContentPane().add(panel); /*add thread that listens for user input*/ addKeyListener (new keyDown()); /*create thread that moves current piece*/ currentPieceMover = new PieceMover(panel); currentPieceMover.start(); } private class keyDown extends KeyAdapter { public void keyPressed (KeyEvent e) { char key = e.getKeyChar(); System.out.println("key pressed = "+key); switch (key) { case 'g': panel.newGame(); break; case 'j': panel.getCommand(Piece.Left); break; case 'k': panel.getCommand(Piece.Rotate); break; case 'l': panel.getCommand(Piece.Right); break; case 'q': System.exit(0); } } } }