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