Objects First with Java: A Practical Introduction Using BlueJ (6th Edition)
6th Edition
ISBN: 9780134477367
Author: David J. Barnes, Michael Kolling
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Concept explainers
Question
Chapter 8, Problem 20E
Program Plan Intro
Program plan:
The variables used in the program are given below:
- item: An instance variable of type Item that represents the item in the room.
- hasItem: A boolean variable that is true if the room has an item and false otherwise.
The methods used in the program are as follows:
- Room(String description): A constructor method that takes a String parameter representing the description of the room, creates a new instance of the Room class, and initializes the instance variables.
- addItem(Item item): A method that takes an Item object as a parameter and adds it to the room if there is no existing item in the room.
- removeItem(): A method that removes the item from the room if there is one and returns it. If there is no item, it returns null.
- hasItem(): A method that returns true if the room has an item and false otherwise.
- getItemDescription(): A method that returns a String description of the item in the room or "none" if there is no item.
- getDescription(): An overridden method from the Entity class that returns the description of the room along with the description of the item, if there is one.
Program Description:
To extend the project so that a room can contain a single item.Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
What happens when you make a new map entry using a key that already exists on the map and click on it?
Gradient FillIn this labwork are asked to write a GUI application again using AWT. This is a fairly easy labworkthat is more about getting used to synchronized online learning. You are expected to:• Draw two rectangles.• Both of them should be filled using GradientPaint() function of AWT. (Check out itsfunction definition that is listed below.)• The first gradient should be parallel to the diagonal of the first rectangle. The colorgradient should not be repeated (acyclic).• The second gradient should be horizontal. The color gradient should be repeated forthis one (cyclic).• You are free to choose the colors but other than that your output should be similar tothe example screenshot given below.
Scenario
You work for a small company that creates text-based games. You have been asked to pitch an idea to your team for a text-based adventure game with a theme and environment of your choice. Your game must include different rooms, items, and a villain. The basic gameplay will require the player to move between different rooms to gather all of the items. A player wins the game by collecting all the items before encountering the villain. The player will have two options for commands in the game: moving to a different room, and getting an item from the room they are in. Movement between rooms happens in four simple directions: North, South, East, and West.
You must include the designs for your game as a part of your idea pitch. Specifically, you have been asked to provide a map that displays the different rooms and items. You have also been asked to use pseudocode or flowcharts to design code for moving between rooms and getting items. If your pitch gets approved, these designs will…
Chapter 8 Solutions
Objects First with Java: A Practical Introduction Using BlueJ (6th Edition)
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- Scenario You work for a small company that creates text-based games. You have been asked to pitch an idea to your team for a text-based adventure game with a theme and environment of your choice. Your game must include different rooms, items, and a villain. The basic gameplay will require the player to move between different rooms to gather all of the items. A player wins the game by collecting all the items before encountering the villain. The player will have two options for commands in the game: moving to a different room, and getting an item from the room they are in. Movement between rooms happens in four simple directions: North, South, East, and West. Directions In this project, you will break the problem down into a set of requirements for your game program. Then you will design your game by creating a storyboard and pseudocode or flowcharts. Remember, in Project One, you are only designing the game. You will actually develop the code for your game in Project Two. Review the…arrow_forwardPicture card: Create a picture card that looks SIMILAR to this. There are images available in the "images" directory to assist you in making this card. They are not the same images, but there is an image of a desert and a person. Picture card In this screenshot, the title is "Title goes here", the secondary text is "Secondary text", and the body text is "Greyhound divisively hello coldly wonderfully marginally far upon excluding." The card's root element is a with a class of "card". The card is 344px wide. The desert picture is 194px tall. The padding between the body text and everything else is 16px. The color of the title text is #000. The color of the secondary and body texts is #232F34. The size of the person picture is 40px in diameter. The size of the body text is 11px. The size of the title is 22px. For the padding or margin around any other elements, use your best judgment to make it look like the screenshot.arrow_forwardInstructions Create an algorithm for a game that can be won by defeating the final level's boss. Assuming: -the Boss have 150 Hit Points and 50 Attack Damage. -there are 3 minions with 25 Hit Points each and 5 Attack Damage. -and your character have 500 Hit Points and 15 Attack Damage you may invent your own actions.arrow_forward
- The goal of Snake is to create a snake as long as possible. This is achieved by guiding the snake to an apple on the game board. The snake cannot stop moving, and dies whenever it hits something (excluding apples). Because the snake is growing longer and longer as the game progresses, it gets increasingly difficult to avoid collisions with the snake itself. The player can change the direction of the head of the snake by using the arrow keys. At step in the game, there is always an apple somewhere on the board. If the snake eats an apple, the snake becomes one cell longer. A new apple is placed on a random location, excluding all places covered by the snake. When the snake reaches a side of the game board, it re-emerges at the opposite end.arrow_forwardMFC In the second part of your project, you need to develop a mathematical worksheet graphical interface for elementary school students. The worksheet consists of 10 questions of operations between two random numbers. The operations are defined randomly from the set {+, -, *, /}. The GUI uses a text field to enter the maximum value of random numbers. A button with the caption "Check Answers" should be added to the GUI, and when clicked, a correct icon () should appear in front of the correct answer and an incorrect iconarrow_forwardYou are creating a simple RPG video game, and you need to work out some details for your crafting menu. Your characters can craft two potions with simple ingredients: Minor Mana, and Minor Healing. The two potions have similar ingredients with some slight differences shown below. You want to add a "Craft All Potions" option, which will ask the user if they would like to prioritize Healing or Mana potions. It will then tell you how many you can produce of your priority potion, and then with the leftovers it will craft the other type of potion if it is possible. First ask for the priority potion, and then the quantities of the ingredients as an input. Then output how many of the priority potion you can make, and how many of the other potion. If the user provides an invalid input, ask them again.arrow_forward
- Please add reset button or a button that will clear all things on textfield i cant do it i am receiving an errorarrow_forwardAt runtime, the visibility of controls is decided by their characteristics in the same way that other controls are.arrow_forwardGUI calculator in python - The user enters two integers into the text fields. - When the Add button is pressed, the sum of values in the text fields are shown after the Equals: as a label. - The Clear button clears the values in the text fields and the result of the previous calculation. The cleared values can be blank or zero. - The Quit button closes the GUI window.arrow_forward
- Read this case study carefully ! A team of developers plans to make a game with the adventure genre . To play the game , the user is required to enter a name . The game description is as follows : 1. The player must choose a character ( from 3 optional characters ) at the beginning of the game 2. The character wears a war hat , has a sword weapon , armor , and the ability to attack the opponent strongly . 3. Each character can move forward , backward , left , and right . In addition , characters can perform shooting , hitting , or kicking actions . 4. Users are required to complete challenges in each level as a condition to proceed to the next level . 5. In each level , the character must kill all the monsters in front of or above with the actions he can do 6. As a reward , users can collect items , such as stars , weapons , and power - ups . 7. There are five levels in the game . Create a flowchart to model the gameplay ! *arrow_forwardAny object with an unknown description should have its item id listed.arrow_forwardCreate Use Case Diagram for the StoryArt application . Make sure to follow rules in creating Use Case Diagram.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT