ifで、押されたときに親子関係に。
else ifで、親子関係解除。というようなスクリプトで組んでいましたが、else if文の処理が唐突に切れてしまうようになりました。
イメージとしては、キーが押されている間、親子関係にし、離したときに親子関係を解除する。というものだったのですが、数秒経過後親子関係を解除される。というような現象になりました。
この場合の改善策は、if文での管理の仕方を変えるべきなのか。と考えています。
アドバイス、案がありましたらご教授していただけると嬉しいです。
c#
1 private void tsumiki() 2 { 3 4 // Spaceキーを入力されたら、積み木Prefabを複製する。 5 6 if (Input.GetKeyDown(KeyCode.Space)) 7 { 8 if (tsumiki_GenerateLimit > tsumiki_GeneratePoint)//限界値達成したら通らない 9 { transform.position += new Vector3(0f, 0.5f, 0f); 10 Vector2 position = transform.position + transform.up * tsumikiGeneratePosition.y + transform.right * tsumikiGeneratePosition.x; 11 12 tsumikiObj = Instantiate(tsumikiPrefabs, position, Quaternion.identity); //積み木Prefabの複製 13 14 UIClock.ClockManager -= 1;//生成時数値を-1する。 15 16 StartCoroutine(DestroyTsumikiAfterAWhile(tsumikiObj)); // 生成された積み木の削除を予約 17 18 tsumikiObj.transform.parent = GameObject.Find("Player").transform;//積み木Prefabを親子関係に 19 tsumiki_GeneratePoint += 1;//生成時に積み木生成個数増加 20 // isBlock = false; 21 } 22 23 } 24 25 else if (Input.GetKeyUp(KeyCode.Space)) 26 { Debug.Log("NULL"); 27 28 // isBlock = false; 29 tsumikiObj.transform.parent = null;//親子関係解除 30 //tsumikiObj.SetActive(false); 31 //GameObjectDestroy(); 32 33 } 34 } 35
回答1件
あなたの回答
tips
プレビュー