- Home /
Choose random from given numbers
Is there some function in C# like:
var randomN = choose(1,5,10,15);
Let`s say. I need to specify those numbers. Some simple function please. Random.Range() is not what I need.
REASON:
I need to pick spawn area that is not too far from space station, nor too close to station or ship will spawn in the center of it.
Answer by robertbu · Sep 25, 2014 at 08:59 PM
var nums=[1, 5, 10, 15];
var randomN = nums[Random.Range(0, nums.Length)];
Okay thanks.
Also I need to pick spawn area that is not too far from space station, nor too close to station or ship will spawn in the center of it.
Let's assume 3D and that the closest you want is 0.75 and the furthest is 4.5:
var pos = Random.onUnitSphere * Random.Range(0.75, 4.5);
And in 2D I would use onUnitCircle right?
Only problem is I need X and Y position. So:
X from -10 to -8 and from 8 to 10 Y from -10 to -8 and from 8 to 10
but I guess I won`t make it random since nobody knows how to do it :)
but I guess I won`t make it random since nobody knows how to do it :)
A number of people on this list can answer questions about generating random positions, but you have to learn to ask clear and complete questions. Plus technically, since what you are asking is very different from your original posted question, they should be asked as a new question. And, since you are asking as a comment to my answer, I'm likely the only one paying much attention to your comments. Here is a solution to the random position you outline
var pos = Vector3(Random.Range(8.0, 10.0), Random.Range(8.0,10.0));
pos.x = (Random.value < 0.5) ? pos.x : -pos.x;
pox.y = (Random.value < 0.5) ? pos.y : -pos.y;
Random.onUnitCircle does not exist. It could be done like this:
var randomUnitCirclePos = Quaternion.AngleAxis(Random.Range(0.0, 360.0), Vector3.forward) * Vector3.up;
Your answer
Follow this Question
Related Questions
Using arrays to randomly select an object 0 Answers
Choose random prefabs from list? 1 Answer
Choose random Gameobject from array? 4 Answers
choose random waypoint 1 Answer
[C#] How do I randomly pick between 3 specific numbers? 1 Answer