Commit Graph

336 Commits

Author SHA1 Message Date
jendave
8f725ecfbc color simplifications 2011-08-06 08:38:51 +00:00
jendave
aa55a6bc90 - Added "Any" as option of controller of the CastSpell trigger of the whenever keyword.
- Added Angel's Feather, Apothecary Initiate, Contemplation and Ivory Cup.
2011-08-06 08:34:06 +00:00
jendave
ff7d8ed2f4 - Fixed possible null pointer error for changeCost in Abilities that have 0 for mana cost.
- Fixed logic for uncastable spells. Now will only prevent spells that do not have a mana cost from being played.
2011-08-06 08:32:46 +00:00
jendave
556952891a - Added Leyline of the Void. 2011-08-06 08:31:00 +00:00
jendave
e7f5bb475f -Fixed Vanishing(turns out it wasn't a keyword)
-Fixed Wither/Doubling Season(damage is an effect)
2011-08-06 08:29:22 +00:00
jendave
f3559e0f1e - Changed setCounter to be able to skip Doubling Season's ability. This is necessary for undoing remove counter payments.
- Fixed setCounter logic for choosing to add or subtract counters.
- Change cost payment to use subtractCounter over setCounter.
2011-08-06 08:28:25 +00:00
jendave
ef4893e70c - Initial submission of Static Abilities which resolve instead of get added to the Stack.
- Added Ability_Static.java
- Changed Morph, Totem Armor, Hatchling's etb, Multikicker's etb, Swans of Bryn Argoll, An-Zerrin Ruins to be a Static Ability.
- Fixed Morph interaction with Linvala
2011-08-06 08:27:14 +00:00
jendave
c5c927d724 Fixed a lot of changeling issues with the whenever keyword, the CostChange keyword and Protection from Dragons/Demons/Goblins . 2011-08-06 08:25:45 +00:00
jendave
8f924e2ff4 - Ability Cost wasn't taking changeCost into account. 2011-08-06 08:23:47 +00:00
jendave
7d2ade4524 - Created a GainLife function instead of needing two lines everywhere life gaining happened. 2011-08-06 08:22:54 +00:00
jendave
00de8efa38 - Added the "World rule".
- Added the World supertype to Concordant Crossroads.
- Converted Serra Aviary to stPump.
2011-08-06 08:22:25 +00:00
jendave
a303f3634d - Added "Totem armor" keyword. - Added some totem armor cards. 2011-08-06 08:21:30 +00:00
jendave
5683bc81da Removed getPlaneswalkerSubtype from GameAction. Wasn't needed. 2011-08-06 08:18:37 +00:00
jendave
b6c123bcc4 1) add X as a valid value in CostChange keyword
2) add Stratadon (from Planeshift) as an example
2011-08-06 08:09:32 +00:00
jendave
bc38d0f299 added Freyalise's Winds (from Ice Age) 2011-08-06 08:05:45 +00:00
jendave
d5cd804200 - Changed the syntax of stPump (see forum).
- Added isValidCard(String Restrictions[], String Controller) and getValidCards(final String Restrictions[], final String Controller).
- Converted most of the stPumpAll spells.
2011-08-06 08:04:11 +00:00
jendave
8fbb3834b9 added Cerulean Sphinx (from Ravinica:City of Guilds) 2011-08-06 08:03:32 +00:00
jendave
5d1fe7efe3 - Minor edit to the WheneverKeyword keyword. Tokens created by this keyword should no longer have " Token" added to their name. This mainly affects Breeding Pit at this time. 2011-08-06 07:27:39 +00:00
jendave
5edf88bc6d -Fixed proliferate(used to add one of Each counter type on card)
-Fixed Skullclamp(a static effect check unequipped it before it was checked)
2011-08-06 07:27:29 +00:00
jendave
43283c292b - Fixed Elspeth's third ability - Fixed Stonybrook Schoolmaster. 2011-08-06 07:24:41 +00:00
jendave
3a7b5b7277 - Remove lastPlayerToDraw since it's a more confusing variable than playerTurn
- Replaced lastPlayerToDraw with isPlayerTurn in appropriate places for the Whenever keyword.
2011-08-06 07:24:35 +00:00
jendave
8770fbe1ed - Cleanup for Input_draw. Will ignore a consecutive call for the draw step
- Moved some "At the beginning of draw step" abilities to the draw step.
- Bugfix: Ancestral Vision should now draw cards as expected.
2011-08-06 07:23:53 +00:00
jendave
bf0ae5659e - Added the keyword: stPumpAll.
- Added Auriok Glaivemaster.
- Changed the keyword of Mindwrack Liege to stPumpAll.
2011-08-06 07:23:46 +00:00
jendave
66ea30d5f6 -Added Leeches
-addPoison and getPoison (player) added to GameAction
2011-08-06 07:22:33 +00:00
jendave
c8077db068 - Needed for discard: Game Action was hiding the last two submissions. 2011-08-06 07:20:17 +00:00
jendave
7985bc0e48 Centralized all milling I could find. 2011-08-06 07:15:57 +00:00
jendave
7db159c8f6 - Fixed some combat related(lifelink) bugs. 2011-08-06 07:14:34 +00:00
jendave
3b2ab6d69a The wheneverkeyword now recognizes changelings. 2011-08-06 06:15:25 +00:00
jendave
b99c986393 - Added PayLife as a new kind of Ability_Cost
- Pulled targeting from Ability_Cost into it's own class. 
- Added Player info to PlayerLife
- Added Reckless Assault as a sample of PayLife<> cost.
2011-08-06 06:13:55 +00:00
jendave
25161778bc fix Fracturing Gust giving life for non-destroyed Indestructible permanents 2011-08-06 06:13:22 +00:00
jendave
aa0fec9926 - Added "When CARDNAME is put into a graveyard from anywhere, shuffle it into its owner's library." keyword.
- Added Farsight Mask, Dread, No Mercy and Dissipation Field.
2011-08-06 06:12:30 +00:00
jendave
8a1b5a17dc - Made more of a distinction between combat damage and non-combat damage dealt to players (for instance, Marsh Viper or Abyssal Specter should trigger now on non-combat damage). 2011-08-06 06:09:11 +00:00
jendave
74fc00d4ce - Fixed the Swords (going to make some more fixes / additions to the damage code soon). - Added Elspeth Tirel. 2011-08-06 06:08:38 +00:00
jendave
9d4985f7f0 - Added Proliferate keyword. - Added Thrumming Bird and Steady Progress. 2011-08-06 06:06:13 +00:00
jendave
a0d1f46608 - Changed some of the damage dealing code (it's much more centralized now), there's also a difference now between dealing damage and dealing combat damage (Mirri the Cursed shouldn't get counters anymore if she damages creatures through non-combat damage). Hopefully this update didn't cause too many bugs...
- Added Infect keyword, plus a few Scars of Mirrodin cards.
2011-08-06 06:04:22 +00:00
jendave
62cdb4edd0 - Added Dodecapod, plus probably fixed a compile error. 2011-08-06 06:03:00 +00:00
jendave
e0c1c329b0 - Big update: added "If a spell or ability an opponent controls causes you to discard CARDNAME, put it onto the battlefield instead of putting it into your graveyard." keyword - Added Wilt-Leaf Liege and Obstinate Baloth (Dodecapod doesn't quite work yet). 2011-08-06 06:02:47 +00:00
jendave
88b23cc038 - Added Cost_Payment.java to go through Ability_Cost and pay each Cost in turn. This is enabled in three keywords: abDamage, abPump, and abAllPump.
- Simplified the ability generation of these keywords by removing the need for Ability_Tap. 
- The AI also uses the same structure to pay for things for these keywords. If available, it will pay in payComputerCosts() in Cost_Payment.
- Sacrifice Costs are still disabled for the AI until better code is written for sacrifice decisions. Currently, it attempts to sacrifice everything available to it.
Note: If you want to see the AI sacrificing glory, comment out "if (abCost.getSacCost()) return false;" in the keyword canPlayAI()
2011-08-06 05:52:32 +00:00
jendave
b0cb5f581d Added PlayerHasThreshold... just in case. 2011-08-06 05:51:10 +00:00
jendave
7efbba124c Modified NewGame to use SVar:PicCount to enable multiple card images for more than just basic land. 2011-08-06 05:44:18 +00:00
jendave
2ff2833d26 - Added a single check for Changeling to the CostChange keyword. This appears to reduce the cost correctly for Changelings. Works for both the computer and the human. 2011-08-06 05:42:51 +00:00
jendave
6e257f584f Added new format for sacrificePermanent - takes the prompt as parameter. 2011-08-06 05:42:35 +00:00
jendave
db745667eb Big ManaPool Update
- Combined Mana Pool and Snow Mana Pool
- Combined ManaCost and Mana_PayCost
- Reworked how choices are made when paying for costs
- Bugfixes: Spectral Possession and Flame Javelin can now use the ManaPool to be cast.
- Snow mana can't be used to give yourself infinite mana by canceling abilities
- Added spaces between all cards that generate more than 1 mana for smooth parsing.
2011-08-06 05:41:18 +00:00
jendave
0f92330dee - Improved the AI of Consume the Meek, Culling Sun, Retribution of the Meek, Cleanse and Plague Wind by considering indestructible.
- reverted the changes to Mirror Gallery
2011-08-06 05:37:47 +00:00
jendave
5fdfe987ae - Improved the AI of Wrath of God and Damnation by considering indestructible.
- Added getNotKeyword (to filter out cards with certain keywords) to Cardlist.java.
- More elegant implementation of Mirror Gallery.
2011-08-06 05:37:35 +00:00
jendave
35fdd20765 Added Mirror Gallery. 2011-08-06 05:37:19 +00:00
jendave
464034b950 Fixed "two indestructible legends not dying" bug, by using sacrificeDestroy instead of destroy in destroyLegendaryCreatures. 2011-08-06 05:37:13 +00:00
jendave
12dbf81dae - Added Sac-<Type> and Sac-CARDNAME to abPump keyword as a cost.
- Some of the inputs will now check if an ability has AfterPayMana for Sacrifice effects before putting the ability on the stack.
- Added Atog, Auratog, Foratog, Lithatog, Thaumatog, Megatog, Goblin Sledder, Need for Speed, Gruul Guildmage, Marsh Lurker, Plagued Rusalka, Deathspore Thallid, Thallid Devourer, Thallid Germinator, Vitaspore Thallid
- Updated Phyrexian Plaguelord to use updated abPump keyword
- Added rarity and pictures grabbed from Python Script
- Note: Deja Vu picture failed.
2011-08-06 05:35:18 +00:00
jendave
6a6dfbf4f2 - Added playerTurn, a string to keep track of whose turn
- Replaced getLastPlayerToDraw with isPlayerTurn in a few locations to play nice with cards that skip draw phases.
Note: Whenever keyword uses getLastPlayerToDraw but wasn't sure what it was doing. Probably should use isPlayerTurn instead.
2011-08-06 05:33:35 +00:00
jendave
37f64871d8 Pardic Dragon now has its Time Counter ability and is at the top of cards.txt 2011-08-06 05:29:45 +00:00