user10388389
user10388389

Reputation:

Moving Prefabs, Unity Spawner, Move Position

I have one problem. I want my prefabs to spawn every time my player picks them up. I did research on Google and YouTube and I tried to use the random function and instantiate. I don't know how to use them. I wrote this code I saw on YouTube and my prefab Sphere moves like 1cm to z position. I want to every time when I pick up object or my player go to spawn more of this on the z position. How do I do this?

My smaller script:

public GameObject Sphere;
public float zrange;

// Use this for initialization
void Start () {
    RandomPosition();
}

void RandomPosition()
{
    zrange = Random.Range(0f, 2f);
    this.transform.position = new Vector3(0, 0, zrange);
}

Upvotes: 0

Views: 115

Answers (1)

You achieve that by not messing with the x and y values (your code sets them both to 0).

Vector3 p = transform.position;
p.z = zrange;
transform.position = p;

This assumes that your code to instantiate the object is already correctly placing the object. If not, more information is needed.

Upvotes: 0

Related Questions