- Home /
Other
How to get different objects with same script to act independently?
Currently, I have 2 objects that are supposed to act independently of each other. Both are just supposed to move around randomly, and stop and turn every so often. I am using the same script to control both objects, but this results in them always moving together in the same direction. I am using a private random to determine the direction of rotation, but it generates the same number in both scripts. How do I get them to turn independently, that is, have the two randoms generate different numbers?
private Rigidbody selfRB;
private Animator selfAnim;
public playerStats player;
private float timePassed = 0.0f;
private float repeatTime = 4f;
private System.Random rng = new System.Random();
private int rotation;
private bool moved = false;
// Start is called before the first frame update
void Start()
{
selfRB = GetComponent<Rigidbody>();
selfAnim = GetComponent<Animator>();
rotation = rng.Next(0, 360);
print("RNG: " + rotation);
}
// Update is called once per frame
void Update()
{
timePassed += Time.deltaTime; //ADDS TIME THAT HAS PASSED TO TOTAL TIME
if (timePassed >= repeatTime) //RESETS TIME IF IT GOES OVER THE LIMIT
{
rotation = rng.Next(0, 360);
timePassed = 0.0f;
}
print("OBJECT: " + gameObject.name);
if (timePassed <= 2) //MOVING PERIOD
{
transform.eulerAngles = new Vector3(transform.eulerAngles.x, rotation + 0f, transform.rotation.z);
selfRB.velocity = transform.forward * 7.5f;
moved = true;
selfAnim.SetBool("moving", true);
}
else if (moved) //WAIT PERIOD
{
selfRB.velocity = new Vector3(0, 0, 0);
moved = false;
selfAnim.SetBool("moving", false);
}
Answer by haoqi21 · Jun 21, 2019 at 01:08 AM
i know how random works, the problem is that random generates the same thing in both scripts @Freesmith
look here and youll likely see the difference in what you haveused and what i proposed
Follow this Question
Related Questions
Implementing Counter-Movement 0 Answers
Touch buttons for step movememt 3 Answers
Accelerometer 2 Answers
MouseLook character is acting wierd 1 Answer
HOW TO MAKE A NPC GO FORWAR 0 Answers