mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 10:48:00 +00:00
- Secret areas in Planar Conquest are now locked once the player moves out of the event location.
This commit is contained in:
@@ -2,6 +2,7 @@ package forge.screens.planarconquest;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import forge.planarconquest.*;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import com.badlogic.gdx.graphics.Color;
|
import com.badlogic.gdx.graphics.Color;
|
||||||
@@ -28,19 +29,9 @@ import forge.card.ColorSet;
|
|||||||
import forge.card.CardDetailUtil.DetailColors;
|
import forge.card.CardDetailUtil.DetailColors;
|
||||||
import forge.item.PaperCard;
|
import forge.item.PaperCard;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
import forge.planarconquest.ConquestAwardPool;
|
|
||||||
import forge.planarconquest.ConquestData;
|
|
||||||
import forge.planarconquest.ConquestBattle;
|
|
||||||
import forge.planarconquest.ConquestChaosBattle;
|
|
||||||
import forge.planarconquest.ConquestEvent;
|
|
||||||
import forge.planarconquest.ConquestEvent.ChaosWheelOutcome;
|
import forge.planarconquest.ConquestEvent.ChaosWheelOutcome;
|
||||||
import forge.planarconquest.ConquestEvent.ConquestEventRecord;
|
import forge.planarconquest.ConquestEvent.ConquestEventRecord;
|
||||||
import forge.planarconquest.ConquestLocation;
|
|
||||||
import forge.planarconquest.ConquestPlane;
|
|
||||||
import forge.planarconquest.ConquestPreferences.CQPref;
|
import forge.planarconquest.ConquestPreferences.CQPref;
|
||||||
import forge.planarconquest.ConquestPlaneData;
|
|
||||||
import forge.planarconquest.ConquestReward;
|
|
||||||
import forge.planarconquest.ConquestRegion;
|
|
||||||
import forge.screens.FScreen;
|
import forge.screens.FScreen;
|
||||||
import forge.screens.LoadingOverlay;
|
import forge.screens.LoadingOverlay;
|
||||||
import forge.toolbox.FButton;
|
import forge.toolbox.FButton;
|
||||||
@@ -547,6 +538,10 @@ public class ConquestMultiverseScreen extends FScreen {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onEnd(boolean endingAll) {
|
protected void onEnd(boolean endingAll) {
|
||||||
|
String secretArea = model.getCurrentLocation().getEvent().getTemporaryUnlock();
|
||||||
|
if (secretArea != null) {
|
||||||
|
ConquestUtil.setPlaneTemporarilyAccessible(secretArea, false);
|
||||||
|
}
|
||||||
model.setCurrentLocation(path.get(path.size() - 1));
|
model.setCurrentLocation(path.get(path.size() - 1));
|
||||||
model.saveData(); //save new location
|
model.saveData(); //save new location
|
||||||
activeMoveAnimation = null;
|
activeMoveAnimation = null;
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ public abstract class ConquestBattle {
|
|||||||
view.getBtnQuit().setText("Great!");
|
view.getBtnQuit().setText("Great!");
|
||||||
model.addWin(this);
|
model.addWin(this);
|
||||||
if (location.getEvent().getTemporaryUnlock() != null) {
|
if (location.getEvent().getTemporaryUnlock() != null) {
|
||||||
ConquestUtil.makePlaneTemporarilyAccessible(location.getEvent().getTemporaryUnlock());
|
// secret area for this event, unlock it until the player moves
|
||||||
|
ConquestUtil.setPlaneTemporarilyAccessible(location.getEvent().getTemporaryUnlock(), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -163,12 +163,12 @@ public class ConquestUtil {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void makePlaneTemporarilyAccessible(String planeName) {
|
public static void setPlaneTemporarilyAccessible(String planeName, boolean accessible) {
|
||||||
ConquestPlane plane = getPlaneByName(planeName);
|
ConquestPlane plane = getPlaneByName(planeName);
|
||||||
if (plane != null && plane.isUnreachable()) {
|
if (plane != null && accessible != !plane.isUnreachable()) {
|
||||||
plane.setTemporarilyReachable(true);
|
plane.setTemporarilyReachable(accessible);
|
||||||
} else {
|
} else {
|
||||||
System.err.println("Could not find plane to mark as temporarily accessible: " + planeName);
|
System.err.println("Could not find plane to set the accessibility flag: " + planeName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user