replace class MagicSacrificeAtEnd with a constant in MagicAtEndOfTurnTrigger
parent
792adaaf32
commit
98d50200b3
|
@ -3,7 +3,7 @@
|
||||||
@Override
|
@Override
|
||||||
public MagicEvent executeTrigger(final MagicGame game, final MagicPermanent permanent, final MagicPayedCost payedCost) {
|
public MagicEvent executeTrigger(final MagicGame game, final MagicPermanent permanent, final MagicPayedCost payedCost) {
|
||||||
if (payedCost.isKicked() == false) {
|
if (payedCost.isKicked() == false) {
|
||||||
game.doAction(new MagicAddTriggerAction(permanent, MagicSacrificeAtEnd.create()));
|
game.doAction(new MagicAddTriggerAction(permanent, MagicAtEndOfTurnTrigger.SacrificeAtEnd));
|
||||||
}
|
}
|
||||||
return MagicEvent.NONE;
|
return MagicEvent.NONE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,7 +64,6 @@ import magic.model.trigger.MagicThiefTrigger.Choice;
|
||||||
import magic.model.trigger.MagicThiefTrigger.Player;
|
import magic.model.trigger.MagicThiefTrigger.Player;
|
||||||
import magic.model.trigger.MagicWhenBlocksPumpTrigger;
|
import magic.model.trigger.MagicWhenBlocksPumpTrigger;
|
||||||
import magic.model.trigger.MagicWhenComesIntoPlayTrigger;
|
import magic.model.trigger.MagicWhenComesIntoPlayTrigger;
|
||||||
import magic.model.trigger.MagicSacrificeAtEnd;
|
|
||||||
import magic.model.trigger.MagicWhenDiesTrigger;
|
import magic.model.trigger.MagicWhenDiesTrigger;
|
||||||
import magic.model.trigger.MagicAtEndOfTurnTrigger;
|
import magic.model.trigger.MagicAtEndOfTurnTrigger;
|
||||||
import magic.model.trigger.MagicAtUpkeepTrigger;
|
import magic.model.trigger.MagicAtUpkeepTrigger;
|
||||||
|
@ -372,7 +371,7 @@ public enum MagicAbility {
|
||||||
SacAtEnd("sac at end",-100) {
|
SacAtEnd("sac at end",-100) {
|
||||||
public void addAbilityImpl(final MagicCardDefinition card, final String arg) {
|
public void addAbilityImpl(final MagicCardDefinition card, final String arg) {
|
||||||
assert arg.isEmpty() : this + " does not accept arg = " + arg;
|
assert arg.isEmpty() : this + " does not accept arg = " + arg;
|
||||||
card.add(MagicSacrificeAtEnd.create());
|
card.add(MagicAtEndOfTurnTrigger.SacrificeAtEnd);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ChargeAtUpkeep("charge at upkeep",10) {
|
ChargeAtUpkeep("charge at upkeep",10) {
|
||||||
|
|
|
@ -5,6 +5,7 @@ import magic.model.MagicLocationType;
|
||||||
import magic.model.MagicPermanent;
|
import magic.model.MagicPermanent;
|
||||||
import magic.model.MagicPlayer;
|
import magic.model.MagicPlayer;
|
||||||
import magic.model.action.MagicRemoveFromPlayAction;
|
import magic.model.action.MagicRemoveFromPlayAction;
|
||||||
|
import magic.model.action.MagicSacrificeAction;
|
||||||
import magic.model.event.MagicEvent;
|
import magic.model.event.MagicEvent;
|
||||||
|
|
||||||
public abstract class MagicAtEndOfTurnTrigger extends MagicTrigger<MagicPlayer> {
|
public abstract class MagicAtEndOfTurnTrigger extends MagicTrigger<MagicPlayer> {
|
||||||
|
@ -20,18 +21,12 @@ public abstract class MagicAtEndOfTurnTrigger extends MagicTrigger<MagicPlayer>
|
||||||
|
|
||||||
public static final MagicAtEndOfTurnTrigger ReturnAtEnd = new MagicAtEndOfTurnTrigger() {
|
public static final MagicAtEndOfTurnTrigger ReturnAtEnd = new MagicAtEndOfTurnTrigger() {
|
||||||
@Override
|
@Override
|
||||||
public MagicEvent executeTrigger(
|
public MagicEvent executeTrigger(final MagicGame game, final MagicPermanent permanent, final MagicPlayer eotPlayer) {
|
||||||
final MagicGame game,
|
return new MagicEvent(
|
||||||
final MagicPermanent permanent,
|
|
||||||
final MagicPlayer eotPlayer) {
|
|
||||||
final MagicPlayer player = permanent.getController();
|
|
||||||
return (player == eotPlayer) ?
|
|
||||||
new MagicEvent(
|
|
||||||
permanent,
|
permanent,
|
||||||
player,
|
|
||||||
this,
|
this,
|
||||||
"Return SN to its owner's hand."):
|
"Return SN to its owner's hand."
|
||||||
MagicEvent.NONE;
|
);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void executeEvent(final MagicGame game, final MagicEvent event) {
|
public void executeEvent(final MagicGame game, final MagicEvent event) {
|
||||||
|
@ -41,4 +36,19 @@ public abstract class MagicAtEndOfTurnTrigger extends MagicTrigger<MagicPlayer>
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
public static final MagicAtEndOfTurnTrigger SacrificeAtEnd = new MagicAtEndOfTurnTrigger() {
|
||||||
|
@Override
|
||||||
|
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer eotPlayer) {
|
||||||
|
return new MagicEvent(
|
||||||
|
permanent,
|
||||||
|
this,
|
||||||
|
"Sacrifice SN."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void executeEvent(final MagicGame game, final MagicEvent event) {
|
||||||
|
game.doAction(new MagicSacrificeAction(event.getPermanent()));
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
package magic.model.trigger;
|
|
||||||
|
|
||||||
import magic.model.MagicGame;
|
|
||||||
import magic.model.MagicPermanent;
|
|
||||||
import magic.model.MagicPlayer;
|
|
||||||
import magic.model.action.MagicSacrificeAction;
|
|
||||||
import magic.model.event.MagicEvent;
|
|
||||||
|
|
||||||
public class MagicSacrificeAtEnd extends MagicAtEndOfTurnTrigger {
|
|
||||||
|
|
||||||
private static final MagicSacrificeAtEnd INSTANCE = new MagicSacrificeAtEnd();
|
|
||||||
|
|
||||||
private MagicSacrificeAtEnd() {}
|
|
||||||
|
|
||||||
public static MagicSacrificeAtEnd create() {
|
|
||||||
return INSTANCE;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer eotPlayer) {
|
|
||||||
final MagicPlayer player = permanent.getController();
|
|
||||||
return (player == eotPlayer) ?
|
|
||||||
new MagicEvent(
|
|
||||||
permanent,
|
|
||||||
player,
|
|
||||||
this,
|
|
||||||
"Sacrifice SN."):
|
|
||||||
MagicEvent.NONE;
|
|
||||||
}
|
|
||||||
@Override
|
|
||||||
public void executeEvent(final MagicGame game, final MagicEvent event) {
|
|
||||||
game.doAction(new MagicSacrificeAction(event.getPermanent()));
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue