You are to create a game called â??Get Out of My Swampâ??. In this game an ogre, called â??Hekâ??, wanders around his swamp, if he encounters an ogre enemy in his swamp he kills it. If he encounters two ogre enemies in the same place they kill the ogre and the game ends. Full details of the game are given below. There is a sample session from a game given at the end of the coursework. The swamp can be thought of as a four by four grid.
When the game starts the ogre is placed in a random square (i.e. part of the swamp). However he must not be placed in the top left hand corner of the swamp when the game starts, although he can move there during the game. When the ogre moves, he can move to ANY(Diagonally as well) of the neighbouring squares as shown below. The ogre cannot move out of the swamp.The square the ogre moves to is chosen at random from all the possible squares that it can move to. There are three types of ogre enemies that can inhabit HEkâ??s swamp; a snake, a parrot and a donkey. There is a hole in the fence around Hekâ??s swamp in the top left corner and this is where the enemies enter the swamp. Once in the swamp the enemies move in exactly the same way as the ogre; i.e. they move randomly to any of the neighbouring squares.
Every time Hek moves there is a one in three chance of an enemy entering the swamp, the type of enemy is completely random.
Although there are only three types of enemies. new types of enemy may be available in the future. You should take this into account when coding your solution.
If the ogre moves into the same square as an enemy, the ogre kills the enemy and the enemy is removed from the swamp. If the ogre moves into the same square as two or more enemies, the enemies kill the ogre and the game is over.
If the ogre is still alive and the user chooses not to make another move the game state should be saved using serialization. When the program starts the user should have the option of loading saved data or starting a new game. It should be possible to change the size of your swamp by simply changing one integer in your program. You should incorporate both the singleton pattern and the observer pattern into your game. If you cannot see an obvious place for the patterns in the game you may extend the specification of the game in any way in order to incorporate the patterns.
Please provide me with the solution as soon as possible because i need to demonstrate the same on monday 12th august. Thanking You. Purav