第21章~第25章

みるくあいらんどっ! > ドキュメント > C# > C#で龍神録を作る


第21章: 自機に当たり判定と無敵処理を付けてみよう

移植版の留意点

  • 敵弾が自キャラクタに当たる処理の本体は Bulletクラスで実装。
  • ShotGroup→Shot→BulletGroup→Bulletクラスと順番に呼び出す。原作では一気に returnするため、bool の戻り値を使用している。
  • BulletInfoクラスはコンストラクタを使用する。
  • BulletInfoGroupクラスのコンストラクタで BulletInfo型インスタンスを一気に作成する。
  • Chクラスのフィールドを操作するため、deathメソッドを用意した。
  • CShotGroup, CShotクラスは out_mainメソッドから cshot_and_enemyメソッドに改名(原作どおり)。
  • EffectGroupクラスのメイン処理を、Programクラスに移動した。
  • Programクラスに effect_mainを移動、out_mainメソッドを追加した。

第22章: ボムを撃ってみよう

原作ページのリンク

移植版の留意点

  • やはり、あるクラスから全然関係の無いように見える他のクラスのフィールドを変えるのは怖いので、Bom, BrightSet, Dn, Chクラスそれぞれに各種セットメソッドを追加している。
  • 原作サイトの説明書きに Effectクラスの spd, mvangフィールド追加の記述漏れ(あるいは僕の記述忘れ)。また、brtは int→doubleに変更されていた。brtの型変換は、GraphManagerクラスに少し影響します。
  • Effectクラスの angleフィールドを angに改名した(僕の打鍵ミスと思われる)。
  • CShotクラスに記述していた enemy_death_judgeメソッドを Enemyクラスに移動して、引数を削除。Bomクラスからも必要となるため。
  • Enemyクラスの decrease_hpメソッドの引数を int型に変更。Bomクラスからも必要となるため。

第23章: 喰らいボムを作ってみよう

原作ページのリンク

移植版の留意点

  • Chクラスの setMutekiメソッドで flagを初期化する。喰らいボム状態を解除する。これは原作サイトの解説漏れ(原作版のソースコードには記述されている)。
  • Bulletクラスから呼び出していた Chクラスの deathメソッドを setCryBomStateメソッドに改名。その内容は即死から喰らいボム状態へ修正した(原作どおり)。SE用フラグへの書き込みを setCryBomStateメソッドに移動した。

第24章: ボスを作ってみよう

原作ページのリンク

移植版の留意点

  • DXライブラリの DrawFormatStringメソッドは DX.DrawStringメソッドで代用する。
  • img_dot_ririaフィールドの宣言部の解説漏れ。原作版ソースコードを確認して配列数 8で作成。
  • BossShotクラスの parent_enemyフィールドは何に使うのだろうか、不安。
  • boss_shot_mainメソッドは Bossクラスに実装した。
  • BulletGroupクラスは、Bulletを敵とボスで同じクラスを利用するために、bulletsフィールドに異なる大きさの配列インスタンスが必要なので、コンストラクタを改修。
  • Shotクラスは、BulletGroupクラスの改修に対応。
  • GraphManagerクラスのあちこちで dn.x, dn.yの追記漏れがあった不具合を修正。
  • GVクラスにメソッドを用意し、Programクラスでは stage_countをメソッドでインクリメントするようにした。

第25章: ボスに当たり判定を付けてみよう

原作ページのリンク

移植版の留意点

  • enter_crybom_effectメソッドは、BomクラスからChクラスに移動した。
  • out_judgeメソッドは、MyMathクラスに追加した。
  • Enemyクラスのdecrease_hpメソッドは、今回追加されたhit_enemyメソッドに統合した。
  • KeyManagerクラスのCheckStatePadメソッドをChckStatePadと記述していたことが今更分かったため修正。
  • 原作では enemyshot_and_chメソッドで敵弾とボス弾の両方を処理していたので、BossShotクラスに bossshot_and_chメソッドを実装して、処理内容を分割した。
最終更新: 2013/03/20 , 公開: 2013/03/19
▲top