- Little AI tweak in AF Animate.

This commit is contained in:
Sloth
2012-09-23 14:02:48 +00:00
parent 3f6807fb8d
commit 2fcc777542
6 changed files with 19 additions and 6 deletions

View File

@@ -5,6 +5,7 @@ Text:no text
PT:4/2
K:Flying
A:AB$ ChangeZone | Cost$ 1 R R R | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to your hand.
SVar:DiscardMe:1
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/firewing_phoenix.jpg
SetInfo:M13|Rare|http://magiccards.info/scans/en/m13/131.jpg

View File

@@ -6,8 +6,8 @@ PT:3/3
K:Flying
A:AB$ ChangeZone | Cost$ 3 R R | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | SpellDescription$ Return CARDNAME from your graveyard to the hand.
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDamage | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, it deals 3 damage to each creature and each player.
SVar:TrigDamage:AB$DamageAll | Cost$ 0 | ValidCards$ Creature | ValidPlayers$ Each | NumDmg$ 3 | ValidDescription$ each creature and each player.
SVar:RemAIDeck:True
SVar:TrigDamage:AB$ DamageAll | Cost$ 0 | ValidCards$ Creature | ValidPlayers$ Each | NumDmg$ 3 | ValidDescription$ each creature and each player.
SVar:DiscardMe:2
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/magma_phoenix.jpg
SetInfo:M11|Rare|http://magiccards.info/scans/en/m11/150.jpg

View File

@@ -4,7 +4,7 @@ Types:Creature Zombie Giant
Text:no text
PT:5/5
A:AB$ ChangeZone | Cost$3 B B Sac<1/Creature> | Origin$ Graveyard | Destination$ Battlefield | ActivationZone$ Graveyard | PlayerTurn$ True | ActivationPhases$ Upkeep | SpellDescription$ Return CARDNAME from your graveyard to the battlefield. Activate this ability only during your upkeep.
SVar:RemAIDeck:True
SVar:DiscardMe:1
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/necrosavant.jpg
SetInfo:VIS|Rare|http://magiccards.info/scans/en/vi/15.jpg

View File

@@ -7,6 +7,8 @@ K:Haste
K:Shadow
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.YouCtrl+Other | OptionalDecider$ You | TriggerZones$ Graveyard | Execute$ TrigReturn | TriggerDescription$ Whenever another creature is put into your graveyard from the battlefield, you may pay B. If you do, return CARDNAME from your graveyard to the battlefield.
SVar:TrigReturn:AB$ChangeZone | Cost$ B | Defined$ Self | Origin$ Graveyard | Destination$ Battlefield
SVar:SacMe:1
SVar:DiscardMe:1
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/nether_traitor.jpg
SetInfo:TSP|Rare|http://magiccards.info/scans/en/ts/120.jpg

View File

@@ -6,6 +6,7 @@ PT:2/2
K:Flying
A:AB$ ChangeZone | Cost$ R R R | Origin$ Graveyard | Destination$ Hand | ActivationZone$ Graveyard | ActivationPhases$ Upkeep | PlayerTurn$ True | SpellDescription$ Return CARDNAME from your graveyard to your hand. Play this ability only during your upkeep.
A:AB$ DamageAll | Cost$ Sac<1/CARDNAME> | ValidCards$ Creature.withoutFlying | NumDmg$ 2 | ValidDescription$ each creature without flying. | SpellDescription$ CARDNAME deals 2 damage to each creature without flying.
SVar:DiscardMe:1
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/shard_phoenix.jpg
SetInfo:STH|Rare|http://magiccards.info/scans/en/sh/97.jpg

View File

@@ -359,15 +359,24 @@ public final class AbilityFactoryAnimate {
// don't use instant speed animate abilities outside computers
// Combat_Begin step
if (!Singletons.getModel().getGameState().getPhaseHandler().is(PhaseType.COMBAT_BEGIN)
&& Singletons.getModel().getGameState().getPhaseHandler().isPlayerTurn(AllZone.getComputerPlayer()) && !AbilityFactory.isSorcerySpeed(sa)
&& Singletons.getModel().getGameState().getPhaseHandler().isPlayerTurn(AllZone.getComputerPlayer())
&& !AbilityFactory.isSorcerySpeed(sa)
&& !params.containsKey("ActivationPhases") && !params.containsKey("Permanent")) {
return false;
}
// don't animate if the AI won't attack anyway
if (Singletons.getModel().getGameState().getPhaseHandler().isPlayerTurn(AllZone.getComputerPlayer())
&& AllZone.getComputerPlayer().getLife() < 6 && AllZone.getHumanPlayer().getLife() > 6
&& !AllZone.getHumanPlayer().getCardsIn(ZoneType.Battlefield).getType("Creature").isEmpty()) {
return false;
}
// don't use instant speed animate abilities outside humans
// Combat_Declare_Attackers_InstantAbility step
if ((!Singletons.getModel().getGameState().getPhaseHandler().is(PhaseType.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY) || (AllZone.getCombat()
.getAttackers().isEmpty())) && Singletons.getModel().getGameState().getPhaseHandler().isPlayerTurn(AllZone.getHumanPlayer())) {
if ((!Singletons.getModel().getGameState().getPhaseHandler().is(PhaseType.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY)
|| (AllZone.getCombat().getAttackers().isEmpty()))
&& Singletons.getModel().getGameState().getPhaseHandler().isPlayerTurn(AllZone.getHumanPlayer())) {
return false;
}