MAZE_GAME_pres - CSE246DataStructureFall2010

advertisement
DATA STRUCTURE AND ALGORITHM PROJECT
Fall2011
Group Members:
Asma Rafi
BS-3
Fatima Saleem
BS-3

The object of the game is for the player to
find their way to the end of the maze.

The program is based on the 2-D array and
the graphics(mainly drawLine), represented
using Applet.
o The goal of our project is
to learn the implementation
of a Data structure (2-D
array).
o To learn the inco-opertion
of graphics and applets with
the code.

BUILT-IN CLASSES USED:
java.applet.Applet;
java.awt.Graphics;
java.awt.event.KeyListener;
java.swing.*
2-D array for creation of Maze.
drawLine() method for walls.
fillOval() method for player.
6
FALSE
4
FALSE
7
FALSE
TRUE
5
TRUE
8
FALSE
FALSE
TRUE
TRUE
FALSE FALSE FALSE
3
TRUE
2
FALSE FALSE
TRUE
1
TRUE FALSE FALSE
0
FALSE TRUE
CREATION OF MAZE:
I.
Create a Boolean 2-D array for horizontal and vertical walls of the
FALSE
FALSE
FALSE
maze
I.
Set True for open walls and False for closed walls
I.
II.
Draw lines using loop where walls are closed.
Draw a player.
I.
Use keyListener to move the player(Up, Down Left
and Right).
II.
Detect Collision of player with the walls and block
using correct positions.
RIGHT ARROW KEY: While pressing the right arrow key, if player’s
horizontal position is greater than the coordinates of the closed wall, then assign
players position to that particular value.
LEFT ARROW KEY: While pressing the left arrow key, if player’s horizontal
position is less than the coordinates of the closed wall, then assign players position
to that particular value.
UP ARROW KEY:
While pressing the up arrow key, if player’s vertical position is less than the
coordinates of the closed wall, then assign players position to that particular value.
DOWN ARROW KEY:
While pressing the down arrow key, if player’s vertical position is greater than the
coordinates of the closed wall, then assign players position to that particular value.

The ball starts from the top left corner of the
maze.

It moves along the open walls, using the
arrow keys, the closed walls block the ball
from going through.

Finally reaches the end of the Maze and thus
the maze is solved.
At player X
position(SQ)=26
At player Y position(SL) =
26
At player X
position(SQ)=186
At player Y
position(SL) = 26
At player X
position(SQ)= 178
At player Y
position(SL) = 230

From this project we learned:
I.
II.
III.
IV.
V.
Key event handling.
Implementation of 2-D array.
Collision Detection.
Tried different algorithm techniques for
creation of the maze(DFS, Tiles, fillRect()).
Use of Graphics and Applet.

http://www.zahniser.net/~russell/computer/in
dex.php?title=Maze:%20Third%20Person

http://www.mazeworks.com/mazegen/mazet
ut/index.htm
Download