Commit graph

37 commits

Author SHA1 Message Date
Evan Kranzler
5390963d38
Fix handling of damage to permanents (WIP) (#7592)
* initial refactor of damage events

* cleaned up some instances of classes that need to be removed

* removed old damage event classes

* removed outdated imports

* temporarily refactor Everlasting Torment (this will need to be changed more)

* updated damage handling to use new changes

* some reworking of lethal/excess damage plus a test

* updated damage marking to handle planeswalkers

* updated implementation of Phyrexian Unlife

* updated implementation of Everlasting Torment

* added some more excess damage tests

* small change to wither check
2021-02-22 17:11:24 -05:00
Oleg Agafonov
6dcbcbe962 Tyvar Kell and gain ability fixes:
* GainAbilityTargetEffect - reworked to support static/dynamic targets, added support of spells (card + related permanent);
* SpellCastControllerTriggeredAbility - now it can setup the target to a card instead a spell;
* Added checks/errors on wrong ability adding code (example: if you add permanent's ability by game state instead permanent's method);
* Tyvar Kell Emblem now use a standard code;
* Test framework: added additional logs for some errors;
2021-01-12 04:41:35 +04:00
Oleg Agafonov
db239a1055 Refactor: replaced sourceId by source and introduced source param in some methods; 2020-12-12 20:23:19 +04:00
Oleg Agafonov
c7595ca476 * Regeneration abilities - added card hint about activated and used regeneration; 2020-08-01 21:29:08 +04:00
Evan Kranzler
73026b57b1 implemented Neyith of the Dire Hunt 2020-06-30 21:29:59 -04:00
LevelX2
d2d892a7cb * Fixed that permanents under non owner control sine they are on the battlefield were no exiled if the controller left the game (e.g. Captive Audience) (fixes #5593). 2020-06-27 23:47:04 +02:00
Oleg Agafonov
c656bea31c Ability refactor: removed deprecated code 2020-05-28 23:38:16 +04:00
Oleg Agafonov
f3f1c29926 Ability refactor: face down; 2020-05-28 23:02:20 +04:00
Oleg Agafonov
978118148b Ability refactor: new code to remove abilities from permanent; 2020-05-28 22:31:54 +04:00
Samuel Sandeen
29ce4b1ad4
Fix Lifelink so it triggers per source instead of per recipient in combat. (#6272)
* Fix Lifelink so it triggers once per source instead of once per recipient in combat.

* Undo an import collapse.

* Add more tests for lifelink.
2020-02-08 20:31:50 -06:00
Oleg Agafonov
5adab75324
Revert "format: organize imports" 2020-02-05 02:17:00 +04:00
Leandro Doctors
8a0a9acff7 format: organize imports 2020-02-04 16:21:48 -03:00
Oleg Agafonov
8ca6fd8552 Can't be target/attached effects - fixed that user gets multiple warning message about prevention effect; 2020-01-28 05:31:32 +04:00
Evan Kranzler
fd709bcd28 Implemented Verity Circle 2019-01-04 20:58:02 -05:00
Evan Kranzler
1f24af8716 Implemented Carnival // Carnage 2019-01-04 12:28:14 -05:00
igoudt
d6450eed94 change enum comparison 2018-07-08 13:11:39 +02:00
GrayedFox
3953f3dbdd
remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
LevelX2
15602cdfb3 Small change to Uphill Battle. 2018-03-08 23:27:19 +01:00
L_J
e7301e2c08
Implemented banding (#41) 2018-02-13 20:36:25 +01:00
LevelX2
bc490ef91a Added Spellweaver Volute. 2018-01-02 23:48:07 +01:00
Evan Kranzler
3d20e4dbef changed how phasing is handled 2017-10-10 13:37:05 -04:00
Evan Kranzler
a63e024ea4 initial setup for phasing fix 2017-10-06 12:29:14 -04:00
Evan Kranzler
2733d736d5 fixed Curtain of Light targeting, updated how being unblocked is checked 2017-10-05 13:41:12 -04:00
LevelX2
5996aa12e6 Trove of Temptation working for Human. 2017-09-15 17:51:54 +02:00
igoudt
905829561e talk to interfaces rather than implementations 2017-07-16 11:08:09 +02:00
LevelX2
75cbfdf3b9 * Some changes to EnterTheBattlefield events, some other fixes (fixes #2765). 2017-01-15 15:22:33 +01:00
vraskulin
c0cf22bbf7 Refactoring
See github line by line comments in 'File changed'
2016-12-29 16:16:08 +03:00
Neil Gentleman
f438b76b31 remove deprecated, unused, unimplemented method 2016-11-01 21:28:43 -07:00
LevelX2
86648c7190 * Reworked some parts of transform handling. Fixes #2396. 2016-09-28 17:02:37 +02:00
Samuel Sandeen
434be545f7 Merge remote-tracking branch 'magefree/master'
# Conflicts:
#
Mage/src/main/java/mage/abilities/condition/common/SourceHasSubtypeCondi
tion.java
#	Mage/src/main/java/mage/game/permanent/PermanentToken.java
2016-09-03 20:06:33 -04:00
Samuel Sandeen
bec11804f5 Make the handling of counters more consistent.
This dramatically reduces the code duplication around counters handling.
2016-09-03 16:52:41 -04:00
Samuel Sandeen
148f633672 Make the Counters API for card and permanent consistent. 2016-09-03 10:33:54 -04:00
LevelX2
ab2399cbe7 * Fixed that equipments with restrictions (e.g. Gate Smasher) were not unequipped if the equipped permanent did no longer fulfill the restrictions(fixes #2212). 2016-09-03 15:26:17 +02:00
fwannmacher
10778cdd6b - Converted CardImpl.cardNumber from int to String
- Fixed Issue #1953
- Fixed Issue #1914
- Fixed Issue #739
2016-07-24 15:18:54 -03:00
LevelX2
1dbba3f7a9 * Soulbond - Reworked to two triggerd abilities (fixes #1882). 2016-04-16 02:43:52 +02:00
Jared Hall
42a7b38cf1 [SOI] Bound by Moonsilver Implementation 2016-03-28 00:37:01 -04:00
poixen
46eb6c0525 Restructured Mage module 2015-11-29 21:56:49 +01:00
Renamed from Mage/src/mage/game/permanent/Permanent.java (Browse further)