[DEV] New Cloth Config GUIs, new nojang apis, and bug fixes
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
-def JDK = "21";
|
||||
-def majorMc = "1.21.2";
|
||||
-def modLoaders = "neoforge|fabric|quilt|paper";
|
||||
-def supportedMc = "1.21.3";
|
||||
-def supportedMc = "1.21.3|1.21.4";
|
||||
-def reltype = "port";
|
||||
+def JDK = "17";
|
||||
+def majorMc = "1.20.2";
|
||||
|
@@ -0,0 +1,14 @@
|
||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/ClothConfigScreenBuilder.java
|
||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/ClothConfigScreenBuilder.java
|
||||
@@ -390,9 +390,9 @@
|
||||
config.saveConfig(config);
|
||||
Files.deleteIfExists(backupPath);
|
||||
} catch (Exception e) {
|
||||
- Minecraft.getInstance().getToastManager().addToast(
|
||||
+ Minecraft.getInstance().getToasts().addToast(
|
||||
new SystemToast(
|
||||
- SystemToast.SystemToastId.PACK_LOAD_FAILURE,
|
||||
+ SystemToast.SystemToastIds.PACK_LOAD_FAILURE,
|
||||
Component.literal("Failed To Save Config"),
|
||||
Component.literal("Restoring Backup Copy. Check log for details"))
|
||||
);
|
@@ -1,6 +1,6 @@
|
||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java
|
||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/client/gui/config/CraterConfigScreen.java
|
||||
@@ -158,7 +158,7 @@
|
||||
@@ -159,7 +159,7 @@
|
||||
return new TextConfigOption<>(Objects::toString, BigDecimal::new);
|
||||
}
|
||||
if (value instanceof ResourceLocation) {
|
||||
@@ -9,7 +9,7 @@
|
||||
}
|
||||
if (isSubConfig) {
|
||||
return new SubConfigWidget<>(config, this, value);
|
||||
@@ -216,23 +216,24 @@
|
||||
@@ -217,23 +217,24 @@
|
||||
int maxY = this.height - BOTTOM;
|
||||
//RenderSystem.disableTexture();
|
||||
Tesselator tesselator = Tesselator.getInstance();
|
||||
@@ -51,7 +51,7 @@
|
||||
RenderSystem.disableBlend();
|
||||
//RenderSystem.enableTexture();
|
||||
}
|
||||
@@ -240,21 +241,22 @@
|
||||
@@ -241,21 +242,22 @@
|
||||
|
||||
private void renderShadow(PoseStack matrices) {
|
||||
Tesselator tesselator = Tesselator.getInstance();
|
||||
@@ -85,7 +85,7 @@
|
||||
//RenderSystem.enableTexture();
|
||||
RenderSystem.disableBlend();
|
||||
}
|
||||
@@ -265,15 +267,16 @@
|
||||
@@ -266,15 +268,16 @@
|
||||
|
||||
protected void overlayBackground(Matrix4f matrix, int minX, int minY, int maxX, int maxY, int red, int green, int blue, int startAlpha, int endAlpha) {
|
||||
Tesselator tesselator = Tesselator.getInstance();
|
||||
|
@@ -5,15 +5,15 @@
|
||||
stupidRemapArch("dev.ftb.mods:ftb-essentials:${ftb_essentials}")
|
||||
stupidRemapArch("dev.ftb.mods:ftb-ranks:${ftb_ranks}")
|
||||
-
|
||||
modImplementation("me.shedaniel.cloth:cloth-config-fabric:${cloth_config}")
|
||||
modImplementation "maven.modrinth:fabrictailor:${fabrictailor}"
|
||||
modImplementation "maven.modrinth:vanish:${vanish}"
|
||||
|
||||
@@ -116,8 +115,8 @@
|
||||
@@ -117,8 +116,8 @@
|
||||
setVersionType("release")
|
||||
setChangelog(rootProject.file("changelog.md"))
|
||||
setProjectVersion("${minecraft_version}-${project.version}")
|
||||
- setDisplayName("[FABRIC/QUILT 1.21.3] CraterLib - ${project.version}")
|
||||
- setGameVersions("1.21.3")
|
||||
- setDisplayName("[FABRIC/QUILT 1.21.3/4] CraterLib - ${project.version}")
|
||||
- setGameVersions("1.21.3", "1.21.4")
|
||||
+ setDisplayName("[FABRIC/QUILT 1.20.2] CraterLib - ${project.version}")
|
||||
+ setGameVersions("1.20.2")
|
||||
setLoaders("fabric", "quilt")
|
||||
|
@@ -10,9 +10,9 @@
|
||||
+ stupidRemapArch("dev.ftb.mods:ftb-essentials-forge:${ftb_essentials}")
|
||||
+ stupidRemapArch("dev.ftb.mods:ftb-ranks-forge:${ftb_ranks}")
|
||||
|
||||
// Do not edit or remove
|
||||
implementation project(":Common")
|
||||
@@ -107,8 +110,8 @@
|
||||
modImplementation("me.shedaniel.cloth:cloth-config-forge:${cloth_config}")
|
||||
|
||||
@@ -109,8 +112,8 @@
|
||||
setVersionType("release")
|
||||
setChangelog(rootProject.file("changelog.md"))
|
||||
setProjectVersion("${minecraft_version}-${project.version}")
|
||||
|
@@ -1,22 +1,45 @@
|
||||
--- a/Forge/src/main/java/com/hypherionmc/craterlib/mixin/ConfigScreenHandlerMixin.java
|
||||
+++ b/Forge/src/main/java/com/hypherionmc/craterlib/mixin/ConfigScreenHandlerMixin.java
|
||||
@@ -1,6 +1,7 @@
|
||||
@@ -1,9 +1,12 @@
|
||||
package com.hypherionmc.craterlib.mixin;
|
||||
|
||||
+import com.hypherionmc.craterlib.client.gui.config.ClothConfigScreenBuilder;
|
||||
import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||
+import com.hypherionmc.craterlib.core.config.AbstractConfig;
|
||||
import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||
import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||
+import com.hypherionmc.craterlib.core.config.annotations.ClothScreen;
|
||||
import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
||||
@@ -28,9 +29,9 @@
|
||||
+import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.screens.Screen;
|
||||
import net.minecraftforge.client.ConfigScreenHandler;
|
||||
@@ -28,17 +31,22 @@
|
||||
*/
|
||||
@Inject(at = @At("RETURN"), method = "getScreenFactoryFor", cancellable = true, remap = false)
|
||||
private static void injectConfigScreen(IModInfo selectedMod, CallbackInfoReturnable<Optional<BiFunction<Minecraft, Screen, Screen>>> cir) {
|
||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||
+ ConfigController.getWatchedConfigs().forEach((conf, watcher) -> {
|
||||
if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||
- ModuleConfig config = (ModuleConfig) conf;
|
||||
+ AbstractConfig config = watcher.getLeft();
|
||||
if (config.getModId().equals(selectedMod.getModId())) {
|
||||
cir.setReturnValue(
|
||||
Optional.of((minecraft, screen) -> new CraterConfigScreen(config, screen))
|
||||
AbstractConfig config = watcher.getLeft();
|
||||
if (config.getClass().isAnnotationPresent(NoConfigScreen.class))
|
||||
return;
|
||||
|
||||
- if (watcher.getLeft().getClass().isAnnotationPresent(ClothScreen.class) && (ModloaderEnvironment.INSTANCE.isModLoaded("cloth_config") || ModloaderEnvironment.INSTANCE.isModLoaded("cloth-config") || ModloaderEnvironment.INSTANCE.isModLoaded("clothconfig"))) {
|
||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> ClothConfigScreenBuilder.buildConfigScreen(config, screen))));
|
||||
- } else {
|
||||
- //ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||
+ if (config.getModId().equals(selectedMod.getModId())) {
|
||||
+ if (watcher.getLeft().getClass().isAnnotationPresent(ClothScreen.class) && ModloaderEnvironment.INSTANCE.isModLoaded("cloth_config")) {
|
||||
+ cir.setReturnValue(
|
||||
+ Optional.of((minecraft, screen) -> ClothConfigScreenBuilder.buildConfigScreen(config, screen))
|
||||
+ );
|
||||
+ } else {
|
||||
+ cir.setReturnValue(
|
||||
+ Optional.of((minecraft, screen) -> new CraterConfigScreen(config, screen))
|
||||
+ );
|
||||
+ }
|
||||
}
|
||||
});
|
||||
}
|
||||
-
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
--- a/NeoForge/build.gradle
|
||||
+++ /dev/null
|
||||
@@ -1,123 +1,0 @@
|
||||
@@ -1,133 +1,0 @@
|
||||
-archivesBaseName = "${mod_name.replace(" ", "")}-NeoForge-${minecraft_version}"
|
||||
-
|
||||
-dependencies {
|
||||
@@ -10,6 +10,8 @@
|
||||
- stupidRemapArch("dev.ftb.mods:ftb-essentials-neoforge:${ftb_essentials}")
|
||||
- stupidRemapArch("dev.ftb.mods:ftb-ranks-neoforge:${ftb_ranks}")
|
||||
-
|
||||
- modImplementation("me.shedaniel.cloth:cloth-config-neoforge:${cloth_config}")
|
||||
-
|
||||
- // Do not edit or remove
|
||||
- implementation project(":Common")
|
||||
-}
|
||||
@@ -117,10 +119,18 @@
|
||||
- setVersionType("release")
|
||||
- setChangelog(rootProject.file("changelog.md"))
|
||||
- setProjectVersion("${minecraft_version}-${project.version}")
|
||||
- setDisplayName("[NeoForge 1.21.3] CraterLib - ${project.version}")
|
||||
- setGameVersions("1.21.3")
|
||||
- setDisplayName("[NeoForge 1.21.3/1.21.4] CraterLib - ${project.version}")
|
||||
- setGameVersions("1.21.3", "1.21.4")
|
||||
- setLoaders("neoforge")
|
||||
- setArtifact(remapJar)
|
||||
- setCurseEnvironment("both")
|
||||
- setIsManualRelease(true)
|
||||
-
|
||||
- curseDepends {
|
||||
- optional("cloth-config")
|
||||
- }
|
||||
-
|
||||
- modrinthDepends {
|
||||
- optional("cloth-config")
|
||||
- }
|
||||
-}
|
||||
|
@@ -1,15 +1,18 @@
|
||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||
+++ /dev/null
|
||||
@@ -1,61 +1,0 @@
|
||||
@@ -1,69 +1,0 @@
|
||||
-package com.hypherionmc.craterlib.client;
|
||||
-
|
||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||
-import com.hypherionmc.craterlib.client.gui.config.ClothConfigScreenBuilder;
|
||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||
-import com.hypherionmc.craterlib.core.config.AbstractConfig;
|
||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||
-import com.hypherionmc.craterlib.core.config.annotations.ClothScreen;
|
||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
||||
-import com.hypherionmc.craterlib.core.platform.ClientPlatform;
|
||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||
@@ -55,9 +58,14 @@
|
||||
- CraterEventBus.INSTANCE.postEvent(event);
|
||||
-
|
||||
- ConfigController.getWatchedConfigs().forEach((conf, watcher) -> {
|
||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||
- AbstractConfig config = watcher.getLeft();
|
||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||
- AbstractConfig config = watcher.getLeft();
|
||||
- if (config.getClass().isAnnotationPresent(NoConfigScreen.class))
|
||||
- return;
|
||||
-
|
||||
- if (watcher.getLeft().getClass().isAnnotationPresent(ClothScreen.class) && (ModloaderEnvironment.INSTANCE.isModLoaded("cloth_config") || ModloaderEnvironment.INSTANCE.isModLoaded("cloth-config") || ModloaderEnvironment.INSTANCE.isModLoaded("clothconfig"))) {
|
||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> ClothConfigScreenBuilder.buildConfigScreen(config, screen))));
|
||||
- } else {
|
||||
- //ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||
- }
|
||||
- });
|
||||
- }
|
||||
|
@@ -23,8 +23,12 @@
|
||||
|
||||
# Dependencies
|
||||
moon_config=1.0.10
|
||||
@@ -31,18 +28,17 @@
|
||||
@@ -29,21 +26,20 @@
|
||||
adventure=4.17.0
|
||||
rpc_sdk=1.0
|
||||
discord_formatter=2.0.0
|
||||
-cloth_config=17.0.144
|
||||
+cloth_config=12.0.137
|
||||
|
||||
# Mod Dependencies
|
||||
-fabrictailor=2.3.1
|
||||
|
Reference in New Issue
Block a user