- Home /
Add gameObjects to List as objects are instantiated
I have a player who moves in a snap grid form. Every movement my player instantiates a cube where it is standing. How can I add these instantiated cubes to a List as they are instantiated? This way I can refer back to this list to see if a cube exisits at a particualr location. In javascript please
Answer by sweatyrat · Nov 13, 2014 at 10:21 PM
var cube : GameObject; // the cube you want to create
var cubes : Array = new Array(); //list of cubes
function spawnblock()
{
var obj : GameObject = Instantiate(cube, transform.position, transform.rotation);
cubes.Add(obj);
}
Answer by skate4life13010 · Nov 15, 2014 at 09:27 AM
endCube = gameObject;
var prefab = gameObject;
var collide : boolean = false;
function OnCollisionEnter(coll: Collision){ //Colliding with object?
if(coll.gameObject.tag=="floor"){
collide=true;
Debug.Log("collision On");
}
else{
collide=false;
Debug.Log("collision off");
}
}
function OnCollisionExit(coll: Collision){
collide=false;
}
function Update () {
var myPosition = transform.position;
if(Input.GetButtonDown("up")){
transform.position.y = transform.position.y+1;
Instantiate(prefab, transform.position, Quaternion.identity);
}
if(Input.GetButtonDown("down")){
transform.position.y = transform.position.y-1;
Instantiate(prefab, transform.position, Quaternion.identity);
}
if(Input.GetButtonDown("left")){
transform.position.x = transform.position.x-1;
Instantiate(prefab, transform.position, Quaternion.identity);
}
if(Input.GetButtonDown("right")){
transform.position.x = transform.position.x+1;
Instantiate(prefab, transform.position, Quaternion.identity);
}
if (Input.GetKeyDown (KeyCode.Space)){
Instantiate(endCube, transform.position, Quaternion.identity);
}
}
I would like to store their vector3 locations so I can go back to look if one has already been instantiated at that place. Unless there is another way to just not instantiate an object when I move on top of a cube. I've tried the simple if (collide == false) but this does not work because the collision functions seem to be called after movement so a cube is placed every other step regardless if there is a cube there
Your answer
Follow this Question
Related Questions
teleport an object in space 2 Answers
Cubes are showing outlines 1 Answer
make 2 cubes stick to each other 0 Answers
Building with cubes in Unity,Building meshes out of cubes 0 Answers