0

我正在制作一个类似于 pong 的小型基础游戏。我想要做的是当球撞到墙上时游戏结束并显示错误消息。

我所做的是使用如下的while循环:

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

实际上所做的是不断重复错误消息,我必须退出程序。当它撞到任何一面墙的条件为真时,我怎样才能让它只显示一次消息?

4

2 回答 2

0

break满足条件并显示错误消息后使用。

于 2017-01-31T11:14:10.413 回答
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
于 2017-04-13T19:25:34.967 回答