additional update to Mindblade Render

This commit is contained in:
Evan Kranzler 2018-06-25 21:06:56 -04:00
parent 7b8724b3f8
commit c597546718

View file

@ -48,13 +48,13 @@ class MindbladeRenderTriggeredAbility extends TriggeredAbilityImpl {
private boolean usedForCombatDamageStep;
MindbladeRenderTriggeredAbility() {
public MindbladeRenderTriggeredAbility() {
super(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1));
this.addEffect(new LoseLifeSourceControllerEffect(1));
this.usedForCombatDamageStep = false;
}
MindbladeRenderTriggeredAbility(final MindbladeRenderTriggeredAbility effect) {
public MindbladeRenderTriggeredAbility(final MindbladeRenderTriggeredAbility effect) {
super(effect);
this.usedForCombatDamageStep = effect.usedForCombatDamageStep;
}
@ -71,6 +71,13 @@ class MindbladeRenderTriggeredAbility extends TriggeredAbilityImpl {
@Override
public boolean checkTrigger(GameEvent event, Game game) {
if (event.getType() == GameEvent.EventType.COMBAT_DAMAGE_STEP_POST) {
usedForCombatDamageStep = false;
return false;
}
if (event.getType() != GameEvent.EventType.DAMAGED_PLAYER) {
return false;
}
Player controller = game.getPlayer(getControllerId());
if (controller == null) {
return false;
@ -79,17 +86,13 @@ class MindbladeRenderTriggeredAbility extends TriggeredAbilityImpl {
if (damager == null) {
return false;
}
if (event.getType() == GameEvent.EventType.DAMAGED_PLAYER
&& ((DamagedPlayerEvent) event).isCombatDamage()
if (((DamagedPlayerEvent) event).isCombatDamage()
&& controller.hasOpponent(event.getTargetId(), game)
&& damager.hasSubtype(SubType.WARRIOR, game)
&& !usedForCombatDamageStep) {
usedForCombatDamageStep = true;
return true;
}
if (event.getType() == GameEvent.EventType.COMBAT_DAMAGE_STEP_POST) {
usedForCombatDamageStep = false;
}
return false;
}