Praise the Almighty RNG


First off, I would like to mention that I could not run the program using only Random.Range(blah). I had to add either System. or UnityEngine. as a prefix or the red squiggles would not leave me be. I chose UnityEngine. because using System. created a red squiggle underneath the “Range” part.

    void Update()
        int index1 = UnityEngine.Random.Range(0, level1Passwords.Length);
        int index2 = UnityEngine.Random.Range(0, level2Passwords.Length);
        int index3 = UnityEngine.Random.Range(0, level3Passwords.Length);
        print("Level 1: " + index1);
        print("Level 2: " + index2);
        print("Level 3: " + index3);


So I had my play with Update and the test proved my code was sufficient in choosing a random number.


I wanted to see what behavior the RNG would have if I inserted the random index picker into my AssignPassword() function.

    string AssignPassword()
        password = "password";
        int index;
        switch (level)
            case 1:
                index = UnityEngine.Random.Range(0, level1Passwords.Length);
                print("Level 1: " + level1Passwords[index]);
                password = level1Passwords[index];
            case 2:
                index = UnityEngine.Random.Range(0, level2Passwords.Length);
                print("Level 2: " + level2Passwords[index]);
                password = level2Passwords[index];
            case 3:
                index = UnityEngine.Random.Range(0, level3Passwords.Length);
                print("Level 3: " + level3Passwords[index]);
                password = level3Passwords[index];
                Debug.LogError("Invalid level number. <AssignPassword()>");
        return password;

Once I ran the code and tested the level selection and word assignment over and over, I could see that the RNG was working properly!

Have a nice day :slight_smile:

Privacy & Terms