From 7ed6149f055ccac89277f61a3f0154c2c9dbe3c9 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Wed, 15 Jul 2020 18:16:38 +0800 Subject: [PATCH] 1.16 Signed-off-by: shedaniel --- fabric/build.gradle | 7 +-- .../lightoverlay/fabric/LOModMenuEntry.java | 40 ++++++++--------- .../lightoverlay/fabric/LightOverlay.java | 12 ++--- forge/build.gradle | 9 ++-- .../lightoverlay/forge/LightOverlay.java | 5 +-- .../forge/LightOverlayClient.java | 10 ++--- .../lightoverlay/forge/LightOverlayCloth.java | 44 ++++++++++--------- forge/src/main/resources/META-INF/mods.toml | 4 +- gradle.properties | 21 ++++----- 9 files changed, 75 insertions(+), 77 deletions(-) diff --git a/fabric/build.gradle b/fabric/build.gradle index dde613c..c4e979d 100755 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -15,22 +15,23 @@ processResources { repositories { jcenter() + maven { url "https://dl.bintray.com/shedaniel/legacy-yarn-updated" } } dependencies { minecraft "com.mojang:minecraft:${rootProject.fabric_minecraft_version}" - mappings "net.fabricmc:yarn:${rootProject.fabric_minecraft_version}+build.${rootProject.yarn_build}:v2" + mappings "me.shedaniel:legacy-yarn:${rootProject.yarn_build}:v2" modCompile "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}" modCompile "net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}" - modCompile("me.shedaniel.cloth:cloth-events:${rootProject.cloth_events_version}") { + modCompile("me.shedaniel.cloth.api:cloth-client-events-v0:${rootProject.cloth_version}") { transitive = false } modImplementation("me.shedaniel.cloth:config-2:${rootProject.cloth_config_version}") modImplementation("io.github.prospector:modmenu:${rootProject.modmenu_version}") { transitive = false } - include("me.shedaniel.cloth:cloth-events:${rootProject.cloth_events_version}") { + include("me.shedaniel.cloth.api:cloth-client-events-v0:${rootProject.cloth_version}") { transitive = false } include("me.shedaniel.cloth:config-2:${rootProject.cloth_config_version}") { diff --git a/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LOModMenuEntry.java b/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LOModMenuEntry.java index e7d7200..95cdcf8 100644 --- a/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LOModMenuEntry.java +++ b/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LOModMenuEntry.java @@ -8,43 +8,41 @@ import me.shedaniel.clothconfig2.api.ConfigEntryBuilder; import me.shedaniel.clothconfig2.gui.entries.IntegerSliderEntry; import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.resource.language.I18n; +import net.minecraft.text.LiteralText; +import net.minecraft.text.Text; +import net.minecraft.text.TranslatableText; import net.minecraft.util.math.MathHelper; import java.util.Optional; public class LOModMenuEntry implements ModMenuApi { - @Override - public String getModId() { - return "lightoverlay"; - } - @Override public ConfigScreenFactory getModConfigScreenFactory() { return this::getConfigScreenByCloth; } public Screen getConfigScreenByCloth(Screen parent) { - ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle("key.lightoverlay.category"); + ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle(new TranslatableText("key.lightoverlay.category")); ConfigEntryBuilder eb = builder.entryBuilder(); - ConfigCategory general = builder.getOrCreateCategory("config.lightoverlay.general"); - general.addEntry(eb.startTextDescription("§7" + I18n.translate("description.lightoverlay.caching")).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.caching", LightOverlay.caching).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.caching = bool).build()); - general.addEntry(eb.startIntSlider("config.lightoverlay.reach", LightOverlay.reach, 1, 64).setDefaultValue(12).setTextGetter(integer -> "Reach: " + integer + " Blocks").setSaveConsumer(integer -> LightOverlay.reach = integer).build()); - IntegerSliderEntry crossLevel = eb.startIntSlider("config.lightoverlay.crossLevel", LightOverlay.crossLevel, 0, 15).setDefaultValue(7).setTextGetter(integer -> "Cross Level: " + integer).setSaveConsumer(integer -> LightOverlay.crossLevel = integer).build(); + ConfigCategory general = builder.getOrCreateCategory(new TranslatableText("config.lightoverlay.general")); + general.addEntry(eb.startTextDescription(Text.method_30163("§7" + I18n.translate("description.lightoverlay.caching"))).build()); + general.addEntry(eb.startBooleanToggle(new TranslatableText("config.lightoverlay.caching"), LightOverlay.caching).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.caching = bool).build()); + general.addEntry(eb.startIntSlider(new TranslatableText("config.lightoverlay.reach"), LightOverlay.reach, 1, 64).setDefaultValue(12).setTextGetter(integer -> Text.method_30163("Reach: " + integer + " Blocks")).setSaveConsumer(integer -> LightOverlay.reach = integer).build()); + IntegerSliderEntry crossLevel = eb.startIntSlider(new TranslatableText("config.lightoverlay.crossLevel"), LightOverlay.crossLevel, 0, 15).setDefaultValue(7).setTextGetter(integer -> Text.method_30163("Cross Level: " + integer)).setSaveConsumer(integer -> LightOverlay.crossLevel = integer).build(); general.addEntry(crossLevel); - general.addEntry(eb.startIntSlider("config.lightoverlay.secondaryLevel", LightOverlay.secondaryLevel, -1, 15) + general.addEntry(eb.startIntSlider(new TranslatableText("config.lightoverlay.secondaryLevel"), LightOverlay.secondaryLevel, -1, 15) .setErrorSupplier(integer -> { - if (integer >= 0 && integer >= crossLevel.getValue()) return Optional.of("Secondary Level cannot be higher than Cross Level!"); + if (integer >= 0 && integer >= crossLevel.getValue()) return Optional.of(new LiteralText("Secondary Level cannot be higher than Cross Level!")); return Optional.empty(); - }).setDefaultValue(-1).setTextGetter(integer -> integer < 0 ? "Off" : "Level: " + integer).setSaveConsumer(integer -> LightOverlay.secondaryLevel = integer).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.showNumber", LightOverlay.showNumber).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.showNumber = bool).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.smoothLines", LightOverlay.smoothLines).setDefaultValue(true).setSaveConsumer(bool -> LightOverlay.smoothLines = bool).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.underwater", LightOverlay.underwater).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.underwater = bool).build()); - general.addEntry(eb.startIntSlider("config.lightoverlay.lineWidth", MathHelper.floor(LightOverlay.lineWidth * 100), 100, 700).setDefaultValue(100).setTextGetter(integer -> "Light Width: " + LightOverlay.FORMAT.format(integer / 100d)).setSaveConsumer(integer -> LightOverlay.lineWidth = integer / 100f).build()); - general.addEntry(eb.startColorField("config.lightoverlay.yellowColor", LightOverlay.yellowColor).setDefaultValue(0xFFFF00).setSaveConsumer(color -> LightOverlay.yellowColor = color).build()); - general.addEntry(eb.startColorField("config.lightoverlay.redColor", LightOverlay.redColor).setDefaultValue(0xFF0000).setSaveConsumer(color -> LightOverlay.redColor = color).build()); - general.addEntry(eb.startColorField("config.lightoverlay.secondaryColor", LightOverlay.secondaryColor).setDefaultValue(0x0000FF).setSaveConsumer(color -> LightOverlay.secondaryColor = color).build()); + }).setDefaultValue(-1).setTextGetter(integer -> new LiteralText(integer < 0 ? "Off" : "Level: " + integer)).setSaveConsumer(integer -> LightOverlay.secondaryLevel = integer).build()); + general.addEntry(eb.startBooleanToggle(new TranslatableText("config.lightoverlay.showNumber"), LightOverlay.showNumber).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.showNumber = bool).build()); + general.addEntry(eb.startBooleanToggle(new TranslatableText("config.lightoverlay.smoothLines"), LightOverlay.smoothLines).setDefaultValue(true).setSaveConsumer(bool -> LightOverlay.smoothLines = bool).build()); + general.addEntry(eb.startBooleanToggle(new TranslatableText("config.lightoverlay.underwater"), LightOverlay.underwater).setDefaultValue(false).setSaveConsumer(bool -> LightOverlay.underwater = bool).build()); + general.addEntry(eb.startIntSlider(new TranslatableText("config.lightoverlay.lineWidth"), MathHelper.floor(LightOverlay.lineWidth * 100), 100, 700).setDefaultValue(100).setTextGetter(integer -> new LiteralText("Light Width: " + LightOverlay.FORMAT.format(integer / 100d))).setSaveConsumer(integer -> LightOverlay.lineWidth = integer / 100f).build()); + general.addEntry(eb.startColorField(new TranslatableText("config.lightoverlay.yellowColor"), LightOverlay.yellowColor).setDefaultValue(0xFFFF00).setSaveConsumer(color -> LightOverlay.yellowColor = color).build()); + general.addEntry(eb.startColorField(new TranslatableText("config.lightoverlay.redColor"), LightOverlay.redColor).setDefaultValue(0xFF0000).setSaveConsumer(color -> LightOverlay.redColor = color).build()); + general.addEntry(eb.startColorField(new TranslatableText("config.lightoverlay.secondaryColor"), LightOverlay.secondaryColor).setDefaultValue(0x0000FF).setSaveConsumer(color -> LightOverlay.secondaryColor = color).build()); return builder.setSavingRunnable(() -> { try { diff --git a/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LightOverlay.java b/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LightOverlay.java index eafd14a..d3ea344 100644 --- a/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LightOverlay.java +++ b/fabric/src/main/java/me/shedaniel/lightoverlay/fabric/LightOverlay.java @@ -4,10 +4,10 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; -import me.shedaniel.cloth.hooks.ClothClientHooks; +import me.shedaniel.cloth.api.client.events.v0.ClothClientHooks; import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; -import net.fabricmc.fabric.api.event.client.ClientTickCallback; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -81,7 +81,7 @@ public class LightOverlay implements ClientModInitializer { private static long ticks = 0; static { - ClientTickCallback.EVENT.register(client -> { + ClientTickEvents.END_CLIENT_TICK.register(client -> { try { ticks++; if (CLIENT.player == null || !enabled) { @@ -93,7 +93,7 @@ public class LightOverlay implements ClientModInitializer { CHUNK_MAP.clear(); ClientPlayerEntity player = CLIENT.player; ClientWorld world = CLIENT.world; - BlockPos playerPos = player.getBlockPos(); + BlockPos playerPos = player.getSenseCenterPos(); EntityContext entityContext = EntityContext.of(player); ChunkLightingView block = world.getLightingProvider().get(LightType.BLOCK); ChunkLightingView sky = showNumber ? null : world.getLightingProvider().get(LightType.SKY); @@ -222,7 +222,7 @@ public class LightOverlay implements ClientModInitializer { // Check if the collision has a bump if (upperCollisionShape.getMaximum(Direction.Axis.Y) > 0) return CrossType.NONE; - if (blockUpperState.getBlock().matches(BlockTags.RAILS)) + if (blockUpperState.getBlock().isIn(BlockTags.RAILS)) return CrossType.NONE; // Check block state allow spawning (excludes bedrock and barriers automatically) if (!blockBelowState.allowsSpawning(world, down, testingEntityType)) @@ -415,7 +415,7 @@ public class LightOverlay implements ClientModInitializer { // Setup testingEntityType = EntityType.Builder.create(EntityCategory.MONSTER).setDimensions(0f, 0f).disableSaving().build(null); - ClientTickCallback.EVENT.register(minecraftClient -> { + ClientTickEvents.END_CLIENT_TICK.register(minecraftClient -> { while (ENABLE_OVERLAY.wasPressed()) enabled = !enabled; }); diff --git a/forge/build.gradle b/forge/build.gradle index e6c2c65..829a4d1 100644 --- a/forge/build.gradle +++ b/forge/build.gradle @@ -9,10 +9,6 @@ buildscript { } } -plugins { - id("com.wynprice.cursemaven") version("2.1.1") -} - apply plugin: "net.minecraftforge.gradle" apply plugin: "eclipse" @@ -40,9 +36,10 @@ minecraft { repositories { maven { url "https://files.minecraftforge.net/maven" } + maven { url "https://dl.bintray.com/shedaniel/cloth-config-2" } } dependencies { - minecraft("net.minecraftforge:forge:${rootProject.forge_minecraft_version}-31.1.39") - implementation(fg.deobf("curse.maven:cloth-config-forge:${rootProject.cloth_config_forge_commit}")) + minecraft("net.minecraftforge:forge:${rootProject.forge_minecraft_version}-${project.forge_version}") + implementation(fg.deobf("me.shedaniel.cloth:cloth-config-forge:${rootProject.cloth_config_forge}")) } \ No newline at end of file diff --git a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlay.java b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlay.java index 290017b..33f9fcc 100644 --- a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlay.java +++ b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlay.java @@ -8,11 +8,10 @@ import net.minecraftforge.fml.common.Mod; @Mod("lightoverlay-forge") public class LightOverlay { public LightOverlay() { - //noinspection Convert2MethodRef - DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> LightOverlayClient.register()); + DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> LightOverlayClient::register); } public static void processPacket(IPacket packet) { - DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> LightOverlayClient.processPacket(packet)); + DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> LightOverlayClient.processPacket(packet)); } } diff --git a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayClient.java b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayClient.java index 62d5d72..dc65b18 100644 --- a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayClient.java +++ b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayClient.java @@ -12,7 +12,6 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.renderer.ActiveRenderInfo; import net.minecraft.client.renderer.IRenderTypeBuffer; import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.TransformationMatrix; import net.minecraft.client.settings.KeyBinding; import net.minecraft.client.util.InputMappings; import net.minecraft.client.world.ClientWorld; @@ -30,9 +29,10 @@ import net.minecraft.util.ResourceLocation; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.ChunkPos; import net.minecraft.util.math.MathHelper; -import net.minecraft.util.math.Vec3d; import net.minecraft.util.math.shapes.ISelectionContext; import net.minecraft.util.math.shapes.VoxelShape; +import net.minecraft.util.math.vector.TransformationMatrix; +import net.minecraft.util.math.vector.Vector3d; import net.minecraft.world.IBlockReader; import net.minecraft.world.LightType; import net.minecraft.world.World; @@ -238,7 +238,7 @@ public class LightOverlayClient { CHUNK_MAP.clear(); ClientPlayerEntity player = minecraft.player; ClientWorld world = minecraft.world; - BlockPos playerPos = player.getPosition(); + BlockPos playerPos = player.func_233580_cy_(); ISelectionContext entityContext = ISelectionContext.forEntity(player); IWorldLightListener block = world.getLightManager().getLightEngine(LightType.BLOCK); IWorldLightListener sky = showNumber ? null : world.getLightManager().getLightEngine(LightType.SKY); @@ -265,7 +265,7 @@ public class LightOverlayClient { ClientPlayerEntity player = minecraft.player; ClientWorld world = minecraft.world; ISelectionContext selectionContext = ISelectionContext.forEntity(player); - Vec3d[] playerPos = {null}; + Vector3d[] playerPos = {null}; int playerPosX = ((int) player.getPosX()) >> 4; int playerPosZ = ((int) player.getPosZ()) >> 4; if (ticks % 20 == 0) { @@ -343,7 +343,7 @@ public class LightOverlayClient { int playerPosZ = ((int) playerEntity.getPosZ()) >> 4; ISelectionContext selectionContext = ISelectionContext.forEntity(playerEntity); World world = client.world; - BlockPos playerPos = playerEntity.getPosition(); + BlockPos playerPos = playerEntity.func_233580_cy_(); ActiveRenderInfo info = client.gameRenderer.getActiveRenderInfo(); if (showNumber) { RenderSystem.enableTexture(); diff --git a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayCloth.java b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayCloth.java index cbfb1a4..2e0ed5c 100644 --- a/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayCloth.java +++ b/forge/src/main/java/me/shedaniel/lightoverlay/forge/LightOverlayCloth.java @@ -1,11 +1,13 @@ package me.shedaniel.lightoverlay.forge; -import me.shedaniel.forge.clothconfig2.api.ConfigBuilder; -import me.shedaniel.forge.clothconfig2.api.ConfigCategory; -import me.shedaniel.forge.clothconfig2.api.ConfigEntryBuilder; -import me.shedaniel.forge.clothconfig2.gui.entries.IntegerSliderEntry; +import me.shedaniel.clothconfig2.forge.api.ConfigBuilder; +import me.shedaniel.clothconfig2.forge.api.ConfigCategory; +import me.shedaniel.clothconfig2.forge.api.ConfigEntryBuilder; +import me.shedaniel.clothconfig2.forge.gui.entries.IntegerSliderEntry; import net.minecraft.client.resources.I18n; import net.minecraft.util.math.MathHelper; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; import net.minecraftforge.fml.ExtensionPoint; import net.minecraftforge.fml.ModLoadingContext; @@ -14,27 +16,27 @@ import java.util.Optional; public class LightOverlayCloth { public static void register() { ModLoadingContext.get().registerExtensionPoint(ExtensionPoint.CONFIGGUIFACTORY, () -> (client, parent) -> { - ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle("key.lightoverlay.category"); + ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle(new TranslationTextComponent("key.lightoverlay.category")); - ConfigEntryBuilder eb = builder.getEntryBuilder(); - ConfigCategory general = builder.getOrCreateCategory("config.lightoverlay.general"); - general.addEntry(eb.startTextDescription("§7" + I18n.format("description.lightoverlay.caching")).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.caching", LightOverlayClient.caching).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.caching = bool).build()); - general.addEntry(eb.startIntSlider("config.lightoverlay.reach", LightOverlayClient.reach, 1, 64).setDefaultValue(12).setTextGetter(integer -> "Reach: " + integer + " Blocks").setSaveConsumer(integer -> LightOverlayClient.reach = integer).build()); - IntegerSliderEntry crossLevel = eb.startIntSlider("config.lightoverlay.crossLevel", LightOverlayClient.crossLevel, 0, 15).setDefaultValue(7).setTextGetter(integer -> "Cross Level: " + integer).setSaveConsumer(integer -> LightOverlayClient.crossLevel = integer).build(); + ConfigEntryBuilder eb = builder.entryBuilder(); + ConfigCategory general = builder.getOrCreateCategory(new TranslationTextComponent("config.lightoverlay.general")); + general.addEntry(eb.startTextDescription(ITextComponent.func_241827_a_("§7" + I18n.format("description.lightoverlay.caching"))).build()); + general.addEntry(eb.startBooleanToggle(new TranslationTextComponent("config.lightoverlay.caching"), LightOverlayClient.caching).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.caching = bool).build()); + general.addEntry(eb.startIntSlider(new TranslationTextComponent("config.lightoverlay.reach"), LightOverlayClient.reach, 1, 64).setDefaultValue(12).setTextGetter(integer -> ITextComponent.func_241827_a_("Reach: " + integer + " Blocks")).setSaveConsumer(integer -> LightOverlayClient.reach = integer).build()); + IntegerSliderEntry crossLevel = eb.startIntSlider(new TranslationTextComponent("config.lightoverlay.crossLevel"), LightOverlayClient.crossLevel, 0, 15).setDefaultValue(7).setTextGetter(integer -> ITextComponent.func_241827_a_("Cross Level: " + integer)).setSaveConsumer(integer -> LightOverlayClient.crossLevel = integer).build(); general.addEntry(crossLevel); - general.addEntry(eb.startIntSlider("config.lightoverlay.secondaryLevel", LightOverlayClient.secondaryLevel, -1, 15) + general.addEntry(eb.startIntSlider(new TranslationTextComponent("config.lightoverlay.secondaryLevel"), LightOverlayClient.secondaryLevel, -1, 15) .setErrorSupplier(integer -> { - if (integer >= 0 && integer >= crossLevel.getValue()) return Optional.of("Secondary Level cannot be higher than Cross Level!"); + if (integer >= 0 && integer >= crossLevel.getValue()) return Optional.of(ITextComponent.func_241827_a_("Secondary Level cannot be higher than Cross Level!")); return Optional.empty(); - }).setDefaultValue(-1).setTextGetter(integer -> integer < 0 ? "Off" : "Level: " + integer).setSaveConsumer(integer -> LightOverlayClient.secondaryLevel = integer).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.showNumber", LightOverlayClient.showNumber).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.showNumber = bool).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.smoothLines", LightOverlayClient.smoothLines).setDefaultValue(true).setSaveConsumer(bool -> LightOverlayClient.smoothLines = bool).build()); - general.addEntry(eb.startBooleanToggle("config.lightoverlay.underwater", LightOverlayClient.underwater).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.underwater = bool).build()); - general.addEntry(eb.startIntSlider("config.lightoverlay.lineWidth", MathHelper.floor(LightOverlayClient.lineWidth * 100), 100, 700).setDefaultValue(100).setTextGetter(integer -> "Light Width: " + LightOverlayClient.FORMAT.format(integer / 100d)).setSaveConsumer(integer -> LightOverlayClient.lineWidth = integer / 100f).build()); - general.addEntry(eb.startColorField("config.lightoverlay.yellowColor", LightOverlayClient.yellowColor).setDefaultValue(0xFFFF00).setSaveConsumer(color -> LightOverlayClient.yellowColor = color).build()); - general.addEntry(eb.startColorField("config.lightoverlay.redColor", LightOverlayClient.redColor).setDefaultValue(0xFF0000).setSaveConsumer(color -> LightOverlayClient.redColor = color).build()); - general.addEntry(eb.startColorField("config.lightoverlay.secondaryColor", LightOverlayClient.secondaryColor).setDefaultValue(0x0000FF).setSaveConsumer(color -> LightOverlayClient.secondaryColor = color).build()); + }).setDefaultValue(-1).setTextGetter(integer -> ITextComponent.func_241827_a_(integer < 0 ? "Off" : "Level: " + integer)).setSaveConsumer(integer -> LightOverlayClient.secondaryLevel = integer).build()); + general.addEntry(eb.startBooleanToggle(new TranslationTextComponent("config.lightoverlay.showNumber"), LightOverlayClient.showNumber).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.showNumber = bool).build()); + general.addEntry(eb.startBooleanToggle(new TranslationTextComponent("config.lightoverlay.smoothLines"), LightOverlayClient.smoothLines).setDefaultValue(true).setSaveConsumer(bool -> LightOverlayClient.smoothLines = bool).build()); + general.addEntry(eb.startBooleanToggle(new TranslationTextComponent("config.lightoverlay.underwater"), LightOverlayClient.underwater).setDefaultValue(false).setSaveConsumer(bool -> LightOverlayClient.underwater = bool).build()); + general.addEntry(eb.startIntSlider(new TranslationTextComponent("config.lightoverlay.lineWidth"), MathHelper.floor(LightOverlayClient.lineWidth * 100), 100, 700).setDefaultValue(100).setTextGetter(integer -> ITextComponent.func_241827_a_("Light Width: " + LightOverlayClient.FORMAT.format(integer / 100d))).setSaveConsumer(integer -> LightOverlayClient.lineWidth = integer / 100f).build()); + general.addEntry(eb.startColorField(new TranslationTextComponent("config.lightoverlay.yellowColor"), LightOverlayClient.yellowColor).setDefaultValue(0xFFFF00).setSaveConsumer(color -> LightOverlayClient.yellowColor = color).build()); + general.addEntry(eb.startColorField(new TranslationTextComponent("config.lightoverlay.redColor"), LightOverlayClient.redColor).setDefaultValue(0xFF0000).setSaveConsumer(color -> LightOverlayClient.redColor = color).build()); + general.addEntry(eb.startColorField(new TranslationTextComponent("config.lightoverlay.secondaryColor"), LightOverlayClient.secondaryColor).setDefaultValue(0x0000FF).setSaveConsumer(color -> LightOverlayClient.secondaryColor = color).build()); return builder.setSavingRunnable(() -> { try { diff --git a/forge/src/main/resources/META-INF/mods.toml b/forge/src/main/resources/META-INF/mods.toml index 3fe4bd3..de20c6f 100755 --- a/forge/src/main/resources/META-INF/mods.toml +++ b/forge/src/main/resources/META-INF/mods.toml @@ -12,8 +12,8 @@ To provide users with NEI-like light overlay. ''' [[dependencies.lightoverlay-forge]] - modId="cloth-config2" + modId="cloth-config" mandatory=true - versionRange="[3.0,)" + versionRange="[4.0,)" ordering="NONE" side="CLIENT" diff --git a/gradle.properties b/gradle.properties index fa35d95..9a15436 100755 --- a/gradle.properties +++ b/gradle.properties @@ -1,18 +1,19 @@ org.gradle.jvmargs=-Xmx3G org.gradle.daemon=false -mod_version=4.7.0 +mod_version=5.4.0 # fabric -fabric_minecraft_version=1.15.2 -yarn_build=15 +fabric_minecraft_version=1.16.1 +yarn_build=1.16.1+build.4+legacy.20w09a+build.8 fabric_loader_version=0.8.8+build.202 -fabric_api_version=0.13.0+build.315-1.15 -cloth_events_version=1.2.0 -cloth_config_version=2.14.2 -modmenu_version=1.10.2+build.32 +fabric_api_version=0.14.0+build.371-1.16 +cloth_version=1.0.4 +cloth_config_version=4.5.5 +modmenu_version=1.12.2+build.17 # forge -mcp_snapshot=20200408-1.15.1 -forge_minecraft_version=1.15.2 -cloth_config_forge_commit=2938583 \ No newline at end of file +mcp_snapshot=20200514-1.16 +forge_minecraft_version=1.16.1 +forge_version=32.0.7 +cloth_config_forge=4.0 \ No newline at end of file -- 2.44.0