Our Services

Get 15% Discount on your First Order

[rank_math_breadcrumb]

HW 4 COS

PLEASE REVIEW THE INFO BELOW 

Upload the .java source code file AND DON’T ZIP FILES AS I HAVE SEEN MANY STUDENT DID IT IN THEIR PREVIOUS ASSIGNMENT.

In a single file named game.java, create an Enemy class, Player class, and gameObject class.  The Enemy and Player (sub) classes should inherit from the gameObject (super) class.  Create a player and a few enemies.  Create the basic movements (left/right/up/down) for the player.  Develop a menu in the main method that allows the player to move around.

gameObject SuperClass

Variables

Description

static char World[][] = new char[41][21];

This is the character array that will store what is at each X,Y location.  It is static so there is only one World for all game objects.

int Xpos, Ypos

X,Y location of the game object.  The top left of the screen will be 1,1.

int HP

Hitpoints of the game object – it is alive as long as HP > 0

int Attack

Attack rating of the game object – the higher the number, the more damage it does

int Armor (optional)

Armor rating of the game object – the higher the number, the less damage it takes when attacked

char Avatar

The character that will be displayed when the World is printed

Methods

Description

PrintWorld()

This will print the World to the screen.  Example code:
for (int y=1; y<=20; y++)
{
   for (int x=1; x<=40; x++)
   {
      System.out.print(World[x][y]);
      // optionally put a space after each element
      if (x < 40) System.out.print(” “);
   }
   System.out.println();
}

MoveRight()

Move the game object to the right.  Here’s some example code:
if (World[Xpos+1][Ypos] == ‘ ‘)
{
   World[Xpos][Ypos] = ‘ ‘;
   Xpos++;
   World[Xpos][Ypos] = Avatar;
}

MoveLeft()

Move the game object to the left.

MoveUp()

Move the game object to the up.

MoveDown()

Move the gameobject to the down.

Enemy SubClass (inherits from gameObject)

Variable Names

Variable Description

String Type

Type of enemy such as “Orc” or “Troll”

int Speed (optional)

The speed of the enemy.  You could have some enemies move 2 spaces per turn instead of 1.

Methods Names

Methods Description

Enemy()

Constructor that takes 1 parameter – Type

You can set the Enemy’s Xpos,Ypos to a random location

In the constructor, you will set these things based on the Race:  HP, Attack, Armor, Speed, Avatar.  For example:
if (Type.equals(“Orc”))
{  HP = 50;  Attack = 5;  Armor = 20;  Speed = 1;  Avatar = ‘O’; }

Player SubClass (inherits from gameObject)

Variable Names

Variable Description

String Name

Name of the player.

int Gold (optional)

The amount of gold the player has collected.

Methods Names

Methods Description

Player()

Constructor that takes 2 parameters – Name, Avatar

Since there will only be 1 player, this constructor will only be called once.  Therefore you can initialize the World here.  Here’s some example things you could do:

// set entire world to spaces
for (int x=1; x<=40; x++)
   for (int y=1; y<=20; y++)
      World[x][y] = ‘ ‘;

// put the player into the world after filling it with spaces
XPos=2;  YPos=2;  World[2][2]=Avatar;

// line perimeter of world with trees ‘@’
for (int x=1; x<=40; x++)
{  World[x][1] = ‘@’;  World[x][20] = ‘@’;  }
for (int y=1; y<=20; y++)
{  World[1][y] = ‘@’;  World[40][y] = ‘@’;  }

// draw a lake at a random location ~
int a = (int)(Math.random()*30)+4;
int b = (int)(Math.random()*10)+3;
World[a][b] = ‘~’; World[a+1][b] = ‘~’; World[a+2][b] = ‘~’;
World[a][b+1] = ‘~’; World[a+1][b+1] = ‘~’; World[a+2][b+1] = ‘~’;
World[a][b+2] = ‘~’; World[a+1][b+2] = ‘~’; World[a+2][b+2] = ‘~’;

 

Below is an example screen print showing the player, Orcs, Trolls, armor and weapons.

@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
@ K             $                                                           @
@                                                                           @
@         %                                                     O     O     @
@                                                                     O     @
@                     ~ ~ ~                               T                 @
@                     ~ ~ ~             O O                                 @
@                     ~ ~ ~             O O                                 @
@           +                                                               @
@                                                                           @
@                         $                                                 @
@                                                                           @
@                                                                           @
@                                                                     +     @
@       O O                         %                                       @
@                                                                           @
@               $                                                           @
@                                       $                     T             @
@                                                                           @
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @

Enter your command:

 

The main program will be rather simple since many things are handled in the classes.

import java.util.*;
public class game
{
   public static void main (String[] args)
   {
      Scanner in = new Scanner(System.in);
      String Choice = “”;

      // creating the player will initialize the world
      Player P = new Player(“Kirk”,’K’);

      // create some enemies in random locations
      Enemy E1 = new Enemy(“Dragon”);
      
      while (!Choice.equals(“q”))
      {
         P.PrintWorld();
         System.out.println(“Enter your command: “);
         Choice = in.nextLine();

         // call move methods – you can use the standard gaming directions – a,s,d,w
         if (Choice.equals(“a”))
            P.MoveLeft();
      }
   }
}

BELOW IS THE PICTURE IF YOU DONT UNDERSTAND THE INFORMATION ABOVE

image1.png

image2.png

image3.png

image4.png

image5.png

Share This Post

Email
WhatsApp
Facebook
Twitter
LinkedIn
Pinterest
Reddit

Order a Similar Paper and get 15% Discount on your First Order

Related Questions

computering part 7

The goal of this project is to integrate your various components into polished, professional products. Follow the instructions below to ensure a successful submission: Apply Feedback: Review and incorporate all feedback received from previous submissions (Parts 2-6). Enhance and Improve: Refine any of the three required items (cover letter with

Discussion and Replies

Please see attachment for instructions     Discussion   In 250 words total, answer the questions below with 4 evidence base scholarly articles. APA format. Based on the readings this week, 1. Discuss some common strategies and pitfalls you have seen with business continuity. 2. Discuss some common strategies and

sociology

The goal of this project is to integrate your various components into polished, professional products. Follow the instructions below to ensure a successful submission: Apply Feedback: Review and incorporate all feedback received from previous submissions (Parts 2-6). Enhance and Improve: Refine any of the three required items (cover letter with

Python

  Instructions Create a simple Python application (Save as w5_firstname_lastname.py) . Create a Python script that takes two parameters to do the following:- 1) List all files names, size, date created in the given folder 2) Parameter1 = Root Folder name Parameter2= File size >>> to filter file size (

Python

  Instructions:  Describe methods for securing Python code. Pick at least ONE of the methods for securing node and deep dive into what it means and how it is used to secure code.   

Discussion 8 of 459

Follow the attach instruction to complete the work. 1. What is one specific technology you found the most intriguing throughout the course? 2. If you were to be a hacker, which building block vector would you choose to attack your selected technology and why?

WK 4 Discussion and Replies

Please see attachment for instructions     Discussion   In 250 words total, answer the questions below with 4 evidence base scholarly articles. APA format. Discussion on access control and physical security. These areas found to be one or more points of weakness in audit 1. Discuss some common points of

Node.js

  Instructions Create a simple Node.js server (Save as w4_firstname_lastname.js) . Create a restful application similar to the one in lesson 4 (ReSTFul Web Services). Document the routing table, and the application you created. Submit your week 4 work in w4_firstname_lastname.txt (Please save the file as a text file and

Computer Science- Python Gurobi assignment

I need the output following these steps: Put all of these files into the same folder, Open the python file, If there is any error, check if any file is missing, It has 105 counties and 4 districts, so it will take a while to finish running. I need it

Research Project

Please follow the instructions attached below:  I have choose the topic from the list is:   PROJECT TITLE Firm RTOS – Balancing Real-Time Performance and Flexibility Please check the abstract from my file and write the research project. 

provide me java based interview question.

Core Java Interview Questions (Basic Level) 1. What is Java? Java is a high-level, object-oriented, platform-independent programming language developed by Sun Microsystems. 2. What are the features of Java?  Object-Oriented  Platform Independent (via JVM)  Secure and Robust  Multithreaded  Architecture Neutral  High Performance (via JIT

Dynamons world Mod APK

 What are the best tips for playing RPG games like Dynamons World? I recently found a great resource at that offers a lot of insights and even MOD APKs for Dynamons World, but I’d love to hear personal strategies and gameplay advice from the community too! ???????? 

459 w7

Follow the attach instructions to complete this work. Questions: 1. What is Generative AI and how is it similar/different to Traditional AI? 2. Do you believe that work created by Generative AI (e.g. ChatGPT) is comparable in quality to human created content?  What challenges and opportunities  does Generative AI pose

Computer Science WK3 Assignment

Please see attachment for instructions ISSC680 Week 3 Homework Assignment Instructions: Please provide a one-page response to the following topic utilizing supporting documentation obtained from the attach books and the Internet. APA format and reference. Topic: Differentiate between the different types of cryptographic algorithms.

Discussion and Replies

Please see attachment for instructions     Discussion   In 250 words total, answer the questions below with 4 evidence base scholarly articles. APA format. Based on this weeks readings, 1. Discuss some effective strategies for Security Awareness in your organization or 2. What you would like to see implemented