cleanup in Target constructors

This commit is contained in:
Maxmtg
2013-06-18 10:04:18 +00:00
parent c39bf4ee34
commit 74aa0a4917
5 changed files with 13 additions and 40 deletions

View File

@@ -189,7 +189,7 @@ public class CardFactory {
//remove all costs
copySA.setPayCosts(new Cost("", sa.isAbility()));
if (definedTarget != null) {
Target target = new Target(null, "");
Target target = new Target();
target.setDefinedTarget(definedTarget);
copySA.setTarget(target);
}

View File

@@ -22,6 +22,7 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
import forge.Card;
@@ -49,7 +50,7 @@ public class Target {
// What this Object is restricted to targeting
private boolean tgtValid = false;
private String[] validTgts;
private String vtSelection = "";
private String uiPrompt = "";
private List<ZoneType> tgtZone = Arrays.asList(ZoneType.Battlefield);
//SpellAbility Restrictions
@@ -96,7 +97,7 @@ public class Target {
*/
public Target(final Target target) {
this.tgtValid = true;
this.vtSelection = target.getVTSelection();
this.uiPrompt = target.getVTSelection();
this.validTgts = target.getValidTgts();
this.minTargets = target.getMinTargets();
this.maxTargets = target.getMaxTargets();
@@ -118,20 +119,8 @@ public class Target {
this.choice = target.getTargetChoices();
}
/**
* <p>
* Constructor for Target.
* </p>
*
* @param src
* a {@link forge.Card} object.
* @param select
* a {@link java.lang.String} object.
* @param valid
* an array of {@link java.lang.String} objects.
*/
public Target(final String select, final String[] valid) {
this(select, valid, "1", "1");
public Target() {
this(null, ArrayUtils.EMPTY_STRING_ARRAY, "1", "1");
}
/**
@@ -141,23 +130,7 @@ public class Target {
*
* @param src
* a {@link forge.Card} object.
* @param select
* a {@link java.lang.String} object.
* @param valid
* a {@link java.lang.String} object.
*/
public Target(final String select, final String valid) {
this(select, valid.split(","), "1", "1");
}
/**
* <p>
* Constructor for Target.
* </p>
*
* @param src
* a {@link forge.Card} object.
* @param select
* @param prompt
* a {@link java.lang.String} object.
* @param valid
* an array of {@link java.lang.String} objects.
@@ -166,11 +139,10 @@ public class Target {
* @param max
* a {@link java.lang.String} object.
*/
public Target(final String select, final String[] valid, final String min, final String max) {
public Target(final String prompt, final String[] valid, final String min, final String max) {
this.tgtValid = true;
this.vtSelection = select;
this.uiPrompt = prompt;
this.validTgts = valid;
this.minTargets = min;
this.maxTargets = max;
}
@@ -251,7 +223,7 @@ public class Target {
* @return a {@link java.lang.String} object.
*/
public final String getVTSelection() {
return this.vtSelection;
return this.uiPrompt;
}
/**

View File

@@ -60,7 +60,7 @@ public class TargetChoices {
* a {@link java.lang.Object} object.
* @return a boolean.
*/
public final boolean addTarget(final Object o) {
public final boolean addTarget(final ITargetable o) {
if (o instanceof Player) {
return this.addTarget((Player) o);
} else if (o instanceof Card) {

View File

@@ -1302,7 +1302,7 @@ public class Player extends GameEntity implements Comparable<Player> {
if (chainsList != null && (numDrawnThisDrawStep > 0 || !game.getPhaseHandler().is(PhaseType.DRAW))) {
for(Card c : chainsList) {
// I have to target this player - don't know how to do it.
Target target = new Target(null, "");
Target target = new Target();
target.addTarget(this);
if (getCardsIn(ZoneType.Hand).isEmpty()) {

View File

@@ -60,6 +60,7 @@ public final class InputSelectTargets extends InputSyncronizedBase {
sb.append("\n");
}
//sb.append(tgt.getTargetedString()).append("\n");
sb.append(sa.getSourceCard()).append(" - ");
sb.append(tgt.getVTSelection());
int maxTargets = tgt.getMaxTargets(sa.getSourceCard(), sa);