Commit Graph

2240 Commits

Author SHA1 Message Date
Sol
24e913023c - EffectEffect doesn't need useless override that is basically the same as it's inheriting (except worse) 2017-01-16 20:48:44 +00:00
Agetian
0fc3d3c01f - Fixed the logic in how some parameters are checked in Player.java.
- Added Hope of Ghirapur (AER).
2017-01-16 16:08:53 +00:00
Sol
181d477397 Deprecate Player.getOpponent() so we can eventually remove this function since the AI shouldn't use it 2017-01-15 03:59:35 +00:00
Agetian
27ad23104b - Named the parameter CheckSelfLKIZone to be more self-explanatory. 2017-01-14 08:43:36 +00:00
Agetian
94b409aaf0 - Changed LKI zone check on a replacement effect into an optional parameter CheckLKIZone$ True. This can be used selectively on cards where not getting a replacement effect (e.g. on mass removal) can be an issue. This approach has less potential to break other things than when applied en masse.
- Added CheckLKIZone$ True to Kalitas, Traitor of Ghet.
2017-01-14 08:39:28 +00:00
Sol
293c71e77d - Fix each existing counter using wrong object comparison 2017-01-14 03:43:40 +00:00
Krazy
26eec4cf8b [maven-release-plugin] prepare for next development iteration 2017-01-14 02:08:47 +00:00
Krazy
5196c1bf62 [maven-release-plugin] prepare release forge-1.5.58 2017-01-14 02:08:36 +00:00
Agetian
4c2eb86a0f - A little tweak to the previous commit. 2017-01-13 17:38:04 +00:00
Agetian
50c7d5b413 - Addition to the previous commit: only use LKI in ReplaceMoved if replacing a card movement upon removal (Kalitas, Traitor of Ghet + Wrath of God), otherwise use current information, e.g. for ETB replacement effects (e.g. Essence of the Wild copy). Still needs overhaul to avoid exclusions. 2017-01-13 17:31:24 +00:00
Agetian
fe64e7b451 - Fixed Essence of the Wild still making the card enter the battlefield as a copy of itself even if it's destroyed in response to a creature spell going on stack.
- This is related to the way ReplaceMoved effects are handled, currently it's a hacky solution that tries to get the best of both worlds (e.g. effects like Kalitas + Wrath of God to function correctly *and* ETB replacement effects like Essence of the Wild to function correctly). Most likely this needs some (serious) rework to get it working correctly in all cases without the need for special exclusions.
- Updated CHANGES.txt known issues accordingly.
2017-01-13 17:11:14 +00:00
Agetian
ec68b59e24 - Log formatting fix in LifeGainEffect. 2017-01-13 09:05:09 +00:00
Hanmac
3ff06ee567 CounterPutEffect and CounterPutAi: refactor it to make the AI better use of chooseCounterType 2017-01-12 19:29:32 +00:00
Hanmac
29646ca05f PlayerPredicates: add counter Predicates from CardPredicates, probably might do a base class for that 2017-01-12 19:22:13 +00:00
Agetian
6f9b62219e - Some refactoring in AbilityUtils/SpellAbility. 2017-01-12 04:48:22 +00:00
Agetian
07f5172109 - Fixed TriggerRememberAmount not finding the correct trigger ability to get the count from (e.g. Mana Drain, Scattering Stroke). 2017-01-11 19:43:03 +00:00
Agetian
ea4057a08c - Added a way to count the number of coin flips in AF FlipACoin without the need for recursive counting script (which no longer works in the current engine).
- Fixed Crazed Firecat.
2017-01-11 15:25:37 +00:00
Agetian
f14de08c20 - Prevent Crew from taking negative power of creatures on the battlefield into consideration when determining the total amount of power available on the battlefield (instead treating them as 0 now). 2017-01-11 14:35:33 +00:00
Agetian
e86a709d72 - A more appropriate fix for Quicksmith Rebel / Quicksmith Spy. 2017-01-11 14:08:32 +00:00
Agetian
95c68bcc81 - Changed the implementation of TargetChoices comparison to an .equals() method override (seems cleaner) 2017-01-11 07:41:22 +00:00
Hanmac
877b987201 fixed max 2017-01-11 07:24:33 +00:00
Hanmac
249a5a8074 PlayerCollection: functions need to be public 2017-01-11 07:24:01 +00:00
Agetian
a80119b74a - A more in-depth check for target equality when comparing SAs, fixes certain cards not guessing that they are looking at the ability they need to be looking at (e.g. Grip of Chaos). 2017-01-11 07:20:38 +00:00
Hanmac
7c0a8412c9 Card & Player: more fixes with setCounters 2017-01-11 07:02:43 +00:00
Hanmac
17bd19a46b GameEntity: setCounter now removes counterType directly when its not used anymore
Card and Player updated to use that directly instead of doing it on their own
2017-01-11 06:35:09 +00:00
Sol
1fa77e04e8 Add Maulfist Revolutionary and Skyship Plunderer 2017-01-11 02:14:43 +00:00
Hanmac
33715e446d PlayerCollection: add new class as spezialisation of FCollection<Player> 2017-01-10 19:54:30 +00:00
Sol
e3c4386473 - Add Improvise keyword handling first pass 2017-01-10 02:10:32 +00:00
Hanmac
291d42d065 Player: refactor wasDealtDamageThisGameBy & wasDealtDamageThisTurnBy add wasDealtCombatDamageThisTurnBy 2017-01-09 20:23:32 +00:00
Hanmac
17691510ab Player: extend TriggerLifeLost with FirstTime variable 2017-01-09 19:51:02 +00:00
Hanmac
ecb1ce986e Card: add blockedThisCombat from DamageHistory 2017-01-09 18:20:27 +00:00
Hanmac
8849c7d031 CounterMoveEffect: update Effect for cards using multiple Sources or multiple Targets 2017-01-08 19:26:11 +00:00
Agetian
4ad1cc90d5 - For some reason CharmEffect could not match SAs in ChoiceRestriction mode (Demonic Pact). For now, checking by equality of description, please update if necessary. 2017-01-08 17:30:51 +00:00
Hanmac
d5e138f922 CardLists: add new getValidCards with allows SpellAbility and does split by "," 2017-01-08 15:30:28 +00:00
swordshine
0c43466a56 - AER: Add 2 cards 2017-01-08 04:36:08 +00:00
pfps
beaffe830b Make yield string methods robust to effects that don't have a host card 2017-01-07 20:17:17 +00:00
pfps
87296cd6a4 Description for wrapped abilities includes stack information; Fixes problem with autoordering 2017-01-07 19:08:39 +00:00
Hanmac
7dc6a43d8e Tracker: use HashBasedTable to store the Trackable Values 2017-01-07 18:13:29 +00:00
pfps
5da185263e Autoyield on effect on a card not overall; Add new method to generate the autoyield key to prepare for fix of effect ordering 2017-01-07 15:52:24 +00:00
swordshine
5aae86e31a - Set the intrinsic parameter for keyword "Equip" 2017-01-07 14:19:30 +00:00
Hanmac
048dce234c CounterType: add Unity for Call for Unity 2017-01-07 11:47:04 +00:00
Hanmac
9531e16d02 Player: add hasRevolt similar to other Conditions, now way to calculate it, does set it in GameAction 2017-01-07 11:29:06 +00:00
Hanmac
593f4f64b1 GameEntity: move preventDamage from Card and Player to base Class,
add TriggerDamagePrevented if some damage was prevented
2017-01-07 10:26:40 +00:00
Agetian
7599e41a63 - Adding ways to determine the number of lands played and spells cast by a particular player last turn (will be necessary for some upcoming AI additions). 2017-01-07 04:59:11 +00:00
Hanmac
c46683e92d AbilityUtils: add RegisteredOpponents for PlayerCount
PlayerPredicates: add isOpponentOf Predicator
Player: make getBloodthirstAmount use of new function
2017-01-07 04:19:33 +00:00
Hanmac
bd6c729317 Player: add wasDealtCombatDamageThisTurn Property 2017-01-07 03:55:59 +00:00
Agetian
15c631be72 - Temporarily reverting a change to the way ordering SAs is handled (breaks auto-yield) and improved my original change a bit to fix its logic, feel free to revert this to continue work on this project. 2017-01-06 18:53:05 +00:00
Agetian
bd26d9f4aa - Fixed casting face-down instant spells from exile (e.g. via Gonti, Lord of Luxury), it was looking at the FaceDown state before and thought it was a creature. 2017-01-06 06:18:21 +00:00
Agetian
505b8c1c74 - Committed a change to allow the simulatenous SAs coming from different cards to be detected as different (by pfps), reverted a previous change with faulty logic. 2017-01-06 04:59:46 +00:00
Hanmac
a7dd00ed57 PlayerPredicates: create more Player Predicates to use them for AI 2017-01-05 19:47:21 +00:00