私はゲームに取り組んでおり、そのゲームでは、モンスター (ポケモンによく似ています) を飼い慣らした召喚士です。私がやりたいことは、一度に 1 匹ずつスポーンできる 5 匹の飼いならされたモンスターのバックパックを用意することです。誰かが私に列挙型を使用するように勧めました (もうその人に連絡することはできません :() ので、いくつかの列挙型のチュートリアルと例を見てきましたが、これがどのように役立つかわかりません。
列挙型が次のようになるとしましょう:
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つのインスタンスを持つことができなくなります。値を動的に使用しますが、これを行うと、列挙型をまったく必要としないことを意味するように感じますが、これは本当ですか?