Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Importer ArrayList
- import java.util.ArrayList;
- /**
- * Klassen representerer en Player i et RPG.
- *
- * @author Terje Nesthus (tne037)
- * @version 1.0
- */
- public class Player {
- // Feltene til klassen Player
- private String name;
- private String type;
- private int gold;
- private int health;
- private ArrayList<Item> items;
- /**
- * Konstruktor
- * @param newName navnet på Player
- * @param newType typen til Player
- */
- public Player(String newName, String newType) { //2 parameter av typen String
- name = newName;
- type = newType;
- health = 100;
- this.items = new ArrayList<Item>();
- }
- /** Endrer helsa til Player
- * @param value
- */
- public void changeHealth(int value) {
- if((health += value) < 0) {
- health = 0;
- }
- }
- /** Sjekker om Player er i live.
- * @return true hvis health er større enn 0
- */
- public boolean isAlive() {
- if(health > 0) {
- return true;
- } else {
- return false;
- }
- }
- /**
- * Skriver ut info om Player
- */
- public void easyprint() {
- System.out.println("Name: " + name);
- System.out.println("Type: " + type);
- System.out.println("Health: " + health);
- }
- /** Henter navnet til Player
- * @return navnet til Player
- */
- public String getName() { //aksessormetode
- return name;
- }
- /** Setter navnet til Player
- * @param name nytt navn
- */
- public void setName(String name) { //mutatormetode
- this.name = name;
- }
- /** Henter typen til Player
- * @return typen til Player
- */
- public String getType() {
- return type;
- }
- /** Setter navnet til Player
- * @param type ny type
- */
- public void setType(String type) {
- checkString(type);
- switch(type) {
- case type.equals("Warrior"): this.type = "Warrior";
- }
- }
- /** Henter health til Player
- * @return Players health
- */
- public int getHealth() {
- return health;
- }
- /**
- * Legger til et item til player
- *
- * @param Itemobject
- */
- public void addItem(String name, String description, String action, int value)
- {
- Item item = new Item(name, description, action, value);
- this.items.add(item);
- }
- /**
- * Finn et player-item fra name
- *
- * @param Itemnavn
- * @return Itemobject
- */
- public Item findItem(String name)
- {
- for (int i = 0; i < this.items.size(); i++)
- {
- Item item = this.items.get(i);
- if (item.getName() == name)
- {
- return item;
- }
- continue;
- }
- return null;
- }
- /**
- * Selg ett player item
- *
- * @param Itemnavn
- */
- public void sellItem(String name)
- {
- Item item = this.findItem(name);
- if (item != null)
- {
- this.setGold(this.getGold() + item.getValue());
- this.items.remove(item);
- }
- }
- /**
- * Bruk et item
- *
- * @param Item navn man bruker
- */
- public void useItem(String name)
- {
- Item item = this.findItem(name);
- if (item != null)
- {
- System.out.println(this.getName() + " " + item.getAction() + " a " + item.getName().toLowerCase());
- }
- }
- /**
- * Setter gull-verdien til en player
- *
- * @param Antall gullpenger
- */
- public void setGold(int gold) // mutator method
- {
- this.gold = gold;
- }
- public int getGold() // accessor method
- {
- return this.gold;
- }
- /**
- * Printer ut info om Playeren-objektet og dens itemer
- */
- public void print() {
- System.out.print("\f");
- System.out.println("Name: " + this.name);
- System.out.println("Type: " + this.type);
- System.out.println("Health: " + this.health);
- // Only print item info if any items exist
- if (this.items.size() > 0)
- {
- System.out.println();
- System.out.println("Player items (" + this.items.size() + "):");
- for (int i = 0; i < this.items.size(); i++)
- {
- Item item = this.items.get(i);
- item.print();
- }
- }
- }
- /**
- * Metode for å sjekke om en streng er tom, hvis den er det setter den valuen til "Unspecified"
- *
- * @param Input string to check if empty
- * @return Non-empty input string or default value "Unspecified", ellers returnerer den inputen
- */
- public static String checkString(String string)
- {
- if (string.isEmpty())
- {
- return "Unspecified";
- }
- else
- {
- return string;
- }
- }
- /**
- * Den statiske main-metoden
- *
- * @param Args
- */
- public static void main(String[] args) {
- // Create instance of player class
- Player aPlayer = new Player("Terje", "Warrior");
- aPlayer.addItem("Sword", "Magic sword used for battle", "started using his", 25);
- aPlayer.addItem("Shield", "Super shield for super protection", "started using his", 100);
- aPlayer.addItem("Potion", "Potion to increase your health", "drinks his", 10);
- //Print player info
- aPlayer.print();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement