For this assignment you will build upon the example program done in class that implemented part of a game of pong. Your version of pong will be more complete and have the following features at a minimum:
1) The scores for each player should be displayed
2) Option for ball speed – Choose between three different speed levels: slow/medium/fast
3) Option for player paddle size – Choose between three different paddle sizes for the player: small/medium/large
4) Option for game length – Choose between three game lengths: 7/15/21 points
5) Option for opponent – Choose between a two player game and a one player game against an automated paddle
6) Automated paddle – If the player chooses to play against an automated paddle, your program should control the motion of the paddle. You can track the current position and direction of the ball to estimate whether it should move up or down from its current position.
7) Expanding net – in addition to having the ball bounce off of the walls and paddles, there will be an additional obstacle the ball must avoid. There should be an object moving up and down in the middle of the screen, essentially a moving net. The net size should be relatively small in the beginning of a point so that it is not too hard to have the ball avoid it. However, every time the ball hits it, the ball should bounce off of it as if it were a wall and the size of this net object should grow and the net should begin to move a little faster. The net should never get as big as the entire screen, so that there is always some chance of getting the ball through.
These are the basic features that your game should have. For extra credit you can add in other options and features such as changing ball speed and paddle size after a certain number of hits, moving the ball in a squiggly direction rather than always straight, etc. You should submit your code and any additional images or other things that you need to run the program.
COMMENT all code