VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2007/07/21(Sat) 16:08
投稿者tea
Eメール
URL
タイトルRe^6: 時間待機中にカウントがあった場合のコードの記述を教えてください。

> For文がおかしいと解っているのであれば、そこを変更して
> フローチャートを書き直してください。
> もし、フローチャートを書けないというのであれば、
> 希望する処理を順番に箇条書きにして投稿してみてください。

ひまびとさん、回答本当にありがとうございます。

最初に投稿したコードの順番を箇条書きで書きます。
1.もし、ゲームタイムが00:00秒なら
2.ブザー音
3.5秒待機
4.繰り返し処理(For チーム0&1)
5.繰り返し処理(For プレイヤー1から5名)
6.ファウルカウントの処理(select)
7.チーム0のプレイヤー1のファウルカウントが0ならばプレイヤーのFor文を抜ける
8.チーム0のプレイヤー1のファウルカウントが0ならばチームののFor文を抜ける
9.チーム0のプレイヤー1のファウルカウントが1ならばゲームタイム表示
10.チーム0のプレイヤー1のファウルカウントが1ならばゲームタイムに1秒加えて00:01とする。
10.チーム0のプレイヤー1のファウルカウントが1ならばゲームスタートボタンを非表示にする。
11.チーム0のプレイヤー1のファウルカウントが1ならばゲーム再開ボタンを表示する。
12.select文の終了。
13.繰り返し処理。
14.繰り返し処理。

とここまで書いて以下のようにしたらいいのではないかと思い、実行してみました。
If vsGameTime.Value = 0 Then
            BeepBuzzer2
           '---ブザービーターに備えて5秒間遅らせる。----
            Delay 5000
            
            For l = 0 To 1
            For k = 1 To 5
            
                Select Case Game.Team(l).Player(k).FoulCount
                
                Case 0
                    Exit For
                    Exit For
                    
                Case 1
                    vsGameTime.Enabled = True
                    vsGameTime.Value = 1
                    cmdGameStart.Enabled = False
                    cmdGamePause.Enabled = True
                    Exit For←ここを追加。
                    Exit For←ここを追加。
                End Select
            
            Next
            Next
            
            '---------------------------------------------
            tmrCountDown.Enabled = False
            readyNextQuarter
End if

結果は失敗でした。というか何も変わりませんでした・・・。
プレイヤーは各チームに5名で、どのプレイヤーになるかはわからないですが
その中の1名がファウルカウントを取ったらの処理です。
前回の投稿でFor文を見直せとの事でしたが、他の選択肢が思い浮かびません。
教えてください。
よろしくお願いします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -