mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-12 08:21:02 +02:00
Fix revived Pokemon not receiving experience share
When a Pokemon faints in battle, onFaint() clears it from the battle participant set. The revive item restored HP but never re-added the mon to self.participants, so at awardExp() time the revived mon passed the HP check but failed the participant gate -- getting no exp. Fix: re-add the revived mon to battle.participants in the revive item effect, so it's counted as a participant and receives its share of experience at battle end. Fixes #648
This commit is contained in:
@@ -324,6 +324,11 @@ function ItemEffects.use(data, save, itemId, target, battle, moveIndex, ow)
|
||||
require("src.core.Sound").play(data, "Heal_HP")
|
||||
-- a revive takes the same .healHP -> .doneHealing route, animating up
|
||||
-- from the fainted mon's 0 HP (#252)
|
||||
-- re-add to participants so the revived mon gets its share of exp
|
||||
-- at battle end (onFaint clears the flag; revive must restore it)
|
||||
if battle and battle.participants then
|
||||
battle.participants[target] = true
|
||||
end
|
||||
return "consumed", { Strings("%s\nis revitalized!", monName(data, target)) },
|
||||
{ healedFrom = 0 }
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user