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

質問編集履歴

3

文法の修正

2017/12/09 09:41

投稿

Z_Silver
Z_Silver

スコア27

title CHANGED
File without changes
body CHANGED
@@ -8,38 +8,39 @@
8
8
  回答よろしくお願いします。
9
9
 
10
10
  ###該当のソースコード
11
+ ``````
11
12
  public GameObject Block;
12
13
  private bool isTap = false;
13
14
 
14
15
  void Start () {
15
- //ブロックの画像を非表
16
+ //ブロックの画像を非表
16
- Block.SetActive (false);
17
+   Block.SetActive (false);
17
18
  }
18
19
 
19
- void Update () {
20
+ void Update () {
20
- GameObject obj = getClickObject ();
21
+ GameObject obj = getClickObject ();
21
- //以下オブジェクトがクリックされた時の処理
22
+ //以下オブジェクトがクリックされた時の処理
22
- if (obj != null) {
23
+ if (obj != null) {
23
- //クリック事に画像を切り替える
24
+ //クリック事に画像を切り替える
24
- if (isTap) {
25
+ if (isTap) {
25
- Block.SetActive (true);
26
+ Block.SetActive (true);
26
- } else {
27
+ } else {
27
- Block.SetActive (false);
28
+ Block.SetActive (false);
28
- }
29
29
  }
30
30
  }
31
+ }
31
32
 
32
33
  // 左クリックしたオブジェクトを取得する関数
33
34
  private GameObject getClickObject() {
34
- GameObject result = null;
35
+ GameObject result = null;
35
36
 
36
- // 左クリックされた場所のオブジェクトを取得
37
+ // 左クリックされた場所のオブジェクトを取得
37
- if(Input.GetMouseButtonDown(0)) {
38
+ if(Input.GetMouseButtonDown(0)) {
38
- Vector2 tapPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
39
+ Vector2 tapPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
39
- Collider2D collider2d = Physics2D.OverlapPoint(tapPoint);
40
+ Collider2D collider2d = Physics2D.OverlapPoint(tapPoint);
40
41
 
41
- if (collider2d) {
42
+ if (collider2d) {
42
- result = collider2d.transform.gameObject;
43
+ result = collider2d.transform.gameObject;
43
44
 
44
45
  if (result.name == this.name) {
45
46
  isTap = true;
@@ -51,8 +52,8 @@
51
52
  return result;
52
53
  }
53
54
  }
55
+ ```
54
56
 
55
-
56
57
  ###補足情報(言語/FW/ツール等のバージョンなど)
57
58
  Unity 5.5
58
59
  言語:C#

2

文法の修正

2017/12/09 09:41

投稿

Z_Silver
Z_Silver

スコア27

title CHANGED
@@ -1,1 +1,1 @@
1
- Unityで複数オブジェクトをクリックするたびに画像を切り替えたい
1
+ Unityで複数用意したオブジェクトをクリックするたびに画像を交互に切り替えたい
body CHANGED
@@ -1,12 +1,10 @@
1
1
  ###前提・実現したいこと
2
- Unity2Dにて、画面に配置した「点線ブロック」をクリックすると
2
+ Unity2Dにて、「点線ブロック」と「四角ブロック」の画像を用意し、
3
- 「四角ブロック」の画像が表示され、それをクリックすると「四角ブロック」の画像が
4
- 消えて「点線ブロック」が表示されものを作成したのですが
3
+ クリックたびに交互に切り替わる物を作成し実行し単体では
4
+ 問題なく動作したのですが複数(複製や、プレファブ等)用意して使うと
5
+ 途中でクリックしても画像が切り替わらないオブジェクトが出てきており
6
+ 原因がわからない状態です。
5
7
 
6
- 名前を変更し複数(コピー、プレファブ等)用意して使うと
7
- 途中でクリックしても画像が切り替わらないことが
8
- あり原因がわからない状態です。
9
-
10
8
  回答よろしくお願いします。
11
9
 
12
10
  ###該当のソースコード
@@ -31,13 +29,15 @@
31
29
  }
32
30
  }
33
31
 
34
- // 左クリックしたオブジェクトを取得する関数
32
+ // 左クリックしたオブジェクトを取得する関数
35
- private GameObject getClickObject() {
33
+ private GameObject getClickObject() {
36
- GameObject result = null;
34
+ GameObject result = null;
35
+
37
- // 左クリックされた場所のオブジェクトを取得
36
+ // 左クリックされた場所のオブジェクトを取得
38
- if(Input.GetMouseButtonDown(0)) {
37
+ if(Input.GetMouseButtonDown(0)) {
39
- Vector2 tapPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
38
+ Vector2 tapPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
40
39
  Collider2D collider2d = Physics2D.OverlapPoint(tapPoint);
40
+
41
41
  if (collider2d) {
42
42
  result = collider2d.transform.gameObject;
43
43
 

1

誤字

2017/12/09 01:06

投稿

Z_Silver
Z_Silver

スコア27

title CHANGED
@@ -1,1 +1,1 @@
1
- Unityで(複数)オブジェクトをクリックするたびに画像を切り替え
1
+ Unityで(複数)オブジェクトをクリックするたびに画像を切り替えたい
body CHANGED
@@ -7,7 +7,7 @@
7
7
  途中でクリックしても画像が切り替わらないことが
8
8
  あり原因がわからない状態です。
9
9
 
10
- 回答よろしくお願いいたします。
10
+ 回答よろしくお願いします。
11
11
 
12
12
  ###該当のソースコード
13
13
  public GameObject Block;