Commit e22ded1bb23b14cc8e894a9ea692281d20301486
1 parent
e7c3d3da
被动技奖励
Showing
1 changed file
with
13 additions
and
6 deletions
Show diff stats
src/adv/Adv.lua
... | ... | @@ -642,16 +642,13 @@ function Adv:over(success, rewardRatio, overType) |
642 | 642 | end |
643 | 643 | local chapterData = csvdb["adv_chapterCsv"][self.chapterId] |
644 | 644 | -- 扣除的东西给积分 |
645 | - local reward = self.owner:getProperty("advItems"):toNumMap() | |
646 | 645 | local addScore = 0 |
647 | - for itemId, count in pairs(reward) do | |
646 | + for itemId, count in pairs(self.owner:getProperty("advItems"):toNumMap()) do | |
648 | 647 | local itemCsv = csvdb["itemCsv"][itemId] |
649 | 648 | if not itemCsv then |
650 | 649 | print("ERROR: no itemId in ItemCsv : ", itemId) |
651 | 650 | elseif itemCsv.type == ItemType.AdvItem then |
652 | 651 | addScore = addScore + count * itemCsv.advScore |
653 | - else | |
654 | - reward[itemId] = math.ceil(count * rewardRatio / 100) | |
655 | 652 | end |
656 | 653 | end |
657 | 654 | self:scoreChange(AdvScoreType.ItemBack, addScore) |
... | ... | @@ -662,10 +659,20 @@ function Adv:over(success, rewardRatio, overType) |
662 | 659 | local scoreReward = math.floor(score / chapterData.scoreAward) |
663 | 660 | self.owner:award({[ItemId.OldCoin] = scoreReward}) |
664 | 661 | |
665 | - reward = self.owner:award(reward) | |
666 | - | |
662 | + -- 被动技会影响奖励 | |
667 | 663 | self.battle.player:triggerPassive(Passive.ADV_OVER, {score = score, level = self.level}) |
668 | 664 | |
665 | + local reward = {} | |
666 | + for itemId, count in pairs(self.owner:getProperty("advItems"):toNumMap()) do | |
667 | + local itemCsv = csvdb["itemCsv"][itemId] | |
668 | + if not itemCsv then | |
669 | + print("ERROR: no itemId in ItemCsv : ", itemId) | |
670 | + elseif itemCsv.type ~= ItemType.AdvItem then | |
671 | + reward[itemId] = math.ceil(count * rewardRatio / 100) | |
672 | + end | |
673 | + end | |
674 | + reward = self.owner:award(reward) | |
675 | + | |
669 | 676 | if success then |
670 | 677 | self.owner:checkTaskEnter("AdvPass", {id = self.chapterId, level = self.level, score = score}) |
671 | 678 | ... | ... |