I am working on something. In this project I want to generate a object at random position which can go left to right continuously. So far I have got this.
This is inside start of a class that generate 50 object on which player can jump on when game loads.
void Start () {
Vector2 pos = transform.position;
for(int i = 0; i < noOfHolder; i++)
{ pos.x = Random.Range(-3, 3);
pos.y += Random.Range(1, 5);
Instantiate(holder, pos, Quaternion.identity);
}
and
the holder object which is attached to it have a method.
updatePosition(){
//moveSpeed = Random.Range(1,3);tried this
startingPos.x = moveSpeed * Mathf.Sin(Time.time);//*moveSpeed
transform.position = startingPos;}
This code can generate multiple objects. but with the same sin speed from left to right.
I change the move speed. Some obj move to the half of the screen some full. I want all the object move to full screen with vary speed.
Thank you for answering.
use this:
void Start()
{
Vector2 pos = transform.position;
for(int i = 0; i < noOfHolder; i++)
{
pos.x = Random.Range(-3, 3);
pos.y += Random.Range(1, 5);
Instantiate(holder, pos, Quaternion.identity);
}
moveSpeed = Random.Range(1,3);
moveDistance = 1.0f;
}
void Update()
{
startingPos.x = moveDistance * Mathf.Sin(Time.time * moveSpeed);
transform.position = startingPos;
}
if this is not what you want, please describe your situation in more detail and i will edit the answer.