Some fixes (#5699)

This commit is contained in:
tool4ever
2024-07-27 07:53:00 +00:00
committed by GitHub
parent 27ed942d26
commit 76b3f6fbb7
5 changed files with 5 additions and 9 deletions

View File

@@ -20,7 +20,6 @@ import forge.game.combat.AttackRequirement;
import forge.game.combat.AttackingBand;
import forge.game.combat.Combat;
import forge.game.combat.CombatUtil;
import forge.game.keyword.Keyword;
import forge.game.keyword.KeywordInterface;
import forge.game.mana.Mana;
import forge.game.player.Player;
@@ -637,9 +636,6 @@ public class CardProperty {
if (property.endsWith("With") && card.getPairedWith() != source) {
return false;
}
if (property.endsWith("Soulbond") && !card.getPairedWith().hasKeyword(Keyword.SOULBOND)) {
return false;
}
} else if (property.startsWith("Above")) { // "Are Above" Source
final CardCollectionView cards = card.getOwner().getCardsIn(ZoneType.Graveyard);
if (cards.indexOf(source) >= cards.indexOf(card)) {

View File

@@ -812,14 +812,14 @@ public class MagicStack /* extends MyObservable */ implements Iterable<SpellAbil
// Grab players in turn order starting with the active player
List<Player> players = game.getPlayersInTurnOrder(playerTurn);
for(Player p : players) {
for (Player p : players) {
if (p.hasLost()) {
continue;
}
result |= chooseOrderOfSimultaneousStackEntry(p, false);
}
for(Player p : players) {
for (Player p : players) {
if (p.hasLost()) {
continue;
}

View File

@@ -2,6 +2,6 @@ Name:Flowering Lumberknot
ManaCost:3 G
Types:Creature Treefolk
PT:5/5
S:Mode$ Continuous | Affected$ Creature.Self+!PairedWithSoulbond | AddHiddenKeyword$ CARDNAME can't attack or block. | Description$ CARDNAME can't attack or block unless it's paired with a creature with soulbond.
S:Mode$ Continuous | Affected$ Creature.Self | IsPresent$ Creature.PairedWith+withSoulbond | PresentCompare$ EQ0 | AddHiddenKeyword$ CARDNAME can't attack or block. | Description$ CARDNAME can't attack or block unless it's paired with a creature with soulbond.
AI:RemoveDeck:Random
Oracle:Flowering Lumberknot can't attack or block unless it's paired with a creature with soulbond.

View File

@@ -1,7 +1,7 @@
Name:Persistent Marshstalker
ManaCost:1 B
Types:Creature Rat Berserker
PT:2/1
PT:3/1
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | Description$ CARDNAME gets +1/+0 for each other Rat you control.
T:Mode$ AttackersDeclared | ValidAttackers$ Creature.YouCtrl+Rat | TriggerZones$ Graveyard | Execute$ TrigChangeZone | CheckSVar$ Y | SVarCompare$ GE7 | TriggerDescription$ Threshold — Whenever you attack with one or more Rats, if seven of more cards are in your graveyard, you may pay {2}{B}. If you do, return CARDNAME from your graveyard to the battlefield tapped and attacking.
SVar:TrigChangeZone:AB$ ChangeZone | Cost$ 2 B | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True | Attacking$ True

View File

@@ -4,7 +4,7 @@ Types:Creature Rat Rogue
PT:4/3
K:Offspring:3
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigGenericChoice | TriggerDescription$ When this creature enters, target opponent loses 3 life unless they sacrifice a nonland permanent or discard a card.
SVar:TrigGenericChoice:DB$ GenericChoice | Defined$ Targeted | Choices$ PaySac,PayDiscard | FallbackAbility$ LoseLifeFallback | AILogic$ PayUnlessCost
SVar:TrigGenericChoice:DB$ GenericChoice | ValidTgts$ Opponent | Choices$ PaySac,PayDiscard | FallbackAbility$ LoseLifeFallback | AILogic$ PayUnlessCost
SVar:PaySac:DB$ LoseLife | LifeAmount$ 3 | Defined$ Targeted | UnlessCost$ Sac<1/Permanent.nonland/nonland permanent> | UnlessPayer$ Targeted | UnlessAI$ LifeLE3 | SpellDescription$ You lose 3 life unless you sacrifice a nonland permanent
SVar:PayDiscard:DB$ LoseLife | LifeAmount$ 3 | Defined$ Targeted | UnlessCost$ Discard<1/Card> | UnlessPayer$ Targeted | UnlessAI$ LifeLE3 | SpellDescription$ You lose 3 life unless you discard a card
# TODO: Most likely the ChooseGenericEffect code can be simplified somehow to avoid the necessity of having a dedicated fallback ability