インベーダーぽくなのでシンプルに。
デバック時の動作と違い、実行ファイルで開くとバグってる(・・;)
過去のトピでおんなじ症状を探してみると、
メモリ破壊されてるっぽいΣ( ̄ロ ̄lll)ガーン
とりあえず出来たんだけど・・・。
Re: とりあえず出来たんだけど・・・。
今までのコントロールクラスで一斉に敵を動かす処理ではなく、
敵に移動の処理を持たせて一体ずつ命令していく(呼び出す?)感じですかね・・・。(´・ω・`)
各々ばらばらな行動させたいときとかはこういう設計は大事ですね(><)
敵に移動の処理を持たせて一体ずつ命令していく(呼び出す?)感じですかね・・・。(´・ω・`)
各々ばらばらな行動させたいときとかはこういう設計は大事ですね(><)
Re: とりあえず出来たんだけど・・・。
インベーダーを一括管理するクラスは必要ですよ。
ただ、現状のControlクラスは、インベーダーが、縦に何列、横に何段、n段目のインベーダーの種類はこれこれ、と
決め付けているところが問題点の一つなのです。
Controlクラスの外で生成したインベーダーをControlクラスに登録して
一体ずつインベーダーに移動を指示していくというのはそうなのですが
大切なのは、指示を出すために必要な、インベーダーがどこにいるのか、とか、インベーダーが画面の端に達したか、
といったこと(Controlクラスにとっての外部要因)をインベーダーから教えてもらって指示の内容を決めていくことです。
そういう作り方にすると、インベーダーを四角く配置するのも丸く配置するのもランダムに配置するのも、
最初にインベーダーを生成する段階で自由にできちゃいます。
ただ、現状のControlクラスは、インベーダーが、縦に何列、横に何段、n段目のインベーダーの種類はこれこれ、と
決め付けているところが問題点の一つなのです。
Controlクラスの外で生成したインベーダーをControlクラスに登録して
一体ずつインベーダーに移動を指示していくというのはそうなのですが
大切なのは、指示を出すために必要な、インベーダーがどこにいるのか、とか、インベーダーが画面の端に達したか、
といったこと(Controlクラスにとっての外部要因)をインベーダーから教えてもらって指示の内容を決めていくことです。
そういう作り方にすると、インベーダーを四角く配置するのも丸く配置するのもランダムに配置するのも、
最初にインベーダーを生成する段階で自由にできちゃいます。
最後に編集したユーザー ISLe on 2016年9月28日(水) 17:18 [ 編集 2 回目 ]
Re: とりあえず出来たんだけど・・・。
応用がきくという設計を心がけて、
敵を管理するクラスを作って、
敵の行動、隊列のパターンをそれぞれ作り、
Controlクラス(後々Stageクラス)で呼び出すという感じで書き直します(><)
敵を管理するクラスを作って、
敵の行動、隊列のパターンをそれぞれ作り、
Controlクラス(後々Stageクラス)で呼び出すという感じで書き直します(><)