My friend Aviv, a fellow Unity developer, and me were trying to figure out how many different significant ways we can come up with to solve the simple problem of choosing a random value.
You can try this silly challenge yourself, or jump right to our solution.
Let me know if you found other solutions.


solutions
float ex1 = Mathf.Sign(Random.Range(-0.5f, 0.5f));

float ex2 = Mathf.Sign(Random.Range(-1,1));

int ex3 = (Random.Range(0,2) * 2) – 1;

int ex4 = Random.Range(0,2);
if (ex4 == 0) { ex4 = -1; }

int[] choices = new int[]{-1, 1};
int ex5 = choices[Random.Range(0, ex5.Length)];

int ex6 = (Random.value > 0.5f) ? 1 : -1;

int ex7 = Mathf.Sign (Random.rotation.x);

List<int> values = new List<int>(){1,-1};
int ex8 = Random.Range(-1,2);
while (!values.Contains(ex8)) { ex8 = Random.Range(-1,2); }

Of those, I would say ex1 is too similar to ex2 (also it was interesting to notice it would work with integers too).
So I would score us 7 solutions.

I would choose ex6 for real life usage, since I think it’s the most readable.
ex7 is the funniest but it should work (notice we are using the UnityEngine library, not the System library)

This weekend we are having Ludum Dare 34!
Not sure if I will participate yet 😀
But it does remind me of my Ludum Dare 32 Project: The Harder They Fall.
52461-shot0-1429515768.png-eq-900-500
The subject was: “An unconventional weapon”.
So we decided to go for Bubble shooter in Space.

The game requires both mouse and arrow-keys, and it takes a while to load.
You can try it here.
Like a lot of my games, I sometimes wonder if I should make a better version of this…

עמוד: 1 2 3 4 5 6 7 8 ... 41 42 43 הבא