Loading...
Свободное общение | Класс: Шанс выпадения предмета
https://github.com/MaximDanileico/ChanceBox
Класс не особо гибкий, но его можно развить так что будет огонь!
Ну а так , класс поможет организовать адекватный шанс выпадения предметов, либо лутбоксов на сайте.
К примеру:
Название сунудука: Опытный воитель
Далее создаем массив с шансом и id предмета который будем выдавать и все.
Так же можно осуществалять проверки , если итем уже есть то следующий итем будет выдан, либо можно организовать ограничения, в общем это базовый класс.
Теперь можно использовать реальный шанс выпада предметов, а не ссаный обычынй рандом )
Trec80 , держи +)
Trec80 , не чего не понял но очень интересно
тоже интересно стало)) вышло вот такое решение(возможно не правильное) :

$array = [
[
'name' => 'test',
'percent' => 2.22
],
[
'name' => 'test',
'percent' => 100
],
[
'name' => 'test',
'percent' => 80.22
]
];

$percent = round(rand(1,10000)/100,2);
$accepted = array_filter($array, function($array) use ($percent){
return $array['percent']>=$percent;
});
$item = $accepted[array_rand($accepted, 1)];

var_dump($percent);
var_dump($accepted);
var_dump($item);
________
посл. ред. 15.01.2020 в 10:44; всего 2 раз(а); by RGame
Trec80 , вот самый нормальный класс, который встречал
https://github.com/mortennajbjerg/RandomProbability
Avenax , да нормуль, мб когда то сделаю гибким
Онлайн: 11
Время:
Gen. 0.1177
(c) Bym.Guru 2010-2026