public function run() { $objAccount = TenYear::getInstance('Data_Account'); $objPlayerInitGame = TenYear::getInstance('Game_PlayerInit'); for ($i = 1; $i <= 10; $i++) { $strUserAccount = "ggmmhg100" . $i; $playerid = $objAccount->get_pid_byaccount($strUserAccount); $player_character = Cache_PlayerRole::getInstance()->get_player_role(); if (!$playerid) { $name = $strUserAccount; $playerid = $objAccount->add_account($strUserAccount, $name); // $character = ($i%4)+1; $character = rand(3, 4); $arrCharacter = $player_character[$character]; $arrData = array(); $arrData['player_id'] = $playerid; $arrData['user_account'] = $strUserAccount; $arrData['name'] = $name; $arrData['career_type'] = $arrCharacter['career_type']; $arrData['avatar'] = $arrCharacter['avatar']; $arrData['sex'] = $arrCharacter['sex']; $arrData['ad_info'] = ''; $arrData['client_ip'] = '127.0.0.1'; $arrData['exec'] = 1; $affectedRows = $objPlayerInitGame->active($arrData); if ($affectedRows) { $sql = "replace into test_account (player_id,user_account,career_type) values ('{$playerid}','{$strUserAccount}','{$arrCharacter['career_type']}')"; $result = $this->query($sql); if ($result) { echo "{$strUserAccount}\n"; } } } } }
// url_msg_redirect("您填写的昵称不合法!!","/active.php"); if ($bAjax) { exit("result=0&msg=" . $arrLanguage["10214"]['content']); } else { Com_System::url_redirect($webUrl . "/active.php?e_code=-16"); } } if (is_numeric($name)) { // url_msg_redirect("您填写的昵称不合法!!","/active.php"); if ($bAjax) { exit("result=0&msg=" . $arrLanguage["10214"]['content']); } else { Com_System::url_redirect($webUrl . "/active.php?e_code=-16"); } } $player_character = Cache_PlayerRole::getInstance()->get_player_role(); if (!isset($player_character[$character])) { // url_redirect($strTenYearUrl); if ($bAjax) { exit("result=0&msg=" . $arrLanguage["10216"]['content']); } else { Com_System::url_redirect($webUrl . "/active.php?e_code=-18"); } } $arrCharacter = $player_character[$character]; $objAccount = TenYear::getInstance('Data_Account'); // $playerid = $objAccount->get_pid_byname($name, true); $playerid = $objAccount->get_pid_byname($name, false); if ($playerid) { //用户角色已存在 if ($bAjax) {
public function run() { # 获取虚拟玩家配置信息列表 $dummy_role_list = Cache_Ladder::getInstance()->get_dummy_role_list(); if (empty($dummy_role_list)) { return false; } $dummy_role_count = count($dummy_role_list); if (empty($dummy_role_count)) { return false; } $player_career_info = Cache_PlayerRole::getInstance()->get_player_role(); # 职业信息 $timestamp = time(); echo "Start generate dummy role ...\n"; echo "\n================================================================\n"; for ($i = 0; $i < $dummy_role_count; $i++) { echo "---------------------------------------------\n"; $dr_account = "dummy_role_" . $timestamp . "_" . $i; # 账号,保证不重复,避免account表的user_account字段唯一索引导致插入失败 $dr_career_type = $dummy_role_list[$i]['career_type']; # 职业 $dr_sex = $player_career_info[$dr_career_type]['sex']; # 性别 $dr_name = TenYear::getInstance('Data_PlayerName')->get_rand_name($dr_sex); # 昵称 $player_id = TenYear::getInstance('Data_Account')->add_account($dr_account, $dr_name); # ID if (empty($player_id)) { $this->throw_exception(array('message' => 'Failed to get player id ...', 'code' => 0)); } $dr_info = array(); $dr_info['player_id'] = $player_id; $dr_info['user_account'] = $dr_account; $dr_info['name'] = $dr_name; $dr_info['career_type'] = $dr_career_type; $dr_info['avatar'] = $player_career_info[$dr_career_type]['avatar']; $dr_info['sex'] = $dr_sex; $dr_info['ad_info'] = ''; $dr_info['client_ip'] = '127.0.0.1'; $dr_info['session_id'] = ''; $dr_info['adult_flag'] = 0; $dr_info['exec'] = 1; $dr_info['is_dummy'] = $dummy_role_list[$i]['is_dummy']; echo "[player_id:{$player_id}] Start active dummy role ...\n"; $ret = TenYear::getInstance('Game_PlayerInit')->active($dr_info); # ---------------------------------------------------------------- # TODO: 调整玩家等级 # ---------------------------------------------------------------- # ---------------------------------------------------------------- #【装备处理】发送并穿戴虚拟玩家配置表中的装备 # ---------------------------------------------------------------- echo "[player_id:{$player_id}] Start handle_equip_for_dummy ...\n"; $this->handle_equip_for_dummy($player_id, $dummy_role_list[$i]['equip_info']); # ---------------------------------------------------------------- #【技能处理】激活并升级并启用虚拟玩家配置表中的技能 # ---------------------------------------------------------------- echo "[player_id:{$player_id}] Start handle_skill_for_dummy ...\n"; $this->handle_skill_for_dummy($dr_info, $dummy_role_list[$i]['skill_info']); # ---------------------------------------------------------------- #【英雄处理】发放并出战虚拟玩家配置表中的英雄 # ---------------------------------------------------------------- echo "[player_id:{$player_id}] Start handle_hero_for_dummy ...\n"; $this->handle_hero_for_dummy($dr_info, $dummy_role_list[$i]['hero_info']); # ---------------------------------------------------------------- #【精灵处理】发放并出战虚拟玩家配置表中的精灵 # ---------------------------------------------------------------- echo "[player_id:{$player_id}] Start handle_fairy_for_dummy ...\n"; $this->handle_fairy_for_dummy($dr_info, $dummy_role_list[$i]['fairy_info']); # ---------------------------------------------------------------- #【时装处理】发放并穿戴虚拟玩家配置表中的时装 # ---------------------------------------------------------------- echo "[player_id:{$player_id}] Start handle_fashion_for_dummy ...\n"; $this->handle_fashion_for_dummy($player_id, $dummy_role_list[$i]['fashion_info']); echo "---------------------------------------------\n"; } echo "\n================================================================\n"; echo "End generate dummy role ...\n"; }
/** * C++服务器通知PHP服务器护送任务失败或成功,失败一般是由于被护送的NPC死亡导致 ****废弃 * 暂时征用当 做压测创建账号用 */ public function CMD2_411() { $strUserAccount = $this->_param; // Com_Log::write("cmd2_411",var_export($this->_param,true)); $objAccount = $this->get_data('Account'); $objPlayerInitGame = $this->get_game('PlayerInit'); $playerid = $objAccount->get_pid_byaccount($this->_param[0]); $player_character = Cache_PlayerRole::getInstance()->get_player_role(); $name = $strUserAccount; $playerid = $objAccount->add_account($strUserAccount, $name); $character = rand(3, 4); $arrCharacter = $player_character[$character]; $arrData = array(); $arrData['player_id'] = $playerid; $arrData['user_account'] = $strUserAccount; $arrData['name'] = $name; $arrData['career_type'] = $arrCharacter['career_type']; $arrData['avatar'] = $arrCharacter['avatar']; $arrData['sex'] = $arrCharacter['sex']; $arrData['ad_info'] = 0; $arrData['client_ip'] = '127.0.0.1'; $arrData['exec'] = 1; $affectedRows = $objPlayerInitGame->active($arrData); if ($affectedRows) { echo json_encode(array('id' => $playerid)); return; } }