Leandro Doctors
2733516cb9
Organize imports
2020-01-16 08:21:24 +08:00
Martin Petricek
d7e856da68
Add several new cards ( #1619 )
...
* Add several new cards:
Balustrade Spy
Corpse Augur
Galvanoth
Gift of Growth
Living Artifact
Marchesa, the Black Rose
Phytotitan
Pyromancer's Assault
Settle the Score
* Fix indentation in Galvanoth
* Refactor Pyromancer's Assault, remove trigger condition from action text.
* Generalize milling actions to fixed amount milling and "mill until certain number of cartain cards are milled".
* Refactor cards to use new MillLibraryUntilAction
* Add parser for MillLibraryUntilAction, so it can be used without need for groovy.
* Add new parseable cards:
Mind Funeral
Consuming Aberration
Destroy the Evidence
Undercity Informer
(no groovy needed)
* Balustrade Spy now does not need groovy anymore.
2018-10-22 21:09:12 +08:00
Ada Joule
d213884dc2
Add Saga mechanic ( #1564 )
...
* Add AtBeginOfFirstMainPhaseTrigger and adding lore counter to saga
* Make add counter trigger more generic
* Change begin main phase trigger to Saga-specific
* Add magic.data.RomanToInt
* Add chapter parsing to ARG
* Add SagaChapterTrigger
* Add chapter ability to MagicAbility
* Add lore counter mechanic to Saga card definiton
* Add Saga sacrifice state-based action
* Fix import
* Fix getPendingTriggers
* Add History of Benalia
* Fix adding ETB trigger
* Remove AtBeginningOfFirstMainPhaseTrigger.Saga, Add counters directly in MagicMainPhase.executeBeginStep()
* Remove null case from RomanToInt
* Revert "Remove AtBeginningOfFirstMainPhaseTrigger.Saga, Add counters directly in MagicMainPhase.executeBeginStep()"
This reverts commit d8e5d1f253ab7b54f401f4151b44d39ee927f44c.
* Move isSaga method to IRenderableCard
2018-05-04 14:17:55 +08:00
melvinzhang
91605aa3c1
replace filter generators with filter parsers
2018-04-01 12:36:38 +08:00
melvinzhang
7d292be16c
rename regex group from group2 to tpgroup
2017-08-26 13:16:50 +08:00
melvinzhang
ae7fc3d801
rename regex group from choice2 to tpchoice
2017-08-26 08:28:55 +08:00
melvinzhang
75ce5c168c
allow PERMANENTS to select those which 'target player/opponent controls'
2017-08-22 10:00:03 +08:00
melvinzhang
a8d09415a7
add cost: Put a card an opponent owns from exile into that player's graveyard
2017-08-17 15:21:14 +08:00
melvinzhang
e3831bc7d1
merge conditions for gain/lost life
2017-08-09 18:00:04 +08:00
melvinzhang
e8afd417cd
add ARG.EACH and method to convert each text to MagicAmount
2017-08-04 10:44:02 +08:00
melvinzhang
ef127bcf83
allow X in DrawLosePlayers
2017-08-03 09:45:40 +08:00
melvinzhang
aa799c8d26
support effect 'cast <card> without paying its mana cost' with optional exile
2017-07-21 11:11:56 +08:00
melvinzhang
d121059094
generalize Reanimate effect to work on group of cards
2017-07-20 11:09:17 +08:00
lodici
1915195aeb
Remove imports in same package.
2017-04-08 11:29:49 +01:00
melvinzhang
37a532f54d
add effect '<player> get {E}+', for #830
2016-09-18 20:34:53 +08:00
melvinzhang
75716a9c48
add static ability '<permanent> get +X/+X, where X is <count>'
2016-06-05 17:47:27 +08:00
melvinzhang
1342dc7325
generalize effect of type 'you may <cost>. if you do, <effect>' to any cost, fixes #552
2016-06-01 11:37:10 +08:00
melvinzhang
d17d6eb173
make regex for AMOUNT more specific to avoid unintended matches
2016-05-21 12:52:30 +08:00
melvinzhang
c8f1262b45
remove trailing space from java code
2015-12-31 18:54:52 +08:00
melvinzhang
3186f9b3df
only replace X not in quotes, fixes issue with Lavaclaw Reaches' text
2015-12-24 09:55:48 +08:00
melvinzhang
6f32b5f609
replace manual parsing with call to ARG.pt
2015-12-23 23:11:26 +08:00
melvinzhang
1c3474a09c
replace hardcoded mods named group with ARG.MODS
2015-12-21 12:10:00 +08:00
melvinzhang
32f2558b21
introduce ARG.MODS, allow effect to terminate with nothing, period, or comma, allow rider to start with 'then '
2015-12-21 12:10:00 +08:00
melvinzhang
e6f15b020a
generalize counter item on stack to work with ITEMS
2015-12-19 09:24:55 +08:00
melvinzhang
0fb49ed3d6
factor regex for <target>'s controller into a separate constant
2015-12-15 09:02:04 +08:00
melvinzhang
b9e12aeed6
remove extra space at end of PLAYERS regex
2015-12-15 08:35:42 +08:00
melvinzhang
ea95404ac8
allow 'its controller' for PLAYERS and TARGETS
2015-12-14 23:16:06 +08:00
melvinzhang
4fcefde2de
allow 'that <permanent>'s controller' in PLAYERS and TARGETS2
2015-12-14 23:16:06 +08:00
melvinzhang
351005fa5d
allow TARGETS to match 'that <permanent>'s controller'
2015-12-14 23:16:06 +08:00
melvinzhang
0f41f58e0b
allow TARGETS to match "rn's controller"
2015-12-14 14:59:22 +08:00
melvinzhang
cc6a8319ed
allow 'rn's controller' for PLAYERS
2015-12-14 13:02:53 +08:00
melvinzhang
59cd8390ed
support X as amount for damage effect without choice
2015-12-13 13:51:19 +08:00
melvinzhang
7f22994d8c
generalize DamageChosenAndController into DamageTwoGroupAlt, merge DamageChosen into DamageGroup
2015-12-13 11:16:34 +08:00
melvinzhang
bed15ca879
replace hardcoded regex with reference to constants in ARG
2015-12-13 10:41:47 +08:00
melvinzhang
cbd1238bad
add ARG.CARDS
2015-12-12 19:59:29 +08:00
melvinzhang
b74d2438f0
remove trailing space for group
2015-12-12 11:34:45 +08:00
melvinzhang
3b7e11f775
add ARG.TARGETS
2015-12-12 11:21:38 +08:00
melvinzhang
99774f7080
capture choice with PLAYERS
2015-12-12 09:03:05 +08:00
melvinzhang
ecec624f19
merge DestroyChosen into DestroyPermanents
2015-12-10 23:15:07 +08:00
melvinzhang
08b3d80df0
fix case analysis in permanents method, should check for group sn instead of pn
2015-12-09 23:33:01 +08:00
melvinzhang
37a4cee1e8
limit PumpPermanents to positive, generalize WeakenGroup to WeakenPermanents
2015-12-09 21:44:30 +08:00
melvinzhang
6a9343344d
add ARG.PERMANENTS
2015-12-09 21:31:54 +08:00
melvinzhang
a30ef048ac
add ARG.PLAYERS that combines group and rn/pn
2015-12-09 10:09:53 +08:00
melvinzhang
a7e4cae7a6
replace ARG.SINGLE with ARG.CHOICE
2015-11-25 18:36:02 +08:00
melvinzhang
d93a41964f
allow 'a' or 'an' in single choice, fixes #490
2015-11-05 09:18:05 +08:00
ShawnieBoy
c203b2f005
add color method to ARG
2015-08-20 14:02:31 +01:00
melvinzhang
42e8361de6
change regex from greedy to reluctant
2015-05-12 17:52:29 +08:00
melvinzhang
a24ed94a31
generalize ConditionPumpGain and ConditionPumpGainAlt from SN to [permanents]
2015-05-03 13:48:12 +08:00
melvinzhang
3c3edc1a82
improve specificity of CHOICE regex
2015-04-26 11:21:51 +08:00
melvinzhang
458a604227
rename ARG.PERMANENT to ARG.CHOICE
2015-04-25 13:12:27 +08:00