I need a simple game built in Visual Prolog.
When starting a game the user sets the game board's size.
If user sets the size to be N then the game board size will be N x N.
Game Board Properties:
In each slot of the game board there will be 1 of six possible pipes:
Horizontal pipe, vertical pipe and the 4 possibilities of angular (90 deg.) pipes.
All types of pipes are demonstrated in the picture attached.
One random slot will remain blank in every game.
In the left top corner of the game board (on top of the game board) there should be a tap.
In the right bottom corner of the game board (below the game board) there should be drain.
The goal of the game is to connect the tap to the drain.
When the game starts there is a timer of X seconds to complete the modifications.
Note that the time is not set by the user and is pre-defined; time should be proportional to the game board size though.
Only during that time can the player modify the game board pipes (remaining time should be visible to the user).
Once the time has passed, water starts to flow from the tap through pipes that can carry water.
For every pipe which water flows through the player get X (pre-defined) points.
If the water has reached the drain, the player gets a "You Won" message with the number of points he gained.
If the water didn't reach the drain, the player gets a "You Lost" message with number of points he gained.
The only allowed play by the user is to click one of the slots that are adjacent to the blank slot.
This will switch position of those two slots (the empty one with the chosen one).
You can see the attached picture to get a clue of how the game should look like.
Don't use complex graphics or complex code.
Code should be readable and with comments.
I need this project ready by 9/1/2013. That's not a lot of time but it's surely possible.
I estimate there is ~20 hours of work needed.
Money will be provided only if the project is ready until the date I mentioned and is examined by me (I will run and test the game on my personal computer).