将球从左向右移动

问题描述 投票:0回答:1

我正在尝试编写一个代码,该代码可以在每个方向上从左向右移动一个正方形,并且它的颜色必须改变。

它必须从左边缘开始,一旦到达右边缘,然后返回到右侧,而不改变 Y 位置。

我做了一个代码,但它不起作用。

color blau      = #2E3BFF; //Color blau
color vermell     = #FF2E2E; //Color vermell
float position_X;   //Variable per la posició X
float position_Y;   // Variable per la posició Y
float size=50;    //Mida del costat del quadrat
boolean move;

void setup () {
 // Preparem el llenç. La mida és de 1000 x 500 píxels
 size (1000, 500);  
 frameRate(60); //Velocitat que s'executa el draw()
 background(0); //Color fons negre
 position_X= 0; //Posició inicial del quadrat al costat esquerre del llenç
 position_Y= 200; //Alçada inicial del quadrat en el llenç 
 move=true;
}

void draw () {  
 background(0); //color del fons
 square (position_X, position_Y, size);
  
 while (move==true){
   if (position_X==width){
   move=false;}
  fill (vermell); //Color del quadrat
   position_X=position_X+5; //Es mou de dreta a esquerra 
}

 while (move==false){
   if (position_X==0){
   move=true;
  }
  fill (blau); //Color del quadrat
   position_X=position_X-10;} //Es mou de dreta a esquerra 
}
java processing
1个回答
0
投票

while 循环必须是 if。绘制函数是循环。现在,您正在将 position_x 一直移动到末尾并返回,然后再重新打印正方形。

if (move==true){
   if (position_X==width){
   move=false;}
  fill (vermell); //Color del quadrat
   position_X=position_X+5; //Es mou de dreta a esquerra 
}

 if (move==false){
   if (position_X==0){
   move=true;
  }
  fill (blau); //Color del quadrat
   position_X=position_X-10;} //Es mou de dreta a esquerra 
}
© www.soinside.com 2019 - 2024. All rights reserved.