現在、東方のようなトップダウンのシューティングゲームを作成しています。ゲームの最も重要な要素は、弾丸が生成されてプレーヤーに発砲されるさまざまなパターンと方法がたくさんあることです。このビデオを参照してください:http : //www.youtube.com/watch?v=4Nb5Ohbt1Sg # start=0 :60;終了= 9:53 ;
現時点では、移動と撮影の一連のステップがある「パターン」というクラスを使用しています。ただし、この方法は攻撃ごとに新しいパターンを作成する必要があり、おそらく特定の動作を実装する新しいBulletクラスを作成する必要があるため、非常に手間がかかると感じています。
この質問には、特定のパターンで弾丸を簡単に作成および保存するためにBulletMLを調べる必要があることを示すコメントが寄せられました。見た目はまともですが、他にどのような解決策がありますか。
更新
私の現在のデザインは次のとおりです:
実装されたパターンの例:
私のGigasPatternは、最初にアリスを画面上の特定のポイント(X、Y)に移動するテレポートを実行します。これが完了すると、パターンはMoverを使用してスプライトを移動し始めます(テレポーティングには個別のエフェクトとアニメーションがあります)。これらは非常に単純なので、実際には問題ありません。
シューターはまた、さまざまな攻撃を作成します。これも、私が投稿した質問のように、シューターがさまざまなパターンの弾丸を作成するために使用できるクラスです。ムーバーが目的地に到達すると、ムーバーとシューターの両方が停止し、非アクティブな状態に戻ります。パターンが完了し、AIによって削除され、新しいパターンが選択されます。