From 3c6af87e9dcc6ebc48212d3da734ce613abfcb09 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Sun, 6 Feb 2022 11:10:52 +0800 Subject: [PATCH] initial AdventureMode port - todo needed adventure application startup upon pressing the adventure mode button --- .../java/forge/adventure/scene/SceneType.java | 26 ------- .../src/main/java/forge/util/Localizer.java | 14 +++- forge-gui-mobile/src/forge/Forge.java | 30 +++++--- .../AdventureApplicationAdapter.java | 0 .../adventure/character/CharacterSprite.java | 6 +- .../adventure/character/EnemySprite.java | 0 .../forge/adventure/character/EntryActor.java | 0 .../forge/adventure/character/MapActor.java | 0 .../forge/adventure/character/OnCollide.java | 0 .../adventure/character/PlayerSprite.java | 2 +- .../forge/adventure/character/ShopActor.java | 0 .../adventure/character/TextureSprite.java | 0 .../src}/forge/adventure/data/BiomeData.java | 0 .../forge/adventure/data/BiomeSpriteData.java | 0 .../adventure/data/BiomeTerrainData.java | 0 .../src}/forge/adventure/data/ConfigData.java | 0 .../forge/adventure/data/DifficultyData.java | 0 .../src}/forge/adventure/data/EnemyData.java | 0 .../adventure/data/GeneratedDeckData.java | 0 .../data/GeneratedDeckTemplateData.java | 0 .../src}/forge/adventure/data/HeroData.java | 0 .../forge/adventure/data/HeroListData.java | 0 .../adventure/data/PointOfInterestData.java | 0 .../src}/forge/adventure/data/RewardData.java | 0 .../forge/adventure/data/SettingData.java | 0 .../src}/forge/adventure/data/ShopData.java | 0 .../src}/forge/adventure/data/UIData.java | 0 .../src}/forge/adventure/data/WorldData.java | 0 .../editor/DocumentChangeListener.java | 0 .../adventure/editor/EditorMainWindow.java | 0 .../forge/adventure/editor/EnemyEdit.java | 0 .../forge/adventure/editor/EnemyEditor.java | 0 .../forge/adventure/editor/FilePicker.java | 0 .../src}/forge/adventure/editor/Main.java | 0 .../forge/adventure/editor/RewardEdit.java | 0 .../forge/adventure/editor/RewardsEditor.java | 2 +- .../forge/adventure/editor/SwingAtlas.java | 0 .../adventure/editor/SwingAtlasPreview.java | 0 .../forge/adventure/editor/TextListEdit.java | 0 .../adventure/player/AdventurePlayer.java | 7 +- .../adventure/player/PlayerStatistic.java | 0 .../pointofintrest/PointOfInterest.java | 0 .../PointOfInterestChanges.java | 0 .../pointofintrest/PointOfInterestMap.java | 0 .../adventure/scene/AdventureDeckEditor.java | 65 ++++++++++------- .../forge/adventure/scene/DeckEditScene.java | 0 .../adventure/scene/DeckSelectScene.java | 9 ++- .../src}/forge/adventure/scene/DuelScene.java | 9 ++- .../forge/adventure/scene/ForgeInput.java | 2 +- .../forge/adventure/scene/ForgeScene.java | 6 +- .../src}/forge/adventure/scene/GameScene.java | 0 .../src}/forge/adventure/scene/HudScene.java | 0 .../src}/forge/adventure/scene/InnScene.java | 0 .../forge/adventure/scene/NewGameScene.java | 0 .../adventure/scene/PlayerStatisticScene.java | 0 .../forge/adventure/scene/RewardScene.java | 6 +- .../forge/adventure/scene/SaveLoadScene.java | 8 ++- .../src}/forge/adventure/scene/Scene.java | 0 .../src/forge/adventure/scene/SceneType.java | 26 +++++++ .../forge/adventure/scene/SettingsScene.java | 8 ++- .../src}/forge/adventure/scene/ShopScene.java | 0 .../forge/adventure/scene/StartScene.java | 2 +- .../forge/adventure/scene/TileMapScene.java | 2 +- .../src}/forge/adventure/scene/UIScene.java | 0 .../src}/forge/adventure/stage/GameHUD.java | 0 .../src}/forge/adventure/stage/GameStage.java | 0 .../src}/forge/adventure/stage/MapSprite.java | 0 .../src}/forge/adventure/stage/MapStage.java | 10 ++- .../stage/PointOfInterestMapRenderer.java | 0 .../stage/PointOfInterestMapSprite.java | 0 .../forge/adventure/stage/SpriteGroup.java | 0 .../adventure/stage/WorldBackground.java | 0 .../forge/adventure/stage/WorldStage.java | 6 +- .../src}/forge/adventure/util/CardUtil.java | 2 +- .../src}/forge/adventure/util/Config.java | 0 .../src}/forge/adventure/util/Controls.java | 9 ++- .../src}/forge/adventure/util/Current.java | 0 .../forge/adventure/util/DrawOnPixmap.java | 0 .../src}/forge/adventure/util/Paths.java | 0 .../src}/forge/adventure/util/Reward.java | 0 .../forge/adventure/util/RewardActor.java | 0 .../forge/adventure/util/SaveFileContent.java | 0 .../forge/adventure/util/SaveFileData.java | 6 +- .../src}/forge/adventure/util/Selector.java | 0 .../src}/forge/adventure/util/Serializer.java | 2 +- .../src}/forge/adventure/util/SignalList.java | 0 .../adventure/util/TemplateTmxMapLoader.java | 2 +- .../src}/forge/adventure/util/UIActor.java | 8 ++- .../forge/adventure/world/BiomeSprites.java | 0 .../forge/adventure/world/BiomeTexture.java | 0 .../adventure/world/OpenSimplexNoise.java | 0 .../forge/adventure/world/SpritesDataMap.java | 0 .../src}/forge/adventure/world/World.java | 6 +- .../src}/forge/adventure/world/WorldSave.java | 10 ++- .../adventure/world/WorldSaveHeader.java | 0 .../src/forge/screens/SplashScreen.java | 70 ++++++++++++++++++- .../src/forge/toolbox/FDisplayObject.java | 6 +- 97 files changed, 266 insertions(+), 101 deletions(-) delete mode 100644 forge-adventure/src/main/java/forge/adventure/scene/SceneType.java rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/AdventureApplicationAdapter.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/CharacterSprite.java (97%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/EnemySprite.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/EntryActor.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/MapActor.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/OnCollide.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/PlayerSprite.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/ShopActor.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/character/TextureSprite.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/BiomeData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/BiomeSpriteData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/BiomeTerrainData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/ConfigData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/DifficultyData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/EnemyData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/GeneratedDeckData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/GeneratedDeckTemplateData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/HeroData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/HeroListData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/PointOfInterestData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/RewardData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/SettingData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/ShopData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/UIData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/data/WorldData.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/DocumentChangeListener.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/EditorMainWindow.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/EnemyEdit.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/EnemyEditor.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/FilePicker.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/Main.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/RewardEdit.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/RewardsEditor.java (98%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/SwingAtlas.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/SwingAtlasPreview.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/editor/TextListEdit.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/player/AdventurePlayer.java (97%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/player/PlayerStatistic.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/pointofintrest/PointOfInterest.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/pointofintrest/PointOfInterestChanges.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/pointofintrest/PointOfInterestMap.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/AdventureDeckEditor.java (94%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/DeckEditScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/DeckSelectScene.java (93%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/DuelScene.java (97%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/ForgeInput.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/ForgeScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/GameScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/HudScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/InnScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/NewGameScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/PlayerStatisticScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/RewardScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/SaveLoadScene.java (94%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/Scene.java (100%) create mode 100644 forge-gui-mobile/src/forge/adventure/scene/SceneType.java rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/SettingsScene.java (95%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/ShopScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/StartScene.java (95%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/TileMapScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/scene/UIScene.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/GameHUD.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/GameStage.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/MapSprite.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/MapStage.java (97%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/PointOfInterestMapRenderer.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/PointOfInterestMapSprite.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/SpriteGroup.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/WorldBackground.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/stage/WorldStage.java (98%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/CardUtil.java (99%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Config.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Controls.java (89%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Current.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/DrawOnPixmap.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Paths.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Reward.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/RewardActor.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/SaveFileContent.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/SaveFileData.java (98%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Selector.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/Serializer.java (96%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/SignalList.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/TemplateTmxMapLoader.java (94%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/util/UIActor.java (95%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/BiomeSprites.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/BiomeTexture.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/OpenSimplexNoise.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/SpritesDataMap.java (100%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/World.java (98%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/WorldSave.java (96%) rename {forge-adventure/src/main/java => forge-gui-mobile/src}/forge/adventure/world/WorldSaveHeader.java (100%) diff --git a/forge-adventure/src/main/java/forge/adventure/scene/SceneType.java b/forge-adventure/src/main/java/forge/adventure/scene/SceneType.java deleted file mode 100644 index 89a2c78f72d..00000000000 --- a/forge-adventure/src/main/java/forge/adventure/scene/SceneType.java +++ /dev/null @@ -1,26 +0,0 @@ -package forge.adventure.scene; - -/** - * Enum of all scenes - */ -public enum SceneType { - StartScene(new forge.adventure.scene.StartScene()), - NewGameScene(new forge.adventure.scene.NewGameScene()), - SettingsScene(new forge.adventure.scene.SettingsScene()), - GameScene(new forge.adventure.scene.GameScene()), - DuelScene(new forge.adventure.scene.DuelScene()), - SaveLoadScene(new forge.adventure.scene.SaveLoadScene()), - DeckEditScene(new forge.adventure.scene.DeckEditScene()), - TileMapScene(new forge.adventure.scene.TileMapScene()), - RewardScene(new forge.adventure.scene.RewardScene()), - InnScene(new forge.adventure.scene.InnScene()), - DeckSelectScene(new forge.adventure.scene.DeckSelectScene()), - ShopScene(new forge.adventure.scene.ShopScene()), - PlayerStatisticScene(new forge.adventure.scene.PlayerStatisticScene()); - - - public final forge.adventure.scene.Scene instance; - SceneType(forge.adventure.scene.Scene scene) { - this.instance = scene; - } -} diff --git a/forge-core/src/main/java/forge/util/Localizer.java b/forge-core/src/main/java/forge/util/Localizer.java index 741d3c7c79b..6ce4af7e096 100644 --- a/forge-core/src/main/java/forge/util/Localizer.java +++ b/forge-core/src/main/java/forge/util/Localizer.java @@ -22,6 +22,7 @@ public class Localizer { private Locale locale; private ResourceBundle resourceBundle; + private boolean silent = false; public static Localizer getInstance() { if (instance == null) { @@ -60,7 +61,11 @@ public class Localizer { public String getMessageorUseDefault(final String key, final String defaultValue, final Object... messageArguments) { try { - return getMessage(key, messageArguments); + silent = true; + String value = getMessage(key, messageArguments); + if (value.contains("INVALID PROPERTY:")) + return defaultValue; + return value; } catch (Exception e) { return defaultValue; } @@ -73,14 +78,17 @@ public class Localizer { //formatter = new MessageFormat(resourceBundle.getString(key.toLowerCase()), locale); formatter = new MessageFormat(resourceBundle.getString(key), locale); } catch (final IllegalArgumentException | MissingResourceException e) { - e.printStackTrace(); + if (!silent) + e.printStackTrace(); } - if (formatter == null) { + if (formatter == null && !silent) { System.err.println("INVALID PROPERTY: '" + key + "' -- Translation Needed?"); return "INVALID PROPERTY: '" + key + "' -- Translation Needed?"; } + silent = false; + formatter.setLocale(locale); String formattedMessage = "CHAR ENCODING ERROR"; diff --git a/forge-gui-mobile/src/forge/Forge.java b/forge-gui-mobile/src/forge/Forge.java index 45253bb7ffa..a3ca87e1faf 100644 --- a/forge-gui-mobile/src/forge/Forge.java +++ b/forge-gui-mobile/src/forge/Forge.java @@ -6,6 +6,7 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Input.Keys; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.utils.Clipboard; +import forge.adventure.AdventureApplicationAdapter; import forge.animation.ForgeAnimation; import forge.assets.AssetsDownloader; import forge.assets.FSkin; @@ -71,6 +72,7 @@ public class Forge implements ApplicationListener { public static boolean isPortraitMode = false; public static boolean gameInProgress = false; public static boolean disposeTextures = false; + public static boolean isAdventureMode = false; public static int cacheSize = 400; public static int totalDeviceRAM = 0; public static int androidVersion = 0; @@ -252,7 +254,19 @@ public class Forge implements ApplicationListener { /*for (FScreen fScreen : Dscreens) System.out.println(fScreen.toString());*/ } - + public static void openHomeDefault() { + openHomeScreen(-1, null); //default for startup + splashScreen = null; + if (isLandscapeMode()) { //open preferred new game screen by default if landscape mode + NewGameMenu.getPreferredScreen().open(); + } + } + public static void openAdventure() { + splashScreen = null; + isAdventureMode = true; + //how to insert adventure startup / adapter here?? + + } protected void afterDbLoaded() { stopContinuousRendering(); //save power consumption by disabling continuous rendering once assets loaded @@ -261,14 +275,11 @@ public class Forge implements ApplicationListener { SoundSystem.instance.setBackgroundMusic(MusicPlaylist.MENUS); //start background music destroyThis = false; //Allow back() Gdx.input.setCatchKey(Keys.MENU, true); - openHomeScreen(-1, null); //default for startup - splashScreen = null; + afterDBloaded = true; + splashScreen.setShowModeSelector(true); boolean isLandscapeMode = isLandscapeMode(); - if (isLandscapeMode) { //open preferred new game screen by default if landscape mode - NewGameMenu.getPreferredScreen().open(); - } //adjust height modifier adjustHeightModifier(getScreenWidth(), getScreenHeight()); @@ -534,7 +545,7 @@ public class Forge implements ApplicationListener { graphics.begin(screenWidth, screenHeight); screen.screenPos.setSize(screenWidth, screenHeight); if (screen.getRotate180()) { - graphics.startRotateTransform(screenWidth / 2, screenHeight / 2, 180); + graphics.startRotateTransform(screenWidth / 2f, screenHeight / 2f, 180); } screen.draw(graphics); if (screen.getRotate180()) { @@ -545,7 +556,7 @@ public class Forge implements ApplicationListener { overlay.screenPos.setSize(screenWidth, screenHeight); overlay.setSize(screenWidth, screenHeight); //update overlay sizes as they're rendered if (overlay.getRotate180()) { - graphics.startRotateTransform(screenWidth / 2, screenHeight / 2, 180); + graphics.startRotateTransform(screenWidth / 2f, screenHeight / 2f, 180); } overlay.draw(graphics); if (overlay.getRotate180()) { @@ -770,6 +781,9 @@ public class Forge implements ApplicationListener { if (currentScreen != null) { currentScreen.buildTouchListeners(x, y, potentialListeners); } + if (splashScreen != null) { + splashScreen.buildTouchListeners(x, y, potentialListeners); + } } @Override diff --git a/forge-adventure/src/main/java/forge/adventure/AdventureApplicationAdapter.java b/forge-gui-mobile/src/forge/adventure/AdventureApplicationAdapter.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/AdventureApplicationAdapter.java rename to forge-gui-mobile/src/forge/adventure/AdventureApplicationAdapter.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/CharacterSprite.java b/forge-gui-mobile/src/forge/adventure/character/CharacterSprite.java similarity index 97% rename from forge-adventure/src/main/java/forge/adventure/character/CharacterSprite.java rename to forge-gui-mobile/src/forge/adventure/character/CharacterSprite.java index 54c4f699748..fe8848c9807 100644 --- a/forge-adventure/src/main/java/forge/adventure/character/CharacterSprite.java +++ b/forge-gui-mobile/src/forge/adventure/character/CharacterSprite.java @@ -1,6 +1,10 @@ package forge.adventure.character; -import com.badlogic.gdx.graphics.g2d.*; +import com.badlogic.gdx.graphics.g2d.Animation; +import com.badlogic.gdx.graphics.g2d.Batch; +import com.badlogic.gdx.graphics.g2d.Sprite; +import com.badlogic.gdx.graphics.g2d.TextureAtlas; +import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.utils.Array; diff --git a/forge-adventure/src/main/java/forge/adventure/character/EnemySprite.java b/forge-gui-mobile/src/forge/adventure/character/EnemySprite.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/EnemySprite.java rename to forge-gui-mobile/src/forge/adventure/character/EnemySprite.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/EntryActor.java b/forge-gui-mobile/src/forge/adventure/character/EntryActor.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/EntryActor.java rename to forge-gui-mobile/src/forge/adventure/character/EntryActor.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/MapActor.java b/forge-gui-mobile/src/forge/adventure/character/MapActor.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/MapActor.java rename to forge-gui-mobile/src/forge/adventure/character/MapActor.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/OnCollide.java b/forge-gui-mobile/src/forge/adventure/character/OnCollide.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/OnCollide.java rename to forge-gui-mobile/src/forge/adventure/character/OnCollide.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/PlayerSprite.java b/forge-gui-mobile/src/forge/adventure/character/PlayerSprite.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/PlayerSprite.java rename to forge-gui-mobile/src/forge/adventure/character/PlayerSprite.java index 1eec9ea7a01..5ed747ac568 100644 --- a/forge-adventure/src/main/java/forge/adventure/character/PlayerSprite.java +++ b/forge-gui-mobile/src/forge/adventure/character/PlayerSprite.java @@ -1,10 +1,10 @@ package forge.adventure.character; import com.badlogic.gdx.math.Vector2; +import forge.adventure.player.AdventurePlayer; import forge.adventure.stage.GameStage; import forge.adventure.util.Config; import forge.adventure.util.Current; -import forge.adventure.player.AdventurePlayer; /** * Class that will represent the player sprite on the map diff --git a/forge-adventure/src/main/java/forge/adventure/character/ShopActor.java b/forge-gui-mobile/src/forge/adventure/character/ShopActor.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/ShopActor.java rename to forge-gui-mobile/src/forge/adventure/character/ShopActor.java diff --git a/forge-adventure/src/main/java/forge/adventure/character/TextureSprite.java b/forge-gui-mobile/src/forge/adventure/character/TextureSprite.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/character/TextureSprite.java rename to forge-gui-mobile/src/forge/adventure/character/TextureSprite.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/BiomeData.java b/forge-gui-mobile/src/forge/adventure/data/BiomeData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/BiomeData.java rename to forge-gui-mobile/src/forge/adventure/data/BiomeData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/BiomeSpriteData.java b/forge-gui-mobile/src/forge/adventure/data/BiomeSpriteData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/BiomeSpriteData.java rename to forge-gui-mobile/src/forge/adventure/data/BiomeSpriteData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/BiomeTerrainData.java b/forge-gui-mobile/src/forge/adventure/data/BiomeTerrainData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/BiomeTerrainData.java rename to forge-gui-mobile/src/forge/adventure/data/BiomeTerrainData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/ConfigData.java b/forge-gui-mobile/src/forge/adventure/data/ConfigData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/ConfigData.java rename to forge-gui-mobile/src/forge/adventure/data/ConfigData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/DifficultyData.java b/forge-gui-mobile/src/forge/adventure/data/DifficultyData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/DifficultyData.java rename to forge-gui-mobile/src/forge/adventure/data/DifficultyData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/EnemyData.java b/forge-gui-mobile/src/forge/adventure/data/EnemyData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/EnemyData.java rename to forge-gui-mobile/src/forge/adventure/data/EnemyData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/GeneratedDeckData.java b/forge-gui-mobile/src/forge/adventure/data/GeneratedDeckData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/GeneratedDeckData.java rename to forge-gui-mobile/src/forge/adventure/data/GeneratedDeckData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/GeneratedDeckTemplateData.java b/forge-gui-mobile/src/forge/adventure/data/GeneratedDeckTemplateData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/GeneratedDeckTemplateData.java rename to forge-gui-mobile/src/forge/adventure/data/GeneratedDeckTemplateData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/HeroData.java b/forge-gui-mobile/src/forge/adventure/data/HeroData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/HeroData.java rename to forge-gui-mobile/src/forge/adventure/data/HeroData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/HeroListData.java b/forge-gui-mobile/src/forge/adventure/data/HeroListData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/HeroListData.java rename to forge-gui-mobile/src/forge/adventure/data/HeroListData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/PointOfInterestData.java b/forge-gui-mobile/src/forge/adventure/data/PointOfInterestData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/PointOfInterestData.java rename to forge-gui-mobile/src/forge/adventure/data/PointOfInterestData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/RewardData.java b/forge-gui-mobile/src/forge/adventure/data/RewardData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/RewardData.java rename to forge-gui-mobile/src/forge/adventure/data/RewardData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/SettingData.java b/forge-gui-mobile/src/forge/adventure/data/SettingData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/SettingData.java rename to forge-gui-mobile/src/forge/adventure/data/SettingData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/ShopData.java b/forge-gui-mobile/src/forge/adventure/data/ShopData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/ShopData.java rename to forge-gui-mobile/src/forge/adventure/data/ShopData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/UIData.java b/forge-gui-mobile/src/forge/adventure/data/UIData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/UIData.java rename to forge-gui-mobile/src/forge/adventure/data/UIData.java diff --git a/forge-adventure/src/main/java/forge/adventure/data/WorldData.java b/forge-gui-mobile/src/forge/adventure/data/WorldData.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/data/WorldData.java rename to forge-gui-mobile/src/forge/adventure/data/WorldData.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/DocumentChangeListener.java b/forge-gui-mobile/src/forge/adventure/editor/DocumentChangeListener.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/DocumentChangeListener.java rename to forge-gui-mobile/src/forge/adventure/editor/DocumentChangeListener.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/EditorMainWindow.java b/forge-gui-mobile/src/forge/adventure/editor/EditorMainWindow.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/EditorMainWindow.java rename to forge-gui-mobile/src/forge/adventure/editor/EditorMainWindow.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/EnemyEdit.java b/forge-gui-mobile/src/forge/adventure/editor/EnemyEdit.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/EnemyEdit.java rename to forge-gui-mobile/src/forge/adventure/editor/EnemyEdit.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/EnemyEditor.java b/forge-gui-mobile/src/forge/adventure/editor/EnemyEditor.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/EnemyEditor.java rename to forge-gui-mobile/src/forge/adventure/editor/EnemyEditor.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/FilePicker.java b/forge-gui-mobile/src/forge/adventure/editor/FilePicker.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/FilePicker.java rename to forge-gui-mobile/src/forge/adventure/editor/FilePicker.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/Main.java b/forge-gui-mobile/src/forge/adventure/editor/Main.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/Main.java rename to forge-gui-mobile/src/forge/adventure/editor/Main.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/RewardEdit.java b/forge-gui-mobile/src/forge/adventure/editor/RewardEdit.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/RewardEdit.java rename to forge-gui-mobile/src/forge/adventure/editor/RewardEdit.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/RewardsEditor.java b/forge-gui-mobile/src/forge/adventure/editor/RewardsEditor.java similarity index 98% rename from forge-adventure/src/main/java/forge/adventure/editor/RewardsEditor.java rename to forge-gui-mobile/src/forge/adventure/editor/RewardsEditor.java index bbacb573200..99bc7b9a9a3 100644 --- a/forge-adventure/src/main/java/forge/adventure/editor/RewardsEditor.java +++ b/forge-gui-mobile/src/forge/adventure/editor/RewardsEditor.java @@ -55,7 +55,7 @@ public class RewardsEditor extends JComponent{ public RewardsEditor() { - list.setCellRenderer(new RewardsEditor.RewardDataRenderer()); + list.setCellRenderer(new RewardDataRenderer()); list.addListSelectionListener(e -> updateEdit()); addButton("add",e->addReward()); addButton("remove",e->remove()); diff --git a/forge-adventure/src/main/java/forge/adventure/editor/SwingAtlas.java b/forge-gui-mobile/src/forge/adventure/editor/SwingAtlas.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/SwingAtlas.java rename to forge-gui-mobile/src/forge/adventure/editor/SwingAtlas.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/SwingAtlasPreview.java b/forge-gui-mobile/src/forge/adventure/editor/SwingAtlasPreview.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/SwingAtlasPreview.java rename to forge-gui-mobile/src/forge/adventure/editor/SwingAtlasPreview.java diff --git a/forge-adventure/src/main/java/forge/adventure/editor/TextListEdit.java b/forge-gui-mobile/src/forge/adventure/editor/TextListEdit.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/editor/TextListEdit.java rename to forge-gui-mobile/src/forge/adventure/editor/TextListEdit.java diff --git a/forge-adventure/src/main/java/forge/adventure/player/AdventurePlayer.java b/forge-gui-mobile/src/forge/adventure/player/AdventurePlayer.java similarity index 97% rename from forge-adventure/src/main/java/forge/adventure/player/AdventurePlayer.java rename to forge-gui-mobile/src/forge/adventure/player/AdventurePlayer.java index 0f4760c7c0f..96a126711a4 100644 --- a/forge-adventure/src/main/java/forge/adventure/player/AdventurePlayer.java +++ b/forge-gui-mobile/src/forge/adventure/player/AdventurePlayer.java @@ -5,7 +5,12 @@ import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.google.common.collect.Lists; import forge.adventure.data.DifficultyData; import forge.adventure.data.HeroListData; -import forge.adventure.util.*; +import forge.adventure.util.CardUtil; +import forge.adventure.util.Config; +import forge.adventure.util.Reward; +import forge.adventure.util.SaveFileContent; +import forge.adventure.util.SaveFileData; +import forge.adventure.util.SignalList; import forge.adventure.world.WorldSave; import forge.deck.CardPool; import forge.deck.Deck; diff --git a/forge-adventure/src/main/java/forge/adventure/player/PlayerStatistic.java b/forge-gui-mobile/src/forge/adventure/player/PlayerStatistic.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/player/PlayerStatistic.java rename to forge-gui-mobile/src/forge/adventure/player/PlayerStatistic.java diff --git a/forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterest.java b/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterest.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterest.java rename to forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterest.java diff --git a/forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterestChanges.java b/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterestChanges.java rename to forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java diff --git a/forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterestMap.java b/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestMap.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/pointofintrest/PointOfInterestMap.java rename to forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestMap.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/AdventureDeckEditor.java b/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java similarity index 94% rename from forge-adventure/src/main/java/forge/adventure/scene/AdventureDeckEditor.java rename to forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java index 4ebef1c0cf6..0e69f0ead93 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/AdventureDeckEditor.java +++ b/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java @@ -10,11 +10,19 @@ import forge.adventure.player.AdventurePlayer; import forge.assets.FImage; import forge.assets.FSkinFont; import forge.assets.FSkinImage; -import forge.deck.*; +import forge.deck.CardPool; +import forge.deck.Deck; +import forge.deck.DeckFormat; +import forge.deck.DeckSection; +import forge.deck.FDeckViewer; import forge.gui.FThreads; import forge.item.InventoryItem; import forge.item.PaperCard; -import forge.itemmanager.*; +import forge.itemmanager.CardManager; +import forge.itemmanager.ColumnDef; +import forge.itemmanager.ItemColumn; +import forge.itemmanager.ItemManager; +import forge.itemmanager.ItemManagerConfig; import forge.itemmanager.filters.ItemFilter; import forge.localinstance.properties.ForgePreferences; import forge.menu.FCheckBoxMenuItem; @@ -25,7 +33,10 @@ import forge.model.FModel; import forge.screens.FScreen; import forge.screens.LoadingOverlay; import forge.screens.TabPageScreen; -import forge.toolbox.*; +import forge.toolbox.FContainer; +import forge.toolbox.FEvent; +import forge.toolbox.FLabel; +import forge.toolbox.GuiChoose; import forge.util.Callback; import forge.util.ItemPool; import forge.util.Localizer; @@ -69,24 +80,24 @@ import java.util.Map; ((CardManagerPage)page).refresh(); } for (TabPage tabPage : tabPages) { - ((AdventureDeckEditor.DeckEditorPage)tabPage).initialize(); + ((DeckEditorPage)tabPage).initialize(); } } - private static AdventureDeckEditor.DeckEditorPage[] getPages() { + private static DeckEditorPage[] getPages() { final Localizer localizer = Localizer.getInstance(); - return new AdventureDeckEditor.DeckEditorPage[] { - new AdventureDeckEditor.CatalogPage(ItemManagerConfig.QUEST_EDITOR_POOL, localizer.getMessage("lblInventory"), FSkinImage.QUEST_BOX), - new AdventureDeckEditor.DeckSectionPage(DeckSection.Main, ItemManagerConfig.QUEST_DECK_EDITOR), - new AdventureDeckEditor.DeckSectionPage(DeckSection.Sideboard, ItemManagerConfig.QUEST_DECK_EDITOR) + return new DeckEditorPage[] { + new CatalogPage(ItemManagerConfig.QUEST_EDITOR_POOL, localizer.getMessage("lblInventory"), FSkinImage.QUEST_BOX), + new DeckSectionPage(DeckSection.Main, ItemManagerConfig.QUEST_DECK_EDITOR), + new DeckSectionPage(DeckSection.Sideboard, ItemManagerConfig.QUEST_DECK_EDITOR) }; } - private AdventureDeckEditor.CatalogPage catalogPage; - private AdventureDeckEditor.DeckSectionPage mainDeckPage; - private AdventureDeckEditor.DeckSectionPage sideboardPage; - private AdventureDeckEditor.DeckSectionPage commanderPage; + private CatalogPage catalogPage; + private DeckSectionPage mainDeckPage; + private DeckSectionPage sideboardPage; + private DeckSectionPage commanderPage; - protected final AdventureDeckEditor.DeckHeader deckHeader = add(new AdventureDeckEditor.DeckHeader()); + protected final DeckHeader deckHeader = add(new DeckHeader()); protected final FLabel lblName = deckHeader.add(new FLabel.Builder().font(FSkinFont.get(16)).insets(new Vector2(Utils.scale(5), 0)).build()); private final FLabel btnMoreOptions = deckHeader.add(new FLabel.Builder().text("...").font(FSkinFont.get(20)).align(Align.center).pressedColor(Header.BTN_PRESSED_COLOR).build()); @@ -99,11 +110,11 @@ import java.util.Map; //cache specific pages for (TabPage tabPage : tabPages) { - if (tabPage instanceof AdventureDeckEditor.CatalogPage) { - catalogPage = (AdventureDeckEditor.CatalogPage) tabPage; + if (tabPage instanceof CatalogPage) { + catalogPage = (CatalogPage) tabPage; } - else if (tabPage instanceof AdventureDeckEditor.DeckSectionPage) { - AdventureDeckEditor.DeckSectionPage deckSectionPage = (AdventureDeckEditor.DeckSectionPage) tabPage; + else if (tabPage instanceof DeckSectionPage) { + DeckSectionPage deckSectionPage = (DeckSectionPage) tabPage; switch (deckSectionPage.deckSection) { case Main: case Schemes: @@ -131,7 +142,7 @@ import java.util.Map; final Localizer localizer = Localizer.getInstance(); addItem(new FMenuItem(localizer.getMessage("btnCopyToClipboard"), Forge.hdbuttons ? FSkinImage.HDEXPORT : FSkinImage.BLANK, e1 -> FDeckViewer.copyDeckToClipboard(getDeck()))); - ((AdventureDeckEditor.DeckEditorPage)getSelectedPage()).buildDeckMenu(this); + ((DeckEditorPage)getSelectedPage()).buildDeckMenu(this); } }; menu.show(btnMoreOptions, 0, btnMoreOptions.getHeight()); @@ -149,19 +160,19 @@ import java.util.Map; public Deck getDeck() { return AdventurePlayer.current().getSelectedDeck(); } - protected AdventureDeckEditor.CatalogPage getCatalogPage() { + protected CatalogPage getCatalogPage() { return catalogPage; } - protected AdventureDeckEditor.DeckSectionPage getMainDeckPage() { + protected DeckSectionPage getMainDeckPage() { return mainDeckPage; } - protected AdventureDeckEditor.DeckSectionPage getSideboardPage() { + protected DeckSectionPage getSideboardPage() { return sideboardPage; } - protected AdventureDeckEditor.DeckSectionPage getCommanderPage() { + protected DeckSectionPage getCommanderPage() { return commanderPage; } @@ -222,7 +233,7 @@ import java.util.Map; } } - protected static abstract class CardManagerPage extends AdventureDeckEditor.DeckEditorPage { + protected static abstract class CardManagerPage extends DeckEditorPage { private final ItemManagerConfig config; protected final CardManager cardManager = add(new CardManager(false)); @@ -233,7 +244,7 @@ import java.util.Map; cardManager.setContextMenuBuilder(new ItemManager.ContextMenuBuilder() { @Override public void buildMenu(final FDropDownMenu menu, final PaperCard card) { - AdventureDeckEditor.CardManagerPage.this.buildMenu(menu, card); + CardManagerPage.this.buildMenu(menu, card); } }); } @@ -488,7 +499,7 @@ import java.util.Map; } } - protected static class CatalogPage extends AdventureDeckEditor.CardManagerPage { + protected static class CatalogPage extends CardManagerPage { private boolean initialized, needRefreshWhenShown; protected CatalogPage(ItemManagerConfig config, String caption0, FImage icon0) { @@ -631,7 +642,7 @@ import java.util.Map; } } - protected static class DeckSectionPage extends AdventureDeckEditor.CardManagerPage { + protected static class DeckSectionPage extends CardManagerPage { private final String captionPrefix; private final DeckSection deckSection; diff --git a/forge-adventure/src/main/java/forge/adventure/scene/DeckEditScene.java b/forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/DeckEditScene.java rename to forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/DeckSelectScene.java b/forge-gui-mobile/src/forge/adventure/scene/DeckSelectScene.java similarity index 93% rename from forge-adventure/src/main/java/forge/adventure/scene/DeckSelectScene.java rename to forge-gui-mobile/src/forge/adventure/scene/DeckSelectScene.java index 68a1b24ede2..1e8a632b5c9 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/DeckSelectScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/DeckSelectScene.java @@ -3,14 +3,19 @@ package forge.adventure.scene; import com.badlogic.gdx.Input; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.scenes.scene2d.InputEvent; -import com.badlogic.gdx.scenes.scene2d.ui.*; +import com.badlogic.gdx.scenes.scene2d.ui.Dialog; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; +import com.badlogic.gdx.scenes.scene2d.ui.Table; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; +import com.badlogic.gdx.scenes.scene2d.ui.TextField; import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; import com.badlogic.gdx.utils.Align; import com.badlogic.gdx.utils.IntMap; import forge.adventure.AdventureApplicationAdapter; +import forge.adventure.player.AdventurePlayer; import forge.adventure.util.Controls; import forge.adventure.util.Current; -import forge.adventure.player.AdventurePlayer; public class DeckSelectScene extends UIScene { private final IntMap buttons = new IntMap<>(); diff --git a/forge-adventure/src/main/java/forge/adventure/scene/DuelScene.java b/forge-gui-mobile/src/forge/adventure/scene/DuelScene.java similarity index 97% rename from forge-adventure/src/main/java/forge/adventure/scene/DuelScene.java rename to forge-gui-mobile/src/forge/adventure/scene/DuelScene.java index c86a0252eb3..80d0b7e5c40 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/DuelScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/DuelScene.java @@ -5,9 +5,9 @@ import forge.LobbyPlayer; import forge.adventure.AdventureApplicationAdapter; import forge.adventure.character.EnemySprite; import forge.adventure.character.PlayerSprite; +import forge.adventure.player.AdventurePlayer; import forge.adventure.util.Config; import forge.adventure.util.Current; -import forge.adventure.player.AdventurePlayer; import forge.assets.FSkin; import forge.deck.Deck; import forge.game.GameRules; @@ -24,7 +24,12 @@ import forge.sound.MusicPlaylist; import forge.sound.SoundSystem; import forge.trackable.TrackableCollection; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; /** * DuelScene diff --git a/forge-adventure/src/main/java/forge/adventure/scene/ForgeInput.java b/forge-gui-mobile/src/forge/adventure/scene/ForgeInput.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/ForgeInput.java rename to forge-gui-mobile/src/forge/adventure/scene/ForgeInput.java index 452098d1d49..b383998eb61 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/ForgeInput.java +++ b/forge-gui-mobile/src/forge/adventure/scene/ForgeInput.java @@ -2,13 +2,13 @@ package forge.adventure.scene; import com.badlogic.gdx.Input; import forge.Forge; +import forge.gui.error.BugReporter; import forge.screens.match.MatchController; import forge.toolbox.FContainer; import forge.toolbox.FDisplayObject; import forge.toolbox.FGestureAdapter; import forge.toolbox.FOverlay; import forge.util.Utils; -import forge.gui.error.BugReporter; import java.util.ArrayList; import java.util.List; diff --git a/forge-adventure/src/main/java/forge/adventure/scene/ForgeScene.java b/forge-gui-mobile/src/forge/adventure/scene/ForgeScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/ForgeScene.java rename to forge-gui-mobile/src/forge/adventure/scene/ForgeScene.java index d6d33ae45b7..f719135e4b5 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/ForgeScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/ForgeScene.java @@ -2,16 +2,16 @@ package forge.adventure.scene; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.GL20; -import forge.adventure.AdventureApplicationAdapter; import forge.Forge; import forge.Graphics; +import forge.adventure.AdventureApplicationAdapter; import forge.animation.ForgeAnimation; import forge.assets.ImageCache; +import forge.gamemodes.match.LobbySlotType; +import forge.interfaces.IUpdateable; import forge.screens.FScreen; import forge.toolbox.FDisplayObject; import forge.toolbox.FOverlay; -import forge.gamemodes.match.LobbySlotType; -import forge.interfaces.IUpdateable; import java.util.List; diff --git a/forge-adventure/src/main/java/forge/adventure/scene/GameScene.java b/forge-gui-mobile/src/forge/adventure/scene/GameScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/GameScene.java rename to forge-gui-mobile/src/forge/adventure/scene/GameScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/HudScene.java b/forge-gui-mobile/src/forge/adventure/scene/HudScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/HudScene.java rename to forge-gui-mobile/src/forge/adventure/scene/HudScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/InnScene.java b/forge-gui-mobile/src/forge/adventure/scene/InnScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/InnScene.java rename to forge-gui-mobile/src/forge/adventure/scene/InnScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/NewGameScene.java b/forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/NewGameScene.java rename to forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/PlayerStatisticScene.java b/forge-gui-mobile/src/forge/adventure/scene/PlayerStatisticScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/PlayerStatisticScene.java rename to forge-gui-mobile/src/forge/adventure/scene/PlayerStatisticScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/RewardScene.java b/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/RewardScene.java rename to forge-gui-mobile/src/forge/adventure/scene/RewardScene.java index ccc6875de9d..b1249fbce02 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/RewardScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/RewardScene.java @@ -9,14 +9,14 @@ import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; import com.badlogic.gdx.utils.Array; import forge.adventure.AdventureApplicationAdapter; import forge.adventure.character.ShopActor; -import forge.assets.ImageCache; +import forge.adventure.player.AdventurePlayer; +import forge.adventure.pointofintrest.PointOfInterestChanges; import forge.adventure.util.CardUtil; import forge.adventure.util.Current; import forge.adventure.util.Reward; import forge.adventure.util.RewardActor; -import forge.adventure.player.AdventurePlayer; -import forge.adventure.pointofintrest.PointOfInterestChanges; import forge.adventure.world.WorldSave; +import forge.assets.ImageCache; /** * Displays the rewards of a fight or a treasure diff --git a/forge-adventure/src/main/java/forge/adventure/scene/SaveLoadScene.java b/forge-gui-mobile/src/forge/adventure/scene/SaveLoadScene.java similarity index 94% rename from forge-adventure/src/main/java/forge/adventure/scene/SaveLoadScene.java rename to forge-gui-mobile/src/forge/adventure/scene/SaveLoadScene.java index b5010d7da30..a28c89ccc1a 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/SaveLoadScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/SaveLoadScene.java @@ -4,7 +4,13 @@ import com.badlogic.gdx.Input; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.scenes.scene2d.InputEvent; -import com.badlogic.gdx.scenes.scene2d.ui.*; +import com.badlogic.gdx.scenes.scene2d.ui.Dialog; +import com.badlogic.gdx.scenes.scene2d.ui.Image; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; +import com.badlogic.gdx.scenes.scene2d.ui.Table; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; +import com.badlogic.gdx.scenes.scene2d.ui.TextField; import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; import com.badlogic.gdx.utils.Align; diff --git a/forge-adventure/src/main/java/forge/adventure/scene/Scene.java b/forge-gui-mobile/src/forge/adventure/scene/Scene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/Scene.java rename to forge-gui-mobile/src/forge/adventure/scene/Scene.java diff --git a/forge-gui-mobile/src/forge/adventure/scene/SceneType.java b/forge-gui-mobile/src/forge/adventure/scene/SceneType.java new file mode 100644 index 00000000000..d3902d6ca2e --- /dev/null +++ b/forge-gui-mobile/src/forge/adventure/scene/SceneType.java @@ -0,0 +1,26 @@ +package forge.adventure.scene; + +/** + * Enum of all scenes + */ +public enum SceneType { + StartScene(new StartScene()), + NewGameScene(new NewGameScene()), + SettingsScene(new SettingsScene()), + GameScene(new GameScene()), + DuelScene(new DuelScene()), + SaveLoadScene(new SaveLoadScene()), + DeckEditScene(new DeckEditScene()), + TileMapScene(new TileMapScene()), + RewardScene(new RewardScene()), + InnScene(new InnScene()), + DeckSelectScene(new DeckSelectScene()), + ShopScene(new ShopScene()), + PlayerStatisticScene(new PlayerStatisticScene()); + + + public final Scene instance; + SceneType(Scene scene) { + this.instance = scene; + } +} diff --git a/forge-adventure/src/main/java/forge/adventure/scene/SettingsScene.java b/forge-gui-mobile/src/forge/adventure/scene/SettingsScene.java similarity index 95% rename from forge-adventure/src/main/java/forge/adventure/scene/SettingsScene.java rename to forge-gui-mobile/src/forge/adventure/scene/SettingsScene.java index c45b9e4e52a..70d547eb239 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/SettingsScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/SettingsScene.java @@ -6,7 +6,13 @@ import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.Stage; -import com.badlogic.gdx.scenes.scene2d.ui.*; +import com.badlogic.gdx.scenes.scene2d.ui.CheckBox; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; +import com.badlogic.gdx.scenes.scene2d.ui.SelectBox; +import com.badlogic.gdx.scenes.scene2d.ui.Slider; +import com.badlogic.gdx.scenes.scene2d.ui.Table; +import com.badlogic.gdx.scenes.scene2d.ui.TextField; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import com.badlogic.gdx.utils.Align; import forge.adventure.AdventureApplicationAdapter; diff --git a/forge-adventure/src/main/java/forge/adventure/scene/ShopScene.java b/forge-gui-mobile/src/forge/adventure/scene/ShopScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/ShopScene.java rename to forge-gui-mobile/src/forge/adventure/scene/ShopScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/scene/StartScene.java b/forge-gui-mobile/src/forge/adventure/scene/StartScene.java similarity index 95% rename from forge-adventure/src/main/java/forge/adventure/scene/StartScene.java rename to forge-gui-mobile/src/forge/adventure/scene/StartScene.java index fd200a7d12b..fb111c80b4c 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/StartScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/StartScene.java @@ -42,7 +42,7 @@ public class StartScene extends UIScene { } public boolean settings() { - AdventureApplicationAdapter.instance.switchScene(forge.adventure.scene.SceneType.SettingsScene.instance); + AdventureApplicationAdapter.instance.switchScene(SceneType.SettingsScene.instance); return true; } diff --git a/forge-adventure/src/main/java/forge/adventure/scene/TileMapScene.java b/forge-gui-mobile/src/forge/adventure/scene/TileMapScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/TileMapScene.java rename to forge-gui-mobile/src/forge/adventure/scene/TileMapScene.java index 02ab5f08e94..7668fc301cb 100644 --- a/forge-adventure/src/main/java/forge/adventure/scene/TileMapScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/TileMapScene.java @@ -3,11 +3,11 @@ package forge.adventure.scene; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.maps.tiled.TiledMap; +import forge.adventure.pointofintrest.PointOfInterest; import forge.adventure.stage.MapStage; import forge.adventure.stage.PointOfInterestMapRenderer; import forge.adventure.util.Config; import forge.adventure.util.TemplateTmxMapLoader; -import forge.adventure.pointofintrest.PointOfInterest; import forge.adventure.world.WorldSave; /** diff --git a/forge-adventure/src/main/java/forge/adventure/scene/UIScene.java b/forge-gui-mobile/src/forge/adventure/scene/UIScene.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/scene/UIScene.java rename to forge-gui-mobile/src/forge/adventure/scene/UIScene.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/GameHUD.java b/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/GameHUD.java rename to forge-gui-mobile/src/forge/adventure/stage/GameHUD.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/GameStage.java b/forge-gui-mobile/src/forge/adventure/stage/GameStage.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/GameStage.java rename to forge-gui-mobile/src/forge/adventure/stage/GameStage.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/MapSprite.java b/forge-gui-mobile/src/forge/adventure/stage/MapSprite.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/MapSprite.java rename to forge-gui-mobile/src/forge/adventure/stage/MapSprite.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/MapStage.java b/forge-gui-mobile/src/forge/adventure/stage/MapStage.java similarity index 97% rename from forge-adventure/src/main/java/forge/adventure/stage/MapStage.java rename to forge-gui-mobile/src/forge/adventure/stage/MapStage.java index dae72fb28f6..c4411643668 100644 --- a/forge-adventure/src/main/java/forge/adventure/stage/MapStage.java +++ b/forge-gui-mobile/src/forge/adventure/stage/MapStage.java @@ -12,17 +12,23 @@ import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.scenes.scene2d.Group; import com.badlogic.gdx.utils.Array; import forge.adventure.AdventureApplicationAdapter; -import forge.adventure.character.*; +import forge.adventure.character.CharacterSprite; +import forge.adventure.character.EnemySprite; +import forge.adventure.character.EntryActor; +import forge.adventure.character.MapActor; +import forge.adventure.character.OnCollide; +import forge.adventure.character.ShopActor; +import forge.adventure.character.TextureSprite; import forge.adventure.data.RewardData; import forge.adventure.data.ShopData; import forge.adventure.data.WorldData; +import forge.adventure.pointofintrest.PointOfInterestChanges; import forge.adventure.scene.DuelScene; import forge.adventure.scene.RewardScene; import forge.adventure.scene.SceneType; import forge.adventure.util.Config; import forge.adventure.util.Current; import forge.adventure.util.Reward; -import forge.adventure.pointofintrest.PointOfInterestChanges; import forge.adventure.world.WorldSave; import java.util.ArrayList; diff --git a/forge-adventure/src/main/java/forge/adventure/stage/PointOfInterestMapRenderer.java b/forge-gui-mobile/src/forge/adventure/stage/PointOfInterestMapRenderer.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/PointOfInterestMapRenderer.java rename to forge-gui-mobile/src/forge/adventure/stage/PointOfInterestMapRenderer.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/PointOfInterestMapSprite.java b/forge-gui-mobile/src/forge/adventure/stage/PointOfInterestMapSprite.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/PointOfInterestMapSprite.java rename to forge-gui-mobile/src/forge/adventure/stage/PointOfInterestMapSprite.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/SpriteGroup.java b/forge-gui-mobile/src/forge/adventure/stage/SpriteGroup.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/SpriteGroup.java rename to forge-gui-mobile/src/forge/adventure/stage/SpriteGroup.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/WorldBackground.java b/forge-gui-mobile/src/forge/adventure/stage/WorldBackground.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/stage/WorldBackground.java rename to forge-gui-mobile/src/forge/adventure/stage/WorldBackground.java diff --git a/forge-adventure/src/main/java/forge/adventure/stage/WorldStage.java b/forge-gui-mobile/src/forge/adventure/stage/WorldStage.java similarity index 98% rename from forge-adventure/src/main/java/forge/adventure/stage/WorldStage.java rename to forge-gui-mobile/src/forge/adventure/stage/WorldStage.java index bc3f13a8142..8d8d37d6f89 100644 --- a/forge-adventure/src/main/java/forge/adventure/stage/WorldStage.java +++ b/forge-gui-mobile/src/forge/adventure/stage/WorldStage.java @@ -9,7 +9,11 @@ import forge.adventure.character.EnemySprite; import forge.adventure.data.BiomeData; import forge.adventure.data.EnemyData; import forge.adventure.data.WorldData; -import forge.adventure.scene.*; +import forge.adventure.scene.DuelScene; +import forge.adventure.scene.RewardScene; +import forge.adventure.scene.Scene; +import forge.adventure.scene.SceneType; +import forge.adventure.scene.TileMapScene; import forge.adventure.util.Current; import forge.adventure.util.SaveFileContent; import forge.adventure.util.SaveFileData; diff --git a/forge-adventure/src/main/java/forge/adventure/util/CardUtil.java b/forge-gui-mobile/src/forge/adventure/util/CardUtil.java similarity index 99% rename from forge-adventure/src/main/java/forge/adventure/util/CardUtil.java rename to forge-gui-mobile/src/forge/adventure/util/CardUtil.java index b1f0887130c..f48430bcfc2 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/CardUtil.java +++ b/forge-gui-mobile/src/forge/adventure/util/CardUtil.java @@ -25,7 +25,7 @@ import java.util.Collection; import java.util.List; import java.util.regex.Pattern; -import static forge.adventure.data.RewardData.*; +import static forge.adventure.data.RewardData.generateAllCards; /** * Utility class to deck generation and card filtering diff --git a/forge-adventure/src/main/java/forge/adventure/util/Config.java b/forge-gui-mobile/src/forge/adventure/util/Config.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/Config.java rename to forge-gui-mobile/src/forge/adventure/util/Config.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/Controls.java b/forge-gui-mobile/src/forge/adventure/util/Controls.java similarity index 89% rename from forge-adventure/src/main/java/forge/adventure/util/Controls.java rename to forge-gui-mobile/src/forge/adventure/util/Controls.java index c110e9ec9c5..aab97b4cc1f 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/Controls.java +++ b/forge-gui-mobile/src/forge/adventure/util/Controls.java @@ -5,7 +5,14 @@ import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.TextureAtlas; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.InputEvent; -import com.badlogic.gdx.scenes.scene2d.ui.*; +import com.badlogic.gdx.scenes.scene2d.ui.CheckBox; +import com.badlogic.gdx.scenes.scene2d.ui.Dialog; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.SelectBox; +import com.badlogic.gdx.scenes.scene2d.ui.Skin; +import com.badlogic.gdx.scenes.scene2d.ui.Slider; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; +import com.badlogic.gdx.scenes.scene2d.ui.TextField; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; diff --git a/forge-adventure/src/main/java/forge/adventure/util/Current.java b/forge-gui-mobile/src/forge/adventure/util/Current.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/Current.java rename to forge-gui-mobile/src/forge/adventure/util/Current.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/DrawOnPixmap.java b/forge-gui-mobile/src/forge/adventure/util/DrawOnPixmap.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/DrawOnPixmap.java rename to forge-gui-mobile/src/forge/adventure/util/DrawOnPixmap.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/Paths.java b/forge-gui-mobile/src/forge/adventure/util/Paths.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/Paths.java rename to forge-gui-mobile/src/forge/adventure/util/Paths.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/Reward.java b/forge-gui-mobile/src/forge/adventure/util/Reward.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/Reward.java rename to forge-gui-mobile/src/forge/adventure/util/Reward.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/RewardActor.java b/forge-gui-mobile/src/forge/adventure/util/RewardActor.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/RewardActor.java rename to forge-gui-mobile/src/forge/adventure/util/RewardActor.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/SaveFileContent.java b/forge-gui-mobile/src/forge/adventure/util/SaveFileContent.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/SaveFileContent.java rename to forge-gui-mobile/src/forge/adventure/util/SaveFileContent.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/SaveFileData.java b/forge-gui-mobile/src/forge/adventure/util/SaveFileData.java similarity index 98% rename from forge-adventure/src/main/java/forge/adventure/util/SaveFileData.java rename to forge-gui-mobile/src/forge/adventure/util/SaveFileData.java index 308f2f6e4d9..9fe8d06e588 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/SaveFileData.java +++ b/forge-gui-mobile/src/forge/adventure/util/SaveFileData.java @@ -5,7 +5,11 @@ import com.badlogic.gdx.graphics.PixmapIO; import com.badlogic.gdx.math.Rectangle; import com.badlogic.gdx.math.Vector2; -import java.io.*; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.HashMap; public class SaveFileData extends HashMap diff --git a/forge-adventure/src/main/java/forge/adventure/util/Selector.java b/forge-gui-mobile/src/forge/adventure/util/Selector.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/Selector.java rename to forge-gui-mobile/src/forge/adventure/util/Selector.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/Serializer.java b/forge-gui-mobile/src/forge/adventure/util/Serializer.java similarity index 96% rename from forge-adventure/src/main/java/forge/adventure/util/Serializer.java rename to forge-gui-mobile/src/forge/adventure/util/Serializer.java index d3cbd5ddbb1..e6cbb398646 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/Serializer.java +++ b/forge-gui-mobile/src/forge/adventure/util/Serializer.java @@ -16,7 +16,7 @@ import java.io.ObjectOutputStream; public abstract class Serializer { - static public void WritePixmap(java.io.ObjectOutputStream out, Pixmap pixmap) throws IOException { + static public void WritePixmap(ObjectOutputStream out, Pixmap pixmap) throws IOException { if (pixmap != null) { PixmapIO.PNG png = new PixmapIO.PNG(); diff --git a/forge-adventure/src/main/java/forge/adventure/util/SignalList.java b/forge-gui-mobile/src/forge/adventure/util/SignalList.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/util/SignalList.java rename to forge-gui-mobile/src/forge/adventure/util/SignalList.java diff --git a/forge-adventure/src/main/java/forge/adventure/util/TemplateTmxMapLoader.java b/forge-gui-mobile/src/forge/adventure/util/TemplateTmxMapLoader.java similarity index 94% rename from forge-adventure/src/main/java/forge/adventure/util/TemplateTmxMapLoader.java rename to forge-gui-mobile/src/forge/adventure/util/TemplateTmxMapLoader.java index cc26b73495f..e92458c6f61 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/TemplateTmxMapLoader.java +++ b/forge-gui-mobile/src/forge/adventure/util/TemplateTmxMapLoader.java @@ -18,7 +18,7 @@ public class TemplateTmxMapLoader extends TmxMapLoader { FileHandle tmxFile; @Override - protected TiledMap loadTiledMap(FileHandle tmxFile, TmxMapLoader.Parameters parameter, ImageResolver imageResolver) { + protected TiledMap loadTiledMap(FileHandle tmxFile, Parameters parameter, ImageResolver imageResolver) { this.tmxFile = tmxFile; return super.loadTiledMap(tmxFile, parameter, imageResolver); } diff --git a/forge-adventure/src/main/java/forge/adventure/util/UIActor.java b/forge-gui-mobile/src/forge/adventure/util/UIActor.java similarity index 95% rename from forge-adventure/src/main/java/forge/adventure/util/UIActor.java rename to forge-gui-mobile/src/forge/adventure/util/UIActor.java index 7832525075a..40e314098a6 100644 --- a/forge-adventure/src/main/java/forge/adventure/util/UIActor.java +++ b/forge-gui-mobile/src/forge/adventure/util/UIActor.java @@ -5,7 +5,13 @@ import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.Group; import com.badlogic.gdx.scenes.scene2d.InputEvent; -import com.badlogic.gdx.scenes.scene2d.ui.*; +import com.badlogic.gdx.scenes.scene2d.ui.Image; +import com.badlogic.gdx.scenes.scene2d.ui.ImageButton; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; +import com.badlogic.gdx.scenes.scene2d.ui.TextField; +import com.badlogic.gdx.scenes.scene2d.ui.Window; import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; import com.badlogic.gdx.utils.Array; diff --git a/forge-adventure/src/main/java/forge/adventure/world/BiomeSprites.java b/forge-gui-mobile/src/forge/adventure/world/BiomeSprites.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/world/BiomeSprites.java rename to forge-gui-mobile/src/forge/adventure/world/BiomeSprites.java diff --git a/forge-adventure/src/main/java/forge/adventure/world/BiomeTexture.java b/forge-gui-mobile/src/forge/adventure/world/BiomeTexture.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/world/BiomeTexture.java rename to forge-gui-mobile/src/forge/adventure/world/BiomeTexture.java diff --git a/forge-adventure/src/main/java/forge/adventure/world/OpenSimplexNoise.java b/forge-gui-mobile/src/forge/adventure/world/OpenSimplexNoise.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/world/OpenSimplexNoise.java rename to forge-gui-mobile/src/forge/adventure/world/OpenSimplexNoise.java diff --git a/forge-adventure/src/main/java/forge/adventure/world/SpritesDataMap.java b/forge-gui-mobile/src/forge/adventure/world/SpritesDataMap.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/world/SpritesDataMap.java rename to forge-gui-mobile/src/forge/adventure/world/SpritesDataMap.java diff --git a/forge-adventure/src/main/java/forge/adventure/world/World.java b/forge-gui-mobile/src/forge/adventure/world/World.java similarity index 98% rename from forge-adventure/src/main/java/forge/adventure/world/World.java rename to forge-gui-mobile/src/forge/adventure/world/World.java index 11d2cffbc25..5a51a5ee8f1 100644 --- a/forge-adventure/src/main/java/forge/adventure/world/World.java +++ b/forge-gui-mobile/src/forge/adventure/world/World.java @@ -8,7 +8,11 @@ import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.utils.Disposable; import com.badlogic.gdx.utils.Json; -import forge.adventure.data.*; +import forge.adventure.data.BiomeData; +import forge.adventure.data.BiomeSpriteData; +import forge.adventure.data.BiomeTerrainData; +import forge.adventure.data.PointOfInterestData; +import forge.adventure.data.WorldData; import forge.adventure.pointofintrest.PointOfInterest; import forge.adventure.pointofintrest.PointOfInterestMap; import forge.adventure.scene.Scene; diff --git a/forge-adventure/src/main/java/forge/adventure/world/WorldSave.java b/forge-gui-mobile/src/forge/adventure/world/WorldSave.java similarity index 96% rename from forge-adventure/src/main/java/forge/adventure/world/WorldSave.java rename to forge-gui-mobile/src/forge/adventure/world/WorldSave.java index 5b4b795bc39..4d0b781b484 100644 --- a/forge-adventure/src/main/java/forge/adventure/world/WorldSave.java +++ b/forge-gui-mobile/src/forge/adventure/world/WorldSave.java @@ -9,9 +9,13 @@ import forge.adventure.util.SaveFileData; import forge.adventure.util.SignalList; import forge.deck.Deck; import forge.localinstance.properties.ForgeProfileProperties; -import org.jetbrains.annotations.NotNull; -import java.io.*; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.HashMap; import java.util.zip.DeflaterOutputStream; import java.util.zip.InflaterInputStream; @@ -79,7 +83,7 @@ public class WorldSave { } return true; } - public static boolean isSafeFile(@NotNull String name) { + public static boolean isSafeFile(String name) { return filenameToSlot(name)!= INVALID_SAVE_SLOT; } static public int filenameToSlot(String name) { diff --git a/forge-adventure/src/main/java/forge/adventure/world/WorldSaveHeader.java b/forge-gui-mobile/src/forge/adventure/world/WorldSaveHeader.java similarity index 100% rename from forge-adventure/src/main/java/forge/adventure/world/WorldSaveHeader.java rename to forge-gui-mobile/src/forge/adventure/world/WorldSaveHeader.java diff --git a/forge-gui-mobile/src/forge/screens/SplashScreen.java b/forge-gui-mobile/src/forge/screens/SplashScreen.java index 5368be49343..6c32a36281d 100644 --- a/forge-gui-mobile/src/forge/screens/SplashScreen.java +++ b/forge-gui-mobile/src/forge/screens/SplashScreen.java @@ -9,14 +9,18 @@ import forge.Graphics; import forge.assets.FSkinColor; import forge.assets.FSkinFont; import forge.assets.FSkinTexture; +import forge.toolbox.FButton; import forge.toolbox.FContainer; +import forge.toolbox.FEvent; import forge.toolbox.FProgressBar; +import forge.util.Localizer; public class SplashScreen extends FContainer { private TextureRegion background; private final FProgressBar progressBar; private FSkinFont disclaimerFont; - private boolean preparedForDialogs; + private boolean preparedForDialogs, showModeSelector, init; + private FButton btnAdventure, btnHome; public SplashScreen() { progressBar = new FProgressBar(); @@ -63,14 +67,74 @@ public class SplashScreen extends FContainer { preparedForDialogs = true; } + public void setShowModeSelector(boolean value) { + showModeSelector = value; + } + @Override protected void drawBackground(Graphics g) { + if (showModeSelector) + showSelector(g); + else + showSplash(g); + } + private void showSelector(Graphics g) { + g.drawImage(FSkinTexture.BG_TEXTURE, 0, 0, getWidth(), getHeight()); + + float x, y, w, h; + float backgroundRatio = (float) background.getRegionWidth() / background.getRegionHeight(); + float screenRatio = getWidth() / getHeight(); + if (backgroundRatio > screenRatio) { + x = 0; + w = getWidth(); + h = getWidth() * backgroundRatio; + y = (getHeight() - h) / 2; + } + else { + y = 0; + h = getHeight(); + w = getHeight() / backgroundRatio; + x = (getWidth() - w) / 2; + } + g.drawImage(background, x, y, w, h); + y += h * 295f / 450f; + float padding = 20f / 450f * w; + float height = 57f / 450f * h; + + if (!init) { + btnAdventure = new FButton(Localizer.getInstance().getMessageorUseDefault("lblAdventureMode", "Adventure Mode")); + btnAdventure.setCommand(new FEvent.FEventHandler() { + @Override + public void handleEvent(FEvent e) { + Forge.openAdventure(); + } + }); + btnHome = new FButton(Localizer.getInstance().getMessageorUseDefault("lblClassicMode", "Classic Mode")); + btnHome.setCommand(new FEvent.FEventHandler() { + @Override + public void handleEvent(FEvent e) { + Forge.openHomeDefault(); + } + }); + float btn_w = (w - 2 * padding); + float btn_x = x + padding; + float btn_y = y + padding; + btnHome.setFont(FSkinFont.get(22)); + btnAdventure.setFont(FSkinFont.get(22)); + btnHome.setBounds(btn_x, btn_y, btn_w, height); + add(btnHome); + btnAdventure.setBounds(btn_x, btn_y+height+padding/2, btn_w, height); + add(btnAdventure); + init = true; + } + } + private void showSplash(Graphics g) { if (background == null) { return; } g.drawImage(FSkinTexture.BG_TEXTURE, 0, 0, getWidth(), getHeight()); - + float x, y, w, h; - float backgroundRatio = background.getRegionWidth() / background.getRegionHeight(); + float backgroundRatio = (float) background.getRegionWidth() / background.getRegionHeight(); float screenRatio = getWidth() / getHeight(); if (backgroundRatio > screenRatio) { x = 0; diff --git a/forge-gui-mobile/src/forge/toolbox/FDisplayObject.java b/forge-gui-mobile/src/forge/toolbox/FDisplayObject.java index f004b89d760..92aaef7130d 100644 --- a/forge-gui-mobile/src/forge/toolbox/FDisplayObject.java +++ b/forge-gui-mobile/src/forge/toolbox/FDisplayObject.java @@ -135,8 +135,10 @@ public abstract class FDisplayObject { //TODO: mouse detection on android? if (Forge.afterDBloaded && !GuiBase.isAndroid()) { Forge.hoveredCount = listeners.size(); - if (!Forge.getCurrentScreen().toString().contains("Match")) - Forge.hoveredCount = 1; + if (Forge.getCurrentScreen() != null) { + if (!Forge.getCurrentScreen().toString().contains("Match")) + Forge.hoveredCount = 1; + } if (exact) { setHovered(this.enabled && this.visible && ((FCardPanel) this).renderedCardContains(screenToLocalX(screenX), screenToLocalY(screenY)) && Forge.hoveredCount < 2); } else {