円をキャッチすればスコアが10点ずつ加算されるようなプログラミングを作ったはずなのですが、加算されません。正しいプログラムを教えてください
final float GRAVITY=9.8; float speed=0; float y; float x; int bingo=0; float goodx=0; float goody=0; float kasoku=0; int score; void setup(){ size(1200,1200); x=250; score =0; } void draw(){ background(255); speed+=10.8/60+kasoku; y+=speed; smooth(); noStroke(); fill(250); ellipse(x,y,80,80); scoreDisp(); } if(mouseX>x-25 && mouseX<x+25 && mouseY>y-25 && mouseY<y+25){ bingo=60; reset(); kasoku+=0.01; goodx=mouseX; goody=mouseY; } if(bingo>0){ fill(255); text("good!",goodx,goody); bingo-=1; score +=0 } } void reset(){ y=-50; speed=0; x=50+random(1100); } void scoreDisp(){ textSize(90); fill(255); text(”score:”,200,400); }
質問はいつでも何度でも編集(修正)できます。
* コードはコードブロックを使って提示してください。
例
```Processing
final float GRAVITY=9.8;
float speed=0;
// 省略・・
text(”score:”,200,400);
}
```
* コードに全角記号(;や や”)を含めないでください。
* 関数内に入っていない文があります。
「if(mouseX>x-25 && mouseX<x+25 &&」からの14行。
> スコアが10点ずつ加算されるようなプログラミングを作ったはず
スコアとは「score」のことですか?
「score +=0」 10を加算していませんし、
「text(”score:”,200,400);」 scoreという文字列しか表示していません。
そもそも白背景(background(255);)に、白で(fill(255);)描画していますが...
実際に動いているコードをコピペしてください。
大変失礼しました。以下になります。よろしくお願いします
final float GRAVITY=9.8;
float speed=0;//
float y;//変数宣言
float x;//変数宣言
int bingo=0;
float goodx=0;
float goody=0;
float kasoku=0;
int score=0;
void setup(){
size(1200,1200);//ゲーム画面の大きさ
x=250;
score=0;
}
void draw(){
background(0);
speed+=0.8/40+kasoku;//球の速さ
y+=speed;
smooth();
noStroke();
fill(255);
ellipse(x,y,80,80);//円の形
scoreDisp();
if(mouseX>x-50 && mouseX<x+50 &&
mouseY>y-50 && mouseY<y+50){
bingo=60;
reset();
kasoku+=0.01;//だんだん加速する速さ
goodx=mouseX;
goody=mouseY;
}
if(bingo>0){
textSize(24);
fill(255);
text("nice!",goodx,goody);//カーソルを合わせると文字が表示
bingo-=1;
score += 0;
}
}
void reset(){
y=-50;
speed=0;
x=50+random(1100);//球が出る範囲
}
void scoreDisp (){
textSize(90);
fill(255);
text("score:",+score,200,400);
}
この欄に書くとインデントがなくなって見にくいので、質問自体を編集してください。
どこかに「編集」ボタンがあるはずです^^
その際はコードブロックを使用してください。↓の回答のような操作です。
https://teratail.com/questions/179268#reply-266760
初心者なもんですいません。
これでよろしいでしょうか。
ありがとうございます。インデントがないですが十分です。

回答1件
あなたの回答
tips
プレビュー