protected function _exec() { $heros = $this->getParam('heros', 'array'); $needMore = $this->getParam('more', 'bool'); $characterMgr = new CharacterAccountManager(); $user_clan_mgr = new UserClanManager(); $clan_mgr = new ClanManager(); $result = array(); foreach ($heros as $heroId) { $heroInfo = $characterMgr->getCharacterAccount($heroId); //item 信息 if ($needMore === TRUE) { $item_mgr = new UserGameItemManager($heroId); $items = $item_mgr->getItemList(); $heroInfo['items'] = $items; } if (!empty($heroInfo)) { $user_clan_info = $user_clan_mgr->getUserClanInfo($heroId); if (!empty($user_clan_info)) { $clanInfo = $clan_mgr->getClanInfo($user_clan_info['clan_id']); $clanInfo['clanUser'] = $user_clan_info; $heroInfo['clan'] = $clanInfo; } array_push($result, $heroInfo); } } return array("heros" => $result); }
protected function _exec() { $heroid = $this->getParam('heroid', 'int'); $data_id = $this->getParam('data_id', 'int'); $clan_mgr = new ClanManager(); $user_clan_mgr = new UserClanManager(); $clanInfo = $clan_mgr->getSimClanInfo($data_id); $clanmembers = explode(",", $clanInfo['members']); $total = 20 + 10 * $clanInfo['level']; $canJoin = FALSE; $membersArr = array(); if (count($clanmembers) + 1 > $total) { $canJoin = FALSE; } else { $newUserClan = $user_clan_mgr->creatUserClan($heroid, $data_id); array_push($membersArr, $newUserClan); if (!$clanInfo['members'] || $clanInfo['members'] == "") { $clanInfo['members'] = $heroid; } else { $clanInfo['members'] = $clanInfo['members'] . "," . $heroid; } $clan_mgr->updateClanInfo($data_id, $clanInfo); $clanInfo['clanUser'] = $newUserClan; $canJoin = TRUE; } foreach ($clanmembers as $memberId) { $simclaninfo = $user_clan_mgr->getUserClanInfo($memberId); if (!empty($simclaninfo)) { array_push($membersArr, $simclaninfo); } } array_push($membersArr, $user_clan_mgr->getUserClanInfo($clanInfo['adminId'])); $clanInfo['membersArr'] = $membersArr; return array('clan' => $clanInfo, 'canJoin' => $canJoin); }
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() { $heroid = $this->getParam('heroid', 'int'); $mes = $this->getParam('message', 'string'); $str = $heroid . "||" . time() . "||" . "0" . "||" . $mes; $user_clan_mgr = new UserClanManager(); $userClanInfo = $user_clan_mgr->getUserClanInfo($heroid); if (empty($userClanInfo)) { $this->throwException("hero has no clan {$heroid}"); } $clanId = $userClanInfo['clan_id']; $clan_mgr = new ClanManager(); $clan_mgr->addClanTalk($clanId, $str); $newMessages = $clan_mgr->getClanTalk($clanId); return array("messages" => $newMessages); }
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() { $heroid = $this->getParam('heroid', 'int'); $user_clan_mgr = new UserClanManager(); $user_clan_info = $user_clan_mgr->getUserClanInfo($heroid); if (!empty($user_clan_info)) { $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']); $clan_info['talk'] = $clanTalk; } return array('clan' => $clan_info, 'clanUser' => $user_clan_info); }
protected function _exec() { $gameuid = $this->getParam('gameuid', 'int'); $heroid = $this->getParam('heroid', 'int'); $name = $this->getParam('name', 'string'); $user_clan_mgr = new UserClanManager(); $clanInfo = $user_clan_mgr->getUserClanInfo($heroid); if (!empty($clanInfo)) { $this->throwException("user {$heroid} already have clan "); } $account_mgr = new UserAccountManager(); $account_info = $account_mgr->getUserAccount($gameuid); if ($account_info['gem'] < 20) { $this->throwException("user {$gameuid} not enough gem to buy Clan "); } $clan_mgr = new ClanManager(); $result = $clan_mgr->creatClan($heroid, $name); $user_clan_info = $user_clan_mgr->creatUserClan($heroid, $result['data_id']); $account_mgr->updateUserMoney($gameuid, 20); $hero_mgr = new CharacterAccountManager(); $result['admin'] = $hero_mgr->getCharacterAccount($heroid); $result['membersArr'] = array($user_clan_info); return array('clan' => $result); }
protected function _exec() { $data_id = $this->getParam('data_id', 'int'); $heroid = $this->getParam('heroid', 'int'); $clan_mgr = new ClanManager(); $clanInfo = $clan_mgr->getSimClanInfo($data_id); if (empty($clanInfo)) { $this->throwException("there is no this clan {$data_id}"); } if ($clanInfo['adminId'] == $heroid) { $this->throwException("user {$heroid} can not sign out clan {$data_id}"); } $user_mgr = new UserClanManager(); $user_mgr->deleteClanUser($heroid); $memberArr = explode(",", $clanInfo['members']); foreach ($memberArr as $key => $memberId) { if ($memberId == $heroid) { unset($memberArr[$key]); } } $clanInfo['members'] = implode(",", $memberArr); $clan_mgr->updateClanInfo($data_id, $clanInfo); return array('result' => TRUE); }
public function deleteClan($data_id) { $clan_info = $this->getSimClanInfo($data_id); $this->deleteFromDb($data_id, array('data_id' => $data_id)); require_once GAMELIB . '/model/UserClanManager.class.php'; $user_mgr = new UserClanManager(); $members = explode(",", $clan_info['members']); foreach ($members as $memberId) { $user_mgr->deleteClanUser($memberId); } $user_mgr->deleteClanUser($clan_info['adminId']); require_once GAMELIB . '/model/ClanItemManager.class.php'; $itemManager = new ClanItemManager($data_id); $itemManager->deleteClanItems(); return true; }