[OTJ] Implementing "spree" mechanic (#12018)

* [OTJ] Implement Unfortunate Accident

* fix errors

* a few more things

* [OTJ] Implement Three Steps Ahead

* [OTJ] Implement Caught in the Crossfire

* [OTJ] Implement Insatiable Avarice

* add test

* [OTJ] Implement Explosive Derailment

* [OTJ] Implement Requisition Raid

* [OTJ] Implement Rustler Rampage

* add comment to test

* [OTJ] Implement Metamorphic Blast

* [OTJ] Implement Final Showdown

* rework cost addition, add test

* move cost application to its own loop
This commit is contained in:
Evan Kranzler 2024-03-31 12:11:34 -04:00 committed by GitHub
parent fa67b0450f
commit ba20e97b71
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 740 additions and 2 deletions

View file

@ -414,14 +414,17 @@ public class StackAbility extends StackObjectImpl implements Ability {
public void addManaCostsToPay(ManaCost manaCost) {
// Do nothing
}
@Override
public Map<String, Object> getCostsTagMap() {
return ability.getCostsTagMap();
}
@Override
public void setCostsTag(String tag, Object value){
public void setCostsTag(String tag, Object value) {
ability.setCostsTag(tag, value);
}
@Override
public AbilityType getAbilityType() {
return ability.getAbilityType();
@ -539,6 +542,11 @@ public class StackAbility extends StackObjectImpl implements Ability {
throw new UnsupportedOperationException("Not supported.");
}
@Override
public Ability withFirstModeCost(Cost cost) {
throw new UnsupportedOperationException("Not supported.");
}
@Override
public boolean activateAlternateOrAdditionalCosts(MageObject sourceObject, boolean noMana, Player controller, Game game) {
throw new UnsupportedOperationException("Not supported yet.");