如何创建游戏,您必须避免鼠标随机移动的圆圈

时间:2019-04-06 23:25:30

标签: processing

我不知道如何使圆圈移动。我也不知道当鼠标触摸圆圈时如何结束游戏。

我已经在屏幕上绘制了圆圈

for(int i = 0; i < 30; i++){
   int x = (int)random(100);
   int y = (int)random(100);
   ellipse(x,y,25,25);
}

它显示一个带有圆圈的屏幕。我需要它们移动并在鼠标触摸它们时结束游戏。

1 个答案:

答案 0 :(得分:-1)

为了解决此问题,您需要将x和y的值存储在两个数组中。

接下来,您需要使用for循环初始化数组(如您的代码)。 为了使圆连续运动,我们在每个循环中添加了一个小步骤,在另一个循环中添加了一个步骤。

然后您可以计算鼠标与每个圆之间的距离。

int[] x;//creation of arrays
int[] y;
int size = 30;
int nbBalls = 20;

void setup() {
  size(400, 400); 
  x = new int [nbBalls];
  y = new int [nbBalls];
  for(int i=0;i<nbBalls;i++){//initialisation
    x[i] = (int)random(400);
    y[i] = (int)random(400);
  }
}

void draw() 
{
  background(51);
  for(int i = 0; i < nbBalls; i ++)//draw
      ellipse(x[i],y[i],size,size);

  for(int i = 0; i < nbBalls; i ++) {//move
      x[i] = x[i] + (int)random(5)-2;
      y[i] = y[i] + (int)random(5)-2;
  }

  for(int i = 0; i < nbBalls; i ++)//collision test
    if(dist(mouseX,mouseY,x[i],y[i])<size)
      noLoop();
}