ShawnieBoy
605a979f77
fix: transformed cards have no mana cost, but a converted mana cost of the other side
2016-03-27 16:29:19 +01:00
ShawnieBoy
566d258819
add White and Red fear variants
2016-02-05 17:18:39 +00:00
ShawnieBoy
1b8b58f67c
add Split property to identify Split cards for Cardbuilder
2016-01-31 15:06:24 +00:00
melvinzhang
a9694c6e34
replace String.format with MagicMessage.format
2016-01-31 12:44:03 +08:00
melvinzhang
295f9c1913
add whitespace to align initial stateFlags
2016-01-11 10:47:51 +08:00
ShawnieBoy
6230378e70
rename comeIntoPlayTriggers to etbTriggers
2016-01-10 18:14:09 +00:00
ShawnieBoy
bdf283b71a
remove unnecessary qualifiers from MagicPermanent
2016-01-10 17:45:15 +00:00
ShawnieBoy
692fc110d4
reformat MagicPermanent code
2016-01-10 17:25:27 +00:00
melvinzhang
a6830b0786
consolidate duplicate implementations as default methods in IRenderableCard
2016-01-06 14:26:58 +08:00
ShawnieBoy
af8159dd97
add getTransformedDefinition() to IRenderableCard
2016-01-06 03:30:11 +00:00
ShawnieBoy
391e61f570
simplify isHybrid() logic
2016-01-06 03:29:08 +00:00
ShawnieBoy
0dc50c65b8
add getRarityChar() to IRenderableCard
2016-01-05 18:14:51 +00:00
melvinzhang
16a6372251
fix crash when trying to cash HashSet to EnumSet by removing cast and creating copy of cachedSubTypeFlags
2015-12-25 08:54:58 +08:00
melvinzhang
0e47e2ed47
rename getSubTypeFlags to getSubTypes
2015-12-25 08:54:58 +08:00
melvinzhang
dc2078e36b
improve indentation of src code
2015-12-24 12:45:50 +08:00
ShawnieBoy
1d1c76e234
add isHidden() to IRenderableCard
2015-12-21 13:45:04 +00:00
ShawnieBoy
694902fa30
add Type booleans to IRenderableCard
2015-12-19 22:56:41 +00:00
ShawnieBoy
95a3c00c58
add Implementation of IRenderableCard
2015-12-19 16:27:28 +00:00
ShawnieBoy
bd519c32aa
make .getColorFlags() public
2015-12-19 14:59:56 +00:00
melvinzhang
4c40d011c7
replace reference to MagicCostManaType.Colorless MagicCostManaType.Generic
2015-12-14 23:27:25 +08:00
ShawnieBoy
fd1be803a2
rename MagicWhenComesIntoPlayTrigger to EntersBattlefieldTrigger
2015-11-22 15:33:59 +00:00
melvinzhang
f09b198e05
Revert "move default implementations from MagicObjectImpl into MagicObject" as it does not work with groovy type checking
...
This reverts commit d7f4bfb666
.
2015-10-29 21:18:04 +08:00
melvinzhang
d7f4bfb666
move default implementations from MagicObjectImpl into MagicObject
2015-10-29 20:37:28 +08:00
melvinzhang
4bc8922560
always show the human player the true face of face down spells
2015-10-27 19:57:54 +08:00
melvinzhang
07c8bd0084
group can/can't until EOT should affect permanents that ETB after effect resolves, fixes #443
2015-10-20 21:59:23 +08:00
melvinzhang
86df942684
create an artificial layer for ability changing that depends on condition, fixes #447
2015-10-20 20:58:56 +08:00
lodici
846b36d6ba
tokenize card name in log messages ( fixes #463 ).
2015-10-10 22:38:13 +01:00
melvinzhang
63c0b082af
rename face-down creature to Morph, add Manifest
2015-09-08 21:28:29 +08:00
melvinzhang
87e9538b05
replace hardcoded MORPH card definition with card script that uses morph overlay as image
2015-09-08 20:56:06 +08:00
melvinzhang
d3bd61421b
fix missing implementation of color CDA causing 'Devoid' not to work
2015-08-28 10:22:32 +08:00
melvinzhang
00627d8a6b
invalid permanent NONE returns false for canTap
2015-08-23 08:47:59 +08:00
melvinzhang
22223077f1
remove redundant method, this implementation is already inherited from the parent class
2015-06-19 10:39:07 +08:00
ShawnieBoy
6cc49f27db
add hasCounters(MagicCounterType):boolean method to MagicPermanent
2015-06-18 17:58:11 +01:00
melvinzhang
59ed6b1fa0
move hasCounters into MagicObjectImpl
2015-06-11 09:05:33 +08:00
melvinzhang
4137466e06
add getCounters and changeCounters to MagicObject
2015-06-10 12:52:47 +08:00
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