fix Charm targeting when called from a Trigger

This commit is contained in:
slapshot5
2011-10-10 23:45:53 +00:00
parent f435c3ed11
commit c12fc9185a
2 changed files with 5 additions and 2 deletions

View File

@@ -2184,8 +2184,6 @@ public class GameAction {
public void playSpellAbility_NoStack(final SpellAbility sa, final boolean skipTargeting) { public void playSpellAbility_NoStack(final SpellAbility sa, final boolean skipTargeting) {
sa.setActivatingPlayer(AllZone.getHumanPlayer()); sa.setActivatingPlayer(AllZone.getHumanPlayer());
AbilityFactory_Charm.setupCharmSAs(sa);
if (sa.getPayCosts() != null) { if (sa.getPayCosts() != null) {
Target_Selection ts = new Target_Selection(sa.getTarget(), sa); Target_Selection ts = new Target_Selection(sa.getTarget(), sa);
Cost_Payment payment = new Cost_Payment(sa.getPayCosts(), sa); Cost_Payment payment = new Cost_Payment(sa.getPayCosts(), sa);

View File

@@ -11,6 +11,7 @@ import forge.CommandArgs;
import forge.GameActionUtil; import forge.GameActionUtil;
import forge.ComputerUtil; import forge.ComputerUtil;
import forge.card.abilityFactory.AbilityFactory; import forge.card.abilityFactory.AbilityFactory;
import forge.card.abilityFactory.AbilityFactory_Charm;
import forge.card.cost.Cost; import forge.card.cost.Cost;
import forge.card.spellability.Ability; import forge.card.spellability.Ability;
import forge.card.spellability.Ability_Sub; import forge.card.spellability.Ability_Sub;
@@ -451,6 +452,10 @@ public class TriggerHandler {
sa[0].setActivatingPlayer(host.getController()); sa[0].setActivatingPlayer(host.getController());
sa[0].setStackDescription(sa[0].toString()); sa[0].setStackDescription(sa[0].toString());
//TODO - for Charms to supports AI, this needs to be removed
if (sa[0].getActivatingPlayer().isHuman()) {
AbilityFactory_Charm.setupCharmSAs(sa[0]);
}
boolean mand = false; boolean mand = false;
if (params.containsKey("OptionalDecider")) { if (params.containsKey("OptionalDecider")) {
sa[0].setOptionalTrigger(true); sa[0].setOptionalTrigger(true);