Commit Graph

32213 Commits

Author SHA1 Message Date
Agetian
5247793a68 - Basic AI for Drain Life (will only go for opponent's face for 3+ damage for now, to be improved later). Soul Burn currently doesn't work with this logic due to complex xColorManaPaid which I'm not sure how to set properly for the AI. 2017-01-26 19:20:37 +00:00
Agetian
51e0c469be - Fixed Midnight Entourage. 2017-01-26 18:48:56 +00:00
Agetian
267285afe1 - Forge defocusing solution: part 2 [code contribution by nefigah]. Fixes defocusing on window pop-ups such as Goblin Guide. 2017-01-26 18:43:32 +00:00
Agetian
2db703109d - Do not waste all mana on animating a single manland when interrupting a sac effect. 2017-01-26 17:43:14 +00:00
Agetian
7226ab7b3d - Attempting to fix PlayEffect nagging the player to pick a card to play even if he refuses an optional effect once (e.g. AER Expertises).
- Maybe there's a better way to write the condition, please take a look when possible (note that Chandra, Pyromaster is a good test for something that needs to work well with the change in mind).
2017-01-26 14:43:11 +00:00
Agetian
b190a58775 - Renamed the AI recursion prevention parameter to make more sense. 2017-01-26 12:17:11 +00:00
Agetian
d109a95541 - Fixed the AI crashing on trying to evaluate human-activated manlands for isAnimatedThisTurn 2017-01-26 11:54:14 +00:00
Agetian
15e0722948 - Minor tweak to DestroyAllAi. 2017-01-26 11:47:42 +00:00
Agetian
a729d44970 - Tweaked DestroyAllAi to properly evaluate situation for mass land removal (e.g. Armageddon).
- Refactored DestroyAllAi a little bit to ensure that the deprecated getOpponent() method only occurs once in each call, ready to be removed as soon as we figure out how this logic should work with multiple opponents in multiplayer.
2017-01-26 11:46:33 +00:00
Agetian
63134e06c1 - Combine CostPayLife costs (e.g. prevents Cumulative Upkeep partial payment shenanigans) 2017-01-26 07:12:53 +00:00
Agetian
b9df573ca5 - Attempting to fix desktop Forge defocusing problem [code contribution by nefigah]. 2017-01-26 06:59:52 +00:00
Agetian
67d91f02e4 - Imports cleanup. 2017-01-26 06:45:38 +00:00
Agetian
b8db2630ff - Removed a part of AiCardMemory that did not work out as an idea. 2017-01-26 06:45:09 +00:00
Agetian
501ad43f96 - Compare by name. 2017-01-26 06:43:33 +00:00
Agetian
94f53e05e6 - Explicitly marked cards that use a re-entry mechanism for testing playability via canPlaySa such that they don't recursively call each other and thus risk getting into an infinite loop (fixes potential check combinations of e.g. various mana rituals + Yawgmoth's Will in AI's hand and other things like that, which would otherwise cause a stack overflow).
- Some simplification in the AICardMemory interface, allowing to use static methods to simplify calls.
2017-01-26 06:40:46 +00:00
Hanmac
402f1ce884 cards: update Tribute cards using DB instead of AB, fixed Thunder Brute 2017-01-25 17:41:16 +00:00
Agetian
510a2df095 - Making throttle-based targeting overlay optimization optional for users running older hardware at slower CPU clock speeds. 2017-01-25 16:47:35 +00:00
Agetian
c3c4d0f098 - Better fix for the morphDown ability. 2017-01-25 15:52:27 +00:00
Agetian
a37cbc2d14 - Some cleanup in targeting overlay code. 2017-01-25 14:38:54 +00:00
Agetian
b45ae80f6e - Attempting to remedy high CPU use when dragging around card panels. 2017-01-25 14:00:20 +00:00
Agetian
7416cc8fff - Improvements to Phyrexian Dreadnought AI handling. 2017-01-25 11:46:34 +00:00
Agetian
4c931da9c5 - Restoring Phyrexian Dreadnought to AI playable state (might need generalization to its own AI logic though, currently done via a creature-specific "hack"). 2017-01-25 11:19:10 +00:00
Agetian
a8e962c930 - Migrating old changes list to README.txt.
- Documenting post-1.5.58 changes in CHANGES.txt.
2017-01-25 08:56:49 +00:00
Agetian
aeb24f9c16 - Moved the AI logic params closer together. 2017-01-25 08:33:39 +00:00
Agetian
af3bca1138 - Added some AI sac preferences and logic specifications to cards.
- TODO: couldn't figure out why Phyrexian Dreadnought stopped working for the AI, it correctly specifies cards to sac but Dreadnought still dies despite that. Marked RemAIDeck temporarily until this is figured out.
2017-01-25 08:33:05 +00:00
pfps
403ecda572 Show card when swiping or long-pressing in mobile prompt message area 2017-01-25 00:29:15 +00:00
pfps
2bedb54128 Change several confirms to use new utility function 2017-01-25 00:28:11 +00:00
Agetian
aba978da58 - Do not tap just animated manlands to animate another manland. 2017-01-24 19:25:34 +00:00
pfps
158e7d683e Add a utility confirm function to encapsulate gui-switching and use it in several places (more to come) 2017-01-24 19:14:40 +00:00
Agetian
bb661eb54e - Parameter consistency in Natural Order. 2017-01-24 17:43:12 +00:00
Agetian
0ba88f3ce5 - Improved SacAndUpgrade AI, now it works with Eldritch Evolution and requires fewer parameters in scripts. 2017-01-24 17:42:03 +00:00
Agetian
e4ddffc0a8 - Logic correction. 2017-01-24 15:31:18 +00:00
Agetian
689768d40f - Imports cleanup. 2017-01-24 15:10:19 +00:00
Agetian
65f129617c - Temporarily putting in the code that would use the original prompting method if running on LibGdx (mobile Forge) since mobile Forge has no way of showing the card to the player without going through the getGui().confirm method, which creates a custom card view and prompt there.
- Probably should be organized better (it's not very clean to branch out for a particular port in top-tier GUI code), but I'm not sure how to make this better. Please feel free to improve.
2017-01-24 15:05:01 +00:00
Agetian
a4a3ad99eb - Instantly show the card Scry is inquiring about to avoid specifically having to mouse over the prompt to take a look at it. 2017-01-24 14:01:17 +00:00
Agetian
b62a99724a - Made the Scry dialog show the card it's inquiring about to the player when the mouse is over the prompt area. 2017-01-24 13:54:44 +00:00
Agetian
654f2b3f95 - Simpler Clone Legion RepeatCards parameter. 2017-01-24 13:40:07 +00:00
Agetian
19ce03e235 - Fixed Clone Legion. 2017-01-24 12:31:18 +00:00
Agetian
8fe64ed124 - Simplified checkApiLogic in ChangeZoneAi by refactoring SameName logic into a separate method doSameNameLogic. 2017-01-24 12:28:00 +00:00
Agetian
5a88d2b943 - Moved SacAndUpgrade AI logic from SpecialCardAi to ChangeZoneAi (not card-specific, can be generalized further).
- We may want to eventually do something about ChangeZoneAi since it has become very "fat" and has a ton of convoluted routines for a dozen different effects.
2017-01-24 12:23:40 +00:00
Agetian
5e0c6bbaee - Moved ManaRitual AI logic to ManaEffectAi (no longer card-specific). 2017-01-24 11:16:25 +00:00
Agetian
b12a14b26a - Formatting fix. 2017-01-24 11:09:54 +00:00
Agetian
b2d8cc4a87 - Some additional limitations in ManaRitual AI. 2017-01-24 11:05:13 +00:00
Agetian
318543db38 - Trying to restore the new SpellAbilityAi format for ManaEffectAi.
- Limited mana ritual AI a bit more, it's bad at prioritizing instants for it.
2017-01-24 10:59:59 +00:00
Agetian
f241292bae - Removed an unnecessary parameter in a new method. 2017-01-24 10:40:06 +00:00
Agetian
f292d63c68 - Added a way to specify AILifeThreshold for cards which do not have a life cost but which deal damage or make the player lose life.
- Added AI life activation threshold to Smallpox and Pox to prevent the AI from killing itself with them.
2017-01-24 10:38:56 +00:00
Agetian
6000083a60 - Experimental improvements to allow the AI to consider ManaRitual in Main1. 2017-01-24 09:57:51 +00:00
Agetian
b46a32abfa - Temporarily reverted ManaEffectAi changes since they prevent ManaEffectAi from working completely and I'm not sure how this format should be written properly to make it work (e.g. ManaRitual does not work at all) and Main2 phase restriction should probably be local to ManaRitual, not global... Please feel free to revert this commit to submit an improved version 2017-01-24 09:41:04 +00:00
Agetian
b1bfbc96a5 - Added NeedsToPlay to Accursed Centaur 2017-01-24 09:31:04 +00:00
Agetian
d6f684e287 - Optimize BirthingPod AI by avoiding filtering library at every iteration; move ManaRitual AI in alphabetic order. 2017-01-24 09:11:04 +00:00