* Fixed a problem of AI target handling (e.g. for Precursor Golem)

This commit is contained in:
LevelX2 2017-01-01 14:56:34 +01:00
parent f3c0d3fce0
commit 2162fab114
4 changed files with 42 additions and 35 deletions

View file

@ -261,9 +261,6 @@ class TargetWithAdditionalFilter<T extends MageItem> extends TargetImpl {
protected final FilterInPlay<T> additionalFilter;
protected final Target originalTarget;
protected static final Integer minNumberOfTargets = null;
protected static final Integer maxNumberOfTargets = null;
protected static final Zone zone = null;
public TargetWithAdditionalFilter(final TargetWithAdditionalFilter target) {
this(target.originalTarget, target.additionalFilter, false);
@ -274,14 +271,18 @@ class TargetWithAdditionalFilter<T extends MageItem> extends TargetImpl {
}
public TargetWithAdditionalFilter(Target originalTarget, FilterInPlay<T> additionalFilter, boolean notTarget) {
originalTarget = originalTarget.copy();
originalTarget.clearChosen();
this.originalTarget = originalTarget;
this.originalTarget = originalTarget.copy();
this.originalTarget.clearChosen();
this.targetName = originalTarget.getFilter().getMessage();
this.notTarget = notTarget;
this.additionalFilter = additionalFilter;
}
@Override
public Target getOriginalTarget() {
return originalTarget;
}
@Override
public int getNumberOfTargets() {
return originalTarget.getNumberOfTargets();

View file

@ -155,4 +155,6 @@ public interface Target extends Serializable {
int getTargetTag();
void setTargetTag(int tag);
Target getOriginalTarget();
}

View file

@ -554,4 +554,9 @@ public abstract class TargetImpl implements Target {
this.targetTag = targetTag;
}
@Override
public Target getOriginalTarget() {
return this;
}
}