今、テスト期間中、というか今日はテスト一日目です。 しかし、どうにも気になって起動しちゃったわけです...。あぁ〜あ。 なんでこんなことを考え始めたかというと、次のような理由からです。
一、ソースが汚くなったので、全書き直しをしましょう。
ゲーム管理クラス
現在考えがまとまっているのでこれくらいです。
...ていうかねー、最近思うんだけど、「オブジェクト指向をなぜ使うのか?」っていう問題に大して
だから、「汎用性の高いクラス構成」を作ることが必要になってきます。
というわけで、みんなもがしがし書きなおしていきましょう!!
そういえば、ソース公開されたソースを見ると、僕の経験ではたいてい「わけわかんねぇ!!」ものです(^^;
話ががんがんずれていきましたので、そろそろ戻しておきます。
ゲームプログラマにとって、一版無駄な時間は「ゲームとは関係ない部分に悩む時間」です。 |
※テスト期間 ぽくむらは学生であり、当然「テスト」がある。しかも欠点(赤点)が55点以下のため、 勉強をしないわけにもいかない。よって、勉強嫌いのぽくむらには地獄だといううわさだ。 (勉強もろくにせずにこんなことばかりやっているのだが...)
※クラス
※オブジェクト
※ソース
※サーフェース
※オブジェクト指向
※SANDMAN
※TList
※FD
※SDK
※コードエクスプローラ
※アップデートパッチ
※アドレス違反
|
さて、いろいろ考えてみたら、というか開発中に問題が発生しました。
何かというと、ゲームモード(シーン)切り替え時のデータのやり取りができなーーーい!!
ということです(グローバル変数を作っちまえばそれで終わるんですが、それじゃなんかあまりにも手抜きでしょ?)。
ちゅうわけで、この問題をうまく解決できるようにせねばなるまい。 まず、思いつくのが、データのポインタをゲーム管理クラスに渡すってことですかね。 んで、次のシーンに移るときにそのデータを新しいシーンに渡す...と。 当たり前ですが、どんな型のデータでも渡せるようにしなければならないので、 ポインタとそのサイズも指定しておいたほうがいいですね。 っておい、それじゃだめだよ、やっぱ駄目ダメ。 第一、どこにデータをおいておくの?どうやって次のシーンに渡すのよ!? ということで、他の手を考えねばなりませんね。 次に考えたのが「シーンを切り替えるな!!」って方法。 例えば、そーねぇ。キャラセレクトのシーンから、戦闘シーンへ移るときを考えてみますか。 ここで問題になるのは、選んだキャラクタのデータをどうやって戦闘シーンに渡すか、ってことですよね。 だって、選んだキャラクタがわからなきゃどれを戦闘シーンに出せばいいわかからないもんね。 だから、シーン切り替えでデータやり取りができないんなら、シーンを切り替えなければいいわけですよ。 具体的には「キャラセレクトオブジェクト」みたいなのを作っておいて、そいつが一番前に でしゃばり出てくるようにしておきます。それで、そのオブジェクトは自分のやりたいことをやって やったあとにはデータを渡すオブジェクトを探してデータを渡して、戦闘開始、みたいな。 説明がよくわからん上に、あんまりいい方法じゃないですな。 なんかいい方法があると思うんだけど、なかなか思いつかないなあ。
|
※グローバル変数 どのコードからも参照できる変数。 変数名が重なったりすることがよくあるので、 一般にあまり使うべきではないといわれている。 優れたプログラマほどこれを嫌う傾向がある。 結局は時と状況による。
※ポインタ
|