Commit Graph

298 Commits (a18789f8cdaa509c565cc7816b92d151ca13f57b)

Author SHA1 Message Date
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