Unity初心者です。
[SerializeField] Transform 型の変数を作成し、一度使用した後DestroyでGameObjectを削除でリセットした後、Restartボタンで再利用したいのですが、うまくオブジェクトが作成できませんでした。
そのことで、まずTransformのGameObjectが削除されたらどんな状態になるのか、
(もしかしてGameObjectが消えているのでTransformを作り直さないと使えない?)
また、Destroyしたものを再利用もしくは復活したい場合、どうすればよいのか、アドバイスいただきたいです。
C#
1 2//手札にカードを生成 3 [SerializeField] Transform playerHandTransform, 4 playerFieldTransform, 5 enemyHandTransform, 6 enemyFieldTransform; 7 //デッキ作成 8 List<int> playerDeck = new List<int>() {1,1,2,3}, 9 enemyDeck = new List<int>() {1,3,1,2}; 10 11//ここで再利用するための処理実施 12public void Restart() 13 { 14 //hand.field delete 15 foreach(Transform card in playerHandTransform) 16 { 17 Destroy(card.gameObject); 18 } 19 foreach (Transform card in playerFieldTransform) 20 { 21 Destroy(card.gameObject); 22 } 23 foreach (Transform card in enemyHandTransform) 24 { 25 Destroy(card.gameObject); 26 } 27 foreach (Transform card in enemyFieldTransform) 28 { 29 Destroy(card.gameObject); 30 } 31 32//StartGameでplayerFieldTransformの再設定をしています。 33 StartGame(); 34 UnityEngine.Debug.Log("Restart"); 35 36 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/06 06:32