1
0
Fork 0
mirror of https://github.com/correl/mage.git synced 2025-02-19 11:07:01 +00:00

Fixed gain and lose life events that didn't interact with replacement effects correctly

This commit is contained in:
magenoxx 2012-07-12 05:19:45 +04:00
parent d958fb9fbf
commit dc6888788d

View file

@ -827,7 +827,7 @@ public abstract class PlayerImpl<T extends PlayerImpl<T>> implements Player, Ser
if (!canLoseLife) return 0;
GameEvent event = new GameEvent(GameEvent.EventType.LOSE_LIFE, playerId, playerId, playerId, amount, false);
if (!game.replaceEvent(event)) {
this.life -= amount;
this.life -= event.getAmount();
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.LOST_LIFE, playerId, playerId, playerId, amount));
return amount;
}
@ -849,7 +849,7 @@ public abstract class PlayerImpl<T extends PlayerImpl<T>> implements Player, Ser
if (!canGainLife) return 0;
GameEvent event = new GameEvent(GameEvent.EventType.GAIN_LIFE, playerId, playerId, playerId, amount, false);
if (!game.replaceEvent(event)) {
this.life += amount;
this.life += event.getAmount();
game.fireEvent(GameEvent.getEvent(GameEvent.EventType.GAINED_LIFE, playerId, playerId, playerId, amount));
return amount;
}