This commit is contained in:
hujiabin 2022-11-08 15:25:41 +08:00
parent 6920eda7d9
commit de7544b7ac

View File

@ -151,8 +151,7 @@ class CallbackController extends BaseController {
public function heroUpgradeQuality(){ public function heroUpgradeQuality(){
$transId = getReqVal('trans_id', '0'); $transId = getReqVal('trans_id', '0');
$tokenId = getReqVal('token_id', '0'); $tokenId = getReqVal('token_id', '0');
$quality = getReqVal('quality', '0'); if (!$transId || !$tokenId){
if (!$transId || !$tokenId || !$quality){
myself()->_rspErr(1, 'param error'); myself()->_rspErr(1, 'param error');
return; return;
} }
@ -171,16 +170,16 @@ class CallbackController extends BaseController {
myself()->_rspErr(1, 'token_id param error'); myself()->_rspErr(1, 'token_id param error');
return; return;
} }
$nextQualityMeta = mt\HeroQuality::getByQuality($quality); $nextQualityMeta = mt\HeroQuality::getByQuality($heroDb['quality']+1);
if (! $nextQualityMeta){ if (! $nextQualityMeta){
$this->_rspErr(1, 'quality is full'); $this->_rspErr(1, 'quality is full');
return; return;
} }
$heroLucky = \services\FormulaService::Hero_Advanced_Lucky_Value($heroDb['quality']); $heroLucky = \services\FormulaService::Hero_Advanced_Lucky_Value($heroDb['quality']);
$nextHeroLucky = \services\FormulaService::Hero_Advanced_Lucky_Value($quality); $nextHeroLucky = \services\FormulaService::Hero_Advanced_Lucky_Value($heroDb['quality']+1);
$heroTili = \services\FormulaService::Hero_NFT_Maximum_Physical_Strength($heroDb['quality'],$heroLucky); $heroTili = \services\FormulaService::Hero_NFT_Maximum_Physical_Strength($heroDb['quality'],$heroLucky);
$nextHeroTili = \services\FormulaService::Hero_NFT_Maximum_Physical_Strength($quality,$nextHeroLucky); $nextHeroTili = \services\FormulaService::Hero_NFT_Maximum_Physical_Strength($heroDb['quality']+1,$nextHeroLucky);
SqlHelper::update SqlHelper::update
( myself()->_getMysql($this->accountId), ( myself()->_getMysql($this->accountId),
't_hero', 't_hero',
@ -190,7 +189,7 @@ class CallbackController extends BaseController {
array( array(
'hero_tili' => $heroDb['hero_tili']+($nextHeroTili-$heroTili), 'hero_tili' => $heroDb['hero_tili']+($nextHeroTili-$heroTili),
'skill_points' => $heroDb['skill_points'] + $nextQualityMeta['skill_point'], 'skill_points' => $heroDb['skill_points'] + $nextQualityMeta['skill_point'],
'quality' => $quality, 'quality' => $heroDb['quality']+1,
'advanced_count' => $heroDb['advanced_count'] + 1, 'advanced_count' => $heroDb['advanced_count'] + 1,
'lock_type' => 0, 'lock_type' => 0,
'unlock_time' => 0, 'unlock_time' => 0,
@ -211,8 +210,7 @@ class CallbackController extends BaseController {
public function gunUpgradeQuality(){ public function gunUpgradeQuality(){
$transId = getReqVal('trans_id', '0'); $transId = getReqVal('trans_id', '0');
$tokenId = getReqVal('token_id', '0'); $tokenId = getReqVal('token_id', '0');
$quality = getReqVal('quality', '0'); if (!$transId || !$tokenId){
if (!$transId || !$tokenId || !$quality){
myself()->_rspErr(1, 'param error'); myself()->_rspErr(1, 'param error');
return; return;
} }
@ -231,15 +229,15 @@ class CallbackController extends BaseController {
myself()->_rspErr(1, 'token_id param error'); myself()->_rspErr(1, 'token_id param error');
return; return;
} }
$nextQualityMeta = mt\GunQuality::getByQuality($quality); $nextQualityMeta = mt\GunQuality::getByQuality($gunDb['quality']+1);
if (!$nextQualityMeta) { if (!$nextQualityMeta) {
$this->_rspErr(1, 'quality is full'); $this->_rspErr(1, 'quality is full');
return; return;
} }
$gunLucky = \services\FormulaService::Weapon_Advanced_Lucky_Value($gunDb['quality']); $gunLucky = \services\FormulaService::Weapon_Advanced_Lucky_Value($gunDb['quality']);
$nextGunLucky = \services\FormulaService::Weapon_Advanced_Lucky_Value($quality); $nextGunLucky = \services\FormulaService::Weapon_Advanced_Lucky_Value($gunDb['quality']+1);
$durability = \services\FormulaService::Weapon_NFT_Maximum_Durability($gunDb['quality'],$gunLucky); $durability = \services\FormulaService::Weapon_NFT_Maximum_Durability($gunDb['quality'],$gunLucky);
$nextDurability = \services\FormulaService::Weapon_NFT_Maximum_Durability($quality,$nextGunLucky); $nextDurability = \services\FormulaService::Weapon_NFT_Maximum_Durability($gunDb['quality']+1,$nextGunLucky);
SqlHelper::update SqlHelper::update
(myself()->_getMysql($this->accountId), (myself()->_getMysql($this->accountId),
@ -249,7 +247,7 @@ class CallbackController extends BaseController {
), ),
array( array(
'durability' => $gunDb['durability']+($nextDurability-$durability), 'durability' => $gunDb['durability']+($nextDurability-$durability),
'quality' => $quality, 'quality' => $gunDb['quality']+1,
'lock_type' => 0, 'lock_type' => 0,
'unlock_time' => 0, 'unlock_time' => 0,
'labour' => 0, 'labour' => 0,
@ -270,8 +268,7 @@ class CallbackController extends BaseController {
public function chipUpgradeGrade(){ public function chipUpgradeGrade(){
$transId = getReqVal('trans_id', '0'); $transId = getReqVal('trans_id', '0');
$tokenId = getReqVal('token_id', '0'); $tokenId = getReqVal('token_id', '0');
$grade = getReqVal('grade', '0'); if (!$transId || !$tokenId){
if (!$transId || !$tokenId || !$grade){
myself()->_rspErr(1, 'param error'); myself()->_rspErr(1, 'param error');
return; return;
} }
@ -290,25 +287,26 @@ class CallbackController extends BaseController {
myself()->_rspErr(1, 'token_id param error'); myself()->_rspErr(1, 'token_id param error');
return; return;
} }
if ($grade > 15){ $nextGrade = $chipDb['chip_grade']+1;
if ($nextGrade > 15){
myself()->_rspErr(1, 'Chip Lv upper limit'); myself()->_rspErr(1, 'Chip Lv upper limit');
return; return;
} }
if ($grade == 3 || $grade == 5){ if ($nextGrade == 3 || $nextGrade == 5){
Chip::updateRandAttr($this->accountId,$chipDb); Chip::updateRandAttr($this->accountId,$chipDb);
} }
$lucky = ltrim(\services\FormulaService::getChipLuckyValue($grade),'-') ; $lucky = ltrim(\services\FormulaService::getChipLuckyValue($nextGrade),'-') ;
if ($grade>=5){ if ($nextGrade>=5){
$fieldsKv = array( $fieldsKv = array(
'lucky_temporary'=>$lucky, 'lucky_temporary'=>$lucky,
'chip_grade'=>$grade, 'chip_grade'=>$nextGrade,
'supper_state'=>1, 'supper_state'=>1,
'modifytime' => myself()->_getNowTime() 'modifytime' => myself()->_getNowTime()
); );
}else{ }else{
$fieldsKv = array( $fieldsKv = array(
'lucky_temporary'=>$lucky, 'lucky_temporary'=>$lucky,
'chip_grade'=>$grade, 'chip_grade'=>$nextGrade,
'modifytime' => myself()->_getNowTime() 'modifytime' => myself()->_getNowTime()
); );
} }