mirror of
https://github.com/magefree/mage.git
synced 2026-01-09 20:32:06 -08:00
[ACR] Implement 4x Equipment-related cards (#12593)
* Assassin Gauntlet * Fix many minor mistakes in ACR cards * Battlefield Improvisation * Phantom Blade * Misthios's Fury * Fix unset target tag, missing damage amount text * Remove now-unneeded setText calls for DamageTargetControllerEffect
This commit is contained in:
parent
88443f5fb4
commit
3933364e6e
22 changed files with 318 additions and 61 deletions
|
|
@ -15,13 +15,18 @@ import mage.players.Player;
|
|||
*/
|
||||
public class DamageTargetControllerEffect extends OneShotEffect {
|
||||
|
||||
protected DynamicValue amount;
|
||||
protected boolean preventable;
|
||||
protected final DynamicValue amount;
|
||||
protected final boolean preventable;
|
||||
protected final String name;
|
||||
|
||||
public DamageTargetControllerEffect(int amount) {
|
||||
this(StaticValue.get(amount), true);
|
||||
}
|
||||
|
||||
public DamageTargetControllerEffect(int amount, String name) {
|
||||
this(StaticValue.get(amount), true, name);
|
||||
}
|
||||
|
||||
public DamageTargetControllerEffect(int amount, boolean preventable) {
|
||||
this(StaticValue.get(amount), preventable);
|
||||
}
|
||||
|
|
@ -30,16 +35,26 @@ public class DamageTargetControllerEffect extends OneShotEffect {
|
|||
this(amount, true);
|
||||
}
|
||||
|
||||
public DamageTargetControllerEffect(DynamicValue amount, String name) {
|
||||
this(amount, true, name);
|
||||
}
|
||||
|
||||
public DamageTargetControllerEffect(DynamicValue amount, boolean preventable) {
|
||||
this(amount, preventable, "creature");
|
||||
}
|
||||
|
||||
public DamageTargetControllerEffect(DynamicValue amount, boolean preventable, String name) {
|
||||
super(Outcome.Damage);
|
||||
this.amount = amount;
|
||||
this.preventable = preventable;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
protected DamageTargetControllerEffect(final DamageTargetControllerEffect effect) {
|
||||
super(effect);
|
||||
amount = effect.amount.copy();
|
||||
preventable = effect.preventable;
|
||||
this.amount = effect.amount.copy();
|
||||
this.preventable = effect.preventable;
|
||||
this.name = effect.name;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -65,9 +80,12 @@ public class DamageTargetControllerEffect extends OneShotEffect {
|
|||
if (staticText != null && !staticText.isEmpty()) {
|
||||
return staticText;
|
||||
}
|
||||
return "{this} deals " + amount.getMessage() + " damage to "
|
||||
+ getTargetPointer().describeTargets(mode.getTargets(), "that creature")
|
||||
+ "'s controller"
|
||||
String message = amount.getMessage();
|
||||
if (message.isEmpty()) {
|
||||
message = amount.toString();
|
||||
}
|
||||
return "{this} deals " + message + " damage to that "
|
||||
+ name + "'s controller"
|
||||
+ (preventable ? "" : ". The damage can't be prevented");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import mage.constants.SubType;
|
|||
public final class AssassinMenaceToken extends TokenImpl {
|
||||
|
||||
public AssassinMenaceToken() {
|
||||
super("Assassin Token", "1/1 black Assassin creature token menace");
|
||||
super("Assassin Token", "1/1 black Assassin creature token with menace");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add(SubType.ASSASSIN);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue