예제 #1
0
 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";
                 }
             }
         }
     }
 }
예제 #2
0
     //	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) {
예제 #3
0
 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";
 }
예제 #4
0
파일: S2P_4.php 프로젝트: bluefan/phpsource
 /**
  * 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;
     }
 }