From cb0ab1ceb86bfd3321e4a8f31f14aca42d46f1b4 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sat, 17 Sep 2022 14:50:14 +0800 Subject: [PATCH] 1 --- webapp/services/BattleDataService.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/webapp/services/BattleDataService.php b/webapp/services/BattleDataService.php index 108fb14c..57907067 100644 --- a/webapp/services/BattleDataService.php +++ b/webapp/services/BattleDataService.php @@ -511,7 +511,22 @@ class BattleDataService extends BaseService { private function randWeight($items) { - $spaces = array(); + $weights = array(); + { + $weight = 0; + foreach ($items as $item) { + $weight += (int)($item * 10000); + array_push($weights, $weight); + } + } + if (count($weights) > 0) { + $rnd = rand(0, $weights[count($weights) - 1]); + for ($i = 0; $i < count($weights); ++$i) { + if ($rnd <= $weights[$i]) { + return $i; + } + } + } return -1; }