mirror of
https://github.com/magefree/mage.git
synced 2025-12-25 13:02:06 -08:00
fix #11385 - triggers once per turn
even if another effect would cause additional triggers
This commit is contained in:
parent
e8b94d566a
commit
daecbe2071
3 changed files with 9 additions and 1 deletions
|
|
@ -97,7 +97,8 @@ public class TriggeredAbilities extends ConcurrentHashMap<String, TriggeredAbili
|
|||
NumberOfTriggersEvent numberOfTriggersEvent = new NumberOfTriggersEvent(ability, event);
|
||||
// event == null - state based triggers like StateTriggeredAbility, must be ignored for number event
|
||||
if (event == null || !game.replaceEvent(numberOfTriggersEvent, ability)) {
|
||||
for (int i = 0; i < numberOfTriggersEvent.getAmount(); i++) {
|
||||
int numTriggers = ability.getTriggersOnceEachTurn() ? 1 : numberOfTriggersEvent.getAmount();
|
||||
for (int i = 0; i < numTriggers; i++) {
|
||||
ability.trigger(game, ability.getControllerId(), event);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,6 +33,8 @@ public interface TriggeredAbility extends Ability {
|
|||
|
||||
TriggeredAbility setTriggersOnceEachTurn(boolean triggersOnce);
|
||||
|
||||
boolean getTriggersOnceEachTurn();
|
||||
|
||||
TriggeredAbility setDoOnlyOnceEachTurn(boolean doOnlyOnce);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -123,6 +123,11 @@ public abstract class TriggeredAbilityImpl extends AbilityImpl implements Trigge
|
|||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean getTriggersOnceEachTurn() {
|
||||
return this.triggersOnceEachTurn;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TriggeredAbility setDoOnlyOnceEachTurn(boolean doOnlyOnce) {
|
||||
this.optional = true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue