Write a simple pipes\plumb game in prolog language using the Visual Prolog workspace.
you should add comments to the code as much as possible.
The aim of the game:
The player should rotate the pipes shape by clicking on them in order to connect the tap with the overflow pipe.
If the player successfully connected all the pipes the water will flow from the tap to the end, otherwise the player will lose.
Example to the pipes game concept: [url removed, login to view]
Note that this game needs to be as simple as can, no complex graphics\animation is required.
You can choose to draw the shapes or using pictures.
The players have to choose the level of the game he wishes to player: easy, normal, crazy.
Easy: There will be no timer to end the game, the player have unlimited time to think how to order the pipes.
Normal: A timer is set up to 5 minutes till the water starts to flow.
Crazy: A timer is set up to 1 min only.
Game GUI structure:
1) Menu with 3 options:
1.1) Start a new game
1.2) Options: allow player to change the game level ( easy, normal, crazy ).
1.3) help: How to play the game.
2) Game board:
2.1) the board will contain a matrix\grid of "boxes". In each box there will be a different pipe shape that will be placed randomly. A start pipe (tap) and an end pipe (overflow) must be placed.
2.2) the size of the matrix\grid can be decided later.
2.3) if the player lost the game a message should be written on the screen, the same if wins.
2.4) Time: if the player chose to play the normal or crazy game level a timer will be placed in the game board.
The “Get Solution” button:
At any given time, during a game, the user can click on the “Get Solution” button and the computer will solve the game:
Each game must have a solution. You must to use the BFS algorithm to calculate the shortest path.
Keyboard & mouse (up, down key to choose between the options\pipes and enter key\mouse click to confirm\rotate.
- A zip file containing gifs of the pipes shape are provided you can choose to use them or not.