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

質問編集履歴

1

追記の記入

2017/09/04 16:09

投稿

MujinSekai
MujinSekai

スコア18

title CHANGED
File without changes
body CHANGED
@@ -108,4 +108,22 @@
108
108
  C#
109
109
  Unity2017.2.0b8
110
110
 
111
+ ###追記
112
+ ```C#
113
+ // 怪しいと思った箇所をこのようにしました。
114
+ if ((!rightCheck & Input.GetKeyUp (KeyCode.RightArrow))
115
+ | (!leftCheck & Input.GetKeyUp (KeyCode.LeftArrow))
116
+ | (!frontCheck & Input.GetKeyUp (KeyCode.DownArrow))
117
+ | (!backCheck & Input.GetKeyUp (KeyCode.UpArrow)))
118
+ {
119
+ if(frontCheck)
120
+ Debug.Log ("frontCheckがtrueです");
121
+
122
+ transform.Translate (new Vector3 (directionX, directionY, 0));
123
+ }
124
+ ```
125
+
126
+ 実はGetKeyDownの時は矢印キーを2つ同時に押さないと移動できなかったのです(理由はわかりません)が、GetKeyUpにすると意図どおりの挙動になりました。
127
+ ただ上記のコードにある"frontCheckがtrueです"がfrontCheckがエネミーに重なった場合表示されるはずが重なっても表示しませんでした。しかし移動は出来ない状態です。trueではないにもかかわらず移動が出来ず、しかも!frontCheckをコメントアウトするとエネミーの上の箇所でも移動できます(下矢印キーを何度も押すとすり抜けます)。また、frontCheckに意図していない代入を行っているのかと思い、探してみましたがみつかりませんでした。
128
+
111
129
  ###閲覧して頂きありがとうございます