_getSelfMysql(), 't_hero', array( 'account_id' => $this->_getAccountId() ), function ($row) use(&$heroList) { array_push($heroList, Hero::toDto($row)); } ); $this->_rspData(array( 'hero_list' => $heroList )); } public function skinList() { $skinList = array(); SqlHelper::ormSelect( $this->_getSelfMysql(), 't_hero_skin', array( 'account_id' => $this->_getAccountId() ), function ($row) use(&$skinList) { array_push($skinList, HeroSkin::toDto($row)); } ); $this->_rspData(array( 'skin_list' => $skinList )); } public function takeonSkin() { $heroUniId = getReqVal('hero_uniid', 0); $skinId = getReqVal('skin_id', 0); $heroDb = Hero::find($heroUniId); $heroSkinDb = HeroSkin::find($skinId); if (!$heroDb) { $this->_rspErr(1, '你还没这个英雄'); return; } if (!$heroSkinDb) { $this->_rspErr(2, '你还没这个皮肤'); return; } Hero::takeonSkin($heroUniId, $skinId); $this->_rspOk(); } public function upgradeSkill() { $heroUniId = getReqVal('hero_uniid', 0); $skillIdx = getReqVal('skill_idx', 0); $heroDb = Hero::find($heroUniId); if (!$heroDb) { $this->_rspErr(1, '你还没这个英雄'); return; } if (!in_array($skillIdx, array(0, 1))) { $this->_rspErr(1, 'skill_idx参数必须为0-1'); return; } Hero::upgradeSkill($heroUniId, $skillIdx); $this->_rspOk(); } public function upgradeLevel() { $heroUniId = getReqVal('hero_uniid', 0); $heroDb = Hero::find($heroUniId); if (!$heroDb) { $this->_rspErr(1, '英雄不存在'); return; } if ($heroDb['state'] == Hero::GETED_STATE) { $this->_rspErr(3, '试用英雄不能操作'); return; } if ($heroDb['unlock_time'] > $this->_getNowTime()) { $this->_rspErr(2, '锁定期间不能操作'); return; } if ($heroDb['unlock_trade_time'] > $this->_getNowTime()) { $this->_rspErr(2, '锁定期间不能操作'); return; } $heroMeta = mt\Hero::get($heroDb['hero_id']); if (!$heroMeta) { $this->_rspErr(100, '服务器内部错误'); return; } } public function upgradeQuality() { $heroUniId = getReqVal('hero_uniid', 0); } }