Fix handling of damage to permanents (WIP) (#7592)

* initial refactor of damage events

* cleaned up some instances of classes that need to be removed

* removed old damage event classes

* removed outdated imports

* temporarily refactor Everlasting Torment (this will need to be changed more)

* updated damage handling to use new changes

* some reworking of lethal/excess damage plus a test

* updated damage marking to handle planeswalkers

* updated implementation of Phyrexian Unlife

* updated implementation of Everlasting Torment

* added some more excess damage tests

* small change to wither check
This commit is contained in:
Evan Kranzler 2021-02-22 17:11:24 -05:00 committed by GitHub
parent 39f6b69391
commit 5390963d38
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
201 changed files with 1132 additions and 1187 deletions

View file

@ -3,12 +3,13 @@ package mage.game.events;
import java.util.UUID;
/**
*
* @author BetaSteward_at_googlemail.com
*/
public abstract class DamageEvent extends GameEvent {
protected boolean combat;
private boolean asThoughInfect = false;
private boolean asThoughWither = false;
public DamageEvent(EventType type, UUID targetId, UUID damageSourceId, UUID targetControllerId, int amount, boolean preventable, boolean combat) {
super(type, targetId, null, targetControllerId, amount, preventable);
@ -24,4 +25,19 @@ public abstract class DamageEvent extends GameEvent {
return flag;
}
public void setAsThoughInfect(boolean asThoughInfect) {
this.asThoughInfect = asThoughInfect;
}
public boolean isAsThoughInfect() {
return asThoughInfect;
}
public void setAsThoughWither(boolean asThoughWither) {
this.asThoughWither = asThoughWither;
}
public boolean isAsThoughWither() {
return asThoughWither;
}
}