diff --git a/forge-gui-mobile/src/forge/screens/planarconquest/ConquestMenu.java b/forge-gui-mobile/src/forge/screens/planarconquest/ConquestMenu.java index 9a67ea21590..5033a24adfd 100644 --- a/forge-gui-mobile/src/forge/screens/planarconquest/ConquestMenu.java +++ b/forge-gui-mobile/src/forge/screens/planarconquest/ConquestMenu.java @@ -62,21 +62,7 @@ public class ConquestMenu extends FPopupMenu { } else { mapScreen.update(); - if (reason == LaunchReason.LoadConquest) { - Forge.back(); - if (Forge.onHomeScreen()) { //open map screen if Load Conquest screen was opening direct from home screen - Forge.openScreen(mapScreen); - } - } - else { - Forge.back(); - if (Forge.getCurrentScreen() instanceof LoadConquestScreen) { - Forge.back(); //remove LoadConquestScreen from screen stack - } - if (Forge.onHomeScreen()) { //open map screen if New Conquest screen was opening direct from home screen - Forge.openScreen(mapScreen); - } - } + Forge.openScreen(mapScreen); } } }); diff --git a/forge-gui-mobile/src/forge/screens/planarconquest/LoadConquestScreen.java b/forge-gui-mobile/src/forge/screens/planarconquest/LoadConquestScreen.java index e01b666b6c8..c9a8ad93b21 100644 --- a/forge-gui-mobile/src/forge/screens/planarconquest/LoadConquestScreen.java +++ b/forge-gui-mobile/src/forge/screens/planarconquest/LoadConquestScreen.java @@ -26,7 +26,7 @@ import forge.planarconquest.ConquestDataIO; import forge.planarconquest.ConquestPreferences.CQPref; import forge.properties.ForgeConstants; import forge.quest.QuestUtil; -import forge.screens.FScreen; +import forge.screens.LaunchScreen; import forge.screens.home.LoadGameMenu; import forge.screens.home.NewGameMenu.NewGameScreen; import forge.screens.settings.SettingsScreen; @@ -39,7 +39,7 @@ import forge.util.ThreadUtil; import forge.util.Utils; import forge.util.gui.SOptionPane; -public class LoadConquestScreen extends FScreen { +public class LoadConquestScreen extends LaunchScreen { private static final float PADDING = Utils.AVG_FINGER_HEIGHT * 0.1f; private static final FSkinColor OLD_CONQUESTS_BACK_COLOR = FSkinColor.get(Colors.CLR_INACTIVE).getContrastColor(20); private static final FSkinColor SEL_COLOR = FSkinColor.get(Colors.CLR_ACTIVE); @@ -144,7 +144,7 @@ public class LoadConquestScreen extends FScreen { } @Override - protected void doLayout(float startY, float width, float height) { + protected void doLayoutAboveBtnStart(float startY, float width, float height) { float buttonWidth = (width - 2 * PADDING) / 3; float buttonHeight = btnNewConquest.getAutoSizeBounds().height * 1.2f; @@ -226,6 +226,16 @@ public class LoadConquestScreen extends FScreen { }); } + @Override + protected void startMatch() { + changeConquest(); + } + + @Override + protected boolean buildLaunchParams(LaunchParams launchParams) { + return false; //this override isn't needed + } + private class ConquestFileLister extends FList { private int selectedIndex = 0; diff --git a/forge-gui-mobile/src/forge/screens/quest/LoadQuestScreen.java b/forge-gui-mobile/src/forge/screens/quest/LoadQuestScreen.java index 4a8738d7410..e0357f78889 100644 --- a/forge-gui-mobile/src/forge/screens/quest/LoadQuestScreen.java +++ b/forge-gui-mobile/src/forge/screens/quest/LoadQuestScreen.java @@ -26,7 +26,7 @@ import forge.quest.QuestUtil; import forge.quest.data.QuestData; import forge.quest.data.QuestPreferences.QPref; import forge.quest.io.QuestDataIO; -import forge.screens.FScreen; +import forge.screens.LaunchScreen; import forge.screens.home.LoadGameMenu; import forge.screens.home.NewGameMenu.NewGameScreen; import forge.screens.quest.QuestMenu.LaunchReason; @@ -40,7 +40,7 @@ import forge.util.ThreadUtil; import forge.util.Utils; import forge.util.gui.SOptionPane; -public class LoadQuestScreen extends FScreen { +public class LoadQuestScreen extends LaunchScreen { private static final float PADDING = Utils.AVG_FINGER_HEIGHT * 0.1f; private static final FSkinColor OLD_QUESTS_BACK_COLOR = FSkinColor.get(Colors.CLR_INACTIVE).getContrastColor(20); private static final FSkinColor SEL_COLOR = FSkinColor.get(Colors.CLR_ACTIVE); @@ -145,7 +145,7 @@ public class LoadQuestScreen extends FScreen { } @Override - protected void doLayout(float startY, float width, float height) { + protected void doLayoutAboveBtnStart(float startY, float width, float height) { float buttonWidth = (width - 2 * PADDING) / 3; float buttonHeight = btnNewQuest.getAutoSizeBounds().height * 1.2f; @@ -229,6 +229,16 @@ public class LoadQuestScreen extends FScreen { }); } + @Override + protected void startMatch() { + changeQuest(); + } + + @Override + protected boolean buildLaunchParams(LaunchParams launchParams) { + return false; //this override isn't needed + } + private class QuestFileLister extends FList { private int selectedIndex = 0; diff --git a/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java b/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java index 1a35d707af1..b58c806ab6f 100644 --- a/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java +++ b/forge-gui-mobile/src/forge/screens/quest/QuestMenu.java @@ -174,24 +174,7 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats { challengesScreen.update(); tournamentsScreen.update(); decksScreen.refreshDecks(); - if (reason == LaunchReason.LoadQuest) { - Forge.back(); - if (Forge.onHomeScreen()) { //open duels screen if Load Quest screen was opening direct from home screen - Forge.openScreen(duelsScreen); - } - } - else { - Forge.back(); - if (Forge.getCurrentScreen() instanceof LoadQuestScreen) { - Forge.back(); //remove LoadQuestScreen from screen stack - } - if (Forge.onHomeScreen()) { //open duels screen if New Quest screen was opening direct from home screen - Forge.openScreen(duelsScreen); - } - if (Forge.getCurrentScreen() != decksScreen) { - Forge.openScreen(decksScreen); //open deck screen for new quest - } - } + Forge.openScreen(duelsScreen); } } });