Minor improvements - StringBuilder now have initial value

This commit is contained in:
vraskulin 2017-02-28 15:26:07 +03:00
parent aa01db1432
commit 0bc9cf91a8
15 changed files with 61 additions and 81 deletions

View file

@ -27,20 +27,10 @@
*/
package mage.abilities;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import mage.MageObject;
import mage.MageObjectReference;
import mage.Mana;
import mage.abilities.costs.AdjustingSourceCosts;
import mage.abilities.costs.AlternativeSourceCosts;
import mage.abilities.costs.Cost;
import mage.abilities.costs.Costs;
import mage.abilities.costs.CostsImpl;
import mage.abilities.costs.OptionalAdditionalModeSourceCosts;
import mage.abilities.costs.OptionalAdditionalSourceCosts;
import mage.abilities.costs.VariableCost;
import mage.abilities.costs.*;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCost;
import mage.abilities.costs.mana.ManaCosts;
@ -55,12 +45,7 @@ import mage.abilities.effects.common.ManaEffect;
import mage.abilities.keyword.FlashbackAbility;
import mage.abilities.mana.ActivatedManaAbilityImpl;
import mage.cards.Card;
import mage.constants.AbilityType;
import mage.constants.AbilityWord;
import mage.constants.EffectType;
import mage.constants.Outcome;
import mage.constants.SpellAbilityType;
import mage.constants.Zone;
import mage.constants.*;
import mage.game.Game;
import mage.game.command.Emblem;
import mage.game.events.GameEvent;
@ -76,6 +61,10 @@ import mage.util.ThreadLocalStringBuilder;
import mage.watchers.Watcher;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* @author BetaSteward_at_googlemail.com
*/
@ -496,7 +485,7 @@ public abstract class AbilityImpl implements Ability {
* @return announce message
*/
protected String handleOtherXCosts(Game game, Player controller) {
String announceString = null;
StringBuilder announceString = new StringBuilder();
for (VariableCost variableCost : this.costs.getVariableCosts()) {
if (!(variableCost instanceof VariableManaCost)) {
int xValue = variableCost.announceXValue(this, game);
@ -508,14 +497,10 @@ public abstract class AbilityImpl implements Ability {
variableCost.setAmount(xValue);
((Cost) variableCost).setPaid();
String message = controller.getLogName() + " announces a value of " + xValue + " (" + variableCost.getActionText() + ')';
if (announceString == null) {
announceString = message;
} else {
announceString = announceString + ' ' + message;
}
announceString.append(message);
}
}
return announceString;
return announceString.toString();
}
/**

View file

@ -62,7 +62,7 @@ public class CantHaveMoreThanAmountCountersSourceAbility extends SimpleStaticAbi
@Override
public String getRule() {
return "Rasputin can't have more than " + CardUtil.numberToText(this.amount) + " " + this.counterType.getName() + " counters on it.";
return "Rasputin can't have more than " + CardUtil.numberToText(this.amount) + ' ' + this.counterType.getName() + " counters on it.";
}
@Override

View file

@ -82,11 +82,11 @@ public class VariableManaCost extends ManaCostImpl implements VariableCost {
@Override
public String getText() {
if (multiplier > 1) {
String symbol = "";
StringBuilder symbol = new StringBuilder(multiplier);
for (int i = 0; i < multiplier; i++) {
symbol += "{X}";
symbol.append("{X}");
}
return symbol;
return symbol.toString();
} else {
return "{X}";
}

View file

@ -109,7 +109,7 @@ public class CantBeTargetedAttachedEffect extends ContinuousRuleModifyingEffectI
return staticText;
}
StringBuilder sb = new StringBuilder();
sb.append(attachmentType.verb() + " creature");
sb.append(attachmentType.verb()).append(" creature");
sb.append(" can't be the target of ");
sb.append(filterSource.getMessage());
if (!duration.toString().isEmpty()) {

View file

@ -70,8 +70,7 @@ class DredgeEffect extends ReplacementEffectImpl {
public DredgeEffect(int value) {
super(Duration.WhileInGraveyard, Outcome.ReturnToHand);
this.amount = value;
this.staticText = new StringBuilder("Dredge ").append(Integer.toString(value))
.append(" <i>(If you would draw a card, instead you may put exactly " + value + " card(s) from the top of your library into your graveyard. If you do, return this card from your graveyard to your hand. Otherwise, draw a card.)</i>").toString();
this.staticText = new StringBuilder("Dredge ").append(Integer.toString(value)).append(" <i>(If you would draw a card, instead you may put exactly ").append(value).append(" card(s) from the top of your library into your graveyard. If you do, return this card from your graveyard to your hand. Otherwise, draw a card.)</i>").toString();
}
public DredgeEffect(final DredgeEffect effect) {

View file

@ -5,8 +5,6 @@
*/
package mage.game.stack;
import java.util.Set;
import java.util.UUID;
import mage.MageObject;
import mage.abilities.Abilities;
import mage.abilities.AbilitiesImpl;
@ -21,6 +19,9 @@ import mage.players.Player;
import mage.target.Target;
import mage.target.TargetAmount;
import java.util.Set;
import java.util.UUID;
/**
*
* @author LevelX2
@ -135,7 +136,7 @@ public abstract class StackObjImpl implements StackObject {
}
if (!newTargetDescription.toString().equals(oldTargetDescription.toString()) && !game.isSimulation()) {
game.informPlayers(this.getLogName() + " is now " + newTargetDescription.toString());
game.informPlayers(this.getLogName() + " is now " + newTargetDescription);
}
return true;
}

View file

@ -1,10 +1,5 @@
package mage.util;
import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.Set;
import java.util.UUID;
import mage.MageObject;
import mage.Mana;
import mage.ManaSymbol;
@ -12,19 +7,14 @@ import mage.abilities.Ability;
import mage.abilities.costs.mana.AlternateManaPaymentAbility;
import mage.abilities.costs.mana.ManaCost;
import mage.abilities.costs.mana.ManaSymbols;
import mage.abilities.mana.BasicManaAbility;
import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.GreenManaAbility;
import mage.abilities.mana.ActivatedManaAbilityImpl;
import mage.abilities.mana.AnyColorManaAbility;
import mage.abilities.mana.RedManaAbility;
import mage.abilities.mana.WhiteManaAbility;
import mage.abilities.mana.*;
import mage.cards.Card;
import mage.choices.Choice;
import mage.constants.ColoredManaSymbol;
import mage.game.Game;
import java.util.*;
/**
* @author noxx
*/
@ -471,7 +461,7 @@ public final class ManaUtil {
// Combine the cost back as a mana string
StringBuilder sb = new StringBuilder();
for (String s : finalCost) {
sb.append('{' + s + '}');
sb.append('{').append(s).append('}');
}
// Return the condensed string
return sb.toString();