0
処理中です。 私はボールがボーダーに当たったときにバウンスし、その色をランダムに変えます。今度は3回目のバウンスごとに色を変えるためにこのボールが必要です。それをどうやって行うのか分かりません。3回ごとのバウンスで色を変更してください
float xPos;// x-position
float vx;// speed in x-direction
float yPos;// y-position
float vy;// speed in y-direction
float r;
float g;
float b;
void setup()
{
size(400, 300);
fill(255, 177, 8);
textSize(48);
// Initialise xPos to center of sketch
xPos = width/2;
// Set speed in x-direction to -2 (moving left)
vx = -2;
yPos = height/2;
vy = -1;
}
void draw()
{
r = random(255);
b = random(255);
g = random(255);
background(64);
yPos = yPos + vy;
// Change x-position on each redraw
xPos = xPos + vx;
ellipse(xPos, yPos, 50, 50);
if (xPos <= 0)
{
vx = 2;
fill(r, g, b);
} else if (xPos >= 400)
{
vx = -2;
fill(r, g, b);
}
if (yPos <= 0)
{
vy = 1;
fill(r, g, b);
} else if (yPos >= 300)
{
vy = -1;
fill(r, g, b);
}
}
へようこそ:
は、ここで強調表示の変更やコメントと修正
draw
方法です。 [help]にアクセスして[ask]を読んでください。コードを見ずに、どうすれば答えることができますか? –まあ、カウンターを 'int counter = 0'やそれがバウンスするたびに増加するもの(' counter ++; ')のように維持します。 'counter == 3 'のように' 3 'に達すると、色を変えるので、' if'文を使用してください。その後、カウンタ: 'counter = 0'をリセットします。 **あなたの**コード**の関連部分を**私たちに提供する必要があることをさらに助けるため。 – Zabuza
これは、モジュラス演算子(%)を使用して実現できるようです。例:https://stackoverflow.com/questions/9008522/insert-tr-after-every-third-loop –