mirror of
https://github.com/magefree/mage.git
synced 2025-12-25 13:02:06 -08:00
Fixed wrong ability texts with duplicated card name (see #4335)
This commit is contained in:
parent
adae3e22bc
commit
bc75f82524
27 changed files with 53 additions and 29 deletions
|
|
@ -53,13 +53,16 @@ public class DamageAllEffect extends OneShotEffect {
|
|||
|
||||
public DamageAllEffect(int amount, String whoDealDamageName, FilterPermanent filter) {
|
||||
this(new StaticValue(amount), filter);
|
||||
|
||||
this.sourceName = whoDealDamageName;
|
||||
setText(); // TODO: replace to @Override public String getText()
|
||||
}
|
||||
|
||||
public DamageAllEffect(DynamicValue amount, FilterPermanent filter) {
|
||||
super(Outcome.Damage);
|
||||
this.amount = amount;
|
||||
this.filter = filter;
|
||||
|
||||
setText();
|
||||
}
|
||||
|
||||
|
|
@ -84,7 +87,7 @@ public class DamageAllEffect extends OneShotEffect {
|
|||
return true;
|
||||
}
|
||||
|
||||
private void setText() {
|
||||
public void setText() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(this.sourceName).append(" deals ").append(amount.toString()).append(" damage to each ").append(filter.getMessage());
|
||||
String message = amount.getMessage();
|
||||
|
|
|
|||
|
|
@ -50,11 +50,19 @@ public class DamageEverythingEffect extends OneShotEffect {
|
|||
private DynamicValue amount;
|
||||
private FilterPermanent filter;
|
||||
private UUID damageSource;
|
||||
private String sourceName = "{source}";
|
||||
|
||||
public DamageEverythingEffect(int amount) {
|
||||
this(new StaticValue(amount), new FilterCreaturePermanent());
|
||||
}
|
||||
|
||||
public DamageEverythingEffect(int amount, String whoDealDamageName) {
|
||||
this(new StaticValue(amount), new FilterCreaturePermanent());
|
||||
|
||||
this.sourceName = whoDealDamageName;
|
||||
setText(); // TODO: replace to @Override public String getText()
|
||||
}
|
||||
|
||||
public DamageEverythingEffect(DynamicValue amount) {
|
||||
this(amount, new FilterCreaturePermanent());
|
||||
}
|
||||
|
|
@ -62,6 +70,7 @@ public class DamageEverythingEffect extends OneShotEffect {
|
|||
public DamageEverythingEffect(int amount, FilterPermanent filter) {
|
||||
this(new StaticValue(amount), filter);
|
||||
}
|
||||
|
||||
public DamageEverythingEffect(DynamicValue amount, FilterPermanent filter) {
|
||||
this(amount, filter, null);
|
||||
}
|
||||
|
|
@ -71,7 +80,11 @@ public class DamageEverythingEffect extends OneShotEffect {
|
|||
this.amount = amount;
|
||||
this.filter = filter;
|
||||
this.damageSource = damageSource;
|
||||
staticText = "{source} deals " + amount.toString() + " damage to each " + filter.getMessage() + " and each player";
|
||||
setText();
|
||||
}
|
||||
|
||||
private void setText() {
|
||||
staticText = this.sourceName + " deals " + this.amount.toString() + " damage to each " + this.filter.getMessage() + " and each player";
|
||||
}
|
||||
|
||||
public DamageEverythingEffect(final DamageEverythingEffect effect) {
|
||||
|
|
@ -79,6 +92,7 @@ public class DamageEverythingEffect extends OneShotEffect {
|
|||
this.amount = effect.amount;
|
||||
this.filter = effect.filter;
|
||||
this.damageSource = effect.damageSource;
|
||||
this.sourceName = effect.sourceName;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ import mage.players.Player;
|
|||
public class DamagePlayersEffect extends OneShotEffect {
|
||||
private DynamicValue amount;
|
||||
private TargetController controller;
|
||||
private String sourceName = "{source}";
|
||||
|
||||
public DamagePlayersEffect(int amount) {
|
||||
this(Outcome.Damage, new StaticValue(amount));
|
||||
|
|
@ -53,6 +54,13 @@ public class DamagePlayersEffect extends OneShotEffect {
|
|||
this(Outcome.Damage, new StaticValue(amount), controller);
|
||||
}
|
||||
|
||||
public DamagePlayersEffect(int amount, TargetController controller, String whoDealDamageName) {
|
||||
this(Outcome.Damage, new StaticValue(amount), controller);
|
||||
|
||||
this.sourceName = whoDealDamageName;
|
||||
setText(); // TODO: replace to @Override public String getText()
|
||||
}
|
||||
|
||||
public DamagePlayersEffect(Outcome outcome, DynamicValue amount) {
|
||||
this(outcome, amount, TargetController.ANY);
|
||||
}
|
||||
|
|
@ -69,6 +77,7 @@ public class DamagePlayersEffect extends OneShotEffect {
|
|||
super(effect);
|
||||
this.amount = effect.amount;
|
||||
this.controller = effect.controller;
|
||||
this.sourceName = effect.sourceName;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -103,7 +112,7 @@ public class DamagePlayersEffect extends OneShotEffect {
|
|||
|
||||
private void setText()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder("{source} deals ").append(amount.toString());
|
||||
StringBuilder sb = new StringBuilder().append(this.sourceName).append(" deals ").append(amount.toString());
|
||||
switch (controller) {
|
||||
case ANY:
|
||||
sb.append(" damage to each player");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue