投稿日 | : 2007/07/27(Fri) 16:27 |
投稿者 | : tea |
Eメール | : |
URL | : |
タイトル | : Re^10: 前回の投稿では解決していませんでした・・・。 |
ご指示いただいたフローチャートを下手なりに書いて下記コードを
記述してみました。
結果はFor文( l = 1 to 6 で1クォーターから再延長戦までで計6
)を入れると、ゲーム終了後にファウルを1つ追加しても自動的に次
のクォーターへ進んでしまいます。
ただFor文をはずして.QuarterFoulCount(l)に1クォーターの(1)を
入れて実行して第1クォーターのみ試してみると第1クォーター終了
後の5秒待機期間中にファウルカウントがあった場合は正常に動作し
ました。
For文をはずして第1クォーターのみですが正常動作が可能になった事
は大変うれしいのですが、第1クォーターから再延長戦までのコードを
どう記述するか?で困っています。
下記コードはFor文の前に'を入れています。
どうか教えてください。
よろしくお願いします。
'クォーター終了後の5秒間待機中の処理
Private Function AfterQuarter()
Dim i As Integer
Dim h As Integer
Dim l As Integer
'' クオーターの終了。
'' 次のクオーターへ表示を更新して、停止。
If vsGameTime.Value = 0 Then
'1stクォーターからダブルオーバータイム(2OT)まで
'For l = 1 To 6
'Aチームの1クォーターのチーム全員のファウル数を変数に入れる。
i = Game.Team(0).QuarterFoulCount(1)
'Bチームの1クォーターのチーム全員のファウル数を変数に入れる。
h = Game.Team(1).QuarterFoulCount(1)
BeepBuzzer2
'---ブザービーターに備えて5秒間遅らせる。----
Delay 5000
'5秒待機後のチーム全員のファウル数を比較して同じ場合は次のクォーターへ
If i = Game.Team(0).QuarterFoulCount(1) Then
If h = Game.Team(1).QuarterFoulCount(1) Then
'次のクォーターへ
readyNextQuarter
'ループを抜ける。
'Exit For
End If
End If
'5秒待機後のチーム全員のファウル数を比較してファウル数が
'合わない場合は1秒戻して再開。
If i <> Game.Team(0).QuarterFoulCount(1) Then
If h = Game.Team(1).QuarterFoulCount(1) Then
vsGameTime.Value = 1
End If
ElseIf h <> Game.Team(1).QuarterFoulCount(1) Then
If i = Game.Team(0).QuarterFoulCount(1) Then
vsGameTime.Value = 1
End If
ElseIf h <> Game.Team(1).QuarterFoulCount(1) Then
If i <> Game.Team(0).QuarterFoulCount(1) Then
vsGameTime.Value = 1
End If
End If
'Next l
'一時停止。
pauseGame
End if