From 54950ac1b866ffe2e0269d389ae2ba0b45ef1f93 Mon Sep 17 00:00:00 2001 From: Mr-Zombii Date: Tue, 26 Mar 2024 16:55:14 -0500 Subject: [PATCH] Combine flux back into one module --- .idea/gradle.xml | 3 - fabric/build.gradle.kts => build.gradle.kts | 8 +- common/build.gradle.kts | 60 --------- .../dev/crmodders/flux/FluxConstants.java | 21 --- .../crmodders/flux/menus/BasicMainMenu.java | 89 ------------- .../crmodders/flux/menus/ConfigViewMenu.java | 125 ------------------ jitpack.yml | 2 + quilt/build.gradle.kts | 119 ----------------- quilt/gradle.properties | 14 -- .../java/dev/crmodders/flux/FluxAPIQuilt.java | 16 --- quilt/src/main/resources/quilt.mod.json | 40 ------ settings.gradle.kts | 1 - .../main/java/dev/crmodders/flux/FluxAPI.java | 2 +- .../dev/crmodders/flux/FluxConstants.java | 9 ++ .../flux/api/block/IFunctionalBlock.java | 0 .../crmodders/flux/api/block/IModBlock.java | 0 .../crmodders/flux/api/block/TestBlock.java | 0 .../flux/api/config/BasicConfig.java | 0 .../flux/api/events/ArrayBackedEvent.java | 0 .../dev/crmodders/flux/api/events/Event.java | 0 .../crmodders/flux/api/events/EventData.java | 0 .../flux/api/events/EventFactory.java | 0 .../flux/api/events/blocks/BlockEvents.java | 0 .../api/events/gamestate/GameStateEvents.java | 0 .../api/generators/BlockEventGenerator.java | 0 .../flux/api/generators/BlockGenerator.java | 0 .../api/generators/BlockStateGenerator.java | 0 .../flux/api/generators/data/DataJson.java | 0 .../data/blockevent/BlockEventData.java | 0 .../data/blockevent/BlockEventDataExt.java | 0 .../data/blockevent/BlockEventType.java | 0 .../data/blockevent/triggers/TriggerData.java | 0 .../blockevent/triggers/TriggerEventData.java | 0 .../data/blockstate/BlockStateData.java | 0 .../data/blockstate/BlockStateDataExt.java | 0 .../flux/api/gui/CustomFontRenderer.java | 1 - .../crmodders/flux/api/gui/TextElement.java | 0 .../flux/api/resource/AssetLoader.java | 0 .../flux/api/resource/ResourceLocation.java | 0 .../flux/api/resource/ResourceObject.java | 0 .../api/suppliers/DoubleInputSupplier.java | 0 .../flux/api/suppliers/ExecutionSupplier.java | 0 .../flux/api/suppliers/InputSupplier.java | 0 .../ReturnableDoubleInputSupplier.java | 0 .../suppliers/ReturnableInputSupplier.java | 0 .../api/suppliers/ReturnableSupplier.java | 0 .../crmodders/flux/menus/BasicMainMenu.java | 47 +++++++ .../crmodders/flux/menus/ConfigViewMenu.java | 71 ++++++++++ .../flux/mixins/assets/AssetLoaderMixin.java | 3 - .../flux/mixins/assets/BlockEventsMixin.java | 0 .../mixins/assets/BlockModelJsonMixin.java | 0 .../mixins/events/BlockSelectionMixin.java | 0 .../flux/mixins/events/GameStateMixin.java | 0 .../flux/mixins/gamestate/MainMenuMixin.java | 4 +- .../flux/mixins/logging/BlockGameMixin.java | 0 .../flux/mixins/logging/GameShaderMixin.java | 0 .../flux/mixins/logging/GameStateMixin.java | 0 .../LLwjgl3ApplicationLoggerMixin.java | 0 .../mixins/registry/RegistryRegisterer.java | 0 .../rendering/shaders/ChunkShaderMixin.java | 0 .../rendering/shaders/GameShaderMixin.java | 0 .../flux/registry/ExperimentalRegistries.java | 0 .../flux/registry/StableRegistries.java | 0 .../registries/AccessableRegistry.java | 0 .../registry/registries/DynamicRegistry.java | 0 .../registry/registries/FreezingRegistry.java | 0 .../registries/impl/DynamicRegistryImpl.java | 0 .../registries/impl/FreezingRegistryImpl.java | 0 .../registries/impl/RegistryObject.java | 0 .../dev/crmodders/flux/tags/Identifier.java | 0 .../flux/util/BlockBuilderUtils.java | 0 .../flux/util/BlockPositionUtil.java | 0 .../dev/crmodders/flux/util/PrivUtils.java | 0 .../META-INF/services/org.pmw.tinylog.writers | 0 .../main/resources/fabric.mod.json | 2 +- .../main/resources/fluxapi.mixins.json | 0 .../main/resources/tinylog.properties | 0 77 files changed, 137 insertions(+), 500 deletions(-) rename fabric/build.gradle.kts => build.gradle.kts (97%) delete mode 100644 common/build.gradle.kts delete mode 100644 common/src/main/java/dev/crmodders/flux/FluxConstants.java delete mode 100644 common/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java delete mode 100644 common/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java create mode 100644 jitpack.yml delete mode 100644 quilt/build.gradle.kts delete mode 100644 quilt/gradle.properties delete mode 100644 quilt/src/main/java/dev/crmodders/flux/FluxAPIQuilt.java delete mode 100644 quilt/src/main/resources/quilt.mod.json rename fabric/src/main/java/dev/crmodders/flux/FluxAPIFabric.java => src/main/java/dev/crmodders/flux/FluxAPI.java (78%) create mode 100644 src/main/java/dev/crmodders/flux/FluxConstants.java rename {common/src => src}/main/java/dev/crmodders/flux/api/block/IFunctionalBlock.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/block/IModBlock.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/block/TestBlock.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/config/BasicConfig.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/ArrayBackedEvent.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/Event.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/EventData.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/EventFactory.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/blocks/BlockEvents.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/events/gamestate/GameStateEvents.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/BlockEventGenerator.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/BlockGenerator.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/BlockStateGenerator.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/DataJson.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventData.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventDataExt.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventType.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerData.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerEventData.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateData.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateDataExt.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java (99%) rename {common/src => src}/main/java/dev/crmodders/flux/api/gui/TextElement.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/resource/AssetLoader.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/resource/ResourceLocation.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/resource/ResourceObject.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/DoubleInputSupplier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/ExecutionSupplier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/InputSupplier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/ReturnableDoubleInputSupplier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/ReturnableInputSupplier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/api/suppliers/ReturnableSupplier.java (100%) create mode 100644 src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java create mode 100644 src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java rename {common/src => src}/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java (95%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/assets/BlockEventsMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/assets/BlockModelJsonMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/events/BlockSelectionMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/events/GameStateMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java (87%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/logging/BlockGameMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/logging/GameShaderMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/logging/GameStateMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/logging/LLwjgl3ApplicationLoggerMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/registry/RegistryRegisterer.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/rendering/shaders/ChunkShaderMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/mixins/rendering/shaders/GameShaderMixin.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/ExperimentalRegistries.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/StableRegistries.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/AccessableRegistry.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/DynamicRegistry.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/FreezingRegistry.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/impl/DynamicRegistryImpl.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/impl/FreezingRegistryImpl.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/registry/registries/impl/RegistryObject.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/tags/Identifier.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/util/BlockBuilderUtils.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/util/BlockPositionUtil.java (100%) rename {common/src => src}/main/java/dev/crmodders/flux/util/PrivUtils.java (100%) rename {common/src => src}/main/resources/META-INF/services/org.pmw.tinylog.writers (100%) rename {fabric/src => src}/main/resources/fabric.mod.json (91%) rename {common/src => src}/main/resources/fluxapi.mixins.json (100%) rename {common/src => src}/main/resources/tinylog.properties (100%) diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 5dc9dc9..3e9bd07 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -9,9 +9,6 @@ diff --git a/fabric/build.gradle.kts b/build.gradle.kts similarity index 97% rename from fabric/build.gradle.kts rename to build.gradle.kts index 89e9b1b..b92fd7b 100644 --- a/fabric/build.gradle.kts +++ b/build.gradle.kts @@ -2,7 +2,7 @@ import de.undercouch.gradle.tasks.download.Download import java.net.URI object Properties { - const val MOD_VERSION = "0.3.4" + const val MOD_VERSION = "0.4.0" const val MOD_NAME = "FluxAPI" const val MODID = "fluxapi" const val MAVEN_GROUP = "dev.crmodders.flux" @@ -71,10 +71,11 @@ dependencies { // Embedded | Project Dependencies dependencies { + shadow("net.fabricmc:sponge-mixin:0.12.5+mixin.0.8.5") + + implementation("org.hjson:hjson:3.1.0") implementation("org.tinylog:tinylog:1.3.1") implementation("com.github.tobiasrm:tinylog-coloredconsole:1.3.1") - - implementation(project(":common")) } base { @@ -138,7 +139,6 @@ tasks.processResources { tasks.register("SetupWorkEnviornment") { group = "crmodders" - dependsOn("downloadCosmicReach") dependsOn("downloadLoader") } diff --git a/common/build.gradle.kts b/common/build.gradle.kts deleted file mode 100644 index b0a4777..0000000 --- a/common/build.gradle.kts +++ /dev/null @@ -1,60 +0,0 @@ -import java.net.URI - -plugins { - id("java") - id("de.undercouch.download") version "5.6.0" - id("com.github.johnrengelman.shadow") version "8.1.1" - id("maven-publish") -} - -object Properties { - const val MOD_VERSION = "0.3.4" - const val MOD_NAME = "FluxAPI" - const val MOD_ID = "fluxapi" - const val MAVEN_GROUP = "dev.crmodders.flux" - const val COSMIC_REACH_VERSION = "0.1.14" - const val LOADER_VERSION = "0.15.7" - const val COSMIC_QUILT_VERSION = "0.1.5" -} - -repositories { - mavenCentral() - - maven("https://jitpack.io") - maven("https://repo.spongepowered.org/maven/") - maven("https://maven.fabricmc.net/") - maven("https://maven.quiltmc.org/repository/release") - - ivy { - name = "Cosmic Reach" - url = URI("https://cosmic-archive.netlify.app/") - patternLayout { - artifact("/Cosmic Reach-[revision].jar") - } - - metadataSources { - artifact() - } - - content { - includeGroup("finalforeach") - } - } -} - -val cosmicreach: Configuration by configurations.creating { - configurations.shadow.get().extendsFrom(this) -} - -dependencies { - cosmicreach("finalforeach:cosmicreach:${Properties.COSMIC_REACH_VERSION}") - shadow("net.fabricmc:sponge-mixin:0.12.5+mixin.0.8.5") - - implementation("org.hjson:hjson:3.1.0") - implementation("org.tinylog:tinylog:1.3.1") - implementation("com.github.tobiasrm:tinylog-coloredconsole:1.3.1") -} - -tasks.test { - useJUnitPlatform() -} \ No newline at end of file diff --git a/common/src/main/java/dev/crmodders/flux/FluxConstants.java b/common/src/main/java/dev/crmodders/flux/FluxConstants.java deleted file mode 100644 index 4e3a2cb..0000000 --- a/common/src/main/java/dev/crmodders/flux/FluxConstants.java +++ /dev/null @@ -1,21 +0,0 @@ -package dev.crmodders.flux; - -import dev.crmodders.flux.api.block.TestBlock; -import dev.crmodders.flux.registry.StableRegistries; -import dev.crmodders.flux.tags.Identifier; -import org.pmw.tinylog.Logger; - -public class FluxConstants { - public static boolean GameHasLoaded; - - public static final String MOD_ID = "fluxapi"; - public static final String ASSET_KEY = "¬¬$^$^¬¬"; - - static { - StableRegistries.BLOCKS.register( - new Identifier(MOD_ID, "test"), - new TestBlock() - ); - } - -} diff --git a/common/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java b/common/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java deleted file mode 100644 index 58b1902..0000000 --- a/common/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java +++ /dev/null @@ -1,89 +0,0 @@ -package dev.crmodders.flux.menus; - -import com.badlogic.gdx.Gdx; -import com.badlogic.gdx.graphics.Color; -import com.badlogic.gdx.math.Vector2; -import com.badlogic.gdx.utils.ScreenUtils; -import finalforeach.cosmicreach.RuntimeInfo; -import finalforeach.cosmicreach.gamestates.GameState; -import finalforeach.cosmicreach.settings.Controls; -import finalforeach.cosmicreach.ui.FontRenderer; -import finalforeach.cosmicreach.ui.HorizontalAnchor; -import finalforeach.cosmicreach.ui.UIElement; -import finalforeach.cosmicreach.ui.VerticalAnchor; -import dev.crmodders.flux.api.gui.TextElement; - -public class BasicMainMenu extends GameState { - - @Override - public void create() { - super.create(); - } - - public void addUIElement(String name, UIElement element) { - element.setText(name); - element.show(); - this.uiElements.add(element); - } - - public void addTextElement(int x, int y, int fontSize, String name, boolean DoStripes) { - TextElement element = new TextElement(x, y, name, fontSize, DoStripes); - element.show(); - this.uiElements.add(element); - } - - public void render(float partTick) { - super.render(partTick); - ScreenUtils.clear(0.0F, 0.0F, 0.0F, 1.0F, true); - Gdx.gl.glEnable(2929); - Gdx.gl.glDepthFunc(513); - Gdx.gl.glEnable(2884); - Gdx.gl.glCullFace(1029); - Gdx.gl.glEnable(3042); - Gdx.gl.glBlendFunc(770, 771); - batch.setProjectionMatrix(this.uiCamera.combined); - batch.begin(); - float scale = 4.0F; - float logoW = 192.0F; - float logoH = 64.0F; - float logoX = -scale * logoW / 2.0F; - float logoY = -this.uiViewport.getWorldHeight() / 2.0F; - Vector2 promoTextDim = new Vector2(); - float y = -8.0F; - String promoText = "Watch the devlogs at youtube.com/@finalforeach"; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - String macWarning; - if (Controls.controllers.size > 0) { - macWarning = Controls.controllers.size == 1 ? "Controller" : "Controllers"; - String controllerWarning = macWarning + " detected!\nController support is incomplete now,\nand will be improved in later updates."; - FontRenderer.drawText(batch, this.uiViewport, controllerWarning, 8.0F, y, HorizontalAnchor.LEFT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - } - - if (RuntimeInfo.isMac()) { - macWarning = "WARNING: Mac is not supported at this time. The game is unlikely to work."; - FontRenderer.drawText(batch, this.uiViewport, macWarning, 8.0F, y, HorizontalAnchor.CENTERED, VerticalAnchor.CENTERED); - } - - y -= promoTextDim.y + 2.0F; - promoText = "finalforeach.com"; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - y -= promoTextDim.y; - promoText = "Cosmic Reach Version Pre-alpha-" + RuntimeInfo.version; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - float var10000 = y - promoTextDim.y; - batch.end(); - this.drawUIElements(); - } -} diff --git a/common/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java b/common/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java deleted file mode 100644 index 6d3498d..0000000 --- a/common/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java +++ /dev/null @@ -1,125 +0,0 @@ -package dev.crmodders.flux.menus; - -import com.badlogic.gdx.Gdx; -import com.badlogic.gdx.graphics.Color; -import com.badlogic.gdx.math.Vector2; -import com.badlogic.gdx.utils.ScreenUtils; -import finalforeach.cosmicreach.RuntimeInfo; -import finalforeach.cosmicreach.gamestates.GameState; -import finalforeach.cosmicreach.settings.Controls; -import finalforeach.cosmicreach.ui.FontRenderer; -import finalforeach.cosmicreach.ui.HorizontalAnchor; -import finalforeach.cosmicreach.ui.UIElement; -import finalforeach.cosmicreach.ui.VerticalAnchor; -import dev.crmodders.flux.api.config.BasicConfig; -import org.pmw.tinylog.Logger; - -import java.awt.*; -import java.io.File; -import java.io.IOException; -import java.util.Objects; - -public class ConfigViewMenu extends BasicMainMenu { - - GameState lastState; - - public ConfigViewMenu(GameState lastState) { - this.lastState = lastState; - } - - @Override - public void create() { - super.create(); - - addTextElement(0, -200, 4, "Config Menu", false); - addUIElement("Back", new UIElement(0, -100, 250, 25) { - @Override - public void onClick() { - super.onClick(); - GameState.switchToGameState(lastState); - } - }); - Logger.info(BasicConfig.configDir); - int vheight = -65; - for (File file : Objects.requireNonNull(new File(BasicConfig.configDir).listFiles())) { - if (file.getName().contains(".hjson")) { - addUIElement(file.getName().split("\\.")[0], new UIElement(0, vheight, 250, 25) { - @Override - public void onClick() { - super.onClick(); - try { - if (System.getProperty("os.name").toLowerCase().contains("windows")) { - String cmd = "rundll32 url.dll,FileProtocolHandler " + file.getCanonicalPath(); - Runtime.getRuntime().exec(cmd); - } - else { - Desktop.getDesktop().edit(file); - } - } catch (IOException e) { - throw new RuntimeException(e); - } - } - }); - - vheight += 30; - } - } - - } - - public void render(float partTick) { - super.render(partTick); - ScreenUtils.clear(0.0F, 0.0F, 0.0F, 1.0F, true); - Gdx.gl.glEnable(2929); - Gdx.gl.glDepthFunc(513); - Gdx.gl.glEnable(2884); - Gdx.gl.glCullFace(1029); - Gdx.gl.glEnable(3042); - Gdx.gl.glBlendFunc(770, 771); - batch.setProjectionMatrix(this.uiCamera.combined); - batch.begin(); - float scale = 4.0F; - float logoW = 192.0F; - float logoH = 64.0F; - float logoX = -scale * logoW / 2.0F; - float logoY = -this.uiViewport.getWorldHeight() / 2.0F; -// batch.draw(textLogo, logoX, logoY, 0.0F, 0.0F, logoW, logoH, scale, scale, 0.0F, 0, 0, textLogo.getWidth(), textLogo.getHeight(), false, true); - Vector2 promoTextDim = new Vector2(); - float y = -8.0F; - String promoText = "Watch the devlogs at youtube.com/@finalforeach"; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - String macWarning; - if (Controls.controllers.size > 0) { - macWarning = Controls.controllers.size == 1 ? "Controller" : "Controllers"; - String controllerWarning = macWarning + " detected!\nController support is incomplete now,\nand will be improved in later updates."; - FontRenderer.drawText(batch, this.uiViewport, controllerWarning, 8.0F, y, HorizontalAnchor.LEFT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - } - - if (RuntimeInfo.isMac()) { - macWarning = "WARNING: Mac is not supported at this time. The game is unlikely to work."; - FontRenderer.drawText(batch, this.uiViewport, macWarning, 8.0F, y, HorizontalAnchor.CENTERED, VerticalAnchor.CENTERED); - } - - y -= promoTextDim.y + 2.0F; - promoText = "finalforeach.com"; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - y -= promoTextDim.y; - promoText = "Cosmic Reach Version Pre-alpha-" + RuntimeInfo.version; - FontRenderer.getTextDimensions(this.uiViewport, promoText, promoTextDim); - batch.setColor(Color.GRAY); - FontRenderer.drawText(batch, this.uiViewport, promoText, -7.0F, y + 1.0F, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - batch.setColor(Color.WHITE); - FontRenderer.drawText(batch, this.uiViewport, promoText, -8.0F, y, HorizontalAnchor.RIGHT_ALIGNED, VerticalAnchor.BOTTOM_ALIGNED); - float var10000 = y - promoTextDim.y; - batch.end(); - this.drawUIElements(); - } -} diff --git a/jitpack.yml b/jitpack.yml new file mode 100644 index 0000000..1e41e00 --- /dev/null +++ b/jitpack.yml @@ -0,0 +1,2 @@ +jdk: + - openjdk17 \ No newline at end of file diff --git a/quilt/build.gradle.kts b/quilt/build.gradle.kts deleted file mode 100644 index 8c2500e..0000000 --- a/quilt/build.gradle.kts +++ /dev/null @@ -1,119 +0,0 @@ -plugins { - id("java-library") - id("application") - id("maven-publish") - id("com.github.johnrengelman.shadow") version "8.1.1" -} - -repositories { - ivy { - name = "Cosmic Reach" - url = uri("https://cosmic-archive.netlify.app/") - patternLayout { - artifact("/Cosmic Reach-[revision].jar") - } - - metadataSources { - artifact() - } - - content { - includeGroup("finalforeach") - } - } - - maven("https://jitpack.io") - maven("https://maven.quiltmc.org/repository/release") - maven("https://maven.fabricmc.net/") - maven("https://repo.spongepowered.org/maven/") - - mavenCentral() -} - -val cosmicreach: Configuration by configurations.creating { - configurations.shadow.get().extendsFrom(this) -} - -val quiltMod: Configuration by configurations.creating { - configurations.shadow.get().extendsFrom(this) -} - -dependencies { - cosmicreach("finalforeach:cosmicreach:${project.properties["cosmic_reach_version"].toString()}") - quiltMod("org.codeberg.CRModders:cosmic-quilt:${project.properties["cosmic_quilt_version"].toString()}") - - implementation(project(":common")) - implementation("org.hjson:hjson:3.1.0") - implementation("org.tinylog:tinylog:1.3.1") - implementation("com.github.tobiasrm:tinylog-coloredconsole:1.3.1") -} - -base { - archivesName = "${properties["mod_name"]}" - version = "${properties["mod_name"]}" -} - - -tasks.processResources { - val resourceTargets = listOf("quilt.mod.json") - - val replaceProperties = mutableMapOf( - "mod_version" to project.version, - "mod_group" to project.group, - "mod_name" to project.name, - "mod_id" to project.properties["id"].toString(), - ) - - inputs.properties(replaceProperties) - replaceProperties["project"] = project - filesMatching(resourceTargets) { - expand(replaceProperties) - } -} - -fun getQuiltModLocations(config: Configuration): String { - val sb = StringBuilder(); - for (obj in config.allDependencies) { - sb.append(File.pathSeparator + config.files(obj).first()) - } - return sb.toString() -} - -var jarFile = tasks.named("shadowJar").flatMap { jar -> jar.archiveFile }.get().asFile -println("Mod JAR File: `$jarFile'") -val defaultArgs = listOf( - "-Dloader.skipMcProvider=true", - "-Dloader.gameJarPath=${cosmicreach.asPath}", // Defines path to Cosmic Reach - "-Dloader.addMods=$jarFile${getQuiltModLocations(quiltMod)}" // Add the jar of this project -) - -application { - mainClass = "org.quiltmc.loader.impl.launch.knot.KnotClient" - applicationDefaultJvmArgs = defaultArgs -} - -tasks.runShadow.configure { - val runDir = File("run/") - if (!runDir.exists()) - runDir.mkdirs() - workingDir = runDir -} - -tasks.register("runClient") { - group = "crmodders" - - dependsOn("runShadow") -} - -java { - withSourcesJar() - // withJavadocJar() // If docs are included with the project, this line can be un-commented -} - -sourceSets { - main { - java { - srcDir("src/main/java") - } - } -} \ No newline at end of file diff --git a/quilt/gradle.properties b/quilt/gradle.properties deleted file mode 100644 index 2e5b950..0000000 --- a/quilt/gradle.properties +++ /dev/null @@ -1,14 +0,0 @@ -# Gradle stuff -org.gradle.jvmargs=-Xmx4096M -org.gradle.parallel=true -org.gradle.caching=true - -# Project Info -version=0.3.5 -group=dev.crmodders.flux -id=fluxapi -mod_name=Flux API - -# Dependency Versions -cosmic_reach_version=0.1.14 -cosmic_quilt_version=1.1.5 diff --git a/quilt/src/main/java/dev/crmodders/flux/FluxAPIQuilt.java b/quilt/src/main/java/dev/crmodders/flux/FluxAPIQuilt.java deleted file mode 100644 index ebdbb8a..0000000 --- a/quilt/src/main/java/dev/crmodders/flux/FluxAPIQuilt.java +++ /dev/null @@ -1,16 +0,0 @@ -package dev.crmodders.flux; - -import dev.crmodders.flux.tags.Identifier; -import dev.crmodders.flux.util.BlockBuilderUtils; -import org.coolcosmos.cosmicquilt.api.entrypoint.ModInitializer; -import org.pmw.tinylog.Logger; -import org.quiltmc.loader.api.ModContainer; - -public class FluxAPIQuilt implements ModInitializer { - - @Override - public void onInitialize(ModContainer mod) { - Logger.info("Flux Quilt Initialized"); - } - -} diff --git a/quilt/src/main/resources/quilt.mod.json b/quilt/src/main/resources/quilt.mod.json deleted file mode 100644 index f915b28..0000000 --- a/quilt/src/main/resources/quilt.mod.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "schema_version": 1, - - "quilt_loader": { - "group": "mod_group", - "id": "${mod_id}", - "version": "${mod_version}", - "intermediate_mappings":"net.fabricmc:intermediary", - - "metadata": { - "name": "${mod_name}", - "description": "An Extremely Capable Fabric Api Mod For Cosmic Reach", - "contributors": { - "Your name here": "Owner" - }, - "contact": { - "homepage": "https://crmodders.dev/", - "issues": "https://github.com/CRModders/FluxAPI/issues", - "sources": "https://github.com/CRModders/FluxAPI" - }, - "icon": "assets/${mod_id}/icon.png" - }, - - "entrypoints": { - "init": "dev.crmodders.flux.FluxAPIQuilt" - }, - - "depends": [ - { - "id": "cosmic_quilt", - "versions": "*" - }, - { - "id": "cosmic_reach", - "versions": "*" - } - ] - }, - "mixin": "fluxapi.mixins.json" -} \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts index 48b8413..e69de29 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1 +0,0 @@ -include("fabric", "quilt", "common") diff --git a/fabric/src/main/java/dev/crmodders/flux/FluxAPIFabric.java b/src/main/java/dev/crmodders/flux/FluxAPI.java similarity index 78% rename from fabric/src/main/java/dev/crmodders/flux/FluxAPIFabric.java rename to src/main/java/dev/crmodders/flux/FluxAPI.java index fbac0ec..ecbdca4 100644 --- a/fabric/src/main/java/dev/crmodders/flux/FluxAPIFabric.java +++ b/src/main/java/dev/crmodders/flux/FluxAPI.java @@ -3,7 +3,7 @@ import net.fabricmc.api.ModInitializer; import org.pmw.tinylog.Logger; -public class FluxAPIFabric implements ModInitializer { +public class FluxAPI implements ModInitializer { @Override public void onInitialize() { diff --git a/src/main/java/dev/crmodders/flux/FluxConstants.java b/src/main/java/dev/crmodders/flux/FluxConstants.java new file mode 100644 index 0000000..b92865d --- /dev/null +++ b/src/main/java/dev/crmodders/flux/FluxConstants.java @@ -0,0 +1,9 @@ +package dev.crmodders.flux; + +public class FluxConstants { + public static boolean GameHasLoaded; + + public static final String MOD_ID = "fluxapi"; + public static final String ASSET_KEY = "¬¬$^$^¬¬"; + +} diff --git a/common/src/main/java/dev/crmodders/flux/api/block/IFunctionalBlock.java b/src/main/java/dev/crmodders/flux/api/block/IFunctionalBlock.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/block/IFunctionalBlock.java rename to src/main/java/dev/crmodders/flux/api/block/IFunctionalBlock.java diff --git a/common/src/main/java/dev/crmodders/flux/api/block/IModBlock.java b/src/main/java/dev/crmodders/flux/api/block/IModBlock.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/block/IModBlock.java rename to src/main/java/dev/crmodders/flux/api/block/IModBlock.java diff --git a/common/src/main/java/dev/crmodders/flux/api/block/TestBlock.java b/src/main/java/dev/crmodders/flux/api/block/TestBlock.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/block/TestBlock.java rename to src/main/java/dev/crmodders/flux/api/block/TestBlock.java diff --git a/common/src/main/java/dev/crmodders/flux/api/config/BasicConfig.java b/src/main/java/dev/crmodders/flux/api/config/BasicConfig.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/config/BasicConfig.java rename to src/main/java/dev/crmodders/flux/api/config/BasicConfig.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/ArrayBackedEvent.java b/src/main/java/dev/crmodders/flux/api/events/ArrayBackedEvent.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/ArrayBackedEvent.java rename to src/main/java/dev/crmodders/flux/api/events/ArrayBackedEvent.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/Event.java b/src/main/java/dev/crmodders/flux/api/events/Event.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/Event.java rename to src/main/java/dev/crmodders/flux/api/events/Event.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/EventData.java b/src/main/java/dev/crmodders/flux/api/events/EventData.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/EventData.java rename to src/main/java/dev/crmodders/flux/api/events/EventData.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/EventFactory.java b/src/main/java/dev/crmodders/flux/api/events/EventFactory.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/EventFactory.java rename to src/main/java/dev/crmodders/flux/api/events/EventFactory.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/blocks/BlockEvents.java b/src/main/java/dev/crmodders/flux/api/events/blocks/BlockEvents.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/blocks/BlockEvents.java rename to src/main/java/dev/crmodders/flux/api/events/blocks/BlockEvents.java diff --git a/common/src/main/java/dev/crmodders/flux/api/events/gamestate/GameStateEvents.java b/src/main/java/dev/crmodders/flux/api/events/gamestate/GameStateEvents.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/events/gamestate/GameStateEvents.java rename to src/main/java/dev/crmodders/flux/api/events/gamestate/GameStateEvents.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/BlockEventGenerator.java b/src/main/java/dev/crmodders/flux/api/generators/BlockEventGenerator.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/BlockEventGenerator.java rename to src/main/java/dev/crmodders/flux/api/generators/BlockEventGenerator.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/BlockGenerator.java b/src/main/java/dev/crmodders/flux/api/generators/BlockGenerator.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/BlockGenerator.java rename to src/main/java/dev/crmodders/flux/api/generators/BlockGenerator.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/BlockStateGenerator.java b/src/main/java/dev/crmodders/flux/api/generators/BlockStateGenerator.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/BlockStateGenerator.java rename to src/main/java/dev/crmodders/flux/api/generators/BlockStateGenerator.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/DataJson.java b/src/main/java/dev/crmodders/flux/api/generators/data/DataJson.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/DataJson.java rename to src/main/java/dev/crmodders/flux/api/generators/data/DataJson.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventData.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventData.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventData.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventData.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventDataExt.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventDataExt.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventDataExt.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventDataExt.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventType.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventType.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventType.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockevent/BlockEventType.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerData.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerData.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerData.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerData.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerEventData.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerEventData.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerEventData.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockevent/triggers/TriggerEventData.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateData.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateData.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateData.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateData.java diff --git a/common/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateDataExt.java b/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateDataExt.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateDataExt.java rename to src/main/java/dev/crmodders/flux/api/generators/data/blockstate/BlockStateDataExt.java diff --git a/common/src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java b/src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java similarity index 99% rename from common/src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java rename to src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java index 47c7fb6..c9f8a34 100644 --- a/common/src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java +++ b/src/main/java/dev/crmodders/flux/api/gui/CustomFontRenderer.java @@ -184,7 +184,6 @@ private Texture resize(Texture oldTexture, int size, boolean stripes) { } } } - Logger.info(String.valueOf(oldPix.getWidth() * size)); return new Texture(newPix); } diff --git a/common/src/main/java/dev/crmodders/flux/api/gui/TextElement.java b/src/main/java/dev/crmodders/flux/api/gui/TextElement.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/gui/TextElement.java rename to src/main/java/dev/crmodders/flux/api/gui/TextElement.java diff --git a/common/src/main/java/dev/crmodders/flux/api/resource/AssetLoader.java b/src/main/java/dev/crmodders/flux/api/resource/AssetLoader.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/resource/AssetLoader.java rename to src/main/java/dev/crmodders/flux/api/resource/AssetLoader.java diff --git a/common/src/main/java/dev/crmodders/flux/api/resource/ResourceLocation.java b/src/main/java/dev/crmodders/flux/api/resource/ResourceLocation.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/resource/ResourceLocation.java rename to src/main/java/dev/crmodders/flux/api/resource/ResourceLocation.java diff --git a/common/src/main/java/dev/crmodders/flux/api/resource/ResourceObject.java b/src/main/java/dev/crmodders/flux/api/resource/ResourceObject.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/resource/ResourceObject.java rename to src/main/java/dev/crmodders/flux/api/resource/ResourceObject.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/DoubleInputSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/DoubleInputSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/DoubleInputSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/DoubleInputSupplier.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/ExecutionSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/ExecutionSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/ExecutionSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/ExecutionSupplier.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/InputSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/InputSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/InputSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/InputSupplier.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableDoubleInputSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableDoubleInputSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableDoubleInputSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/ReturnableDoubleInputSupplier.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableInputSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableInputSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableInputSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/ReturnableInputSupplier.java diff --git a/common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableSupplier.java b/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableSupplier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/api/suppliers/ReturnableSupplier.java rename to src/main/java/dev/crmodders/flux/api/suppliers/ReturnableSupplier.java diff --git a/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java b/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java new file mode 100644 index 0000000..07d5a48 --- /dev/null +++ b/src/main/java/dev/crmodders/flux/menus/BasicMainMenu.java @@ -0,0 +1,47 @@ +package dev.crmodders.flux.menus; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.math.Vector2; +import com.badlogic.gdx.utils.ScreenUtils; +import finalforeach.cosmicreach.RuntimeInfo; +import finalforeach.cosmicreach.gamestates.GameState; +import finalforeach.cosmicreach.settings.Controls; +import finalforeach.cosmicreach.ui.FontRenderer; +import finalforeach.cosmicreach.ui.HorizontalAnchor; +import finalforeach.cosmicreach.ui.UIElement; +import finalforeach.cosmicreach.ui.VerticalAnchor; +import dev.crmodders.flux.api.gui.TextElement; + +public class BasicMainMenu extends GameState { + + @Override + public void create() { + super.create(); + } + + public void addUIElement(String name, UIElement element) { + element.setText(name); + element.show(); + this.uiElements.add(element); + } + + public void addTextElement(int x, int y, int fontSize, String name, boolean DoStripes) { + TextElement element = new TextElement(x, y, name, fontSize, DoStripes); + element.show(); + this.uiElements.add(element); + } + + @Override + public void render(float partTick) { + super.render(partTick); + ScreenUtils.clear(0.0F, 0.0F, 0.0F, 1.0F, true); + Gdx.gl.glEnable(2929); + Gdx.gl.glDepthFunc(513); + Gdx.gl.glEnable(2884); + Gdx.gl.glCullFace(1029); + Gdx.gl.glEnable(3042); + Gdx.gl.glBlendFunc(770, 771); + this.drawUIElements(); + } +} diff --git a/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java b/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java new file mode 100644 index 0000000..2be2bbd --- /dev/null +++ b/src/main/java/dev/crmodders/flux/menus/ConfigViewMenu.java @@ -0,0 +1,71 @@ +package dev.crmodders.flux.menus; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.math.Vector2; +import com.badlogic.gdx.utils.ScreenUtils; +import finalforeach.cosmicreach.RuntimeInfo; +import finalforeach.cosmicreach.gamestates.GameState; +import finalforeach.cosmicreach.gamestates.WorldSelectionMenu; +import finalforeach.cosmicreach.settings.Controls; +import finalforeach.cosmicreach.ui.FontRenderer; +import finalforeach.cosmicreach.ui.HorizontalAnchor; +import finalforeach.cosmicreach.ui.UIElement; +import finalforeach.cosmicreach.ui.VerticalAnchor; +import dev.crmodders.flux.api.config.BasicConfig; +import org.pmw.tinylog.Logger; + +import java.awt.*; +import java.io.File; +import java.io.IOException; +import java.util.Objects; + +public class ConfigViewMenu extends BasicMainMenu { + + GameState lastState; + + public ConfigViewMenu(GameState lastState) { + this.lastState = lastState; + } + + @Override + public void create() { + super.create(); + + addTextElement(0, -200, 4, "Config Menu", false); + addUIElement("Back", new UIElement(0, -100, 250, 25) { + @Override + public void onClick() { + super.onClick(); + GameState.switchToGameState(lastState); + } + }); + if (!new File(BasicConfig.configDir).exists()) new File(BasicConfig.configDir).mkdirs(); + + int vheight = -65; + for (File file : Objects.requireNonNull(new File(BasicConfig.configDir).listFiles())) { + if (file.getName().contains(".hjson")) { + addUIElement(file.getName().split("\\.")[0], new UIElement(0, vheight, 250, 25) { + @Override + public void onClick() { + super.onClick(); + try { + if (System.getProperty("os.name").toLowerCase().contains("windows")) { + String cmd = "rundll32 url.dll,FileProtocolHandler " + file.getCanonicalPath(); + Runtime.getRuntime().exec(cmd); + } + else { + Desktop.getDesktop().edit(file); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + } + }); + + vheight += 30; + } + } + + } +} diff --git a/common/src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java b/src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java similarity index 95% rename from common/src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java rename to src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java index 45f2c68..17b2ef6 100644 --- a/common/src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java +++ b/src/main/java/dev/crmodders/flux/mixins/assets/AssetLoaderMixin.java @@ -1,10 +1,7 @@ package dev.crmodders.flux.mixins.assets; -import com.badlogic.gdx.Files; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; -import dev.crmodders.flux.FluxConstants; -import dev.crmodders.flux.api.resource.ResourceLocation; import dev.crmodders.flux.tags.Identifier; import finalforeach.cosmicreach.GameAssetLoader; import finalforeach.cosmicreach.io.SaveLocation; diff --git a/common/src/main/java/dev/crmodders/flux/mixins/assets/BlockEventsMixin.java b/src/main/java/dev/crmodders/flux/mixins/assets/BlockEventsMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/assets/BlockEventsMixin.java rename to src/main/java/dev/crmodders/flux/mixins/assets/BlockEventsMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/assets/BlockModelJsonMixin.java b/src/main/java/dev/crmodders/flux/mixins/assets/BlockModelJsonMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/assets/BlockModelJsonMixin.java rename to src/main/java/dev/crmodders/flux/mixins/assets/BlockModelJsonMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/events/BlockSelectionMixin.java b/src/main/java/dev/crmodders/flux/mixins/events/BlockSelectionMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/events/BlockSelectionMixin.java rename to src/main/java/dev/crmodders/flux/mixins/events/BlockSelectionMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/events/GameStateMixin.java b/src/main/java/dev/crmodders/flux/mixins/events/GameStateMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/events/GameStateMixin.java rename to src/main/java/dev/crmodders/flux/mixins/events/GameStateMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java b/src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java similarity index 87% rename from common/src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java rename to src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java index 0f994c5..0239d0c 100644 --- a/common/src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java +++ b/src/main/java/dev/crmodders/flux/mixins/gamestate/MainMenuMixin.java @@ -14,13 +14,13 @@ public class MainMenuMixin extends GameState { @Inject(method = "create", at = @At("TAIL")) public void create(CallbackInfo ci) { - UIElement configButton = new UIElement(310.0F, 150.0F, 50.0F, 50.0F) { + UIElement configButton = new UIElement(350.0F, 150.0F, 130.0F, 50.0F) { public void onClick() { super.onClick(); GameState.switchToGameState(new ConfigViewMenu(currentGameState)); } }; - configButton.setText("Flux"); + configButton.setText("Mod Configs"); configButton.show(); this.uiElements.add(configButton); } diff --git a/common/src/main/java/dev/crmodders/flux/mixins/logging/BlockGameMixin.java b/src/main/java/dev/crmodders/flux/mixins/logging/BlockGameMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/logging/BlockGameMixin.java rename to src/main/java/dev/crmodders/flux/mixins/logging/BlockGameMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/logging/GameShaderMixin.java b/src/main/java/dev/crmodders/flux/mixins/logging/GameShaderMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/logging/GameShaderMixin.java rename to src/main/java/dev/crmodders/flux/mixins/logging/GameShaderMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/logging/GameStateMixin.java b/src/main/java/dev/crmodders/flux/mixins/logging/GameStateMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/logging/GameStateMixin.java rename to src/main/java/dev/crmodders/flux/mixins/logging/GameStateMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/logging/LLwjgl3ApplicationLoggerMixin.java b/src/main/java/dev/crmodders/flux/mixins/logging/LLwjgl3ApplicationLoggerMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/logging/LLwjgl3ApplicationLoggerMixin.java rename to src/main/java/dev/crmodders/flux/mixins/logging/LLwjgl3ApplicationLoggerMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/registry/RegistryRegisterer.java b/src/main/java/dev/crmodders/flux/mixins/registry/RegistryRegisterer.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/registry/RegistryRegisterer.java rename to src/main/java/dev/crmodders/flux/mixins/registry/RegistryRegisterer.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/ChunkShaderMixin.java b/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/ChunkShaderMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/ChunkShaderMixin.java rename to src/main/java/dev/crmodders/flux/mixins/rendering/shaders/ChunkShaderMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/GameShaderMixin.java b/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/GameShaderMixin.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/mixins/rendering/shaders/GameShaderMixin.java rename to src/main/java/dev/crmodders/flux/mixins/rendering/shaders/GameShaderMixin.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/ExperimentalRegistries.java b/src/main/java/dev/crmodders/flux/registry/ExperimentalRegistries.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/ExperimentalRegistries.java rename to src/main/java/dev/crmodders/flux/registry/ExperimentalRegistries.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/StableRegistries.java b/src/main/java/dev/crmodders/flux/registry/StableRegistries.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/StableRegistries.java rename to src/main/java/dev/crmodders/flux/registry/StableRegistries.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/AccessableRegistry.java b/src/main/java/dev/crmodders/flux/registry/registries/AccessableRegistry.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/AccessableRegistry.java rename to src/main/java/dev/crmodders/flux/registry/registries/AccessableRegistry.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/DynamicRegistry.java b/src/main/java/dev/crmodders/flux/registry/registries/DynamicRegistry.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/DynamicRegistry.java rename to src/main/java/dev/crmodders/flux/registry/registries/DynamicRegistry.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/FreezingRegistry.java b/src/main/java/dev/crmodders/flux/registry/registries/FreezingRegistry.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/FreezingRegistry.java rename to src/main/java/dev/crmodders/flux/registry/registries/FreezingRegistry.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/impl/DynamicRegistryImpl.java b/src/main/java/dev/crmodders/flux/registry/registries/impl/DynamicRegistryImpl.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/impl/DynamicRegistryImpl.java rename to src/main/java/dev/crmodders/flux/registry/registries/impl/DynamicRegistryImpl.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/impl/FreezingRegistryImpl.java b/src/main/java/dev/crmodders/flux/registry/registries/impl/FreezingRegistryImpl.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/impl/FreezingRegistryImpl.java rename to src/main/java/dev/crmodders/flux/registry/registries/impl/FreezingRegistryImpl.java diff --git a/common/src/main/java/dev/crmodders/flux/registry/registries/impl/RegistryObject.java b/src/main/java/dev/crmodders/flux/registry/registries/impl/RegistryObject.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/registry/registries/impl/RegistryObject.java rename to src/main/java/dev/crmodders/flux/registry/registries/impl/RegistryObject.java diff --git a/common/src/main/java/dev/crmodders/flux/tags/Identifier.java b/src/main/java/dev/crmodders/flux/tags/Identifier.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/tags/Identifier.java rename to src/main/java/dev/crmodders/flux/tags/Identifier.java diff --git a/common/src/main/java/dev/crmodders/flux/util/BlockBuilderUtils.java b/src/main/java/dev/crmodders/flux/util/BlockBuilderUtils.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/util/BlockBuilderUtils.java rename to src/main/java/dev/crmodders/flux/util/BlockBuilderUtils.java diff --git a/common/src/main/java/dev/crmodders/flux/util/BlockPositionUtil.java b/src/main/java/dev/crmodders/flux/util/BlockPositionUtil.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/util/BlockPositionUtil.java rename to src/main/java/dev/crmodders/flux/util/BlockPositionUtil.java diff --git a/common/src/main/java/dev/crmodders/flux/util/PrivUtils.java b/src/main/java/dev/crmodders/flux/util/PrivUtils.java similarity index 100% rename from common/src/main/java/dev/crmodders/flux/util/PrivUtils.java rename to src/main/java/dev/crmodders/flux/util/PrivUtils.java diff --git a/common/src/main/resources/META-INF/services/org.pmw.tinylog.writers b/src/main/resources/META-INF/services/org.pmw.tinylog.writers similarity index 100% rename from common/src/main/resources/META-INF/services/org.pmw.tinylog.writers rename to src/main/resources/META-INF/services/org.pmw.tinylog.writers diff --git a/fabric/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json similarity index 91% rename from fabric/src/main/resources/fabric.mod.json rename to src/main/resources/fabric.mod.json index 77d4005..b8f017a 100644 --- a/fabric/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -10,7 +10,7 @@ "environment": "*", "entrypoints": { "main": [ - "dev.crmodders.flux.FluxAPIFabric" + "dev.crmodders.flux.FluxAPI" ] }, "mixins": [ diff --git a/common/src/main/resources/fluxapi.mixins.json b/src/main/resources/fluxapi.mixins.json similarity index 100% rename from common/src/main/resources/fluxapi.mixins.json rename to src/main/resources/fluxapi.mixins.json diff --git a/common/src/main/resources/tinylog.properties b/src/main/resources/tinylog.properties similarity index 100% rename from common/src/main/resources/tinylog.properties rename to src/main/resources/tinylog.properties