シューティングゲームのショットパターンを実装してみました。あまりシューティングをやらないのでパターンがどのくらいあるかわからないのでググりました。すべて簡単に実装できました。シューティングに限らず様々なゲームで使えると思うので参考にしてもらえると嬉しいです。これで花火のゲームとか作れそうだな・・・
まずはスプライトオブジェクトを用意し、「ポイントを編集」で5つの発射ポイント(Fire)を作成します。ビヘイビアに「FireBullet」を設定します。もう1つ弾のスプライトオブジェクトを用意しビヘイビアに標準の「画面外で破棄」を設定します。
プログラムは下記の通りです。Numキーとショットパターンを一致させてます。
1、ノーマルショット
まず基本のFireBulletで球を発射します。発射角度が戦闘機の向きによって変わります。私の使用したスプライトは上向きのスプライトなので、「スプライトの角度+270度」としています。
2、ツインショット
発射元座標をFire1ポイントから7ピクセルずらして発射させます。
3、トリプルショット
発射元座標をFire1、2、5ポイントから発射。
4、ファイブショット
発射元座標をFire1、2、3、4、5ポイントから発射。
5、3Wayショット
発射角度を30度ずらして発射。
6、ばら撒きショット
発射角度を250から290の範囲でランダムに加算させます。
RandomInRange(250,290)
「数学的ツール」の「指定範囲内でランダムな整数」で設定できます。
7、サークルショット
36回繰り返しさせて、用意した変数(hoge)に10度づつ加算して発射させます。
8、スパイラルショット
これは、「TimeDelta()*250」がポイントになります。TimeDeltaについては公式wikiを参照してください。250の値はFireBulletのCooldown設定値によって調整が必要になります。
紹介した内容を使ってシューティングゲームを作成したのでぜひ遊んでみてください。
コメント