繁体   English   中英

除发生其他事情外,如何使用if语句运行?

[英]How do I use an if statement to run except when something else has happened?

我正在使用Java在盒子周围跑球。 通过使用这段代码,它可以从边缘反弹。

if (y >= borderBottom)
{
  y = border;
  speedOfY = -speedofY;
}

我的球盒上有一个洞。 如果球碰到了洞,我希望它继续穿越间隙。

我希望if语句运行到:

  • 它在x(孔)的两个点之间

  • 并位于y轴的边界底部(孔的侧面)。

我怎样才能做到这一点? 我知道我需要使用Simulation.pauseSimulation(),但是我不知道如何使球在两点之间以及在边界底部时停止,谢谢!

之后,我尝试使用前面的语句,

 if(y >= borderBottom && (x < 275) && (x > 325>)) simulation.pauseSimulation() 

但是我一直在玩,并且模拟忽略了整个底部边框,并且所有对象都在某一时刻闪烁了。

现在是学习逻辑运算符(&&,&,||,|,!,^)的好时机。 特别是在这种情况下:

if (Condition A && Condition B)
{
   //Do something 
}

您还可以使用:

if(Condition A || Condition B)
{
    //Do something
}

首先,您需要知道孔的底部和顶部坐标。 之后,您可以简单地编写:

if ( y >= borderBottom || ( y < holeBottom && y > holeTop ) ) {
    Simulation.pauseSimulation();
    //You can pause simulation or do anything you prefer
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM