protected function _exec() { $characteruid = $this->getParam('characteruid', 'string'); $result = array(); //item 信息 $item_mgr = new UserGameItemManager($characteruid); $items = $item_mgr->getItemList(); $heroInfo['items'] = $items; //vip $vip_mgr = new CharacterAccountManager(); $vipInfo = $vip_mgr->getVipCache($characteruid); $heroInfo['vipData'] = $vipInfo; //rate $rate_mgr = new RatingHeroManager(); $heroInfo['heroRate'] = $rate_mgr->getHeroRate($characteruid); $result['topHeroRate'] = $rate_mgr->getTop(); $heroInfo['heroRateTime'] = $rate_mgr->getRatingRewardTime($characteruid); $clan_rate_mgr = new RatingClanManager(); $result['topClanRate'] = $clan_rate_mgr->getTop(); $heroInfo['clanRateTime'] = $clan_rate_mgr->getRatingRewardTime($characteruid); $bossMgr = new ClanBossManager(); $heroInfo['bossData'] = $bossMgr->getCurClanBoss(); //clan $user_clan_mgr = new UserClanManager(); $user_clan_info = $user_clan_mgr->getUserClanInfo($characteruid); if (!empty($user_clan_info)) { require_once GAMELIB . '/model/ClanManager.class.php'; $clan_mgr = new ClanManager(); $clan_info = $clan_mgr->getClanInfo($user_clan_info['clan_id']); $membersArr = array(); $clanmembers = explode(",", $clan_info['members']); foreach ($clanmembers as $memberId) { $simclaninfo = $user_clan_mgr->getUserClanInfo($memberId); if (!empty($simclaninfo)) { array_push($membersArr, $simclaninfo); } } array_push($membersArr, $user_clan_mgr->getUserClanInfo($clan_info['adminId'])); $clan_info['membersArr'] = $membersArr; $clanTalk = $clan_mgr->getClanTalk($user_clan_info['clan_id']); if (!empty($clanTalk)) { $clan_info['talk'] = $clanTalk; } $heroInfo['clanRate'] = $clan_rate_mgr->getClanRate($user_clan_info['clan_id']); $clan_info['clanUser'] = $user_clan_info; $heroInfo['clan'] = $clan_info; } $result['hero_info'] = $heroInfo; return $result; }
protected function _exec() { $characterId = $this->getParam('heroid', 'int'); $clanID = $this->getParam('clanId', 'int'); $userClanMgr = new UserClanManager(); $userclaninfo = $userClanMgr->getUserClanInfo($characterId); if (empty($userclaninfo) || $userclaninfo['bossTime'] > time()) { $this->throwException("hero has attack boss today "); } $bossMgr = new ClanBossManager(); $boosInfo = $bossMgr->getCurClanBoss(); $curTime = $boosInfo['Date']; //power $hero_mgr = new CharacterAccountManager(); $hero_info = $hero_mgr->getCharacterAccount($characterId); $new_hero_info = StaticFunction::resetCurPower($hero_info); $cur_power = $new_hero_info['power']; if ($cur_power < StaticFunction::$power_battle_cost) { $this->throwException("power is not enough ,cur power = {$cur_power} "); } else { $heroChange = array('power' => $cur_power - StaticFunction::$power_battle_cost, 'powertime' => $new_hero_info['powertime']); $rateMgr = new RatingClanManager(); $clanRateInfo = $rateMgr->getClanRate($clanID); if (empty($clanRateInfo)) { $newclanRate = array('id' => $clanID, 'date' => $curTime, 'level' => 1, 'kills' => 0); $rateMgr->addNewClanRate($clanID, $newclanRate); } else { if ($clanRateInfo['date'] == $curTime) { $newclanRate = $clanRateInfo; } else { $newclanRate = array('id' => $clanID, 'date' => $curTime, 'level' => 1, 'kills' => 0); $rateMgr->updateClanRate($clanID, $newclanRate); } } $battleMgr = new BattleManager(); $battleMgr->setBattleCache($characterId, $curTime, 1, 0); $hero_mgr->updateUserStatus($characterId, $heroChange); //bossTime $userclaninfo['bossTime'] = strtotime("next day"); $userClanMgr->updateUserClan($userclaninfo); $heroChange['clanRateInfo'] = $newclanRate; $heroChange['bossData'] = $boosInfo; return $heroChange; } }
protected function _exec() { $gameuid = $this->getParam('gameuid', 'int'); $clanID = $this->getParam('clanId', 'int'); $bossMgr = new ClanBossManager(); $boosInfo = $bossMgr->getCurClanBoss(); $curTime = $boosInfo['Date']; $rateMgr = new RatingClanManager(); $clanRateInfo = $rateMgr->getClanRate($clanID); if (empty($clanRateInfo)) { $result = array('id' => $clanID, 'date' => $curTime, 'level' => 1, 'kills' => 0); $rateMgr->addNewClanRate($clanID, $result); } else { if ($clanRateInfo['date'] == $curTime) { $result = $clanRateInfo; } else { $result = array('id' => $clanID, 'date' => $curTime, 'level' => 1, 'kills' => 0); $rateMgr->updateClanRate($clanID, $result); } } return array('clanRateInfo' => $result, 'bossData' => $boosInfo); }