Project 4: AI

For this project you only need to do one of the two options for Part 1. If you do both, you can earn up to 1.5 points of extra credit for the second(to be counted toward the 5 allowed)

Part 1 (Choice A):Add AI to your game. Add a feature to your user interface to select which players are human-controlled and which are computer-controlled. Design a "AIPlayer" interface and implement that interface with at least three different types of AI players which have different behaviors. If you can find an interesting way to use a Stack, ArrayList, LinkedList, Hashtable or Tree in one of these behaviors (I couldn't), you will get .25 points of extra credit (in addition to whatever you get for doing both parts).

Part 1 (Choice B):Make a "Projectile" interface and design at least two new classes of projectile that implement that interface (in addition to the default type of projectile). Include a way for the user to select between the projectiles. Use recursion in an "interesting" way (don't just directly convert a for-loop) for one of these classes.

Part 2: Create a test plan for your completed game, execute it, and show the results.


Part 1 Screenshots (Choice A)









Choice B Screenshots

You are on your own here. Some ideas for possible alternative projectiles would be a laser (that fires straight and goes through terrain) and a big projectile that breaks into smaller projectiles which fly in all different directions (like that thing in Iron Man). Good luck!