- matched card names of flip cards and split cards in _cards.dat and mtg:todo.dat
- removed the now superfluous todo.dat files, the file mtg_todo.dat replaces these.
All cards have been tested successfully.
This update contains 2 card groups:
1) Creatures which get a certain power- and or toughness bonus when blocking and/or being blocked. This includes
2) Creatures with "bushido". Works 100%!
This update contents:
1. Creatures which get a certain power- and/or toughness-bonus when attacking or blocking.
2. Creatures which leave the battlefield at end of combat after having attacked or blocked.
3. Clockwork-"family" from Mirrodin.
After weeks of hard work, I can proudly present you this huge package of cards, based only on already existing card code elements.
Some examples and important notes:
- Cards that get buried if you don't fulfill a condition
1. when they enter the battlefield (Hidden Horror[WEL]; Mercenary Knight, Thundering Wurm [both POR])
2. during your upkeep (Endless Wurm[USG]).
- Cards that allow to draw a card, then discard a card when entering the battlefield or damaging an opponent (Owl Familiar[POR], Looter il-Kor[TSP]).
IMPORTANT NOTE: Those cards work only correctly because the draw effect resolves before the discard effect.
Instants and Sorceries with such effects or permanents that have an activation cost for drawing, then discarding a card won't work because the two effects don't trigger in the correct order.
- Land cycle from Visions and Planeshift (both very puzzling, but working perfectly!)
I also updated World enchantments (tested & working, see rules for them in Gatherer!)
Several card fixes.
If you have any questions, post them! ;)
Limitations:
- Operators for "greater than", "less than", "unequal" have not been implemented, but if a card actually needs them, you can use a preceding minus sign to negate a comparison. Example: -power=3 means "power not equal to 3", -toughness<=3 means "toughness>3".
- You can't use spaces when specifying such restrictions. Write "power<=3" instead of "power <= 3"
- You now need to use a space before the "<" and ">" commands that count the matches for lord(), foreach(), all() and aslongas(). So far we always did use spaces in front of them without actually needing to, now we need to.
- manacost restrictions don't take "X" costs into account. Example: Mistmeadow Skulkin (FUT) has protection from manacost>=3. Blaze has a converted manacost of 1, but when you cast it with an X of 2, then it actually has a converted manacost of 3 while on the stack, and Mistmeadow Skulkin would be protected from it, but currently it isn't.
Please review the code, I'll add a few remarks/questions of my own.
There is one important thing about coding such cards in direct combination with "limit:x". You have to put "limit:x" always before "myUpkeepOnly", see Firemane Angel as an example.
An auto line with "...myUpkeepOnly limit:x" does not work! So, the only working combination is "...limit:x myUpkeepOnly".
- Code cleanup
- fix issue 142 . This will lead to other issues for some cards. These issues can be fixed by using targetcontroller/controller...etc
- Added a few cards
DIS additions:cards with Hellbent and some cards with @damaged. Note that "opponent" is not a valid target and "player|opponentinplay" will not work. So for some addition we assume that the creature will never deal damage to its owner (e.g trygon in DIS). Hellbent works fine in the situation described.
-new trigger: @tapped(...
-Parser now supports X for P/T. WARNING: this does not work for activated abilities. And currently this works only for P/T but will be added progressively to other things
- fixed a bug with bottle gnomes (would give life to opponent even if you steal control)
- huge update for abilities life,draw,damage,deplete,discard in the parser. This breaks some cards (so we need to fix them) but allows more flexibility in the future. See my post on the forum
NOTE that all these additions to the foreach parser are only available for the "inplay" area... "countcards" will need to be updated in order to have thing such as graveyard or hand to be taken into consideration (but when it will be done cards such as Spontaneous Generation - MRQ, could be added)
Also updated (tentatively) the "cantbeblockedby" in the parser it still does not work...ARG... but I can feel that I'm not far away from the solution...
We need also to go through some of the cards.dat to be sure we are not missing any possible addition ...