Advertisement
Guest User

Float is ignored

a guest
Aug 26th, 2020
18
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.67 KB | None | 0 0
  1. <?php
  2. $coinMultipliers = array('1' => 12, '2' => 12, '3' => 12, '4' => 10, '5' => 10, '6' => 8, '7' => 8, '8' => 6, '10' => 6, '14' => 5, '16' => 4, '18' => 3, '20' => 2, '25' => 1, '30' => 0.7, '150' => 0.3);
  3.  
  4. function getRandomCoinMultiplier(array $weightedValues)
  5. {
  6.     $rand = mt_rand(1, (int) array_sum($weightedValues));
  7.  
  8.     foreach ($weightedValues as $key => $value) {
  9.         $rand -= $value;
  10.         if ($rand <= 0) {
  11.             return $key;
  12.         }
  13.     }
  14. }
  15.  
  16. // The following FOR-LOOP prints "nothing" when the random selection from above
  17. // is a FLOAT value.
  18. for ($i = 0; $i < 1000; $i++) {
  19.     echo getRandomCoinMultiplier($coinMultipliers)."\r\n";
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement