diff --git a/forge-game/src/main/java/forge/game/cost/CostAdjustment.java b/forge-game/src/main/java/forge/game/cost/CostAdjustment.java index 39ed09a1f0e..bae6f0b0103 100644 --- a/forge-game/src/main/java/forge/game/cost/CostAdjustment.java +++ b/forge-game/src/main/java/forge/game/cost/CostAdjustment.java @@ -433,10 +433,6 @@ public class CostAdjustment { if (!st.matchesValidParam("Activator", activator)) { return false; } - if (st.hasParam("NonActivatorTurn") && (activator == null - || game.getPhaseHandler().isPlayerTurn(activator))) { - return false; - } if (st.hasParam("Type")) { final String type = st.getParam("Type"); diff --git a/forge-game/src/main/java/forge/game/player/PlayerProperty.java b/forge-game/src/main/java/forge/game/player/PlayerProperty.java index e997cd039df..3bcda5ac413 100644 --- a/forge-game/src/main/java/forge/game/player/PlayerProperty.java +++ b/forge-game/src/main/java/forge/game/player/PlayerProperty.java @@ -49,11 +49,11 @@ public class PlayerProperty { return false; } } else if (property.equals("Active")) { - if (!player.equals(game.getPhaseHandler().getPlayerTurn())) { + if (!game.getPhaseHandler().isPlayerTurn(player)) { return false; } } else if (property.equals("NonActive")) { - if (player.equals(game.getPhaseHandler().getPlayerTurn())) { + if (game.getPhaseHandler().isPlayerTurn(player)) { return false; } } else if (property.equals("OpponentToActive")) { diff --git a/forge-gui/res/cardsfolder/d/defense_grid.txt b/forge-gui/res/cardsfolder/d/defense_grid.txt index ce0907a6382..f522bd808ea 100644 --- a/forge-gui/res/cardsfolder/d/defense_grid.txt +++ b/forge-gui/res/cardsfolder/d/defense_grid.txt @@ -1,6 +1,6 @@ Name:Defense Grid ManaCost:2 Types:Artifact -S:Mode$ RaiseCost | Activator$ Player | Type$ Spell | Amount$ 3 | NonActivatorTurn$ True | Description$ Each spell costs {3} more to cast except during its controller's turn. +S:Mode$ RaiseCost | Activator$ Player.NonActive | Type$ Spell | Amount$ 3 | Description$ Each spell costs {3} more to cast except during its controller's turn. AI:RemoveDeck:Random Oracle:Each spell costs {3} more to cast except during its controller's turn. diff --git a/forge-gui/res/cardsfolder/k/kindred_boon.txt b/forge-gui/res/cardsfolder/k/kindred_boon.txt index 0c7ad6f9262..6946bed8551 100644 --- a/forge-gui/res/cardsfolder/k/kindred_boon.txt +++ b/forge-gui/res/cardsfolder/k/kindred_boon.txt @@ -3,6 +3,6 @@ ManaCost:2 W W Types:Enchantment K:ETBReplacement:Other:ChooseCT SVar:ChooseCT:DB$ ChooseType | Type$ Creature | AILogic$ MostProminentInComputerDeck | SpellDescription$ As CARDNAME enters the battlefield, choose a creature type. -S:Mode$ Continuous | Affected$ Creature.ChosenType+YouCtrl+counters_GE1_DIVINITY | AddKeyword$ Indestructible | Description$ Each creature you control with a divinity counter on it has indestructible. +S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_DIVINITY | AddKeyword$ Indestructible | Description$ Each creature you control with a divinity counter on it has indestructible. A:AB$ PutCounter | Cost$ 1 W | ValidTgts$ Creature.ChosenType+YouCtrl | TgtPrompt$ Select target creature you control of the chosen type | CounterType$ DIVINITY | CounterNum$ 1 | SpellDescription$ Put a divinity counter on target creature you control of the chosen type. Oracle:As Kindred Boon enters the battlefield, choose a creature type.\n{1}{W}: Put a divinity counter on target creature you control of the chosen type.\nEach creature you control with a divinity counter on it has indestructible. diff --git a/forge-gui/res/cardsfolder/upcoming/dihada_binder_of_wills.txt b/forge-gui/res/cardsfolder/upcoming/dihada_binder_of_wills.txt index eb37aba7d9f..3b76a079579 100644 --- a/forge-gui/res/cardsfolder/upcoming/dihada_binder_of_wills.txt +++ b/forge-gui/res/cardsfolder/upcoming/dihada_binder_of_wills.txt @@ -1,5 +1,5 @@ Name:Dihada, Binder of Wills -ManaCost:3 R W B +ManaCost:1 R W B Types:Legendary Planeswalker Dihada Loyalty:5 Text:CARDNAME can be your commander. diff --git a/forge-gui/res/languages/de-DE.properties b/forge-gui/res/languages/de-DE.properties index 61c024a14e0..bdf60af4ff4 100644 --- a/forge-gui/res/languages/de-DE.properties +++ b/forge-gui/res/languages/de-DE.properties @@ -2241,6 +2241,7 @@ lblSubtype=Untertyp lblGenericCost=Generische Kosten lblManaCost=Mana-Kosten lblFirstPrinting=Erstdruck +lblArtist=Artist lblAverageCMC=Durchschnittlicher Manabetrag lblMainDeck=Hauptdeck lblMainDeckSize=Größe Hauptdeck diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index 418ea0c7a31..3857d55185b 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -2239,6 +2239,7 @@ lblSubtype=Subtype lblGenericCost=Generic Cost lblManaCost=Mana Cost lblFirstPrinting=First Printing +lblArtist=Artist lblAverageCMC=Average Mana Value lblMainDeck=Main Deck lblMainDeckSize=Main Deck Size diff --git a/forge-gui/res/languages/es-ES.properties b/forge-gui/res/languages/es-ES.properties index 6d276328b86..30c51b5b69c 100644 --- a/forge-gui/res/languages/es-ES.properties +++ b/forge-gui/res/languages/es-ES.properties @@ -2239,6 +2239,7 @@ lblSubtype=Subtipo lblGenericCost=Coste Genérico lblManaCost=Coste de maná lblFirstPrinting=Primera impresión +lblArtist=Artist lblAverageCMC=Media de CMC lblMainDeck=Mazo principal lblMainDeckSize=Tamaño del mazo principal diff --git a/forge-gui/res/languages/it-IT.properties b/forge-gui/res/languages/it-IT.properties index e8e0a4838f8..6d33b8ed6b9 100644 --- a/forge-gui/res/languages/it-IT.properties +++ b/forge-gui/res/languages/it-IT.properties @@ -2238,6 +2238,7 @@ lblSubtype=Sottotipo lblGenericCost=Costo generico lblManaCost=Costo di mana lblFirstPrinting=Prima stampa +lblArtist=Artist lblAverageCMC=CMC medio lblMainDeck=Mazzo lblMainDeckSize=Dimensione del mazzo diff --git a/forge-gui/res/languages/ja-JP.properties b/forge-gui/res/languages/ja-JP.properties index 4615c61800a..dbe86649671 100644 --- a/forge-gui/res/languages/ja-JP.properties +++ b/forge-gui/res/languages/ja-JP.properties @@ -2238,6 +2238,7 @@ lblSubtype=サブタイプ lblGenericCost=不特定コスト lblManaCost=マナコスト lblFirstPrinting=初版 +lblArtist=Artist lblAverageCMC=マナ総量平均 lblMainDeck=メインデッキ lblMainDeckSize=メインデッキ枚数 diff --git a/forge-gui/res/languages/pt-BR.properties b/forge-gui/res/languages/pt-BR.properties index bc6a529ee73..d710049340c 100644 --- a/forge-gui/res/languages/pt-BR.properties +++ b/forge-gui/res/languages/pt-BR.properties @@ -2308,6 +2308,7 @@ lblSubtype=Subtipo lblGenericCost=Custo Genérico lblManaCost=Custo de Mana lblFirstPrinting=Primeira Impressão +lblArtist=Artist lblAverageCMC=Valor Médio de Mana lblMainDeck=Deck Principal lblMainDeckSize=Tamanho do Deck Principal diff --git a/forge-gui/res/languages/zh-CN.properties b/forge-gui/res/languages/zh-CN.properties index 8e5b4c654f3..326a2e5b0b4 100644 --- a/forge-gui/res/languages/zh-CN.properties +++ b/forge-gui/res/languages/zh-CN.properties @@ -2240,6 +2240,7 @@ lblSubtype=副类别 lblGenericCost=无色费用 lblManaCost=法术力费用 lblFirstPrinting=第一次印刷 +lblArtist=Artist lblAverageCMC=平均法术力值 lblMainDeck=主牌 lblMainDeckSize=主牌大小 diff --git a/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java b/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java index 050db00b4fb..61886e98541 100644 --- a/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java +++ b/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java @@ -299,6 +299,12 @@ public class AdvancedSearch { return cards.get(0) == input; } }), + CARD_ARTIST("lblArtist", PaperCard.class, FilterOperator.STRING_OPS, new StringEvaluator() { + @Override + protected String getItemValue(PaperCard input) { + return input.getArtist(); + } + }), INVITEM_NAME("lblName", InventoryItem.class, FilterOperator.STRING_OPS, new StringEvaluator() { @Override protected String getItemValue(InventoryItem input) {