1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-06 09:09:40 +02:00

Implement STACK_EXPERIENCE_GAIN_PERCENT bonus

Suggested on Discord

- implements STACK_EXPERIENCE_GAIN_PERCENT that modifies stack
experience received by units after combat
- removed "EXPERIENCE" primary skill. Changes to experience are now
applied through separate netpack
This commit is contained in:
Ivan Savenko
2025-06-02 21:21:20 +03:00
parent 4fda657296
commit 139f41c9b2
24 changed files with 167 additions and 65 deletions

View File

@@ -331,8 +331,12 @@ void BattleResultProcessor::endBattleConfirm(const CBattleInfoCallback & battle)
gameHandler->swapGarrisonOnSiege(winnerHero->getVisitedTown()->id); //return defending visitor from garrison to its rightful place
}
//give exp
if(!finishingBattle->isDraw() && battleResult->exp[finishingBattle->winnerSide] && winnerHero)
gameHandler->giveExperience(winnerHero, battleResult->exp[finishingBattle->winnerSide]);
if(!finishingBattle->isDraw() && battleResult->exp[finishingBattle->winnerSide])
{
gameHandler->giveStackExperience(battle.battleGetArmyObject(finishingBattle->winnerSide), battleResult->exp[finishingBattle->winnerSide]);
if (winnerHero)
gameHandler->giveExperience(winnerHero, battleResult->exp[finishingBattle->winnerSide]);
}
// Add statistics
if(loserHero && !finishingBattle->isDraw())