- Home /
Question by
Sawula · Dec 31, 2014 at 01:42 PM ·
c#instantiateparent
attach parent to instantiated object c#
Hello everyone I need a little help I looked around a lot of forums etc to find some answers, but everything I tried fail so...
I'm trying to attach an enemy gameobject I instantiate to a background gameobject already present in my scene. Here is the code to instantiate the gameobject
using UnityEngine;
using System.Collections;
public class enemiescontroller : MonoBehaviour {
public GameObject enemy;
public GameObject parent;
public Vector3 spawnvalues;
public int hazardcount;
public float spawnwait;
public float startwait;
public float wavewait;
public GameObject player;
// Use this for initialization
void Start () {
StartCoroutine (SpawnWaves ());
}
IEnumerator SpawnWaves () {
yield return new WaitForSeconds (startwait);
while (true) {
for (int i = 0; i < hazardcount; i++) {
Vector3 spawnPosition = new Vector3 (spawnvalues.x, spawnvalues.y, spawnvalues.z);
//Quaternion spawnRotation = Quaternion.identity;
Instantiate (enemy, spawnPosition, enemy.transform.rotation);
enemy.transform.parent = parent.transform;
yield return new WaitForSeconds (spawnwait);
}
yield return new WaitForSeconds (wavewait);
//stop loop at game over
if (player == null)
{
break;}
}
}
}
I don't get what I'm missing...
Comment
Best Answer
Answer by RudyTheDev · Dec 31, 2014 at 01:45 PM
enemy
is (probably) a prefab, and you are trying to attach it. Instantiate
creates and returns a new object, this is the one you want to attach.
GameObject newEnemy = (GameObject)Instantiate (enemy, spawnPosition, enemy.transform.rotation);
newEnemy.transform.parent = parent.transform;
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Manipulating Instanced Object 2 Answers
Getting transform from an instantiated clone to parent it? 1 Answer
SetParent help. 0 Answers