mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 11:18:01 +00:00
- Fixed possibility of getting stuck with no targets.
This commit is contained in:
@@ -462,7 +462,7 @@ public class TargetRestrictions {
|
|||||||
if (!c.isValid(this.validTgts, srcCard.getController(), srcCard)) {
|
if (!c.isValid(this.validTgts, srcCard.getController(), srcCard)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (isTargeted && !c.canBeTargetedBy(sa)) {
|
if (isTargeted && !sa.canTarget(c)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (sa.getTargets().isTargeting(c)) {
|
if (sa.getTargets().isTargeting(c)) {
|
||||||
@@ -513,10 +513,9 @@ public class TargetRestrictions {
|
|||||||
final Card srcCard = sa.getSourceCard(); // should there be OrginalHost at any moment?
|
final Card srcCard = sa.getSourceCard(); // should there be OrginalHost at any moment?
|
||||||
if (this.tgtZone.contains(ZoneType.Stack)) {
|
if (this.tgtZone.contains(ZoneType.Stack)) {
|
||||||
for (final Card c : game.getStackZone().getCards()) {
|
for (final Card c : game.getStackZone().getCards()) {
|
||||||
boolean isValidTarget = c.isValid(this.validTgts, srcCard.getController(), srcCard);
|
if (c.isValid(this.validTgts, srcCard.getController(), srcCard)
|
||||||
boolean canTarget = (!isTargeted || c.canBeTargetedBy(sa));
|
&& (!isTargeted || sa.canTarget(c))
|
||||||
boolean isAlreadyTargeted = sa.getTargets().isTargeting(c);
|
&& !sa.getTargets().isTargeting(c)) {
|
||||||
if (isValidTarget && canTarget && !isAlreadyTargeted) {
|
|
||||||
candidates.add(c);
|
candidates.add(c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user