Guest User

Untitled

a guest
Apr 6th, 2022
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.33 KB | None | 0 0
  1. public static int WeightedRandom(float[] weights)
  2. {
  3.     float value = Random.Range(0,  weights.Sum());
  4.     float weightSum = 0;
  5.     for (int i = 0; i < weights.Length; i++)
  6.     {
  7.         weightSum += weights[i];
  8.         if (value < weightSum)
  9.         {
  10.             return i;
  11.         }
  12.     }
  13.     return weights.Length - 1;
  14. }
Advertisement
Add Comment
Please, Sign In to add comment