use EnqueueTriggerAction instead of PutItemOnStackAction for state trigger so they go onto the stack when a player has priority

master
melvinzhang 2015-05-02 13:30:36 +08:00
parent 49d33a7a3d
commit 3e797def5b
2 changed files with 6 additions and 2 deletions

View File

@ -991,6 +991,10 @@ public class MagicGame {
return pendingStack;
}
public boolean hasItem(final MagicSource source, final String desc) {
return stack.hasItem(source, desc) || pendingStack.hasItem(source, desc);
}
public void setPriorityPassed(final boolean passed) {
priorityPassed=passed;
}

View File

@ -14,8 +14,8 @@ public class PutStateTriggerOnStackAction extends MagicAction {
@Override
public void doAction(final MagicGame game) {
if (game.getStack().hasItem(event.getSource(), event.getChoiceDescription()) == false) {
game.doAction(new PutItemOnStackAction(new MagicTriggerOnStack(event)));
if (game.hasItem(event.getSource(), event.getChoiceDescription()) == false) {
game.doAction(new EnqueueTriggerAction(event));
}
}