So I have an array, cosisting of 25 numbers, called “numbers”. I’m selecting a random of these numbers by doing so: randomNum1 = Random.Range(numbers[0],numbers[24]); Now, the problem is that I want the index of the chosen number to be removed so that it can’t be chosen again. How do I find out that index the chosen number is at? Because when I know that, I can use numbers.RemoveAt(x);
You’re not going about this right; the result of the random function should be an index, not a value in the array. Do not use a Unity Array (ArrayList):
import System.Collections.Generic;
var numbers : List.<int>;
var random = new System.Random();
var randomIndex = random.Next(numbers.Count);
var randomNumber = numbers[randomIndex];
numbers.RemoveAt(randomIndex);
But wouldn’t that only leave me with a random index? The array has 25 float numbers. 1.1,1.2,1.3 … 5.5. And I need those to determine a place in my grid for 4 objects. I need both the value and the index in order to remove that index from the array. Or am I totally wrong here?