Closed seigot closed 2 years ago
https://github.com/seigot/tetris/blob/master/game_manager/game_manager.py
elif (self.game_time >= 0 and elapsed_time > self.game_time - 0.5) or (current_block_index == BlockNumMax):
サンプルコードで180個落ちた際に以下のようになることがある。 結構時間にばらつきがあるので 179.8~180secあたりになるのをどう扱うのがよいか。
YOUR_RESULT
score:-2109,line:0,gameover:8,time[s]:179.847
180secをしきい値にすると、elapsed_timeのばらつきにより以下の問題が再発してしまう懸念
制限時間180secの間に落ちるブロックの落下回数が、180回 or 181回になってしまうことがある問題の修正 ただし1frameに1回ブロックが落ちてくる前提 7925e1ea0754ccd8535a408a11f0e226a23facab https://github.com/seigot/tetris/commit/7925e1ea0754ccd8535a408a11f0e226a23facab
pull request https://github.com/seigot/tetris/pull/61
179手目に時間が掛かると180手目が落ちない (179手目の時点で0.5sec遅れになっていたら180個目が落ちない)
理想 179手目を処理した時点で180sec以内であれば最後の手を置いてから終了させたい。
現状 コールバック処理を終えた時点で179.5secを超えていたら終了する(最後の処理が179.5未満に始まっていたらOK) 179手目を処理した時点で0.5sec遅れになっていたら180個目が落ちなくなる(少し厳し目設定になっていそう)
対策案 案1.) 現状のまま 案2.) 時間を調整する 案3.) 何かしら代案を検討する
以下を確認する必要がある
影響範囲