mirror of
https://github.com/lkeme/BiliHelper-personal.git
synced 2025-12-19 01:20:08 +08:00
Merge branch 'lkeme:master' into master
This commit is contained in:
commit
a0516e7384
@ -26,7 +26,7 @@ class Barrage
|
||||
}
|
||||
self::setPauseStatus();
|
||||
if (self::sendMsg()) {
|
||||
self::setLock(mt_rand(180, 240) * 60);
|
||||
self::setLock(mt_rand(240, 300) * 60);
|
||||
return;
|
||||
}
|
||||
self::setLock(15 * 60);
|
||||
|
||||
@ -88,7 +88,7 @@ class Competition
|
||||
$guess['oid'] = $question['contest']['id'];
|
||||
$guess['main_id'] = $question['questions'][0]['id'];
|
||||
$details = $question['questions'][0]['details'];
|
||||
$guess['count'] = ($count = getConf('max_coin', 'match_forecast') <= 10) ? $count : 10;
|
||||
$guess['count'] = (($count = getConf('max_coin', 'match_forecast')) <= 10) ? $count : 10;
|
||||
$guess['title'] = $question['questions'][0]['title'];
|
||||
foreach ($details as $detail) {
|
||||
$guess['title'] .= " 队伍: {$detail['option']} 赔率: {$detail['odds']}";
|
||||
|
||||
@ -73,8 +73,8 @@ class GiftSend
|
||||
}
|
||||
$current_intimacy = 0;
|
||||
foreach ($bag_list as $gift) {
|
||||
// 是辣条、亿元 && 不是过期礼物
|
||||
if (!in_array($gift['gift_id'], [1, 6])) {
|
||||
// 是辣条、亿元 && 不是过期礼物 加入小心心,暂不清楚是否有逻辑冲突
|
||||
if (!in_array($gift['gift_id'], [1, 6, 30607])) {
|
||||
continue;
|
||||
}
|
||||
Log::notice("直播间 $room_id 需赠送亲密度 $total_intimacy 剩余亲密度 " . ($total_intimacy - $current_intimacy));
|
||||
|
||||
@ -46,14 +46,13 @@ class Judge
|
||||
if (!self::jury()) {
|
||||
self::setLock(mt_rand(60, 120) * 60);
|
||||
}
|
||||
//
|
||||
// 任务
|
||||
if (empty(self::$wait_case)) {
|
||||
// 获取任务
|
||||
// 获取
|
||||
$case_id = self::caseObtain();
|
||||
self::caseCheck($case_id);
|
||||
self::setLock(1 * 60 + 5);
|
||||
return;
|
||||
} else {
|
||||
// 执行
|
||||
$case = array_pop(self::$wait_case);
|
||||
self::vote($case['id'], $case['vote']);
|
||||
}
|
||||
@ -61,6 +60,7 @@ class Judge
|
||||
if (self::getLock() <= time()) {
|
||||
self::setLock(mt_rand(15, 30) * 60);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -71,13 +71,14 @@ class Judge
|
||||
*/
|
||||
private static function caseCheck($case_id)
|
||||
{
|
||||
if ($case_id == "") {
|
||||
if ($case_id == '') {
|
||||
return true;
|
||||
}
|
||||
$case_info = self::caseInfo($case_id);
|
||||
$case_opinion = self::caseOpinion($case_id);
|
||||
if (!$case_opinion && empty($case_opinion)) {
|
||||
$vote_info = $case_info[array_rand($case_info)];
|
||||
// $vote_info = $case_info[array_rand($case_info)];
|
||||
$vote_info = $case_info[self::probability()];
|
||||
|
||||
} else {
|
||||
$vote_info = $case_opinion[array_rand($case_opinion)];
|
||||
@ -86,6 +87,10 @@ class Judge
|
||||
$vote_text = $vote_info['vote_text'];
|
||||
Log::info("案件 $case_id 的预测投票结果:$vote($vote_text)");
|
||||
array_push(self::$wait_case, ["id" => $case_id, 'vote' => $vote]);
|
||||
// 尝试修复25018 未测试
|
||||
self::vote($case_id, 0);
|
||||
|
||||
self::setLock(1 * 60 + 5);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -109,7 +114,8 @@ class Judge
|
||||
];
|
||||
$raw = Curl::post('pc', $url, $payload, $headers);
|
||||
$de_raw = json_decode($raw, true);
|
||||
//{"code":0,"message":"0","ttl":1}
|
||||
// {"code":0,"message":"0","ttl":1}
|
||||
// {"code":25018,"message":"不能进行此操作","ttl":1}
|
||||
if (isset($de_raw['code']) && $de_raw['code']) {
|
||||
Log::warning("案件 $case_id 投票失败 $raw");
|
||||
} else {
|
||||
@ -300,4 +306,25 @@ class Judge
|
||||
return implode("", $temp);
|
||||
}
|
||||
|
||||
/**
|
||||
* @use 概率
|
||||
* @return int
|
||||
*/
|
||||
private static function probability(): int
|
||||
{
|
||||
$result = 0;
|
||||
$prize_arr = [0 => 25, 1 => 40, 2 => 25, 3 => 10];
|
||||
// 概率数组的总概率精度
|
||||
$sum = array_sum($prize_arr);
|
||||
// 概率数组循环
|
||||
foreach ($prize_arr as $key => $value) {
|
||||
if (mt_rand(1, $sum) <= $value) {
|
||||
$result = $key;
|
||||
break;
|
||||
}
|
||||
$sum -= $value;
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user