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

回答編集履歴

1

追記

2017/10/26 06:35

投稿

fiveHundred
fiveHundred

スコア10513

answer CHANGED
@@ -1,4 +1,42 @@
1
1
  記載のソースだと、ボタンの外でクリックしても反応してしまいます。
2
2
 
3
3
  以下のサイトのように、ButtonのOn Click()に関数を登録する方法がよいと思います。
4
- [http://hiyotama.hatenablog.com/entry/2015/05/11/151435](http://hiyotama.hatenablog.com/entry/2015/05/11/151435)
4
+ [http://hiyotama.hatenablog.com/entry/2015/05/11/151435](http://hiyotama.hatenablog.com/entry/2015/05/11/151435)
5
+
6
+ ---
7
+
8
+ (追記を受けて追記)
9
+ この場合、全てにscore変数を持たせるのではなく、ある1つのスクリプトのみにscore変数を持たせ、他のスクリプトではこのscoreに対して参照や変更を行うようにすればよいです。
10
+ あるいは、この程度のスクリプトであれば、以下のように、クラスを分けずにまとめてしまってもよいと思います
11
+ ```C#
12
+ using System.Collections;
13
+ using System.Collections.Generic;
14
+ using UnityEngine;
15
+ using UnityEngine.UI;
16
+
17
+ public class PlusPoint : MonoBehaviour
18
+ {
19
+ int score = 0;
20
+
21
+ // +10点のボタンのOn Click()に登録
22
+ public void OnClickPlusTen()
23
+ {
24
+ score = score + 10;
25
+ Debug.Log(score);
26
+ }
27
+
28
+ // +1点のボタンのOn Click()に登録
29
+ public void OnClickPlusOne()
30
+ {
31
+ score = score + 1;
32
+ Debug.Log(score);
33
+ }
34
+
35
+ // ResetのボタンのOn Click()に登録
36
+ public void OnClickReset()
37
+ {
38
+ score = 0;
39
+ Debug.Log(score);
40
+ }
41
+ }
42
+ ```