Esempio n. 1
0
 /**
  * API:武将解锁直接拥有
  *
  * @access public
  * @param int $user_id 用户ID $general_id主角ID
  * @return array
  */
 public function isUnlock($user_id)
 {
     $starNum = GameAction::getUserStar($user_id);
     $userGeneral = UserCache::getByKey($user_id, 's_general_info');
     if (!$userGeneral) {
         $userGeneral = GeneralModel::getUserGeneralInfo($user_id);
         UserCache::setByKey($user_id, 's_general_info', $userGeneral);
     }
     //读取系统武将,属性列表
     $file = IniFileManager::getRootDir() . "/files/csv/general.csv";
     $generalArr = CharacterAction::readCsv($file);
     foreach ($generalArr as $key => $value) {
         if (!$userGeneral[$value['general_id']]) {
             if ($starNum >= $value['unlock_star']) {
                 //添加新武将到武将信息字段、更新用户金钱
                 $userGeneral[$value['general_id']] = array('n_continue_level' => 0, 'n_cool_level' => 0);
                 $unlockInfo = $value['general_id'];
             }
         }
     }
     $s_general_info = serialize($userGeneral);
     $ret = GeneralModel::update(array('s_general_info' => $s_general_info), array('n_id' => $user_id));
     UserCache::setByKey($user_id, 's_general_info', $userGeneral);
     //更新战斗力
     $battle = UserAction::getUserBattle($user_id);
     GeneralModel::update(array('n_battle' => $battle), array('n_id' => $user_id));
     UserCache::setByKey($user_id, 'n_battle', $battle);
     return $unlockInfo ? $unlockInfo : 0;
 }