2017-01-31 7 views
0

小さな基本でポンと似たゲームを作っています。私がしたいのは、ボールが壁に当ってゲームが終了し、エラーメッセージが表示されたときです。どのようなことが実際にはエラーメッセージを繰り返し続けると私はプログラムを終了する必要がされてループ内のエラーメッセージ - ポンゲーム

While (hits right wall) or (hits left wall) or (hits top wall) or (hits bottom wall) = "True" 
    GraphicsWindow.ShowMessage("you lost", "game over") 
Endwhile 

:私は何

は、下のようなwhileループを使用しました。いずれかの壁に当たった条件が真であるときに、メッセージを一度表示するにはどうすればよいですか?

+1

は[MCVE]作成の詳細については、こちらをご覧ください。 –

答えて

0

条件が満たされてエラーメッセージが表示されたら、breakを使用してください。

+0

SmallBasicプログラムをどうやって中断しますか? – dstar19

+0

https://social.msdn.microsoft.com/Forums/en-US/60cd4f4a-10d7-42a3-af35-206502abbc93/break-in-for-loop?forum=smallbasic – kawadhiya21

+0

私はそれを試みました。私がやった========== >>>> ループ(条件)= "true" を ENDWHILE ShowMessage しかし、その作業をしていないが。それでも同じことが起こる – dstar19

0

これはフラグの仕事です!

ループの前に、フラグをtrueに設定します。ループはそのフラグに基づいています。次に、必要な各終了条件に対して、そのロジックを処理する別々のifステートメントがあります。その条件が満たされると、フラグをfalseに設定します。

これは、コードを単純にし、ロジックを従いやすくします。

例:

gameOn = "true" 

While gameOn = "true" 
    'Code to control your game 

    If (hitsLeftWall) Then 
    gameOn = "false" 
    ElseIf (hitsRightWall) then 
    gameOn = "false" 
    ElseIf (hitsLTopWall) then 
    gameOn = "false" 
    ElseIf (hitsBottomWall) then 
    gameOn = "false" 
    EndIf 
EndWhile