Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MKC: kaust_eyes_of_the_glade.txt + support #4567

Merged
merged 1 commit into from
Jan 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions forge-game/src/main/java/forge/game/card/Card.java
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {

private boolean flipped = false;
private boolean facedown = false;
private boolean turnedFaceUpThisTurn = false;
// set for transform and meld, needed for clone effects
private boolean backside = false;

Expand Down Expand Up @@ -782,6 +783,7 @@ public boolean turnFaceUp(boolean manifestPaid, boolean runTriggers, SpellAbilit
}

c.facedown = false;
c.turnedFaceUpThisTurn = true;
c.updateStateForView(); //fixes cards with backside viewable
// need to run faceup commands, currently
// it does cleanup the modified facedown state
Expand Down Expand Up @@ -812,6 +814,10 @@ public boolean turnFaceUp(boolean manifestPaid, boolean runTriggers, SpellAbilit
return false;
}

public boolean wasTurnedFaceUpThisTurn() {
return turnedFaceUpThisTurn;
}

public boolean canTransform(SpellAbility cause) {
if (isFaceDown()) {
return false;
Expand Down Expand Up @@ -6777,6 +6783,7 @@ public void onCleanupPhase(final Player turn) {
resetShieldCount();
setBecameTargetThisTurn(false);
setFoughtThisTurn(false);
turnedFaceUpThisTurn = false;
clearMustBlockCards();
getDamageHistory().setCreatureAttackedLastTurnOf(turn, getDamageHistory().getCreatureAttacksThisTurn() > 0);
getDamageHistory().newTurn();
Expand Down
2 changes: 2 additions & 0 deletions forge-game/src/main/java/forge/game/card/CardProperty.java
Original file line number Diff line number Diff line change
Expand Up @@ -1114,6 +1114,8 @@ public static boolean cardHasProperty(Card card, String property, Player sourceC
if (card.isFaceDown()) {
return false;
}
} else if (property.startsWith("turnedFaceUpThisTurn")) {
if (!card.wasTurnedFaceUpThisTurn()) return false;
} else if (property.startsWith("phasedOut")) {
if (!card.isPhasedOut()) {
return false;
Expand Down
3 changes: 2 additions & 1 deletion forge-gui/res/cardsfolder/q/qarsi_deceiver.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ Name:Qarsi Deceiver
ManaCost:1 U
Types:Creature Naga Wizard
PT:0/4
A:AB$ Mana | Cost$ T | Produced$ C | RestrictValid$ MorphOrManifest | SpellDescription$ Add {C}. Spend this mana only to cast a face-down creature spell, pay a mana cost to turn a manifested creature face up, or pay a morph cost.
A:AB$ Mana | Cost$ T | Produced$ C | RestrictValid$ MorphOrManifest | SpellDescription$ Add {C}. Spend this mana only to cast a face-down creature spell, pay a mana cost to turn a manifested creature face up, or pay a morph cost. (A megamorph cost is a morph cost.)
AI:RemoveDeck:Random
DeckHints:Keyword$Morph|Megamorph
Oracle:{T}: Add {C}. Spend this mana only to cast a face-down creature spell, pay a mana cost to turn a manifested creature face up, or pay a morph cost. (A megamorph cost is a morph cost.)
3 changes: 2 additions & 1 deletion forge-gui/res/cardsfolder/q/qarsi_high_priest.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ Name:Qarsi High Priest
ManaCost:B
Types:Creature Human Cleric
PT:0/2
A:AB$ Manifest | Cost$ 1 B T Sac<1/Creature.Other/another creature> | Amount$ 1 | Defined$ TopOfLibrary | SpellDescription$ Manifest the top card of your library.
A:AB$ Manifest | Cost$ 1 B T Sac<1/Creature.Other/another creature> | Amount$ 1 | Defined$ TopOfLibrary | SpellDescription$ Manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)
DeckHas:Ability$Sacrifice
Oracle:{1}{B}, {T}, Sacrifice another creature: Manifest the top card of your library. (Put that card onto the battlefield face down as a 2/2 creature. Turn it face up any time for its mana cost if it's a creature card.)
10 changes: 10 additions & 0 deletions forge-gui/res/cardsfolder/upcoming/kaust_eyes_of_the_glade.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Name:Kaust, Eyes of the Glade
ManaCost:RW G
Types:Legendary Creature Dryad Detective
PT:2/2
T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+turnedFaceUpThisTurn | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature you control that was turned face up this turn deals combat damage to a player, draw a card.
SVar:TrigDraw:DB$ Draw
A:AB$ SetState | Cost$ T | ValidTgts$ Creature.faceDown+attacking+YouCtrl | TgtPrompt$ Select target face-down attacking creature you control | Mode$ TurnFaceUp | StackDescription$ Turn {c:Targeted} face up. | SpellDescription$ Turn target face-down attacking creature you control face up.
AI:RemoveDeck:Random
DeckHints:Keyword$Morph|Megamorph
Oracle:Whenever a creature you control that was turned face up this turn deals combat damage to a player, draw a card.\n{T}: Turn target face-down attacking creature you control face up.