Player.java
package re.forestier.edu.rpg;
import java.util.ArrayList;
import java.util.HashMap;
public class Player {
private String playerName;
private String Avatar_name;
private String AvatarClass;
private Integer money;
private Float __real_money__;
private int level;
private int healthpoints;
private int currenthealthpoints;
private int xp;
public HashMap<String, Integer> abilities; //Ability = stat
public ArrayList<String> inventory;
public Player(String playerName, String avatar_name, String avatarClass, int money, ArrayList<String> inventory) {
if (!avatarClass.equals("ARCHER") && !avatarClass.equals("ADVENTURER") && !avatarClass.equals("DWARF"))
{
return;
}
this.playerName = playerName;
Avatar_name = avatar_name;
AvatarClass = avatarClass;
this.money = Integer.valueOf(money);
this.inventory = inventory;
this.abilities = UpdatePlayer.abilitiesPerTypeAndLevel().get(AvatarClass).get(1);
}
public String getPlayerName()
{
return this.playerName;
}
public String getAvatarName()
{
return this.Avatar_name;
}
public Integer getMoney()
{
return this.money;
}
public int getLevel()
{
return this.level;
}
public int getHealthPoints()
{
return this.healthpoints;
}
public void setHealthPoints(int hp)
{
this.healthpoints = hp;
}
public int getCurrentHealthPoints()
{
return this.currenthealthpoints;
}
public void setCurrentHealthPoints(int hp)
{
this.currenthealthpoints = hp;
}
public int getXp()
{
return this.xp;
}
public void setXp(int xp)
{
this.xp = xp;
}
public String getAvatarClass () {
return AvatarClass;
}
public void removeMoney(int amount) throws IllegalArgumentException {
if (money - amount < 0) {
throw new IllegalArgumentException("Player can't have a negative money!");
}
money = Integer.parseInt(money.toString()) - amount;
}
public void addMoney(int amount) {
money = money + amount;
}
public int retrieveLevel() {
HashMap<Integer, Integer> levels = new HashMap<>();
levels.put(2,10);
levels.put(3,27);
levels.put(4,57);
levels.put(5,111);
//TODO : ajouter les prochains niveaux
if (xp < levels.get(2)) {
return 1;
}
else if (xp < levels.get(3)) {return 2;
}
if (xp < levels.get(4)) {
return 3;
}
if (xp < levels.get(5)) return 4;
return 5;
}
}