p200からの「ベルトコンベアのゲーム」(Atlas6.pde)についてプログラムを見てきましたが、今回はdraw()の動きを追ってみたいと思います。
まず、背景の設定。そして、経過時間の更新。draw()が実行されるたびに、スタートしてからの経過時間がmsec単位で変数timeに入力されます。
そして、drawGame(),drawResult()が実行されます。
なので、drawGame()を見てみましょう。
まず、ゲーム終了判定を最初にしています。isFinishedはresetStage()でfalseに初期設定されます。
if(!isFinished){}は終っていないときに実行されますが、isFinishedをtrueにするのがこのif文のようです。
timeがLIMIT_TIMEを越えていれば、制限時間まで生き残ったということでゲームクリア。isFinishがtrueになります。
グリッドの真ん中1ライン埋まったらゲームオーバー。この場合もisFinishがtrueになります。
「グリッドの真ん中1ライン埋まったら」の判定は、grid[][]とかunit.isStopの理解が必要なので、次回はそこを見てみます。
《インデックス》
◆◆◆参考文献「遊んで作るスマホゲームプログラミング for Android」
◆◆◆公文生ならゲームで遊ぶな!ゲームを作れ!
◆◆◆公文式小林教室◆山形県東根市◆◆◆
まず、背景の設定。そして、経過時間の更新。draw()が実行されるたびに、スタートしてからの経過時間がmsec単位で変数timeに入力されます。
そして、drawGame(),drawResult()が実行されます。
なので、drawGame()を見てみましょう。
まず、ゲーム終了判定を最初にしています。isFinishedはresetStage()でfalseに初期設定されます。
if(!isFinished){}は終っていないときに実行されますが、isFinishedをtrueにするのがこのif文のようです。
timeがLIMIT_TIMEを越えていれば、制限時間まで生き残ったということでゲームクリア。isFinishがtrueになります。
グリッドの真ん中1ライン埋まったらゲームオーバー。この場合もisFinishがtrueになります。
「グリッドの真ん中1ライン埋まったら」の判定は、grid[][]とかunit.isStopの理解が必要なので、次回はそこを見てみます。
《インデックス》
◆◆◆参考文献「遊んで作るスマホゲームプログラミング for Android」
◆◆◆公文生ならゲームで遊ぶな!ゲームを作れ!
◆◆◆公文式小林教室◆山形県東根市◆◆◆
コメント