foul-magics/Mage/src/main/java/mage/abilities
xenohedron 9b3ff32a33
Rework sacrifice effects to support "can't be sacrificed" (#11587)
* add TargetSacrifice and canBeSacrificed

* SacrificeTargetCost refactor, now uses TargetSacrifice, constructors simplified, subclasses aligned

* fix text errors introduced by refactor

* refactor SacrificeEffect, SacrificeAllEffect, SacrificeOpponentsEffect

* cleanup keyword abilities involving sacrifice

* fix a bunch of custom effect classes involving sacrifice

* fix test choices

* update Assault Suit implementation

* fix filter check arguments

* add documentation to refactored common classes

* [CLB] Implement Jon Irenicus, Shattered One

* implement "{this} can't be sacrificed"

* add tests for Assault Suit and Jon Irenicus

* refactor out PlayerToRightGainsControlOfSourceEffect

* implement [LTC] Hithlain Rope

* add choose hint to all TargetSacrifice

---------

Co-authored-by: Evan Kranzler <theelk801@gmail.com>
Co-authored-by: PurpleCrowbar <26198472+PurpleCrowbar@users.noreply.github.com>
2023-12-31 14:10:37 -05:00
..
abilityword
common text fixes 2023-12-06 23:14:58 -05:00
condition fixed few errors like NPE 2023-12-15 16:51:12 +04:00
costs Rework sacrifice effects to support "can't be sacrificed" (#11587) 2023-12-31 14:10:37 -05:00
decorator refactor: replacement effects don't use apply method now (#11484) 2023-11-28 11:17:28 +04:00
dynamicvalue refactor: improved targets that find a [type1] card and/or a [type2] card (#11497) 2023-12-01 19:26:30 +04:00
effects Rework sacrifice effects to support "can't be sacrificed" (#11587) 2023-12-31 14:10:37 -05:00
hint GUI: added restriction card icon to permanent (contains all applied restrictions and requirements, #7471) 2023-12-03 00:01:47 +04:00
icon GUI: stack - added card icon with targets info (announced and triggered targets, target choices); 2023-12-23 16:26:37 +04:00
keyword Rework sacrifice effects to support "can't be sacrificed" (#11587) 2023-12-31 14:10:37 -05:00
mana Small rework for autochoosing color of mana to add (#11495) 2023-12-01 00:49:42 -05:00
meta
token
Abilities.java
AbilitiesImpl.java performance: improved CPU usage in games with big amount of permanents (related to #11285) 2023-11-07 01:14:07 +04:00
Ability.java Improve documentation 2023-11-17 02:53:43 -08:00
AbilityImpl.java GUI: improved choose X or number dialog (added source ability and card hint support, added limits info); 2023-12-18 01:22:14 +04:00
ActivatedAbility.java
ActivatedAbilityImpl.java
ActivationInfo.java
CompoundAbility.java
DelayedTriggeredAbilities.java
DelayedTriggeredAbility.java
EvasionAbility.java
LoyaltyAbility.java
MageSingleton.java
Mode.java
Modes.java add a couple null check to Modes' value Key creation 2023-11-16 11:08:11 +01:00
OpeningHandAction.java
PlayLandAbility.java
Pronoun.java
SpecialAction.java
SpecialActions.java
SpellAbility.java
StateTriggeredAbility.java
StaticAbility.java
TriggeredAbilities.java fix #11385 - triggers once per turn 2023-11-03 20:52:36 -04:00
TriggeredAbility.java fix #11385 - triggers once per turn 2023-11-03 20:52:36 -04:00
TriggeredAbilityImpl.java remove unneeded case (related to #11326) 2023-12-04 19:33:26 -05:00