質問編集履歴

2

書式を改善いたしました。よろしくお願い致します。

2021/08/31 08:00

投稿

kutigaiinioi-_-
kutigaiinioi-_-

スコア4

test CHANGED
File without changes
test CHANGED
@@ -244,6 +244,8 @@
244
244
 
245
245
  【スコアを管理するスクリプト】
246
246
 
247
+ ```C#
248
+
247
249
  using System.Collections;
248
250
 
249
251
  using System.Collections.Generic;
@@ -256,52 +258,54 @@
256
258
 
257
259
  {
258
260
 
259
- [SerializeField] int m_targetScore = 5;
261
+ [SerializeField] int m_targetScore = 5;
260
-
262
+
261
- int m_score = 0;
263
+ int m_score = 0;
262
-
263
-
264
-
264
+
265
+
266
+
265
- public void AddScore()
267
+ public void AddScore()
266
-
268
+
267
- {
269
+ {
268
-
270
+
269
- m_score++;
271
+ m_score++;
270
-
272
+
271
- Debug.Log($"Score: {m_score}");
273
+ Debug.Log($"Score: {m_score}");
272
-
273
-
274
-
274
+
275
+
276
+
275
- if (m_score >= m_targetScore)
277
+ if (m_score >= m_targetScore)
276
-
278
+
277
- {
279
+ {
278
-
280
+
279
- GameClear();
281
+ GameClear();
280
-
282
+
281
- //Debug.Log(clearScore);
283
+ //Debug.Log(clearScore);
282
-
284
+
283
- }
285
+ }
284
-
286
+
285
- }
287
+ }
286
-
288
+
287
- public void GameClear()
289
+ public void GameClear()
288
-
290
+
289
- {
291
+ {
290
-
292
+
291
- Invoke("Test", 1.5f);
293
+ Invoke("Test", 1.5f);
292
-
294
+
293
- }
295
+ }
294
-
296
+
295
- private void Test()
297
+ private void Test()
296
-
298
+
297
- {
299
+ {
298
-
300
+
299
- // GameClearした時の処理
301
+ // GameClearした時の処理
300
-
302
+
301
- FadeManager.Instance.LoadScene("rizalt", 1.5f);
303
+ FadeManager.Instance.LoadScene("rizalt", 1.5f);
302
-
303
-
304
-
304
+
305
+
306
+
305
- }
307
+ }
306
-
308
+
307
- }
309
+ }
310
+
311
+ ```

1

書式を改善いたしました。よろしくお願い致します。

2021/08/31 08:00

投稿

kutigaiinioi-_-
kutigaiinioi-_-

スコア4

test CHANGED
@@ -1 +1 @@
1
- 一度表示したimageをック状態するにはどうすればよろしいでしょうか?
1
+ 一度クリックしたimageをクリック出来ないようにしいです。
test CHANGED
@@ -1,27 +1,37 @@
1
1
  現在unityでスマートフォンの間違い探しを制作しているプログラム初心者です。
2
2
 
3
- 間違いの場所にある透明のimageをタッチすると『marumaru』という画像が表示され、1ポイント獲得できる仕組みまでは
3
+
4
-
4
+
5
- 出来まし
5
+ 【やりい事】
6
-
6
+
7
- すが、タッチされて表示状態になったままの『marumaru』画像を、チするとタッチした分のポイントが加算されます
7
+ クリックるとスコア加算されるimageを、一度クリしたらスコアが加算されないようにい。
8
+
9
+
10
+
8
-
11
+ 【現状】
9
-
10
-
12
+
11
- そこで質問なですが、表示状態になった『marumaru』画像ックような状態してタッチしてもポイントが加算
13
+ 透明imageクリックすると丸画像切り替わり得点が加算される。
12
-
14
+
13
- されないよするにはどうすばよろいでしょか?ご教示の程、何卒よろしくお願い致します
15
+ しかし、その丸をも一度クリックするとスコアが加算さう。
14
-
16
+
17
+
18
+
15
- ※分かり易いプレイ画面にしたいので画像を消す方法はりたくないと考えております。
19
+ 正解箇所が分かるようimageは表示続けたいと考えております。
20
+
21
+
22
+
16
-
23
+ スクリプトの添削やもっといい方法まちがいさがしの開発方法があればご教示願いたく存じます。
17
-
18
-
24
+
19
- タッチすると『marumaru』画像表示するまでのスクリプトを以下に記します。
25
+ 画像表示やスコアに関するスクリプトを添付致しますので添削いただけますと幸いです
20
26
 
21
27
  よろしくお願い致します。
22
28
 
23
29
 
24
30
 
31
+ 【丸画像を表示するスクリプト】
32
+
33
+ ```C#
34
+
25
35
  using System.Collections;
26
36
 
27
37
  using System.Collections.Generic;
@@ -38,8 +48,6 @@
38
48
 
39
49
 
40
50
 
41
- public float deleteTime = 0.4f;
42
-
43
51
  public Image image;
44
52
 
45
53
  private Sprite sprite;
@@ -74,10 +82,226 @@
74
82
 
75
83
  }
76
84
 
85
+
86
+
87
+ }
88
+
89
+ }
90
+
91
+
92
+
93
+
94
+
95
+ ```
96
+
97
+
98
+
99
+ 【スコアを加算するスクリプト】
100
+
101
+ ```C#
102
+
103
+ using System.Collections;
104
+
105
+ using System.Collections.Generic;
106
+
107
+ using UnityEngine;
108
+
109
+ // 今回の追加
110
+
111
+ using UnityEngine.SceneManagement;
112
+
113
+ using UnityEngine.UI;
114
+
115
+
116
+
117
+ public class SUCORE1 : MonoBehaviour
118
+
119
+ {
120
+
121
+
122
+
123
+ public Image image;
124
+
125
+ private Sprite sprite;
126
+
127
+
128
+
129
+ // スコア関連
130
+
131
+ private int score;
132
+
133
+
134
+
135
+ public int currentScore;
136
+
137
+ public int clearScore = 5;
138
+
139
+
140
+
141
+ // Start is called before the first frame update
142
+
143
+ void Start()
144
+
145
+ {
146
+
147
+ Initialize();
148
+
149
+ }
150
+
151
+
152
+
153
+ // Update is called once per frame
154
+
155
+ void Update()
156
+
157
+ {
158
+
159
+
160
+
161
+ }
162
+
163
+
164
+
165
+ // ゲーム開始前の状態に戻す
166
+
167
+ private void Initialize()
168
+
169
+ {
170
+
171
+ // スコアを0に戻す
172
+
173
+ score = 0;
174
+
175
+
176
+
177
+ }
178
+
179
+
180
+
181
+ // スコアの追加
182
+
183
+ public void AddScore()
184
+
185
+ {
186
+
187
+ // 今回の追加
188
+
189
+ score += 1;
190
+
191
+ currentScore += score;
192
+
193
+
194
+
195
+
196
+
197
+ Debug.Log(currentScore);
198
+
199
+
200
+
201
+ if (currentScore >= clearScore)
202
+
77
203
  {
78
204
 
205
+ GameClear();
206
+
79
- Destroy(this.gameObject, deleteTime);
207
+ //Debug.Log(clearScore);
80
-
208
+
81
- }
209
+ }
82
-
210
+
211
+
212
+
83
- }
213
+ }
214
+
215
+ // GameClearした時の処理
216
+
217
+ // 今回の追加
218
+
219
+ public void GameClear()
220
+
221
+ {
222
+
223
+
224
+
225
+
226
+
227
+ // GameClearした時の処理
228
+
229
+ SceneManager.LoadScene("rizalt");
230
+
231
+
232
+
233
+ }
234
+
235
+
236
+
237
+ }
238
+
239
+
240
+
241
+ ```
242
+
243
+
244
+
245
+ 【スコアを管理するスクリプト】
246
+
247
+ using System.Collections;
248
+
249
+ using System.Collections.Generic;
250
+
251
+ using UnityEngine;
252
+
253
+
254
+
255
+ public class ScoreManager : MonoBehaviour
256
+
257
+ {
258
+
259
+ [SerializeField] int m_targetScore = 5;
260
+
261
+ int m_score = 0;
262
+
263
+
264
+
265
+ public void AddScore()
266
+
267
+ {
268
+
269
+ m_score++;
270
+
271
+ Debug.Log($"Score: {m_score}");
272
+
273
+
274
+
275
+ if (m_score >= m_targetScore)
276
+
277
+ {
278
+
279
+ GameClear();
280
+
281
+ //Debug.Log(clearScore);
282
+
283
+ }
284
+
285
+ }
286
+
287
+ public void GameClear()
288
+
289
+ {
290
+
291
+ Invoke("Test", 1.5f);
292
+
293
+ }
294
+
295
+ private void Test()
296
+
297
+ {
298
+
299
+ // GameClearした時の処理
300
+
301
+ FadeManager.Instance.LoadScene("rizalt", 1.5f);
302
+
303
+
304
+
305
+ }
306
+
307
+ }