replace player with PN

master
melvin 2012-09-22 10:12:13 +08:00
parent 21c483e570
commit 791305ad0e
7 changed files with 65 additions and 73 deletions

View File

@ -21,12 +21,12 @@ public class Craterhoof_Behemoth {
final MagicPermanent permanent,
final MagicPlayer player) {
return new MagicEvent(
permanent,
player,
this,
"Creatures " + player + " controls gain trample " +
"and get +X/+X until end of turn, where X is " +
"the number of creatures " + player + " controls.");
permanent,
this,
"Creatures PN controls gain trample " +
"and get +X/+X until end of turn, where X is " +
"the number of creatures PN controls."
);
}
@Override
public void executeEvent(

View File

@ -47,19 +47,18 @@ public class Deathbringer_Liege {
};
public static final MagicWhenOtherSpellIsCastTrigger T = new MagicWhenOtherSpellIsCastTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicCardOnStack data) {
final MagicPlayer player=permanent.getController();
final MagicCard card=data.getCard();
return (card.getOwner()==player&&MagicColor.Black.hasColor(card.getColorFlags())) ?
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicCardOnStack spell) {
return (permanent.isFriend(spell) &&
MagicColor.Black.hasColor(spell.getColorFlags())) ?
new MagicEvent(
permanent,
player,
new MagicMayChoice(
player + " may destroy target creature if it's tapped.",
MagicTargetChoice.NEG_TARGET_CREATURE),
new MagicDestroyTargetPicker(false),
this,
player + " may$ destroy target creature$ if it's tapped."):
permanent,
new MagicMayChoice(
MagicTargetChoice.NEG_TARGET_CREATURE
),
new MagicDestroyTargetPicker(false),
this,
"PN may$ destroy target creature$ if it's tapped."
):
MagicEvent.NONE;
}
@ -79,19 +78,18 @@ public class Deathbringer_Liege {
public static final MagicWhenOtherSpellIsCastTrigger T2 = new MagicWhenOtherSpellIsCastTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicCardOnStack data) {
final MagicPlayer player=permanent.getController();
final MagicCard card=data.getCard();
return (card.getOwner()==player&&MagicColor.White.hasColor(card.getColorFlags())) ?
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicCardOnStack spell) {
return (permanent.isFriend(spell) &&
MagicColor.White.hasColor(spell.getColorFlags())) ?
new MagicEvent(
permanent,
player,
new MagicMayChoice(
player + " may tap target creature.",
MagicTargetChoice.NEG_TARGET_CREATURE),
new MagicTapTargetPicker(true,false),
this,
player + " may$ tap target creature$."):
permanent,
new MagicMayChoice(
MagicTargetChoice.NEG_TARGET_CREATURE
),
new MagicTapTargetPicker(true,false),
this,
"PN may$ tap target creature$."
):
MagicEvent.NONE;
}
@Override

View File

@ -20,16 +20,15 @@ public class Eternal_Witness {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent, final MagicPlayer player) {
return new MagicEvent(
permanent,
player,
new MagicMayChoice(
player + " may return target card from " +
"his or her graveyard to his or her hand.",
MagicTargetChoice.TARGET_CARD_FROM_GRAVEYARD),
new MagicGraveyardTargetPicker(false),
this,
player + " may$ return target card$ from " +
"his or her graveyard to his or her hand.");
permanent,
new MagicMayChoice(
MagicTargetChoice.TARGET_CARD_FROM_GRAVEYARD
),
new MagicGraveyardTargetPicker(false),
this,
"PN may$ return target card$ from " +
"his or her graveyard to his or her hand."
);
}
@Override

View File

@ -25,9 +25,8 @@ public class Geist_Honored_Monk {
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer player) {
return new MagicEvent(
permanent,
player,
this,
player + " puts two 1/1 white Spirit creature tokens with flying onto the battlefield.");
"PN puts two 1/1 white Spirit creature tokens with flying onto the battlefield.");
}
@Override

View File

@ -10,13 +10,14 @@ import magic.model.trigger.MagicAtUpkeepTrigger;
public class Howling_Mine {
public static final MagicAtUpkeepTrigger T = new MagicAtUpkeepTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer player) {
return (permanent.isUntapped()) ?
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer upkeepPlayer) {
return permanent.isUntapped() ?
new MagicEvent(
permanent,
player,
upkeepPlayer,
this,
player + " draws a card."):
"PN draws a card."
):
MagicEvent.NONE;
}

View File

@ -16,17 +16,15 @@ public class Requiem_Angel {
final MagicGame game,
final MagicPermanent permanent,
final MagicPermanent otherPermanent) {
final MagicPlayer player = permanent.getController();
return (permanent != otherPermanent &&
otherPermanent.getController() == player &&
otherPermanent.isFriend(permanent) &&
otherPermanent.isCreature() &&
!otherPermanent.hasSubType(MagicSubType.Spirit)) ?
new MagicEvent(
permanent,
player,
this,
player + " puts a 1/1 white Spirit creature " +
"token with flying onto the battlefield."):
"PN puts a 1/1 white Spirit creature " +
"token with flying onto the battlefield."):
MagicEvent.NONE;
}
@Override

View File

@ -6,37 +6,34 @@ import magic.model.MagicPermanent;
import magic.model.MagicPlayer;
import magic.model.action.MagicChangeLifeAction;
import magic.model.event.MagicEvent;
import magic.model.event.MagicEventAction;
import magic.model.trigger.MagicWhenDamageIsDealtTrigger;
public class Souls_of_the_Faultless {
public static final MagicWhenDamageIsDealtTrigger T = new MagicWhenDamageIsDealtTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicDamage damage) {
final MagicPlayer player=permanent.getController();
final MagicPlayer opponent=damage.getSource().getController();
final int amount=damage.getDealtAmount();
return (damage.getTarget()==permanent &&
final MagicPlayer attackingPlayer = damage.getSource().getController();
final int pIndex = attackingPlayer.getIndex();
final int amount = damage.getDealtAmount();
return (damage.getTarget() == permanent &&
damage.isCombat()) ?
new MagicEvent(
permanent,
player,
new Object[]{player,opponent,amount},
this,
player + " gains " + amount + " life and attacking player loses " +
amount + " life.") :
permanent,
new MagicEventAction() {
@Override
public void executeEvent(
final MagicGame game,
final MagicEvent event,
final Object data[],
final Object[] choiceResults) {
game.doAction(new MagicChangeLifeAction(event.getPlayer(),amount));
game.doAction(new MagicChangeLifeAction(game.getPlayer(pIndex),-amount));
}
},
"PN gains " + amount + " life and " +
attackingPlayer + " loses " + amount + " life.") :
MagicEvent.NONE;
}
@Override
public void executeEvent(
final MagicGame game,
final MagicEvent event,
final Object data[],
final Object[] choiceResults) {
final int life=(Integer)data[2];
game.doAction(new MagicChangeLifeAction((MagicPlayer)data[0],life));
game.doAction(new MagicChangeLifeAction((MagicPlayer)data[1],-life));
}
};
}