*Fix for targeting triggered abilities.

This commit is contained in:
jendave
2011-08-06 16:39:15 +00:00
parent 5a8e070e55
commit b838d0707f
2 changed files with 22 additions and 6 deletions

View File

@@ -3230,9 +3230,17 @@ public class GameAction {
public void playSpellAbility(SpellAbility sa) {
sa.setActivatingPlayer(AllZone.HumanPlayer);
if (sa.getPayCosts() != null){
Target_Selection ts = new Target_Selection(sa.getTarget(), sa);
Cost_Payment payment = new Cost_Payment(sa.getPayCosts(), sa);
if (sa.getPayCosts() != null || sa.getTarget() != null){
Target_Selection ts = new Target_Selection(sa.getTarget(), sa);
Cost_Payment payment = null;
if(sa.getPayCosts() == null)
{
payment = new Cost_Payment(new Ability_Cost("0",sa.getSourceCard().getName(),sa.isAbility()), sa);
}
else
{
payment = new Cost_Payment(sa.getPayCosts(),sa);
}
payment.changeCost();
@@ -3268,11 +3276,19 @@ public class GameAction {
}
}
public void playSpellAbility_NoStack(SpellAbility sa) {
public void playSpellAbility_NoStack(SpellAbility sa,boolean skipTargeting) {
sa.setActivatingPlayer(AllZone.HumanPlayer);
if (sa.getPayCosts() != null){
Target_Selection ts = new Target_Selection(sa.getTarget(), sa);
Target_Selection ts = null;
if(skipTargeting)
{
ts = new Target_Selection(null, sa);
}
else
{
ts = new Target_Selection(sa.getTarget(),sa);
}
Cost_Payment payment = new Cost_Payment(sa.getPayCosts(), sa);
payment.changeCost();

View File

@@ -726,7 +726,7 @@ public class TriggerHandler {
//sa[0].resolve();
if(sa[0].getSourceCard().getController().equals(AllZone.HumanPlayer))
{
AllZone.GameAction.playSpellAbility_NoStack(sa[0]);
AllZone.GameAction.playSpellAbility_NoStack(sa[0],true);
}
else
{