====== Hunt the Wumpus ====== {{ :hunt_the_wumpus.png?800 |}} For a complete description of this classic game see [[ http://en.wikipedia.org/wiki/Hunt_the_Wumpus|the Wikipeadia article]]. It involves hunting a Wumpus in a strange tunneled world where you have a "fork in the road" at every turn. The perils are bottomless pits, bats that wisk you away to a random location, and the dreadful Wumpus. In this version, there may be hidden gold, so that you can get arrows to use against the Wumpus. These are the famous "crooked" arrow that can travel the perimeter of a pentagon's perimeter, so they are indeed worth 100 pieces of gold. A word to the wise: always look before going forward. - {{ ::dodectrahedron.java |Dodecectahedron.java}} - {{ :face.java |Face.java}} - {{ :vertex.java |Vertex.java}} - {{ :wumpus.java |Wumpus.java}} The code here has a fairly complete user interface that has a 3D Dodectrahedron (You need [[http://en.wikipedia.org/wiki/Anaglyph_glasses|red-blue 3d glasses]]) to see the lower right window properly. The ''Wumpus'' controller/UI class is set up to run without the ''Room'' class in the given starter code. To fully implement the game, you need to make a ''Room'' class that can be filled with bats, pits and a smelly wumpus. Once you have a ''Room'' class, you will need to look for ''todo'' in the code that has to do with the ''Room''s. A ''Room'' needs to be able to report if it has: - gold - a bottomless pit - bats that transport the player to a random room - a deadly ''Wumpus'' that will eat the player You would also need to a write a method in the ''Wumpus'' class (the controller class) that will randomly place these hazards in the 20 Rooms. The UI (User Interface) demonstrates rotation around axes controlled by a click and drag. It is slightly improved over the 1973 version below: {{ ::hunt_the_wumpus_screenshot.jpg?direct&600 |}} For a complete description of this classic game see [[ http://en.wikipedia.org/wiki/Hunt_the_Wumpus|the Wikipeadia article]]