【发布时间】:2018-05-26 11:41:18
【问题描述】:
我有一个if 语句,用于检查碰撞:
if (BallY == y && BallX == x) // check for collision
{
x = 80; // reset x to initial
y = 240; // reset y to initial
z = 100; //reset z to initial
}
我在这个if 语句中有一个for 循环:
if (BallY == y && BallX == x) // check for collision
{
x = 80; // reset x to initial
y = 240; // reset y to initial
z = 100; //reset z to initial
for (int i=50; i<width; i+=80)
{
fill(250,0,0);
ellipse(i, 50, 70, 70);
}
}
所以重点是一旦发生碰撞,就在屏幕顶部画一条圆线。但是,此代码仅将它们绘制一秒钟,然后它们就消失了。考虑到发生碰撞,我如何让他们留下来?
【问题讨论】:
-
如果某些东西被重置,那么你在其他地方有代码正在重绘你的画布。请添加minimal reproducible example 并说明您使用什么库来绘制
-
这是在事件驱动的 GUI 中吗?如果是这样,那么解决方案就是根本不使用 for 循环。
-
另外... 可能想与该用户合作。 stackoverflow.com/questions/50521106/…
-
@HovercraftFullOfEels 那么考虑到 if 语句,我将如何生成出现在顶部的圆圈?我不想一个一个画圆圈,所以我认为循环是最好的方法。
标签: java for-loop if-statement processing