洗練された 2D エンジンと独自のエンティティ エンジンを使用してゲームを作成し、2D サイド スクローラーの詳細を作成しています。
私のコードが現在機能する方法は次のとおりです。
エンティティ クラスは、エンティティ情報を保持します。アニメーション、音、動きなどの能力を持つことができます。すべての能力は、能力と呼ばれる抽象クラスのサブクラスです。
特定の能力のインスタンスを取得したい Entity クラスにメソッドがあり、そのメソッドを使用できるようにします。
public Ability getAbility(String id) {
for(Ability abil : ablitites) {
if(abil.getId().equalsIgnoreCase(id)) {
return abil;
}
}
return null;
}
ただし、これはスーパークラス、Ability の特定のインスタンスのみを返します。別のパッケージまたはクラスからサブクラスのインスタンスを取得したいと考えています。
これを行うコードのサンプルをいただければ幸いです。ありがとう