質問編集履歴

1

ソースが抜けていたので修正しました。

2021/09/02 19:53

投稿

siroan
siroan

スコア3

test CHANGED
@@ -1 +1 @@
1
- スコアとハイスコアのGUIを実装したい
1
+ スコアのGUIを実装したい
test CHANGED
@@ -2,25 +2,15 @@
2
2
 
3
3
  Unityにて2Dアクションシューティングゲームを制作しています。
4
4
 
5
- ゲームプレイ中に画面上部にスコアとハイスコアを並べて表示したいです。
5
+ ゲームプレイ中に画面上部にスコアを並べて表示したいです。
6
6
 
7
7
  GUIをいじったことがないので使い方がわからず手探りでスクリプトを組みましたがうまくいきませんでした。
8
8
 
9
9
  AssetStoreで販売されているUnityPlaygroundを利用しており、プレイヤーが発射した弾が敵に当たったとき敵が削除されるところまではできています。
10
10
 
11
+ 敵プレハブにアタッチしてBulletのタグが付いたオブジェクトがぶつかって敵が消えた時スコアを+1000点したいです。
11
12
 
12
-
13
-
14
-
15
- ### 発生る問題・エラーメッセージ
13
+ また、毎フレーム+1ずつです。
16
-
17
-
18
-
19
- ```
20
-
21
- エラーメッセージ
22
-
23
- ```
24
14
 
25
15
 
26
16
 
@@ -30,17 +20,81 @@
30
20
 
31
21
  ```ここに言語名を入力
32
22
 
33
- ソースコード
23
+ using System.Collections;
34
24
 
25
+ using System.Collections.Generic;
26
+
35
- ```
27
+ using UnityEngine;
28
+
29
+ using UnityEngine.UI;
36
30
 
37
31
 
38
32
 
33
+ public class GameManager : MonoBehaviour
34
+
35
+ {
36
+
39
- ### 試したこと
37
+ int score = 0;
38
+
39
+ public Text scoreText;
40
40
 
41
41
 
42
42
 
43
+ // Start is called before the first frame update
44
+
45
+ void Start()
46
+
47
+ {
48
+
43
- ここに問題に対して試したことを記載してください。
49
+ score = 000000;
50
+
51
+ Setscore();
52
+
53
+ }
54
+
55
+
56
+
57
+ // Update is called once per frame
58
+
59
+ void Update()
60
+
61
+ {
62
+
63
+
64
+
65
+ }
66
+
67
+
68
+
69
+ void OnCollisionEnter2D(Collision2D collision)
70
+
71
+ {
72
+
73
+ if(this.gameObject.CompareTag("Bullet"))
74
+
75
+ {
76
+
77
+ score += 1000;
78
+
79
+ }
80
+
81
+ Setscore();
82
+
83
+ }
84
+
85
+ void Setscore()
86
+
87
+ {
88
+
89
+ scoreText.text = string.Format("{000000}", score);
90
+
91
+ }
92
+
93
+ }
94
+
95
+
96
+
97
+ ```
44
98
 
45
99
 
46
100
 
@@ -48,4 +102,4 @@
48
102
 
49
103
 
50
104
 
51
- ここ詳細な情報を記載してください。
105
+ 初心者ですのでひとつひとつ事細か教えてもらえるとあがたです