/* MazeManApplet.java This assignment shows application and reinforces multi-dimensional arrays. by Nancy Reddig, Oracle Academy Instructor */ import java.awt.event.*; import java.awt.*; import java.awt.Graphics; // import class Graphics import javax.swing.JApplet; // import class JApplet public class MazeManApplet extends JApplet implements KeyListener{ /* 0 = wall 2 = small dot 3 = power dot -1 = ghost box 1 = empty or starting position */ int matrix[][]={{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,3,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,3,0}, {0,2,0,0,2,0,0,0,0,2,0,0,0,0,0,2,0,0,2,0}, {0,2,0,0,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,0}, {0,2,2,3,2,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0}, {0,2,0,0,2,0,2,0,2,2,2,2,2,0,2,2,2,2,2,0}, {0,2,2,2,2,0,2,2,2,-1,-1,-1,2,0,2,0,0,0,2,0}, {0,2,0,0,2,0,2,0,2,-1,-1,-1,2,2,2,0,2,2,2,0}, {0,2,2,2,2,0,2,0,2,2,2,2,2,0,2,2,2,0,2,0}, {0,2,0,0,2,2,2,0,0,0,2,0,0,0,2,0,2,0,2,0}, {0,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,2,0,2,0}, {0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0}, {0,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,3,0,2,0}, {0,2,0,2,0,2,0,0,0,0,0,0,0,0,0,0,2,0,2,0}, {2,2,0,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}; Maze board; MazeMan pacman; public void init() { board=new Maze(this); pacman=new MazeMan(this,6,10); setFocusable( true ); repaint(); addKeyListener(this); requestFocus(); } public void paint( Graphics g ) { board.drawMaze(); pacman.drawMazeMan(true); pacman.start(); } public void keyReleased(KeyEvent e){} public void keyTyped(KeyEvent e){ switch(e.getKeyCode()) { case KeyEvent.VK_UP: pacman.moveUp(); break; case KeyEvent.VK_DOWN: pacman.moveDown(); break; case KeyEvent.VK_RIGHT: pacman.moveRight(); break; case KeyEvent.VK_LEFT: pacman.moveLeft(); break; } } public void keyPressed(KeyEvent e){ switch(e.getKeyCode()) { case KeyEvent.VK_UP: pacman.moveUp(); break; case KeyEvent.VK_DOWN: pacman.moveDown(); break; case KeyEvent.VK_RIGHT: pacman.moveRight(); break; case KeyEvent.VK_LEFT: pacman.moveLeft(); break; } } }