Write a program that lets the user play an adventure game, Programming Languages

Assignment Help:

Let the player (denoted U in the diagram below) navigate around the board until she wins the game by finding the exit or is killed by a monster. A player begins the game with a sling. Whenever the player moves into a new space, you should give her any new information (what if anything is in the room and whether there are walls to the north, south, east, and west). If there is a monster in the room, the player automatically must fight it. Inform the player that there is a monster in the room (and what type of monster it is) and tell her the outcome of the battle. A player with a sling defeats kobolds (denoted K in the diagram below) 75% of the time and ogres (denoted O in the diagram below) 20% of the time. A player with a sword will defeat ogres 96% of the time and kobolds 99% of the time. No player will ever defeat a dragon (denoted D in the diagram below) no matter what weapon they have and a player stepping into the space with a dragon is simply eaten. Game over. If the player loses the battle, the game is over. Otherwise, let her choose one of the valid actions associated with the space:

  • Pick up any object in the room (there is never more than one object in a room and a room may contain nothing, an object, or a monster, but never more than one thing so never two monsters, never a monster and an object, never two objects).
  • Move to another space (north, south, west, or east) that is not blocked by a wall.
  • Die if she moved into a space with a pit (denoted Pit in the diagram below)

2. Whenever the player moves into a new space, you should redraw the game board showing only what the player has been thus far. Essentially, you are keeping a map for the player. Whenever you redraw the map, first clear the screen by printing new lines until the old map scrolls off the screen. 

3. The board will look like this, although you do not know how big it is, you know it won't be any bigger than 20*20 squares.

1450_game.png

If the player has only been in the white spaces shown below from the board above.

Then show should see a map that looks like this:

2498_game1.png

You should use functions, arrays, loops, file I/O, etc where appropriate, comment your code, and design your program before you start coding.

  • The only items in the game are gold and a sword. Keep track of how much gold (denoted G in the diagram) a player has and output that if they escape the maze.
  • The only monsters are the dragon (D), kobolds (K), and ogres (O).

 


Related Discussions:- Write a program that lets the user play an adventure game

Class a abstract data type, Class a Abstract Data Type: is a template for c...

Class a Abstract Data Type: is a template for creating objects. A class describes a collection of related objects i.e. instances of the classes. Basically classes are user-defined

Write a prolog predicate for a list, Write a Prolog predicate remove_nth(N,...

Write a Prolog predicate remove_nth(N,L1,L2) that is true if list L2 is just list L1 with its Nth element removed. If L1 does not have an Nth element then the predicate should fail

What is .net?, What is .NET? It is a foundation fairly neutral structure...

What is .NET? It is a foundation fairly neutral structure. Is a coating between the son and the selection language? It can handle many selection dialects, such as VB.NET,

Linear time algorithm to find longest repeat prefix, A non-empty string β i...

A non-empty string β is called a repeat pre x of a string s if ββ is a pre x of s. Give a linear time algorithm to find the longest repeat prefix of s. Hint: Think of using lca

Prolog assignment, I have constantly been emailing to get the task i had pa...

I have constantly been emailing to get the task i had paid for to be done correctly but no replies from anyone. Not even one acknowledging my emails. Been phoning all the way from

What is dynamic binding, Dynamic Binding: - Binding refers to the linking ...

Dynamic Binding: - Binding refers to the linking of a procedure call to the code to be executed in response to the call. Dynamic binding (late binding) means that the code associa

What are relative urls, What are Relative URLS ? When a web browser re...

What are Relative URLS ? When a web browser reads an HTML document, it has a great deal of information about the document. This includes the protocol used to retrieve the docu

Pascal, Problem Solving 1. Write Pascal code that accepts as input the nam...

Problem Solving 1. Write Pascal code that accepts as input the names of the students, course work score and exam score for a unspecified number of students who have taken a subjec

Looping, You are required to develop a program that calculates the charges ...

You are required to develop a program that calculates the charges for DVD rentals, where current release cost RM3.50 and all others cost RM2.50. If a customer rents several DVDs, e

List recursion to de ne the function, Use list recursion to de ne the funct...

Use list recursion to de ne the function mySum which takes as input an integer and a list of integers and returns the list obtained by adding every element of the list by the rst

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd