teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

書式の変更

2021/07/24 12:54

投稿

m.bfweiwf
m.bfweiwf

スコア1

title CHANGED
@@ -1,1 +1,1 @@
1
- Processing スコア表示
1
+ Processing dist関数 スコア表示
body CHANGED
@@ -1,9 +1,9 @@
1
- 円と円が触れるとスコアが増え、そのスコアが表示されるようにしたいのですが、どのようにすればいでしょうか?
1
+ proceeingでゲームを作っているのですが、円と円が触れるとスコアが増え、そのスコアが表示されるようにしたいのですが、当たり判定dist関数を使ったせいか円と円が触れた時だけでなく、円が下に落ちてしまったときにもスコアが増えてしまいま。何か改善点があれば教えてほしいです。
2
2
 
3
-
4
- Processing
3
+ コード
5
4
  int y = 300;
6
5
  int ex, espeed, ey;
6
+ int score;
7
7
 
8
8
  void initPos() {
9
9
  ex = int(random(width));
@@ -15,15 +15,23 @@
15
15
  size(400, 400);
16
16
  noStroke();
17
17
  initPos();
18
+ score = 0;
18
19
  }
19
20
  void draw() {
20
21
  background(255);
22
+ scoreDisp();
21
23
  fill(255, 10, 255);
22
24
  ellipse(mouseX, y, 70, 70);
23
25
  if (dist(mouseX, y, ex, ey)<45 || ey-20 > height) {
26
+ score += 10;
24
27
  initPos();
25
28
  }
26
29
  fill(10, 255, 10);
27
30
  ellipse(ex, ey, 20, 20);
28
31
  ey += espeed;
32
+ }
33
+ void scoreDisp(){
34
+ textSize(24);
35
+ fill(0);
36
+ text("score:"+score,10,25);
29
37
  }

1

書式の変更

2021/07/24 12:54

投稿

m.bfweiwf
m.bfweiwf

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,28 +1,29 @@
1
1
  円と円が触れるとスコアが増え、そのスコアが表示されるようにしたいのですが、どのようにすればよいでしょうか?
2
2
 
3
3
 
4
+ Processing
4
5
  int y = 300;
5
6
  int ex, espeed, ey;
6
7
 
7
8
  void initPos() {
8
- ex = int(random(width));
9
+ ex = int(random(width));
9
- espeed = int(random(1, 6));
10
+ espeed = int(random(1, 6));
10
- ey = -10;
11
+ ey = -10;
11
12
  }
12
13
 
13
14
  void setup() {
14
- size(400, 400);
15
+ size(400, 400);
15
- noStroke();
16
+ noStroke();
16
- initPos();
17
+ initPos();
17
18
  }
18
19
  void draw() {
19
- background(255);
20
+ background(255);
20
- fill(255, 10, 255);
21
+ fill(255, 10, 255);
21
- ellipse(mouseX, y, 70, 70);
22
+ ellipse(mouseX, y, 70, 70);
22
- if (dist(mouseX, y, ex, ey)<45 || ey-20 > height) {
23
+ if (dist(mouseX, y, ex, ey)<45 || ey-20 > height) {
23
- initPos();
24
+ initPos();
24
- }
25
+ }
25
- fill(10, 255, 10);
26
+ fill(10, 255, 10);
26
- ellipse(ex, ey, 20, 20);
27
+ ellipse(ex, ey, 20, 20);
27
- ey += espeed;
28
+ ey += espeed;
28
29
  }