1. Design and implement a custom environment for your maze game. This requires producing
your own unique hand-drawn map of the maze game environment and changing the
HardCodedData file to reflect the locations and items on your map. At least M (M>=4) locations,
including exactly N (N>=3) shops with a condition M>N, must be included, as well as enough
items to allow for proper testing of the game functionality. For example, there must be sufficient
items to verify that a player cannot collect an item if the weight restriction has been met. Note:
you should not retain the original locations or items from the provided codebase in your version
of the game.
2. Implement each of the following deliverables/milestones:
a. functionality as detailed in Lab 7 and Lab 8
b. commands to manage the various item management commands:
i. listItems, getItem, and dropItem, to allow the listing of all held items, collect a new
item, and drop a held item.
ii. equipItem and unequipItem, to wear/wield a held item, and to stop wearing or
wielding an equipped item.
iii. purchaseItem and sellItem, to buy an item from a vendor and to sell an item to a
iv. getmazestatus to show the status of the maze (i.e., the value of M and N)
Ensure that weight restrictions are not exceeded and that the context for each command is
appropriate. For example, purchasing and selling of items should only occur in a shop.