Я работаю над своей первой java-программой (так что эти вопросы относительно просты). Я разрабатываю какую-то базовую ролевую игру, я работаю над атрибутами персонажа.Java, извлекающий данные из перечислений
Мой вопрос являются:
- Как я могу получить данные из перечислений, которые я создал (проблема в конструктор Character мне нужно получить значения из ClassStats в зависимости от выбранного класса символов.)?
- Могу ли я сохранить начальные значения атрибутов для каждого класса символов лучше?
enum ClassStats {
Fighter(15,14,12,10,9,10), Rogue(12,12,16,14,10,10), Mage(10,10,14,16,14,10), Cleric(12,14,12,13,16,14);
private int strength, constitution, dexterity, intelligence, wisdom, charisma;
ClassStats(int str, int con, int dex, int intel, int wis, int cha){
strength = str;
constitution = con;
dexterity = dex;
intelligence = intel;
wisdom = wis;
charisma = cha;
}
int getStrength(){
return strength;
}
int getConstitution(){
return constitution;
}
int getDexterity(){
return dexterity;
}
int getIntelligence(){
return getIntelligence();
}
int getWisdom(){
return wisdom;
}
int getCharisma(){
return charisma;
}
}
public class Character {
private String Name;
private String Class;
private int Level;
private long XP;
private int HP;
private int currentHp;
/*private int BAB; /*Base attack bonus*/
private int Strength;
private int Constitution;
private int Dexterity;
private int Intelligence;
private int Wisdom;
private int Charisma;
Character(String name, String chracterClass){
Name = name;
Class = chracterClass;
Level = 1;
XP = 0;
HP = CharacterUtil.setHP(chracterClass);
currentHp = HP;
ClassStats cs = null;
Strength = cs.getStrength();
System.out.println("Strength: " + Strength);
Constitution = cs.getConstitution();
Dexterity = cs.getDexterity();
Intelligence = cs.getIntelligence();
Wisdom = cs.getWisdom();
Charisma = cs.getCharisma();
}
}
Пожалуйста, соблюдайте соглашения о кодировании Java: имена типов (класс, интерфейс, перечисление) должны начинаться с заглавной буквы (например, «BigPicture»). Имена методов, переменных и полей должны начинаться с буквы нижнего регистра (например, 'bigPicture'), а константы должны быть все-шапки (например,' BIG_PICTURE'). Кроме того, настоятельно рекомендуется избегать присвоения имен собственным классам с теми же именами, что и классы в java.lang (например, 'Character'). – RealSkeptic