[KHM] Implemented The Trickster-God's Heist

This commit is contained in:
Evan Kranzler 2021-01-09 16:35:16 -05:00
parent 75f0a43919
commit a7b610d59d
3 changed files with 148 additions and 4 deletions

View file

@ -52,7 +52,11 @@ public class SagaAbility extends SimpleStaticAbility {
}
public void addChapterEffect(Card card, SagaChapter fromChapter, SagaChapter toChapter, Effect effect, Target target) {
addChapterEffect(card, fromChapter, toChapter, new Effects(effect), new Targets(target));
addChapterEffect(card, fromChapter, toChapter, effect, target, false);
}
public void addChapterEffect(Card card, SagaChapter fromChapter, SagaChapter toChapter, Effect effect, Target target, boolean optional) {
addChapterEffect(card, fromChapter, toChapter, new Effects(effect), new Targets(target), optional);
}
public void addChapterEffect(Card card, SagaChapter fromChapter, SagaChapter toChapter, Effects effects, Target target) {
@ -60,9 +64,13 @@ public class SagaAbility extends SimpleStaticAbility {
}
public void addChapterEffect(Card card, SagaChapter fromChapter, SagaChapter toChapter, Effects effects, Targets targets) {
addChapterEffect(card, fromChapter, toChapter, effects, targets, false);
}
public void addChapterEffect(Card card, SagaChapter fromChapter, SagaChapter toChapter, Effects effects, Targets targets, boolean optional) {
ChapterTriggeredAbility ability;
for (int i = fromChapter.getNumber(); i <= toChapter.getNumber(); i++) {
ability = new ChapterTriggeredAbility(null, SagaChapter.getChapter(i), toChapter);
ability = new ChapterTriggeredAbility(null, SagaChapter.getChapter(i), toChapter, optional);
for (Effect effect : effects) {
if (effect != null) {
ability.addEffect(effect.copy());
@ -113,8 +121,8 @@ class ChapterTriggeredAbility extends TriggeredAbilityImpl {
private SagaChapter chapterFrom, chapterTo;
public ChapterTriggeredAbility(Effect effect, SagaChapter chapterFrom, SagaChapter chapterTo) {
super(Zone.ALL, effect, false);
public ChapterTriggeredAbility(Effect effect, SagaChapter chapterFrom, SagaChapter chapterTo, boolean optional) {
super(Zone.ALL, effect, optional);
this.chapterFrom = chapterFrom;
this.chapterTo = chapterTo;
}