Merge branch 'fixes' into 'master'

Fixes

See merge request core-developers/forge!5447
This commit is contained in:
Michael Kamensky
2021-09-27 03:49:55 +00:00
12 changed files with 15 additions and 17 deletions

View File

@@ -2283,10 +2283,8 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
if (manifested) { if (manifested) {
sb.append("Manifested\r\n"); sb.append("Manifested\r\n");
} }
sb.append(keywordsToText(getUnhiddenKeywords(state))); String keywordText = keywordsToText(getUnhiddenKeywords(state));
if ((keywordsToText(getUnhiddenKeywords(state))).length() > 0) { sb.append(keywordText).append(keywordText.length() > 0 ? linebreak : "");
sb.append(linebreak);
}
// Process replacement effects first so that "enters the battlefield tapped" // Process replacement effects first so that "enters the battlefield tapped"
// and "as ~ enters the battlefield, choose...", etc can be printed // and "as ~ enters the battlefield, choose...", etc can be printed

View File

@@ -2,7 +2,7 @@ Name:Ali from Cairo
ManaCost:2 R R ManaCost:2 R R
Types:Creature Human Types:Creature Human
PT:0/1 PT:0/1
R:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead. R:Event$ LifeReduced | ActiveZones$ Battlefield | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -6,7 +6,7 @@ K:Flash
K:Flying K:Flying
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigEffect | TriggerDescription$ When CARDNAME enters the battlefield, until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigEffect | TriggerDescription$ When CARDNAME enters the battlefield, until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:TrigEffect:DB$ Effect | Name$ Angel of Grace Effect | ReplacementEffects$ SelflessDamage | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead. SVar:TrigEffect:DB$ Effect | Name$ Angel of Grace Effect | ReplacementEffects$ SelflessDamage | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:SelflessDamage:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead. SVar:SelflessDamage:Event$ LifeReduced | ActiveZones$ Command | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -4,7 +4,7 @@ Types:Instant
K:Split second K:Split second
A:SP$ Effect | Cost$ W | Name$ Angel's Grace Effect | StaticAbilities$ STCantLose | ReplacementEffects$ SelflessDamage | AILogic$ Fog | SpellDescription$ You can't lose the game this turn and your opponents can't win the game this turn. Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead. A:SP$ Effect | Cost$ W | Name$ Angel's Grace Effect | StaticAbilities$ STCantLose | ReplacementEffects$ SelflessDamage | AILogic$ Fog | SpellDescription$ You can't lose the game this turn and your opponents can't win the game this turn. Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:STCantLose:Mode$ Continuous | Affected$ You | AddKeyword$ You can't lose the game. & Your opponents can't win the game. | Description$ You can't lose the game. Your opponents can't win the game. SVar:STCantLose:Mode$ Continuous | Affected$ You | AddKeyword$ You can't lose the game. & Your opponents can't win the game. | Description$ You can't lose the game. Your opponents can't win the game.
SVar:SelflessDamage:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead. SVar:SelflessDamage:Event$ LifeReduced | ActiveZones$ Command | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Until end of turn, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -5,7 +5,7 @@ PT:7/7
K:Trample K:Trample
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigLife | CheckSVar$ ElderscaleCondition | SVarCompare$ LT7 | TriggerDescription$ When CARDNAME enters the battlefield, if your life total is less than 7, your life total becomes 7. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigLife | CheckSVar$ ElderscaleCondition | SVarCompare$ LT7 | TriggerDescription$ When CARDNAME enters the battlefield, if your life total is less than 7, your life total becomes 7.
SVar:TrigLife:DB$ SetLife | Defined$ You | LifeAmount$ 7 SVar:TrigLife:DB$ SetLife | Defined$ You | LifeAmount$ 7
R:Event$ LifeReduced | ValidPlayer$ You | Result$ LT7 | IsDamage$ True | CheckSVar$ ElderscaleCondition | SVarCompare$ GE7 | ReplaceWith$ ReduceLoss | Description$ As long as you have 7 or more life, damage that would reduce your life total to less than 7 reduces it to 7 instead. R:Event$ LifeReduced | ActiveZones$ Battlefield | ValidPlayer$ You | Result$ LT7 | IsDamage$ True | CheckSVar$ ElderscaleCondition | SVarCompare$ GE7 | ReplaceWith$ ReduceLoss | Description$ As long as you have 7 or more life, damage that would reduce your life total to less than 7 reduces it to 7 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.7 SVar:X:ReplaceCount$Result/NMinus.7
SVar:ElderscaleCondition:Count$YourLifeTotal SVar:ElderscaleCondition:Count$YourLifeTotal

View File

@@ -3,7 +3,7 @@ ManaCost:4 R
Types:Creature Human Rogue Types:Creature Human Rogue
PT:0/1 PT:0/1
K:Morph:R R K:Morph:R R
R:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead. R:Event$ LifeReduced | ActiveZones$ Battlefield | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -21,10 +21,10 @@ Types:Legendary Planeswalker Will
Loyalty:4 Loyalty:4
S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Instant and sorcery spells you cast cost {1} less to cast. S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Instant and sorcery spells you cast cost {1} less to cast.
A:AB$ Animate | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | TargetMin$ 0 | TargetMax$ 1 | Power$ 0 | Toughness$ 2 | Duration$ UntilYourNextTurn | SpellDescription$ Up to one target creature has base power and toughness 0/2 until your next turn. A:AB$ Animate | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | TargetMin$ 0 | TargetMax$ 1 | Power$ 0 | Toughness$ 2 | Duration$ UntilYourNextTurn | SpellDescription$ Up to one target creature has base power and toughness 0/2 until your next turn.
A:AB$ Draw | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | NumCards$ 3 | SpellDescription$ Draw three cards. A:AB$ Draw | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | NumCards$ 2 | SpellDescription$ Draw two cards.
A:AB$ ChangeZone | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Permanent | TgtPrompt$ Select up to five target permanents | TargetMin$ 0 | TargetMax$ 5 | Origin$ Battlefield | Destination$ Exile | RememberLKI$ True | SubAbility$ DBRepeat | SpellDescription$ Exile up to five target permanents. For each permanent exiled this way, its controller creates a 4/4 blue and red Elemental creature token. A:AB$ ChangeZone | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Permanent | TgtPrompt$ Select up to five target permanents | TargetMin$ 0 | TargetMax$ 5 | Origin$ Battlefield | Destination$ Exile | RememberLKI$ True | SubAbility$ DBRepeat | SpellDescription$ Exile up to five target permanents. For each permanent exiled this way, its controller creates a 4/4 blue and red Elemental creature token.
SVar:DBRepeat:DB$ RepeatEach | DefinedCards$ DirectRemembered | UseImprinted$ True | RepeatSubAbility$ DBToken | SubAbility$ DBCleanup | ChangeZoneTables$ True SVar:DBRepeat:DB$ RepeatEach | DefinedCards$ DirectRemembered | UseImprinted$ True | RepeatSubAbility$ DBToken | SubAbility$ DBCleanup | ChangeZoneTables$ True
SVar:DBToken:DB$ Token | TokenScript$ ur_4_4_elemental | TokenOwner$ ImprintedController SVar:DBToken:DB$ Token | TokenScript$ ur_4_4_elemental | TokenOwner$ ImprintedController
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
DeckHas:Ability$Tokens DeckHas:Ability$Token
Oracle:Instant and sorcery spells you cast cost {1} less to cast.\n[+1]: Up to one target creature has base power and toughness 0/2 until your next turn.\n[3]: Draw two cards.\n[7]: Exile up to five target permanents. For each permanent exiled this way, its controller creates a 4/4 blue and red Elemental creature token. Oracle:Instant and sorcery spells you cast cost {1} less to cast.\n[+1]: Up to one target creature has base power and toughness 0/2 until your next turn.\n[3]: Draw two cards.\n[7]: Exile up to five target permanents. For each permanent exiled this way, its controller creates a 4/4 blue and red Elemental creature token.

View File

@@ -5,7 +5,7 @@ Loyalty:4
A:AB$ PumpAll | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | ValidCards$ Creature.withFlying+YouCtrl | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ Creatures you control with flying get +1/+1 until end of turn. A:AB$ PumpAll | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | ValidCards$ Creature.withFlying+YouCtrl | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ Creatures you control with flying get +1/+1 until end of turn.
A:AB$ Token | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | TokenScript$ w_4_4_angel_flying_vigilance | TokenOwner$ You | LegacyImage$ w 4 4 angel flying vigilance mh1 | SpellDescription$ Create a 4/4 white Angel creature token with flying and vigilance. A:AB$ Token | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | TokenScript$ w_4_4_angel_flying_vigilance | TokenOwner$ You | LegacyImage$ w 4 4 angel flying vigilance mh1 | SpellDescription$ Create a 4/4 white Angel creature token with flying and vigilance.
A:AB$ Effect | Cost$ SubCounter<6/LOYALTY> | Name$ Emblem - Serra the Benevolent | Image$ emblem_serra_the_benevolent | ReplacementEffects$ STWorship | Planeswalker$ True | Ultimate$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead." A:AB$ Effect | Cost$ SubCounter<6/LOYALTY> | Name$ Emblem - Serra the Benevolent | Image$ emblem_serra_the_benevolent | ReplacementEffects$ STWorship | Planeswalker$ True | Ultimate$ True | Stackable$ False | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead."
SVar:STWorship:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | IsPresent$ Creature.YouCtrl | ReplaceWith$ ReduceLoss | Description$ If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead. SVar:STWorship:Event$ LifeReduced | ActiveZones$ Command | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | IsPresent$ Creature.YouCtrl | ReplaceWith$ ReduceLoss | Description$ If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -3,7 +3,6 @@ ManaCost:1 W
Types:Creature Human Wizard Types:Creature Human Wizard
PT:2/2 PT:2/2
A:AB$ Effect | Cost$ 4 W | ValidTgts$ Creature | RememberObjects$ Targeted | ImprintCards$ Self | ForgetOnMoved$ Battlefield | ReplacementEffects$ RPrevent | Duration$ UntilHostLeavesPlayOrEOT | SpellDescription$ Prevent all damage that would be dealt to CARDNAME by target creature this turn. A:AB$ Effect | Cost$ 4 W | ValidTgts$ Creature | RememberObjects$ Targeted | ImprintCards$ Self | ForgetOnMoved$ Battlefield | ReplacementEffects$ RPrevent | Duration$ UntilHostLeavesPlayOrEOT | SpellDescription$ Prevent all damage that would be dealt to CARDNAME by target creature this turn.
SVar:RPrevent:Event$ DamageDone | Prevent$ True | IsCombat$ True | ActiveZones$ Command | ValidTarget$ Card.IsImprinted | ValidSource$ Creature.IsRemembered | Description$ Prevent all damage that would be dealt to CARDNAME by target creature this turn. SVar:RPrevent:Event$ DamageDone | Prevent$ True | ActiveZones$ Command | ValidTarget$ Card.IsImprinted | ValidSource$ Creature.IsRemembered | Description$ Prevent all damage that would be dealt to CARDNAME by target creature this turn.
AI:RemoveDeck:All AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/stonewise_fortifier.jpg
Oracle:{4}{W}: Prevent all damage that would be dealt to Stonewise Fortifier by target creature this turn. Oracle:{4}{W}: Prevent all damage that would be dealt to Stonewise Fortifier by target creature this turn.

View File

@@ -3,7 +3,7 @@ ManaCost:1 W
Types:Creature Angel Spirit Types:Creature Angel Spirit
PT:0/3 PT:0/3
K:Cumulative upkeep:1 W K:Cumulative upkeep:1 W
R:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead. R:Event$ LifeReduced | ActiveZones$ Battlefield | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | ReplaceWith$ ReduceLoss | Description$ Damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal

View File

@@ -3,7 +3,8 @@ ManaCost:X G G
Types:Legendary Creature Treefolk Types:Legendary Creature Treefolk
PT:0/0 PT:0/0
K:etbCounter:P1P1:Y:no Condition:CARDNAME enters the battlefield with a number of +1/+1 counters on it equal to the amount of mana spent to cast it. K:etbCounter:P1P1:Y:no Condition:CARDNAME enters the battlefield with a number of +1/+1 counters on it equal to the amount of mana spent to cast it.
A:AB$ Pump | Cost$ SubCounter<1/P1P1/CARDNAME/NICKNAME> | TgtPrompt$ Select another target creature with a +1/+1 counter on it | ValidTgts$ Creature.Other+counters_GE1_P1P1 | KW$ Prevent all damage that would be dealt to CARDNAME. | StackDescription$ Prevent all damage that would be dealt this turn to {c:Targeted}. | SpellDescription$ Prevent all damage that would be dealt this turn to another target creature with a +1/+1 counter on it. A:AB$ Effect | Cost$ SubCounter<1/P1P1/CARDNAME/NICKNAME> | TgtPrompt$ Select another target creature with a +1/+1 counter on it | ValidTgts$ Creature.Other+counters_GE1_P1P1 | RememberObjects$ Targeted | ReplacementEffects$ RPrevent | StackDescription$ Prevent all damage that would be dealt this turn to {c:Targeted}. | SpellDescription$ Prevent all damage that would be dealt this turn to another target creature with a +1/+1 counter on it.
SVar:RPrevent:Event$ DamageDone | Prevent$ True | ActiveZones$ Command | ValidTarget$ Creature.IsRemembered | Description$ Prevent all damage that would be dealt to this creature this turn.
SVar:X:Count$xPaid SVar:X:Count$xPaid
SVar:Y:Count$CastTotalManaSpent SVar:Y:Count$CastTotalManaSpent
DeckHas:Ability$Counters DeckHas:Ability$Counters

View File

@@ -1,7 +1,7 @@
Name:Worship Name:Worship
ManaCost:3 W ManaCost:3 W
Types:Enchantment Types:Enchantment
R:Event$ LifeReduced | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | IsPresent$ Creature.YouCtrl | ReplaceWith$ ReduceLoss | Description$ If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead. R:Event$ LifeReduced | ActiveZones$ Battlefield | ValidPlayer$ You | Result$ LT1 | IsDamage$ True | CheckSVar$ YourLife | SVarCompare$ GE1 | IsPresent$ Creature.YouCtrl | ReplaceWith$ ReduceLoss | Description$ If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead.
SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X SVar:ReduceLoss:DB$ ReplaceEffect | VarName$ Result | VarValue$ X
SVar:X:ReplaceCount$Result/NMinus.1 SVar:X:ReplaceCount$Result/NMinus.1
SVar:YourLife:Count$YourLifeTotal SVar:YourLife:Count$YourLifeTotal