This commit is contained in:
aozhiwei 2022-09-19 10:31:05 +08:00
parent a94be1563f
commit 612c3f3803

View File

@ -583,29 +583,48 @@ class BattleDataService extends BaseService {
private function rewardCegPve()
{
$pveShouYi = 0;
$heroQuality = $this->heroDto['quality'];
$instanceRank = 1;
$instanceRank = $this->getInstanceRank();
{
$cond = $instanceRank > 0;
if (!$cond) {
return;
}
}
$instanceLevel = $this->pveGeminiMeta['gemini_lv'];
$bossReward = 0;
$gun1Ceg = 0;
$gun2Ceg = 0;
$bossReward = getReqVal(pve_kill_boss) ? 1 : 0;
$heroRewardCeg = $pveShouYi *
max(1.15 - ($heroQuality - $instanceLevel) * 0.25, 0) *
(0.8 - ($instanceRank - 1) * 0.25 + $bossReward * 0.2) *
1/10
;
$gun1RewardCeg = $gun1Ceg *
max(1.15 - ($heroQuality - $instanceLevel) * 0.25, 0) *
(0.8 - ($instanceRank - 1) * 0.25 + $bossReward * 0.2) *
1/10
;
$gun2RewardCeg = $gun2Ceg *
max(1.15 - ($heroQuality - $instanceLevel) * 0.25, 0) *
(0.8 - ($instanceRank - 1) * 0.25 + $bossReward * 0.2) *
1/10
;
$heroPveCeg = FormulaService::calcHeroPveCeg($this->heroDto, $instanceLevel, $instanceRank, $bossReward);
$weaponPveCeg1 = 0;
$weaponPveCeg2 = 0;
if ($this->weapon1Dto) {
$weaponPveCeg1 = FormulaService::calcWeaponPveCeg($this->weapon1Dto, $instanceLevel, $instanceRank, $bossReward);
}
if ($this->weapon2Dto) {
$weaponPveCeg2 = FormulaService::calcWeaponPveCeg($this->weapon2Dto, $instanceLevel, $instanceRank, $bossReward);
}
error_log(json_encode(array(
'heroPveCeg' => $heroPveCeg,
'weaponPveCeg1' => $weaponPveCeg1,
'weaponPveCeg2' => $weaponPveCeg2,
)));
if ($heroPveCeg > 0) {
$heroPveCeg = Hero::newGainGold($this->heroDto, $heroPveCeg);
}
if ($weaponPveCeg1 > 0) {
$weaponPveCeg1 = Gun::newGainGold($this->weapon1Dto, $weaponPveCeg1);
}
if ($weaponPveCeg2 > 0) {
$weaponPveCeg2 = Gun::newGainGold($this->weapon1Dto, $weaponPveCeg2);
}
error_log(json_encode(array(
'new_heroPveCeg' => $heroPveCeg,
'new_weaponPveCeg1' => $weaponPveCeg1,
'new_weaponPveCeg2' => $weaponPveCeg2,
)));
$gold = $heroPveCeg + $weaponPveCeg1 + $weaponPveCeg2;
if ($gold > 0) {
myself()->_addVirtualItem(V_ITEM_GOLD, $gold);
}
}
private function getOnlineNumber()
@ -634,12 +653,18 @@ class BattleDataService extends BaseService {
return -1;
}
private function GetInstanceRank()
{
$pveRankScore = getReqVal('pve_rank_score', 0);
$instanceRank = mt\PveGeminiMode::calcStar($this->pveGeminiModeMeta, $pveRankScore);
return $instanceRank;
}
private function getInstanceRankRate()
{
if ($this->pveGeminiModeMeta) {
$pveRankScore = getReqVal('pve_rank_score', 0);
$star = mt\PveGeminiMode::calcStar($this->pveGeminiModeMeta, $pveRankScore);
switch ($star) {
$instanceRank = $this->getInstanceRank();
switch ($instanceRank) {
case 1:
{
return 0.8;