diff --git a/CHANGELOG.md b/CHANGELOG.md index 2f75564bc..4b6b4a806 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,8 +2,11 @@ ## [master] (https://github.com/WagicProject/wagic/tree/master) +### 21/10/21 +- *Committed:* Added/fixed primitives, updated the "missing_cards_by_sets" folder, renamed several decks for AI, added "noentertrg" and "nodietrg" keywords to allow creatures enter the battlefield or die without causing abilities to trigger (e.g. "Hushbringer"). ([Vitty85](https://github.com/Vitty85)) + ### 20/10/21 -- *Committed:* Added "Spell Queller" primitive, updated the "missing_cards_by_sets" folder. ([Vitty85](https://github.com/Vitty85)) +- *Committed:* Added "Spell Queller" primitive, updated the "missing_cards_by_sets" folder. https://github.com/WagicProject/wagic/commit/41a89c7324713f7d8c1fb08932b491db91a3fae1 ([Vitty85](https://github.com/Vitty85)) - *Committed:* Added Q06 set, improved Android downloader, fixed bug for indestructible creatures that have to go different zone after death (e.g. if they have exiledeath ability), fixed a bug when indestructible creatures have toughness = 0 (e.g. "March of the Machines" with manacost = 0 artifacts). https://github.com/WagicProject/wagic/commit/3130049c632662334ab3f708bf89bad5a79ecfdb ([Vitty85](https://github.com/Vitty85)) diff --git a/projects/mtg/bin/Res/ai/baka/deck103.txt b/projects/mtg/bin/Res/ai/baka/deck103.txt index c51f79de8..db2f52c1e 100644 --- a/projects/mtg/bin/Res/ai/baka/deck103.txt +++ b/projects/mtg/bin/Res/ai/baka/deck103.txt @@ -1,4 +1,4 @@ -#NAME:Smoke and mirrors +#NAME:Smoke & Mirrors Order of the Ebon Hand (FEM) *2 Combat Medic (FEM) *1 Combat Medic (FEM) *1 diff --git a/projects/mtg/bin/Res/ai/baka/deck104.txt b/projects/mtg/bin/Res/ai/baka/deck104.txt index d83bbe28c..4b7e9a8cf 100644 --- a/projects/mtg/bin/Res/ai/baka/deck104.txt +++ b/projects/mtg/bin/Res/ai/baka/deck104.txt @@ -1,4 +1,4 @@ -#NAME:Kill by Numbers +#NAME:Kazandu the Redeemed #DESC:They just keep multiplying. #HINT:castpriority(enchantment,instant,sorcery,artifact,creature) #HINT:dontattackwith(Rhys the Redeemed) diff --git a/projects/mtg/bin/Res/ai/baka/deck105.txt b/projects/mtg/bin/Res/ai/baka/deck105.txt index cde36cdd6..8d8b79a2e 100644 --- a/projects/mtg/bin/Res/ai/baka/deck105.txt +++ b/projects/mtg/bin/Res/ai/baka/deck105.txt @@ -1,4 +1,4 @@ -#NAME:Infected wounds +#NAME:Infected Wounds Forest (UGL) *4 Forest (ALA) *1 Forest (ALA) *1 diff --git a/projects/mtg/bin/Res/ai/baka/deck109.txt b/projects/mtg/bin/Res/ai/baka/deck109.txt index e634c800d..7689a87ab 100644 --- a/projects/mtg/bin/Res/ai/baka/deck109.txt +++ b/projects/mtg/bin/Res/ai/baka/deck109.txt @@ -1,4 +1,4 @@ -#NAME:Red Deck Wins +#NAME:Krenko's Hellrider #DESC:Standard R Aggro #DESC:ISD-M13-RTR #HINT:combo hold(Hellrider|myhand)^until(creature|mybattlefield)^cast(Hellrider|myhand)^restriction{type(creature|mybattlefield)~morethan~2}^totalmananeeded({2}{R}{R}) @@ -23,4 +23,4 @@ Searing Spear * 4 Krenko's Command * 4 #20 lands -Mountain (RTR) * 20 \ No newline at end of file +Mountain (RTR) * 20 diff --git a/projects/mtg/bin/Res/ai/baka/deck124.txt b/projects/mtg/bin/Res/ai/baka/deck124.txt index 44366271b..67781c0d5 100644 --- a/projects/mtg/bin/Res/ai/baka/deck124.txt +++ b/projects/mtg/bin/Res/ai/baka/deck124.txt @@ -1,4 +1,4 @@ -#NAME:Sweep The Tomb +#NAME:Wipe them out! #DESC:Modern RBW Control #HINT:castpriority(enchantment,sorcery,artifact,instant) #HINT:combo hold(Devour Flesh|myhand)^until(creature|opponentbattlefield)^cast(Devour Flesh|myhand)^totalmananeeded({1}{B}) @@ -37,4 +37,4 @@ Isolated Chapel * 4 Clifftop Retreat * 2 Urborg, Tomb of Yawgmoth * 1 Plains (CHK) * 2 -Swamp (RTR) * 1 \ No newline at end of file +Swamp (RTR) * 1 diff --git a/projects/mtg/bin/Res/ai/baka/deck131.txt b/projects/mtg/bin/Res/ai/baka/deck131.txt index 00efe1eb2..d81d51104 100644 --- a/projects/mtg/bin/Res/ai/baka/deck131.txt +++ b/projects/mtg/bin/Res/ai/baka/deck131.txt @@ -1,4 +1,4 @@ -#NAME: CounterDeck +#NAME: Mind Control #DESC: The Best Counter Deck Ever Aetherize (*) *4 Artificer's Epiphany (*) *4 diff --git a/projects/mtg/bin/Res/ai/baka/deck132.txt b/projects/mtg/bin/Res/ai/baka/deck132.txt index 3d31ddc00..9bf32d389 100644 --- a/projects/mtg/bin/Res/ai/baka/deck132.txt +++ b/projects/mtg/bin/Res/ai/baka/deck132.txt @@ -1,5 +1,5 @@ -#NAME: Ajani's Deck -#DECRIPTION: The Fist M20 Deck +#NAME: Ajani's Chaplain +#DECRIPTION: The First M20 Deck Ajani, Inspiring Leader (M20) *1 Serra's Guardian (M20) *1 Daybreak Chaplain (M20) *4 diff --git a/projects/mtg/bin/Res/ai/baka/deck133.txt b/projects/mtg/bin/Res/ai/baka/deck133.txt index ad66c847f..6f3f0693a 100644 --- a/projects/mtg/bin/Res/ai/baka/deck133.txt +++ b/projects/mtg/bin/Res/ai/baka/deck133.txt @@ -1,5 +1,5 @@ -#NAME: Mono-Black Devotion -#DESC: The Fist MH1 Deck +#NAME: Phyrexian Asphodel +#DESC: The First MH1 Deck Bloodghast (*) *4 Geralf's Messenger (*) *4 Phyrexian Obliterator (*) *4 diff --git a/projects/mtg/bin/Res/ai/baka/deck134.txt b/projects/mtg/bin/Res/ai/baka/deck134.txt index 22eb3055e..41fa73669 100644 --- a/projects/mtg/bin/Res/ai/baka/deck134.txt +++ b/projects/mtg/bin/Res/ai/baka/deck134.txt @@ -1,4 +1,4 @@ -#NAME: UrzaTron +#NAME: Urza's Control #DESC: Hellsau, 1st MTGO #DESC: Pauper League Dinrova Horror (*) *1 @@ -34,4 +34,4 @@ Urza's Tower (*) *4 #SB: Pyroblast (*) *3 #SB: Shattering Pulse (*) *1 #SB: Sprout Swarm (*) *1 -#SB: Tangle (*) *1 \ No newline at end of file +#SB: Tangle (*) *1 diff --git a/projects/mtg/bin/Res/ai/baka/deck136.txt b/projects/mtg/bin/Res/ai/baka/deck136.txt index c824374e9..40ee2295b 100644 --- a/projects/mtg/bin/Res/ai/baka/deck136.txt +++ b/projects/mtg/bin/Res/ai/baka/deck136.txt @@ -1,5 +1,5 @@ -#NAME: Mono Black Midrange -#DESC: First Eldraine Deck +#NAME: Yarok of Pranks +#DESC: The First Eldraine Deck Midnight Reaper (*) *2 Cavalier of Night (*) *3 Dread Presence (*) *4 @@ -26,4 +26,4 @@ Liliana, Dreadhorde General (*) *1 #SB: Covetous Urge (*) *2 #SB: Witch's Vengeance (*) *2 #SB: Epic Downfall (*) *2 -#SB: The Cauldron of Eternity (*) *1 \ No newline at end of file +#SB: The Cauldron of Eternity (*) *1 diff --git a/projects/mtg/bin/Res/ai/baka/deck16.txt b/projects/mtg/bin/Res/ai/baka/deck16.txt index 3056b1131..bbe1056e7 100644 --- a/projects/mtg/bin/Res/ai/baka/deck16.txt +++ b/projects/mtg/bin/Res/ai/baka/deck16.txt @@ -1,5 +1,5 @@ #Black/White Deck 10E/RV -#NAME:Panda Hive +#NAME:The Hive #DESC:When the last living being #DESC:succumbs to the terrible blight #DESC:the wasps will rise @@ -76,4 +76,4 @@ 129680 129681 129682 -129683 \ No newline at end of file +129683 diff --git a/projects/mtg/bin/Res/ai/baka/deck19.txt b/projects/mtg/bin/Res/ai/baka/deck19.txt index e8b5248cc..f6ccc9e8b 100644 --- a/projects/mtg/bin/Res/ai/baka/deck19.txt +++ b/projects/mtg/bin/Res/ai/baka/deck19.txt @@ -1,4 +1,4 @@ -#NAME:Elves +#NAME:Wilt-Leaf Liege #DESC:And here you thought you would enjoy #DESC:a little trip in the forest... #DESC: diff --git a/projects/mtg/bin/Res/ai/baka/deck30.txt b/projects/mtg/bin/Res/ai/baka/deck30.txt index 052e64461..992d59145 100644 --- a/projects/mtg/bin/Res/ai/baka/deck30.txt +++ b/projects/mtg/bin/Res/ai/baka/deck30.txt @@ -1,4 +1,4 @@ -#NAME:Elfball +#NAME:Imperious Vanguard #DESC:An endless stream #DESC:of elvish warriors #DESC:will overwhelm you, diff --git a/projects/mtg/bin/Res/ai/baka/deck37.txt b/projects/mtg/bin/Res/ai/baka/deck37.txt index ae62c8356..1e1093f83 100644 --- a/projects/mtg/bin/Res/ai/baka/deck37.txt +++ b/projects/mtg/bin/Res/ai/baka/deck37.txt @@ -1,4 +1,4 @@ -#NAME:Kinsb. Cavalier +#NAME:Kinsbaile Cavalier #DESC:The knights on their steeds #DESC:and the knights from the sky #DESC:unite diff --git a/projects/mtg/bin/Res/ai/baka/deck46.txt b/projects/mtg/bin/Res/ai/baka/deck46.txt index 8335e6cbe..3e204fb39 100644 --- a/projects/mtg/bin/Res/ai/baka/deck46.txt +++ b/projects/mtg/bin/Res/ai/baka/deck46.txt @@ -1,4 +1,4 @@ -#NAME:AshenmoorCohort +#NAME:Ashenmoor Cohort # #DESC: How does it feel #DESC: to be dead diff --git a/projects/mtg/bin/Res/ai/baka/deck51.txt b/projects/mtg/bin/Res/ai/baka/deck51.txt index 4cd4ecde0..12a57ad6c 100644 --- a/projects/mtg/bin/Res/ai/baka/deck51.txt +++ b/projects/mtg/bin/Res/ai/baka/deck51.txt @@ -1,4 +1,4 @@ -#NAME:Mindwracked +#NAME:Mind Wracked #DESC:"What was it, what was it ... I know #DESC: there was something I wanted to tell #DESC: you. Or was it something you wanted diff --git a/projects/mtg/bin/Res/ai/baka/deck53.txt b/projects/mtg/bin/Res/ai/baka/deck53.txt index af4e8b2c5..94af1e5ef 100644 --- a/projects/mtg/bin/Res/ai/baka/deck53.txt +++ b/projects/mtg/bin/Res/ai/baka/deck53.txt @@ -1,4 +1,4 @@ -#NAME:VampireViscounts +#NAME:Ascendant Bloodwitch #DESC:Oh to sink one's teeth #DESC:into the warm softness #DESC:of pulsating flesh! diff --git a/projects/mtg/bin/Res/ai/baka/deck55.txt b/projects/mtg/bin/Res/ai/baka/deck55.txt index 0496d85db..4acf6be34 100644 --- a/projects/mtg/bin/Res/ai/baka/deck55.txt +++ b/projects/mtg/bin/Res/ai/baka/deck55.txt @@ -1,4 +1,4 @@ -#NAME:Red Cats +#NAME:Wild Cats #DESC:Ferocious predators #DESC:descend from the mountains, #DESC:lured down diff --git a/projects/mtg/bin/Res/ai/baka/deck60.txt b/projects/mtg/bin/Res/ai/baka/deck60.txt index bf0ce6a79..45939315e 100644 --- a/projects/mtg/bin/Res/ai/baka/deck60.txt +++ b/projects/mtg/bin/Res/ai/baka/deck60.txt @@ -1,4 +1,4 @@ -#NAME:No Bushwhacker +#NAME:No Bushwhacked #DESC:"Attack! Heal! Attack! Heal! #DESC: And again and again and again. #DESC: Oh, how I miss my days diff --git a/projects/mtg/bin/Res/ai/baka/deck61.txt b/projects/mtg/bin/Res/ai/baka/deck61.txt index fc4ce38e7..5153ad36e 100644 --- a/projects/mtg/bin/Res/ai/baka/deck61.txt +++ b/projects/mtg/bin/Res/ai/baka/deck61.txt @@ -1,4 +1,4 @@ -#NAME:Tarmac +#NAME:The Tarmack #DESC:How does it feel #DESC:being stripped to the rack #DESC:while Tarmogoyf licks diff --git a/projects/mtg/bin/Res/ai/baka/deck65.txt b/projects/mtg/bin/Res/ai/baka/deck65.txt index d93c937b8..550a123db 100644 --- a/projects/mtg/bin/Res/ai/baka/deck65.txt +++ b/projects/mtg/bin/Res/ai/baka/deck65.txt @@ -1,4 +1,4 @@ -#NAME:Token Terror +#NAME:Soul Blossom Procession #DESC:"Beware! #DESC: they come from everywhere!" #DESC: diff --git a/projects/mtg/bin/Res/ai/baka/deck83.txt b/projects/mtg/bin/Res/ai/baka/deck83.txt index 2d43d49a8..b011f0105 100644 --- a/projects/mtg/bin/Res/ai/baka/deck83.txt +++ b/projects/mtg/bin/Res/ai/baka/deck83.txt @@ -1,4 +1,4 @@ -#NAME:Red Green Ally +#NAME:Kazuul Ranger Ally #DESC:"We may not be alike, #DESC: but we share a common goal. #DESC: All opposition will falter diff --git a/projects/mtg/bin/Res/ai/baka/deck88.txt b/projects/mtg/bin/Res/ai/baka/deck88.txt index 44b983d38..fbc25e88a 100644 --- a/projects/mtg/bin/Res/ai/baka/deck88.txt +++ b/projects/mtg/bin/Res/ai/baka/deck88.txt @@ -1,4 +1,4 @@ -#NAME:Vanguard'sChosen +#NAME:Heedless Perfect #DESC:Watch the vanguard! #DESC:How its strength rises #DESC:and rises diff --git a/projects/mtg/bin/Res/ai/baka/deck90.txt b/projects/mtg/bin/Res/ai/baka/deck90.txt index 52db5069e..cb7cf41bb 100644 --- a/projects/mtg/bin/Res/ai/baka/deck90.txt +++ b/projects/mtg/bin/Res/ai/baka/deck90.txt @@ -1,4 +1,4 @@ -#NAME:Elfolk +#NAME:Gaea's Promenade #DESC:Meet a combined force #DESC:of elves and treefolk. #DESC:Can you withstand diff --git a/projects/mtg/bin/Res/ai/baka/deck93.txt b/projects/mtg/bin/Res/ai/baka/deck93.txt index 87b5cfe31..37583004f 100644 --- a/projects/mtg/bin/Res/ai/baka/deck93.txt +++ b/projects/mtg/bin/Res/ai/baka/deck93.txt @@ -1,4 +1,4 @@ -#NAME:Relentless +#NAME:Relentless Rats #DESC:United they stand, #DESC:Divided they fall. Swamp (10E) *24 # diff --git a/projects/mtg/bin/Res/ai/baka/deck97.txt b/projects/mtg/bin/Res/ai/baka/deck97.txt index b4e70d20d..ded6a066a 100644 --- a/projects/mtg/bin/Res/ai/baka/deck97.txt +++ b/projects/mtg/bin/Res/ai/baka/deck97.txt @@ -1,4 +1,4 @@ -#NAME:Rack them all +#NAME:Racked Mind #DESC:Notch by notch #DESC:I turn the wheel #DESC:stretching your bonded limbs. diff --git a/projects/mtg/bin/Res/ai/baka/deck98.txt b/projects/mtg/bin/Res/ai/baka/deck98.txt index ed3820d3f..bae983bf6 100644 --- a/projects/mtg/bin/Res/ai/baka/deck98.txt +++ b/projects/mtg/bin/Res/ai/baka/deck98.txt @@ -1,4 +1,4 @@ -#NAME:SilverBlade +#NAME:Silver Blade #DESC:Don't worry - #DESC:it will not hurt ... much. #DESC: diff --git a/projects/mtg/bin/Res/lang/cn_decks.txt b/projects/mtg/bin/Res/lang/cn_decks.txt index b16e0d2ff..11e22e61e 100644 --- a/projects/mtg/bin/Res/lang/cn_decks.txt +++ b/projects/mtg/bin/Res/lang/cn_decks.txt @@ -27,7 +27,7 @@ Alliance= Allied Warriors=作为一支山地,森林,@海洋,天空的联合军队@@"统一战线是我们的力量" Allies=虽然单个很弱,@但是一起,我们就不可阻挡。@@如果你还觉得将三个臭皮匠@顶不了一个诸葛亮,@那就再想想! Angelism=天使的大军将掠过你的防线,@而你的士兵只能束手就擒。 -AshenmoorCohort=我你听你问道:@死亡的感觉如何?@@很痛苦。@火烧一样。@@死亡让你……@……让你想回到这个世界。 +Ashenmoor Cohort=我你听你问道:@死亡的感觉如何?@@很痛苦。@火烧一样。@@死亡让你……@……让你想回到这个世界。 Bad Dreams=等你遇到它们的时候@你再想自己是否做过噩梦吧…… Badlands=危险的敌人正等待着你。@不死生物,鬼怪和憎恨兽@将给你带来疯狂的进攻。 Bad Moon=夜幕降临,噩梦袭来。@邪恶的幽灵将把你拖入黑暗的深渊! @@ -48,9 +48,9 @@ Depletion= Destroy=我将摧毁你的土地,@你的军队,@最后是你。 Disciplination=我的军队在纪律处分中未能幸存,@尽管是我极不情愿发起的。@于是,我看到你为我带来了增援。@真心感想你,你是个好人! Dragons=龙是力量和意志的狂乱。@龙是焰的艺术家,@将世界涂上火的色彩。 -Elfball=在源源不断的法术力支持下,@由妖精勇士组成的洪流将彻底击败你。@赶紧逃跑吧!你没有任何胜算! -Elfolk=面对一支侏儒和树妖的联军。@你能同时承受树的强壮力量和@侏儒的繁殖能力吗? -Elves=你也许认为这段林中旅行会很惬意……@但是谁说只有鬼怪会令人生厌呢? +Imperious Vanguard=在源源不断的法术力支持下,@由妖精勇士组成的洪流将彻底击败你。@赶紧逃跑吧!你没有任何胜算! +Gaea's Promenade=面对一支侏儒和树妖的联军。@你能同时承受树的强壮力量和@侏儒的繁殖能力吗? +Wilt-Leaf Liege=你也许认为这段林中旅行会很惬意……@但是谁说只有鬼怪会令人生厌呢? Enchanted Coatl=当心!魔女找到了一只新宠物!@她们正痴迷于让它不断变强@直到无人能挡。 Enchanted=谨防任何斗士穿上盔甲或面具。@@装备精良,他们将战无不胜。 Enchantresses=请敬畏魔女的力量吧!@当你一不小心,@她们将会接二连三地施放咒语@并且化身成为强大的战士。 diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/APC.txt b/projects/mtg/bin/Res/missing_cards_by_sets/APC.txt index 417fb8cb7..8ffd7c0fd 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/APC.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/APC.txt @@ -51,12 +51,6 @@ mana={1}{W} type=Sorcery [/card] [card] -name=Gaea's Balance -text=As an additional cost to cast Gaea's Balance, sacrifice five lands. -- Search your library for a land card of each basic land type and put them onto the battlefield. Then shuffle your library. -mana={3}{G} -type=Sorcery -[/card] -[card] name=Mind Extraction text=As an additional cost to cast Mind Extraction, sacrifice a creature. -- Target player reveals his or her hand and discards all cards of each of the sacrificed creature's colors. mana={2}{B} diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/C14.txt b/projects/mtg/bin/Res/missing_cards_by_sets/C14.txt index 55d080432..7f46ab146 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/C14.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/C14.txt @@ -20,15 +20,6 @@ power=1 toughness=1 [/card] [card] -name=Grave Sifter -text=When Grave Sifter enters the battlefield, each player chooses a creature type and returns any number of cards of that type from his or her graveyard to his or her hand. -mana={5}{G} -type=Creature -subtype=Elemental Beast -power=5 -toughness=7 -[/card] -[card] name=Bitter Feud text=As Bitter Feud enters the battlefield, choose two players. -- If a source controlled by one of the chosen players would deal damage to the other chosen player or a permanent that player controls, that source deals double that damage to that player or permanent instead. mana={4}{R} diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/C16.txt b/projects/mtg/bin/Res/missing_cards_by_sets/C16.txt index c8cb1ddfa..c4397ed56 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/C16.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/C16.txt @@ -11,16 +11,6 @@ mana={U} type=Sorcery [/card] [card] -name=Hushwing Gryff -abilities=flash,flying -text=Flash -- Flying -- Creatures entering the battlefield don't cause abilities to trigger. -mana={2}{W} -type=Creature -subtype=Hippogriff -power=2 -toughness=1 -[/card] -[card] name=Collective Voyage text=Join forces - Starting with you, each player may pay any amount of mana. Each player searches his or her library for up to X basic land cards, where X is the total amount of mana paid this way, puts them onto the battlefield tapped, then shuffles his or her library. mana={G} diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/CMA.txt b/projects/mtg/bin/Res/missing_cards_by_sets/CMA.txt index 48b502e79..472e17080 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/CMA.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/CMA.txt @@ -15,15 +15,6 @@ mana={5}{W} type=Sorcery [/card] [card] -name=Grave Sifter -text=When Grave Sifter enters the battlefield, each player chooses a creature type and returns any number of cards of that type from his or her graveyard to his or her hand. -mana={5}{G} -type=Creature -subtype=Elemental Beast -power=5 -toughness=7 -[/card] -[card] name=Surveyor's Scope text={T}, Exile Surveyor's Scope: Search your library for up to X basic land cards, where X is the number of players who control at least two more lands than you. Put those cards onto the battlefield, then shuffle your library. mana={2} diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/CMR.txt b/projects/mtg/bin/Res/missing_cards_by_sets/CMR.txt index d1f3e3172..ea11c2ce7 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/CMR.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/CMR.txt @@ -38,7 +38,7 @@ toughness=6 [card] name=Hullbreacher abilities=flash -text=Flash -- If an opponent would draw a card except the first one they draw in each of their draw steps, instead you create a Treasure token. (It's an artifact with " {T}, Sacrifice this artifact: Add one mana of any color.") +text=Flash -- If an opponent would draw a card except the first one they draw in each of their draw steps, instead you create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") mana={2}{U} type=Creature subtype=Merfolk Pirate diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/CNS.txt b/projects/mtg/bin/Res/missing_cards_by_sets/CNS.txt index 71502951a..629300f61 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/CNS.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/CNS.txt @@ -52,6 +52,11 @@ power=1 toughness=5 [/card] [card] +name=Power Play +text=(Start the game with this conspiracy face up in the command zone.) -- You are the starting player. If multiple players would be the starting player, one of those players is chosen at random. +type=Conspiracy +[/card] +[card] name=Bite of the Black Rose text=Will of the council - Starting with you, each player votes for sickness or psychosis. If sickness gets more votes, creatures your opponents control get -2/-2 until end of turn. If psychosis gets more votes or the vote is tied, each opponent discards two cards. mana={3}{B} @@ -219,8 +224,3 @@ subtype=Angel power=4 toughness=4 [/card] -[card] -name=Power Play -text=(Start the game with this conspiracy face up in the command zone.) -- You are the starting player. If multiple players would be the starting player, one of those players is chosen at random. -type=Conspiracy -[/card] diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/M15.txt b/projects/mtg/bin/Res/missing_cards_by_sets/M15.txt index e558ae43c..369dbc727 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/M15.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/M15.txt @@ -38,16 +38,6 @@ power=4 toughness=4 [/card] [card] -name=Hushwing Gryff -abilities=flash,flying -text=Flash -- Flying -- Creatures entering the battlefield don't cause abilities to trigger. -mana={2}{W} -type=Creature -subtype=Hippogriff -power=2 -toughness=1 -[/card] -[card] name=Kurkesh, Onakke Ancient text=Whenever you activate an ability of an artifact, if it isn't a mana ability, you may pay {R}. If you do, copy that ability. You may choose new targets for the copy. mana={2}{R}{R} diff --git a/projects/mtg/bin/Res/missing_cards_by_sets/NPH.txt b/projects/mtg/bin/Res/missing_cards_by_sets/NPH.txt index fbea5f13a..f932ecdff 100644 --- a/projects/mtg/bin/Res/missing_cards_by_sets/NPH.txt +++ b/projects/mtg/bin/Res/missing_cards_by_sets/NPH.txt @@ -32,12 +32,6 @@ mana={4}{PR} type=Artifact [/card] [card] -name=Torpor Orb -text=Creatures entering the battlefield don't cause abilities to trigger. -mana={2} -type=Artifact -[/card] -[card] name=Myr Superion text=Spend only mana produced by creatures to cast Myr Superion. mana={2} diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index e070a9ba3..341d54c9a 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -20015,7 +20015,7 @@ toughness=1 [card] name=Edifice of Authority auto={1}{T}{C(0/0,1,brick)}:target(creature) cantattack ueot -auto=this(counter{0/0.3.brick}) {1}{T}:target(creature) transforms((,newability[cantattack],newability[cantblock],newability[onlymanaability])) ueot +auto=this(counter{0/0.3.brick}) {1}{T}:target(creature) transforms((,newability[cantattack],newability[cantblock],newability[noactivatedability])) uynt text={1}, {T}: Target creature can't attack this turn. Put a brick counter on Edifice of Authority. -- {1}, {T}: Until your next turn, target creature can't attack or block and its activated abilities can't be activated. Activate this ability only if there are three or more brick counters on Edifice of Authority. mana={3} type=Artifact @@ -21591,7 +21591,7 @@ type=Sorcery [card] name=Essence Symbiote auto=@mutated(creature|mybattlefield):all(trigger[to]) counter(1/1) -auto=@mutated(creature|mybattlefield):life:2 controller +auto=@mutated(creature|mybattlefield):life:2 text=Whenever a creature you control mutates, put a +1/+1 counter on that creature and you gain 2 life. mana={1}{G} type=Creature @@ -26006,6 +26006,17 @@ power=3 toughness=3 [/card] [card] +name=Gaea's Balance +auto=if type(plains[basic]|mylibrary)~morethan~0 then ability$!name(Search plains) name(Search plains) target(plains[basic]|mylibrary) moveto(myBattlefield)!$ controller +auto=if type(mountain[basic]|mylibrary)~morethan~0 then ability$!name(Search mountain) name(Search mountain) target(mountain[basic]|mylibrary) moveto(myBattlefield)!$ controller +auto=if type(forest[basic]|mylibrary)~morethan~0 then ability$!name(Search forest) name(Search forest) target(forest[basic]|mylibrary) moveto(myBattlefield)!$ controller +auto=if type(swamp[basic]|mylibrary)~morethan~0 then ability$!name(Search swamp) name(Search swamp) target(swamp[basic]|mylibrary) moveto(myBattlefield)!$ controller +auto=if type(island[basic]|mylibrary)~morethan~0 then ability$!name(Search island) name(Search island) target(island[basic]|mylibrary) moveto(myBattlefield)!$ controller +text=As an additional cost to cast Gaea's Balance, sacrifice five lands. -- Search your library for a land card of each basic land type and put them onto the battlefield. Then shuffle your library. +mana={3}{G}{S(land|myBattlefield)}{S(land|myBattlefield)}{S(land|myBattlefield)}{S(land|myBattlefield)}{S(land|myBattlefield)} +type=Sorcery +[/card] +[card] name=Gaea's Herald auto=lord(creature|stack) nofizzle text=Creature spells can't be countered. @@ -29236,6 +29247,17 @@ mana={5}{B}{B} type=Instant [/card] [card] +name=Grave Sifter +auto=chooseatype transforms((,newability[target(creature[chosentype]|mygraveyard) moveto(myhand)])) oneshot chooseend +auto=ability$!transforms((,newability[chooseatype transforms((,newability[target(creature[chosentype]|mygraveyard) moveto(myhand)])) oneshot chooseend])) oneshot!$ opponent +text=When Grave Sifter enters the battlefield, each player chooses a creature type and returns any number of cards of that type from his or her graveyard to his or her hand. +mana={5}{G} +type=Creature +subtype=Elemental Beast +power=5 +toughness=7 +[/card] +[card] name=Gravebreaker Lamia abilities=lifelink,hiddenface auto=moveTo(mygraveyard) target(*|mylibrary) @@ -33131,9 +33153,7 @@ type=Instant [/card] [card] name=Hushbringer -abilities=flying,lifelink -auto=@movedto(creature|battlefield):all(trigger) onlymanaability -auto=@movedto(creature|graveyard):all(trigger) onlymanaability +abilities=flying,lifelink,noentertrg,nodietrg text=Flying, lifelink -- Creatures entering the battlefield or dying don't cause abilities to trigger. mana={1}{W} type=Creature @@ -33142,6 +33162,16 @@ power=1 toughness=2 [/card] [card] +name=Hushwing Gryff +abilities=flash,lifelink,noentertrg +text=Flash -- Flying -- Creatures entering the battlefield don't cause abilities to trigger. +mana={2}{W} +type=Creature +subtype=Hippogriff +power=2 +toughness=1 +[/card] +[card] name=Hydra's Growth target=creature auto=counter(1/1,1) @@ -48632,8 +48662,8 @@ toughness=2 [card] name=Overwhelming Splendor target=player -auto=lord(creature|targetedpersonsbattlefield) transforms((,setpower=1,settoughness=1,newability[noactivatedability])) forsrc -auto=onlymanaability +auto=lord(creature|targetedpersonsbattlefield) transforms((,setpower=1,settoughness=1,newability[noactivatedability])) +auto=lord(*[-creature]|targetedpersonsbattlefield) onlymanaability text=Enchant player -- Creatures enchanted player controls lose all abilities and have base power and toughness 1/1. -- Enchanted player can't activate abilities that aren't mana abilities or loyalty abilities. mana={6}{W}{W} type=Enchantment @@ -71472,7 +71502,7 @@ toughness=2 [/card] [card] name=Tocatli Honor Guard -auto=@movedto(creature|battlefield):all(trigger) onlymanaability ueot +abilities=noentertrg text=Creatures entering the battlefield don't cause abilities to trigger. mana={1}{W} type=Creature @@ -71853,6 +71883,13 @@ power=4 toughness=2 [/card] [card] +name=Torpor Orb +abilities=noentertrg +text=Creatures entering the battlefield don't cause abilities to trigger. +mana={2} +type=Artifact +[/card] +[card] name=Torrent Sculptor other={1}{R} name(Flamethrower Sonata) otherrestriction=can play sorcery,compare(isflipped)~equalto~1 diff --git a/projects/mtg/bin/Res/sets/primitives/unsupported.txt b/projects/mtg/bin/Res/sets/primitives/unsupported.txt index a699c5c0b..114537348 100644 --- a/projects/mtg/bin/Res/sets/primitives/unsupported.txt +++ b/projects/mtg/bin/Res/sets/primitives/unsupported.txt @@ -3501,12 +3501,6 @@ power=2 toughness=2 [/card] [card] -name=Gaea's Balance -text=As an additional cost to cast Gaea's Balance, sacrifice five lands. -- Search your library for a land card of each basic land type and put them onto the battlefield. Then shuffle your library. -mana={3}{G} -type=Sorcery -[/card] -[card] name=Gaea's Liege text=As long as Gaea's Liege isn't attacking, its power and toughness are each equal to the number of Forests you control. As long as Gaea's Liege is attacking, its power and toughness are each equal to the number of Forests defending player controls. -- {T}: Target land becomes a Forest until Gaea's Liege leaves the battlefield. mana={3}{G}{G}{G} @@ -4009,15 +4003,6 @@ type=Enchantment subtype=Aura [/card] [card] -name=Grave Sifter -text=When Grave Sifter enters the battlefield, each player chooses a creature type and returns any number of cards of that type from his or her graveyard to his or her hand. -mana={5}{G} -type=Creature -subtype=Elemental Beast -power=5 -toughness=7 -[/card] -[card] name=Graveyard Busybody text=All graveyards are also your graveyards. -- Graveyard Busybody's power and toughness are each equal to the number of cards with flavor text in your graveyards. mana={4}{U}{U} @@ -4494,7 +4479,7 @@ type=Land [card] name=Hullbreacher abilities=flash -text=Flash -- If an opponent would draw a card except the first one they draw in each of their draw steps, instead you create a Treasure token. (It's an artifact with " {T}, Sacrifice this artifact: Add one mana of any color.") +text=Flash -- If an opponent would draw a card except the first one they draw in each of their draw steps, instead you create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") mana={2}{U} type=Creature subtype=Merfolk Pirate @@ -4524,16 +4509,6 @@ type=Summon subtype=Minotaur [/card] [card] -name=Hushwing Gryff -abilities=flash,flying -text=Flash -- Flying -- Creatures entering the battlefield don't cause abilities to trigger. -mana={2}{W} -type=Creature -subtype=Hippogriff -power=2 -toughness=1 -[/card] -[card] name=Hypnotic Swirly Disc text=Whenever you crank Hypnotic Swirly Disc, target player puts the top X cards of their library into their graveyard, where X is the number of creatures you control. type=Artifact @@ -10723,12 +10698,6 @@ power=3 toughness=3 [/card] [card] -name=Torpor Orb -text=Creatures entering the battlefield don't cause abilities to trigger. -mana={2} -type=Artifact -[/card] -[card] name=Torrent of Stone text=Torrent of Stone deals 4 damage to target creature. -- Splice onto Arcane-Sacrifice two Mountains. (As you cast an Arcane spell, you may reveal this card from your hand and pay its splice cost. If you do, add this card's effects to that spell.) mana={3}{R} diff --git a/projects/mtg/include/AllAbilities.h b/projects/mtg/include/AllAbilities.h index 72fe8ec36..61d0d5996 100644 --- a/projects/mtg/include/AllAbilities.h +++ b/projects/mtg/include/AllAbilities.h @@ -190,8 +190,21 @@ public: //Battlefield is a special case. We usually don't want to trigger when a card comes from battlefield to battlefield // http://code.google.com/p/wagic/issues/detail?id=179 - if ((e->from == game->players[0]->game->battlefield || e->from == game->players[1]->game->battlefield) && (e->to - == game->players[0]->game->battlefield || e->to == game->players[1]->game->battlefield)) + if ((e->from == game->players[0]->game->battlefield || e->from == game->players[1]->game->battlefield) + && (e->to == game->players[0]->game->battlefield || e->to == game->players[1]->game->battlefield)) + { + return 0; + } + //Creatures entering the battlefield don't cause abilities to trigger (e.g. "Hushbringer"). + if (e->card->isCreature() && (game->players[0]->game->battlefield->hasAbility(Constants::NOENTERTRG) || game->players[1]->game->battlefield->hasAbility(Constants::NOENTERTRG)) + && (e->to == game->players[0]->game->battlefield || e->to == game->players[1]->game->battlefield)) + { + return 0; + } + //Creatures dying don't cause abilities to trigger (e.g. "Hushbringer"). + if (e->card->isCreature() && (game->players[0]->game->battlefield->hasAbility(Constants::NODIETRG) || game->players[1]->game->battlefield->hasAbility(Constants::NODIETRG)) + && (e->from == game->players[0]->game->battlefield || e->from == game->players[1]->game->battlefield) + && (e->to == game->players[0]->game->graveyard || e->to == game->players[1]->game->graveyard)) { return 0; } diff --git a/projects/mtg/include/MTGDefinitions.h b/projects/mtg/include/MTGDefinitions.h index e091f79c6..bc9dd621c 100644 --- a/projects/mtg/include/MTGDefinitions.h +++ b/projects/mtg/include/MTGDefinitions.h @@ -330,7 +330,9 @@ class Constants HASSTRIVE = 203, ISCONSPIRACY = 204, HASAFTERMATH = 205, - NB_BASIC_ABILITIES = 206, + NOENTERTRG = 206, + NODIETRG = 207, + NB_BASIC_ABILITIES = 208, RARITY_S = 'S', //Special Rarity RARITY_M = 'M', //Mythics diff --git a/projects/mtg/src/MTGDefinitions.cpp b/projects/mtg/src/MTGDefinitions.cpp index ab9fb1493..f6699c065 100644 --- a/projects/mtg/src/MTGDefinitions.cpp +++ b/projects/mtg/src/MTGDefinitions.cpp @@ -236,7 +236,9 @@ const char* Constants::MTGBasicAbilities[] = { "decayed", //Card has decayed. "hasstrive", //Kicker cost is a strive cost (e.g. "Aerial Formation") "isconspiracy", //The card is a conspiracy (e.g. "Double Stroke") - "hasaftermath" //Flashback cost is an aftemath cost (e.g. "Claim // Fame") + "hasaftermath", //Flashback cost is an aftemath cost (e.g. "Claim // Fame") + "noentertrg", //Creatures entering the battlefield don't cause abilities to trigger (e.g. "Hushbringer"). + "nodietrg" //Creatures dying don't cause abilities to trigger (e.g. "Hushbringer"). }; map Constants::MTGBasicAbilitiesMap;