melvinzhang
fea8a7ffeb
add reason in log for unattaching aura/equipment
...
fixes issue #258
2015-05-17 10:58:06 +08:00
melvinzhang
93e399a8b7
change SoulbondAction to delayed action following the other actions, refactor if condition for clarity
2015-05-17 10:58:06 +08:00
melvinzhang
b2f78fce56
only generate unique names for nameless permanents in real game to avoid tripping MCTS consistency checker, add isName method
2015-04-27 22:34:36 +08:00
melvinzhang
d2aeddd068
use ExileLinkAction for ExileCard effect
2015-04-24 11:44:54 +08:00
melvinzhang
7b562e56a7
getName checks for name as empty string rather than isFaceDown
...
allows it to handle Clone and copy effects. Returns "Permanent #id"
instead of "Face down creature #id" as cannot guarantee that permanent
is still a creature.
2015-04-21 14:56:52 +08:00
melvinzhang
96dc436fa7
capitalize face down unique names so it looks right at the start of a sentence
2015-04-21 12:06:05 +08:00
melvinzhang
4f767cf84d
give face down creatures a unique name
2015-04-21 11:46:45 +08:00
ShawnieBoy
8f2ace02ef
refactor MagicSoulbondAction -> SoulbondAction
2015-04-14 15:52:08 +01:00
ShawnieBoy
802595e80d
refactor MagicRemoveFromPlayAction -> RemoveFromPlayAction
2015-04-14 14:23:13 +01:00
ShawnieBoy
733c3627d4
refactor MagicDestroyAction -> DestroyAction
2015-04-14 11:35:43 +01:00
ShawnieBoy
26ae19374c
refactor MagicChangeStateAction -> ChangeStateAction
2015-04-13 10:22:38 +01:00
ShawnieBoy
b7b586718c
refactor MagicChangeCountersAction -> ChangeCountersAction
2015-04-13 08:49:43 +01:00
ShawnieBoy
9f49f7a719
refactor MagicChangeControlAction -> ChangeControlAction
2015-04-13 08:44:39 +01:00
ShawnieBoy
8a36b30397
refactor MagicAttachAction -> AttachAction
2015-04-13 08:39:40 +01:00
melvinzhang
8452b7e827
move CanAttackWithDefender from a MagicPermanentState to MagicAbility for better integration with card text parsing
2015-03-25 09:09:35 +08:00
melvinzhang
6034242ce8
support ability 'SN can't block [creatures]'
2015-03-24 14:54:32 +08:00
melvinzhang
bbc4dc4744
ensure cached* members are never null, fix crash when attempting to update UI with pt of card with CDA
2015-03-24 10:47:29 +08:00
melvinzhang
be7e8a5f30
move positive check into return clause and negative checks into if clause
2015-03-09 18:10:01 +08:00
ShawnieBoy
155900d8cd
Add MagicPermanentState.CanAttackWithDefender and include in attacking logic in MagicPermanent
2015-03-08 18:42:17 +00:00
lodici
80eec5f91c
move MurmurHash3 class into model package.
2015-02-12 03:43:38 +00:00
lodici
ca1ef1f033
remove (unused!) UI references from MagicPermanent model class.
2015-02-05 16:34:30 +00:00
lodici
feaa1edcc7
move IconImages into ui-related package as it is dependent on Swing/awt.
2015-02-04 16:46:35 +00:00
melvinzhang
d207707940
MagicPermanent.NONE maps to itself
2015-01-30 10:30:20 +08:00
melvinzhang
fac19e5692
check both players when mapping MagicPermanent
2015-01-24 13:40:40 +08:00
melvinzhang
fe487c427a
remove Swing code from MagicPermanent
2014-11-11 20:08:02 +08:00
melvin
6fc5248631
move variable for tracking whether permanent has dealt first strike into MagicPermanentState so we can reuse existing actions
2014-09-21 09:31:18 +08:00
ShawnieBoy
0a18168b18
fix and test for gaining/losing first strike between combat damage steps
2014-09-21 00:08:04 +01:00
melvin
13c41e3172
suppress unchecked warnings
2014-09-14 20:01:28 +08:00
melvin
4798dc2bad
ensure static ability is updated when permanent is flip/transform/face up/down
2014-08-31 20:34:20 +08:00
melvin
61f41e3afe
remove boolean parameter from MagicChangeCountersAction
2014-08-31 09:58:30 +08:00
melvin
53447ca3a7
add missing break in switch
2014-08-29 10:03:27 +08:00
melvin
33ca8f7987
MagicPermanent also checks statics at Game layer for modAbilityFlags and modPowerToughness
2014-08-29 10:02:41 +08:00
melvin
0541d31bca
create generic CannotBeBlockedByPermanent and CannotBeBlockedExceptByPermanent abilities
2014-08-28 14:59:25 +08:00
melvin
5ec1750278
replace multiple abilities with generic ProtectionFromPermanent
2014-08-28 14:19:45 +08:00
melvin
0c8a1b4418
MagicPermanent should defer to card for checking isDoubleFaced so that copied transform cards are not double faced since they retain their original card
2014-08-07 09:08:42 +08:00
ShawnieBoy
4e30d3f0b7
First pass of Transform ability
2014-08-06 16:29:43 +01:00
melvin
4f48b39ac2
getStatics depends on current card definition from getCardDefinition
2014-08-06 11:38:37 +08:00
melvin
d30dd536ef
remove flippedCardDefinition from MagicPermanent, retrieve it on the fly with MagicCardDefinition.getFlippedDefinition
2014-08-06 09:50:26 +08:00
ShawnieBoy
e54f61c2a2
Implement Flip
2014-08-05 19:43:05 +01:00
ShawnieBoy
094c7e3c81
Add protection from beasts
2014-08-04 23:43:17 +01:00
ShawnieBoy
faaa7b230c
More Morph cards
2014-08-04 13:10:50 +01:00
melvin
61c3f90870
add separate realCardDefinition to PermanentViewerInfo and use it to show actual card in popup
2014-08-03 21:58:07 +08:00
melvin
25bf0f097b
rename FACE_DOWN to MORPH, show MORPH as CARD_BACK in HighQualityCardImagesProvider
2014-08-03 20:11:17 +08:00
melvin
1ff61cc78e
give face-down permanents morph activation in MagicLayer.Game, morph activation doesn't use the stack
2014-08-01 11:55:26 +08:00
melvin
444f5f26d7
should use getCardDefinition for hasExcludeManaOrCombat, getConvertedCost, getDevotion
2014-08-01 11:06:01 +08:00
melvin
27ef72379e
remove unnecessary this references
2014-08-01 10:31:36 +08:00
ShawnieBoy
1214d6867b
More Morph Work
2014-07-31 17:32:22 +01:00
ShawnieBoy
68ddd3b273
Begin work on Morph Ability
2014-07-28 12:57:19 +01:00
melvin
2e978b0c45
overwrite getGame in MagicPermanent.NONE so that a more appropriate exception message is used
2014-07-08 08:33:37 +08:00
ShawnieBoy
4b38da1f47
Add Legendary landwalk
2014-07-03 16:09:13 +01:00