[DFT] Implement many cards with custom effects (#13407)

* [DFT] Implement Loot, the Pathfinder

add option to hide reminder text for exhaust ability

* [DFT] Implement Guidelight Optimizer

* [DFT] Implement Radiant Lotus

* [DFT] Implement Oildeep Gearhulk

* fix Oildeep Gearhulk target

* fix OilDeep Gearhulk duplicate hand reveal

* [DFT] Implement Momentum Breaker

* [DFT] Implement Sita Varma, Masked Racer

* [DFT] Implement SkySeers Chariot

* [DFT] Implement Skyserpent Seeker

* [DFT] Implement Tune Up

* fix Skyseer's Chariot modifying spell cost

* use exhaust constructor boolean for reminderText

* Update cards for review

change radiant lotus outcome to prevent AI from trying to use it

change oildeep card choice to discard

replace Composite cost and move discard effect if sacrifice was unsuccessful

replace Composite costs and add target to Loot's third ability

* Missed braces for mana cost

Update GuidelightOptimizer text
This commit is contained in:
Jmlundeen 2025-03-15 19:21:58 -05:00 committed by GitHub
parent 7c55d444b0
commit 66fd5c1b6a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 825 additions and 1 deletions

View file

@ -12,13 +12,27 @@ import mage.game.Game;
*/
public class ExhaustAbility extends ActivatedAbilityImpl {
private boolean withReminderText = true;
public ExhaustAbility(Effect effect, Cost cost) {
super(Zone.BATTLEFIELD, effect, cost);
}
public ExhaustAbility(Effect effect, Cost cost, boolean withReminderText) {
super(Zone.BATTLEFIELD, effect, cost);
this.setRuleVisible(false);
this.withReminderText = withReminderText;
}
private ExhaustAbility(final ExhaustAbility ability) {
super(ability);
this.maxActivationsPerGame = 1;
this.withReminderText = ability.withReminderText;
}
public ExhaustAbility withReminderText(boolean withReminderText) {
this.withReminderText = withReminderText;
return this;
}
@Override
@ -42,6 +56,7 @@ public class ExhaustAbility extends ActivatedAbilityImpl {
@Override
public String getRule() {
return "Exhaust &mdash; " + super.getRule() + " <i>(Activate each exhaust ability only once.)</i>";
return "Exhaust &mdash; " + super.getRule() +
(withReminderText ? " <i>(Activate each exhaust ability only once.)</i>" : "");
}
}