game2005api/webapp/services/SeasonService.php
aozhiwei b90e48824f 1
2021-12-02 19:16:54 +08:00

39 lines
1.1 KiB
PHP

<?php
namespace services;
require_once('mt/Rank.php');
require_once('mt/Season.php');
require_once('models/User.php');
use models\User;
class SeasonService extends BaseService {
public function checkSeason($userInfo)
{
$initRankMeta = mt\Rank::getInitRank();
$currRankMeta = mt\Rank::get($userInfo['rank']);
$dropRankMeta = mt\Rank::get($currRankMeta ? $currRankMeta['drop_rank'] : 0);
$currSeasonMeta = mt\Season::getCurrentSeason();
if ($currSeasonMeta && $currSeasonMeta['id'] != $userInfo['last_season_id']) {
//掉档
if ($dropRankMeta) {
myself()->_updateUserInfo(array(
'rank' => $dropRankMeta['rank'],
'score' => $dropRankMeta['min_score'],
));
}
}
if ($initRankMeta && $userInfo['rank'] < $initRankMeta['rank']) {
myself()->_updateUserInfo(array(
'rank' => $initRankMeta['rank'],
'score' => $initRankMeta['min_score'],
));
return false;
}
return true;
}
}