我一直在做一个游戏,在游戏中我是一个驯服怪物的召唤师(很像口袋妖怪)。我想做的是有一个背包,里面有 5 个驯服的怪物,我一次可以生成 1 个。有人推荐我使用枚举(我无法再联系那个人了:(),所以我一直在看一些枚举教程和示例,但我不知道这对我有什么帮助。
让我们说枚举看起来像这样:
public enum TamedMonsterStats {
ELF(0,"res/siren_monster_girl_sprite_by_tsarcube-d52y2zu.png",0,100);
DRAGON(0,"res/dragon.png",0,100);
private int haveit;
private String photoname;
private int typeOfDamage;/*
* 0: dark
* 1: light
* 2:
*/
private int HP;
TamedMonsterStats(int haveit,String photoname,int typeOfDamage,int HP){
this.haveit = haveit;
this.photoname = photoname;
this.typeOfDamage = typeOfDamage;
this.HP = HP;
}
public int getHaveIt(){
return haveit;
}
public String getPhotoName(){
return photoname;
}
public int getTypeOfDamage(){
return typeOfDamage;
}
public int getHP(){
return HP;
}
public void setHp(int hp) {
HP = hp;
}
}
这会起作用,但正如 daveychu 指出的那样,这使我不可能拥有同一个生物的 2 个实例,所以我的想法是有一个带有 monster1,monster2,monster3,monster4,monster5 的枚举背包,然后填充它们具有动态的值,但我觉得这样做意味着我根本不需要枚举,这是真的吗?