WindowsXPのサービスパック2をインストールしました。
大幅にセキュリティアップされるってことだけど、裏を返せばこれまでが穴だらけだったということでしょうか。
それより、実際のところまだまだ穴だらけなんじゃないでしょうか。
どうでもいいけどインストール終了後「再起動しますか?」のメッセージが出たので「はい」にしたら再起動せずに、また同じメッセージが出てきて、今度こそ確実に「再起動する」にしても再起動せず、タスクバーの隅っこで「まだ再起動されていません」という実に歯痒いメッセージが。
3度目でやっと再起動に成功したと思いきや、「設定を保存しています」でフリーズ。
もしかしたらかえって悪くなったんじゃなかろうか。
「Bomber丸World」のシステムについて考えてみました。
例えば、関数は終了しなければならないのです。クラスは破棄されなければならないのです。
ゲーム起動→ゲームがタイトルを呼び出す→タイトルがマップ画面を呼び出す→マップがイベントを呼び出す→なんだかんだあってゲームオーバーになり再びタイトルが呼び出される・・・・
という構成にしていれば、結局のところ間接的にタイトルがタイトルを呼び出すことになり、長期的に見ればかなりまずいことになっているわけです。
かといって、
ゲーム起動→ゲームがタイトルを呼び出す→タイトルがマップ画面を呼び出すようゲームに通知する→ゲームがマップ画面を呼び出す・・・・
なんてことをすると全てをゲームの中枢部分が管理することになり、シーン同士の直接のつながりがなくなってしまいます。
この場合、
…タイトルがマップ画面を呼び出す→タイトルは不要なので消えてもらう→マップがイベントを呼び出す→イベントが終わったらマップに戻るのでマップは消さない→なんだかんだでタイトルへ→マップその他はもう用済みなので消えてもらう…
これを実現するためには、次のシーンの初期化が済んだら前のシーンを消すという処理が必要なわけですが、これは各シーンをクラスという形で用意して、次のシーンの初期化処理で前のシーンをdeleteするという方法で。
あるいは、
…タイトルを中断してマップ画面を呼び出す→マップがイベントを呼び出す→なんだかんだでゲームオーバーになったらタイトル意外は全部消す→タイトルがまた動き出す…
というのは…よくわからくなってきた…
「ふにゃふにゃ」の反射属性を持つラインのことも考えていたのですが、どう計算してみても複雑な式が出てきてしまい、とても実装する気にはなれません。