To learn to create and manipulate dynamic data structures.
For this assignment, you are going to add a new feature to the game you developed in Project 3. You must add support for the player to carry a number of items around in the game. These items should be stored in a linked list. If you have not done so already, you should modify your game so that characters have to collect at least three different items that are necessary in some way to complete your game. NOTE: A minimal solution to Project 3 can be downloaded here Project6starter.zip. If you are not happy with your submission for Project 3 you may start from this starter project with no penalty to your grade on Project 6.
You should add a new option on each turn for the player to display his or her inventory. When users select this option everything they are currently carrying in their inventory should be displayed. You should also add support for the user to pick up and drop items.
When items are dropped, they should be retrievable again in the same location as where they were put down. Thus, the player of the game should be given the option of dropping an item at every location on the game board (assuming they have an item to drop). How you do this is up to you, but it must work correctly to get an "A" on the assignment.
You must write a class called LinkedList to get full credit for this assignment. Every location on the game board should have a linked list attribute that stores the items available for the player to pick up at that location (thus, you probably want to add this as an attribute in the Location class). The Player should also have a LinkedList attribute called something like inventory that stores the items he/she is carrying. You probably also want to write an Item class (or something similar) describing the items that could be contained in the lists. The rest of the requirements from Project 3 should still be supported.
You must write separate .h files for each class.