diff --git a/build.gradle b/build.gradle index f9d9bba..2864ad8 100755 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "architectury-plugin" version "3.4-SNAPSHOT" - id "dev.architectury.loom" version "1.6-SNAPSHOT" apply false + id "dev.architectury.loom" version "1.10-SNAPSHOT" apply false id "me.shedaniel.unified-publishing" version "0.1.+" apply false id 'com.github.johnrengelman.shadow' version '8.1.1' apply false } diff --git a/common/src/main/java/eu/midnightdust/celestria/CelestriaClient.java b/common/src/main/java/eu/midnightdust/celestria/CelestriaClient.java index 3c94f23..ba0088c 100755 --- a/common/src/main/java/eu/midnightdust/celestria/CelestriaClient.java +++ b/common/src/main/java/eu/midnightdust/celestria/CelestriaClient.java @@ -33,7 +33,7 @@ public class CelestriaClient { shootingStars.forEach(ShootingStar::tick); shootingStars.removeAll(shootingStars.stream().filter(star -> star.progress <= 0).toList()); if (CelestriaClient.clientOnlyMode && CelestriaConfig.enableShootingStars && client.world != null) { - float tickDelta = client.getRenderTickCounter().getTickDelta(true); + float tickDelta = client.getRenderTickCounter().getDynamicDeltaTicks(); if ((180 < client.world.getSkyAngle(tickDelta) * 360 && 270 > client.world.getSkyAngle(tickDelta) * 360) && random.nextInt(Celestria.getChance(client.world)) == 0) { shootingStars.add(new ShootingStar(CelestriaConfig.shootingStarPathLength, random.nextInt(3), random.nextBetween(100, 150), random.nextInt(360), random.nextBetween(10, 170), random.nextBetween(Math.min(CelestriaConfig.shootingStarMinSize, CelestriaConfig.shootingStarMaxSize), Math.max(CelestriaConfig.shootingStarMaxSize, CelestriaConfig.shootingStarMinSize)))); } diff --git a/common/src/main/java/eu/midnightdust/celestria/ShootingStar.java b/common/src/main/java/eu/midnightdust/celestria/ShootingStar.java index 458fc72..bff4159 100644 --- a/common/src/main/java/eu/midnightdust/celestria/ShootingStar.java +++ b/common/src/main/java/eu/midnightdust/celestria/ShootingStar.java @@ -1,8 +1,14 @@ package eu.midnightdust.celestria; +import eu.midnightdust.celestria.config.CelestriaConfig; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; + +@Environment(EnvType.CLIENT) public class ShootingStar { public int progress; public final int type, x, y, rotation, size; + public int phaseScore; public ShootingStar(int progress, int type, int x, int y, int rotation, int size) { this.progress = progress; this.type = type; @@ -10,9 +16,25 @@ public class ShootingStar { this.y = y; this.rotation = rotation; this.size = size; + this.phaseScore = 0; } public void tick() { --progress; + phaseScore++; + phaseScore %= 100; + } + + /** + * Get the current phase of the shooting star (UV offset of the texture) + * @see ShootingStar#phaseScore + * @see CelestriaConfig#shootingStarPhaseCycle + * @return [0, 25%) -> 0.0F, [25%, 50%) -> 0.25F, [50%, 75%) -> 0.5F, [75%, 100%) -> 0.75F + */ + public float getPhase() { + if ((double) this.phaseScore / CelestriaConfig.shootingStarPhaseCycle < 0.25) return 0.0F; + else if ((double) this.phaseScore / CelestriaConfig.shootingStarPhaseCycle < 0.5) return 0.25F; + else if ((double) this.phaseScore / CelestriaConfig.shootingStarPhaseCycle < 0.75) return 0.5F; + else return 0.75F; } } diff --git a/common/src/main/java/eu/midnightdust/celestria/config/CelestriaConfig.java b/common/src/main/java/eu/midnightdust/celestria/config/CelestriaConfig.java index e2e3036..8d1fb61 100755 --- a/common/src/main/java/eu/midnightdust/celestria/config/CelestriaConfig.java +++ b/common/src/main/java/eu/midnightdust/celestria/config/CelestriaConfig.java @@ -17,6 +17,7 @@ public class CelestriaConfig extends MidnightConfig { @Entry(category = STARS, isSlider = true, min = 0, max = 500) public static int shootingStarPathLength = 50; @Entry(category = STARS) public static int shootingStarChance = 20000; @Entry(category = STARS) public static int shootingStarLuckDuration = 1000; + @Entry(category = STARS, min = 4) public static int shootingStarPhaseCycle = 60; @Entry(category = STARS) public static List shootingStarMessages = Lists.newArrayList("celestria.shootingStar.1", "celestria.shootingStar.2", "celestria.shootingStar.3"); @Entry(category = INSOMNIA) public static boolean enableInsomnia = true; @Entry(category = INSOMNIA) public static int insomniaChance = 30000; diff --git a/common/src/main/java/eu/midnightdust/celestria/mixin/MixinSkyRendering.java b/common/src/main/java/eu/midnightdust/celestria/mixin/MixinSkyRendering.java new file mode 100644 index 0000000..c8a2b61 --- /dev/null +++ b/common/src/main/java/eu/midnightdust/celestria/mixin/MixinSkyRendering.java @@ -0,0 +1,21 @@ +package eu.midnightdust.celestria.mixin; + +import eu.midnightdust.celestria.render.ShootingStarRendering; +import net.minecraft.client.render.SkyRendering; +import net.minecraft.client.render.VertexConsumerProvider; +import net.minecraft.client.util.math.MatrixStack; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(SkyRendering.class) +public abstract class MixinSkyRendering { + @Unique private final ShootingStarRendering celestria$shootingStarRendering = new ShootingStarRendering(); + + @Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/render/VertexConsumerProvider$Immediate;draw()V"), method = "renderCelestialBodies") + private void celestria$renderShootingStars(MatrixStack matrices, VertexConsumerProvider.Immediate vertexConsumers, float rot, int phase, float alpha, float starBrightness, CallbackInfo ci) { + celestria$shootingStarRendering.renderShootingStars(matrices, vertexConsumers); + } +} diff --git a/common/src/main/java/eu/midnightdust/celestria/mixin/MixinWorldRenderer.java b/common/src/main/java/eu/midnightdust/celestria/mixin/MixinWorldRenderer.java deleted file mode 100644 index a38e1f4..0000000 --- a/common/src/main/java/eu/midnightdust/celestria/mixin/MixinWorldRenderer.java +++ /dev/null @@ -1,28 +0,0 @@ -package eu.midnightdust.celestria.mixin; - -import eu.midnightdust.celestria.render.ShootingStarRenderer; -import net.minecraft.client.render.Camera; -import net.minecraft.client.render.WorldRenderer; -import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.client.world.ClientWorld; -import org.jetbrains.annotations.Nullable; -import org.joml.Matrix4f; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import org.spongepowered.asm.mixin.Unique; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -@Mixin(WorldRenderer.class) -public abstract class MixinWorldRenderer { - @Unique private final ShootingStarRenderer celestria$shootingStarRenderer = new ShootingStarRenderer(); - @Shadow @Nullable private ClientWorld world; - - @Inject(at = @At(value = "TAIL"), method = "renderSky(Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FLnet/minecraft/client/render/Camera;ZLjava/lang/Runnable;)V") - public void celestria$renderShootingStars(Matrix4f matrix4f, Matrix4f projectionMatrix, float tickDelta, Camera camera, boolean thickFog, Runnable fogCallback, CallbackInfo ci) { - MatrixStack matrices = new MatrixStack(); - matrices.multiplyPositionMatrix(matrix4f); - celestria$shootingStarRenderer.renderShootingStars(world, matrices); - } -} diff --git a/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRenderer.java b/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRenderer.java deleted file mode 100644 index 5e0eced..0000000 --- a/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRenderer.java +++ /dev/null @@ -1,62 +0,0 @@ -package eu.midnightdust.celestria.render; - -import com.mojang.blaze3d.systems.RenderSystem; -import eu.midnightdust.celestria.CelestriaClient; -import eu.midnightdust.celestria.ShootingStar; -import eu.midnightdust.celestria.config.CelestriaConfig; -import net.minecraft.client.render.BufferBuilder; -import net.minecraft.client.render.BufferRenderer; -import net.minecraft.client.render.GameRenderer; -import net.minecraft.client.render.Tessellator; -import net.minecraft.client.render.VertexFormat; -import net.minecraft.client.render.VertexFormats; -import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.client.world.ClientWorld; -import net.minecraft.util.math.RotationAxis; -import org.joml.Matrix4f; - -import static eu.midnightdust.celestria.Celestria.id; -import static java.lang.Math.pow; - -public class ShootingStarRenderer { - public void renderShootingStars(ClientWorld world, MatrixStack matrices) { - if (world != null && CelestriaConfig.enableShootingStars && !CelestriaClient.shootingStars.isEmpty()) { - world.getProfiler().swap("shooting_stars"); - RenderSystem.defaultBlendFunc(); - RenderSystem.enableDepthTest(); - RenderSystem.enableBlend(); - RenderSystem.setShader(GameRenderer::getPositionTexColorProgram); - CelestriaClient.shootingStars.forEach(star -> renderShootingStar(world, matrices, star)); - RenderSystem.disableBlend(); - RenderSystem.disableDepthTest(); - } - } - @SuppressWarnings("SuspiciousNameCombination") - private void renderShootingStar(ClientWorld world, MatrixStack matrices, ShootingStar star) { - if (world != null && CelestriaConfig.enableShootingStars && !CelestriaClient.shootingStars.isEmpty()) { - world.getProfiler().swap("shooting_stars"); - float alpha = (float) Math.clamp((star.progress - pow(1f / star.progress, 4)) / CelestriaConfig.shootingStarPathLength, 0, 1); - matrices.push(); - matrices.scale(CelestriaConfig.shootingStarDistance,CelestriaConfig.shootingStarDistance,CelestriaConfig.shootingStarDistance); - int direction = isEven(star.type) ? -1 : 1; - matrices.multiply(RotationAxis.POSITIVE_Y.rotationDegrees(star.y)); - matrices.multiply(RotationAxis.POSITIVE_Z.rotationDegrees(star.rotation * direction)); - matrices.multiply(RotationAxis.POSITIVE_X.rotationDegrees(star.x+(star.progress*CelestriaConfig.shootingStarSpeed*0.05f))); - matrices.translate(star.progress * CelestriaConfig.shootingStarSpeed * direction, 0, 0); - Matrix4f matrix4f = matrices.peek().getPositionMatrix(); - RenderSystem.setShaderTexture(0, id("textures/environment/shooting_star"+(star.type+1)+".png")); - BufferBuilder bufferBuilder = Tessellator.getInstance().begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_TEXTURE_COLOR); - float height = star.size / 100f * 20.0F; - float width = star.size / 100f * 100.0F; - bufferBuilder.vertex(matrix4f, -height, -width, height).texture(0.0F, 0.0F).color(1, 1, 1, alpha); - bufferBuilder.vertex(matrix4f, height, -width, height).texture(1.0F, 0.0F).color(1, 1, 1, alpha); - bufferBuilder.vertex(matrix4f, height, -width, -height).texture(1.0F, 1.0F).color(1, 1, 1, alpha); - bufferBuilder.vertex(matrix4f, -height, -width, -height).texture(0.0F, 1.0F).color(1, 1, 1, alpha); - BufferRenderer.drawWithGlobalProgram(bufferBuilder.end()); - matrices.pop(); - } - } - public static boolean isEven(int i) { - return (i | 1) > i; - } -} diff --git a/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRendering.java b/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRendering.java new file mode 100644 index 0000000..43f31ea --- /dev/null +++ b/common/src/main/java/eu/midnightdust/celestria/render/ShootingStarRendering.java @@ -0,0 +1,50 @@ +package eu.midnightdust.celestria.render; + +import eu.midnightdust.celestria.CelestriaClient; +import eu.midnightdust.celestria.ShootingStar; +import eu.midnightdust.celestria.config.CelestriaConfig; +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.render.*; +import net.minecraft.client.util.math.MatrixStack; +import net.minecraft.util.math.RotationAxis; +import net.minecraft.util.profiler.Profilers; +import org.joml.Matrix4f; + +import static eu.midnightdust.celestria.Celestria.id; +import static java.lang.Math.pow; + +public class ShootingStarRendering { + public void renderShootingStars(MatrixStack matrices, VertexConsumerProvider.Immediate vertexConsumers) { + if (MinecraftClient.getInstance().world == null) return; + Profilers.get().swap("shooting_stars"); + CelestriaClient.shootingStars.forEach(star -> renderShootingStar(matrices, vertexConsumers, star)); + } + + @SuppressWarnings("SuspiciousNameCombination") + private void renderShootingStar(MatrixStack matrices, VertexConsumerProvider.Immediate vertexConsumers, ShootingStar star) { + if (MinecraftClient.getInstance().world != null && CelestriaConfig.enableShootingStars && !CelestriaClient.shootingStars.isEmpty()) { + matrices.push(); + float alpha = (float) Math.clamp((star.progress - pow(1f / star.progress, 4)) / CelestriaConfig.shootingStarPathLength, 0, 1); + matrices.scale(CelestriaConfig.shootingStarDistance, CelestriaConfig.shootingStarDistance, CelestriaConfig.shootingStarDistance); + int direction = isEven(star.type) ? -1 : 1; + matrices.multiply(RotationAxis.POSITIVE_Y.rotationDegrees(-star.y)); + matrices.multiply(RotationAxis.POSITIVE_Z.rotationDegrees(-star.rotation * direction)); + matrices.multiply(RotationAxis.POSITIVE_X.rotationDegrees(-star.x - (star.progress * CelestriaConfig.shootingStarSpeed * 0.05f))); + matrices.translate(star.progress * CelestriaConfig.shootingStarSpeed * direction, 0, 0); + Matrix4f posMat4f = matrices.peek().getPositionMatrix(); + // draw the star + float height = star.size / 100f * 20.0F; + float width = star.size / 100f * 100.0F; + VertexConsumer vertexconsumer = vertexConsumers.getBuffer(RenderLayer.getCelestial(id("textures/environment/shooting_star" + (star.type + 1) + ".png"))); + vertexconsumer.vertex(posMat4f, -height, -width, height).texture(0.0F, star.getPhase()).color(1.0F, 1.0F, 1.0F, alpha); + vertexconsumer.vertex(posMat4f, height, -width, height).texture(1.0F, star.getPhase()).color(1.0F, 1.0F, 1.0F, alpha); + vertexconsumer.vertex(posMat4f, height, -width, -height).texture(1.0F, star.getPhase() + 0.25F).color(1.0F, 1.0F, 1.0F, alpha); + vertexconsumer.vertex(posMat4f, -height, -width, -height).texture(0.0F, star.getPhase() + 0.25F).color(1.0F, 1.0F, 1.0F, alpha); + matrices.pop(); + } + } + + public static boolean isEven(int i) { + return (i | 1) > i; + } +} diff --git a/common/src/main/resources/assets/celestria/lang/en_us.json b/common/src/main/resources/assets/celestria/lang/en_us.json index fd1ee43..9d85224 100755 --- a/common/src/main/resources/assets/celestria/lang/en_us.json +++ b/common/src/main/resources/assets/celestria/lang/en_us.json @@ -13,6 +13,7 @@ "celestria.midnightconfig.shootingStarChance": "Chance", "celestria.midnightconfig.shootingStarLuckDuration": "Luck Duration", "celestria.midnightconfig.shootingStarMessages": "Messages", + "celestria.midnightconfig.shootingStarPhaseCycle": "Phase Cycle Duration (in ticks)", "celestria.midnightconfig.enableInsomnia": "Enable Insomnia", "celestria.midnightconfig.insomniaChance": "Chance", "celestria.midnightconfig.insomniaMessages": "Messages", diff --git a/common/src/main/resources/assets/celestria/lang/ru_ru.json b/common/src/main/resources/assets/celestria/lang/ru_ru.json index b02c279..34dc077 100644 --- a/common/src/main/resources/assets/celestria/lang/ru_ru.json +++ b/common/src/main/resources/assets/celestria/lang/ru_ru.json @@ -1,19 +1,27 @@ { - "celestria.midnightconfig.title": "Настройки Celestria", - "celestria.midnightconfig.sendChatMessages": "Отправлять Сообщения в Чате о Событиях", - "celestria.midnightconfig.enableShootingStars": "Включить Падающие Звёзды", - "celestria.midnightconfig.shootingStarChance": "Шанс Падающей Звезды", - "celestria.midnightconfig.shootingStarCooldownLength": "Длительность Отката Падающей Звезды", - "celestria.midnightconfig.shootingStarLuckDuration": "Длительность Эффекта Удачи от Падающей Звезды", - "celestria.midnightconfig.shootingStarMessages": "Сообщение о Падающей Звезде", + "celestria.insomnia.1": "§cТы боишься полнолуния, поэтому не можешь найти себе покоя...", + "celestria.insomnia.2": "§3Ауууууууу... Ты слышишь странные звуки издалека и не можешь закрыть глаза", + "celestria.midnightconfig.category.insomnia": "Insomnia", + "celestria.midnightconfig.category.stars": "Падающие звезды", "celestria.midnightconfig.enableInsomnia": "Включить Бессонницу", + "celestria.midnightconfig.enableShootingStars": "Включить Падающие Звёзды", "celestria.midnightconfig.insomniaChance": "Шанс Бессонницы", - "celestria.midnightconfig.insomniaMessages": "Сообщение при Бессоннице", "celestria.midnightconfig.insomniaDuration": "Длительность Эффекта Бессонницы", + "celestria.midnightconfig.insomniaMessages": "Сообщение при Бессоннице", + "celestria.midnightconfig.sendChatMessages": "Отправлять Сообщения в Чате о Событиях", + "celestria.midnightconfig.shootingStarChance": "Шанс Падающей Звезды", + "celestria.midnightconfig.shootingStarDistance": "Расстояние", + "celestria.midnightconfig.shootingStarDistance.tooltip": "Регулировка расстояния может улучшить поддержку шейдеров", + "celestria.midnightconfig.shootingStarLuckDuration": "Длительность Эффекта Удачи от Падающей Звезды", + "celestria.midnightconfig.shootingStarMaxSize": "Max Size", + "celestria.midnightconfig.shootingStarMessages": "Сообщение о Падающей Звезде", + "celestria.midnightconfig.shootingStarMinSize": "Min Size", + "celestria.midnightconfig.shootingStarPathLength": "Path Length", + "celestria.midnightconfig.shootingStarPhaseCycle": "Phase Cycle Duration (in ticks)", + "celestria.midnightconfig.shootingStarSpeed": "Скорость", + "celestria.midnightconfig.title": "Настройки Celestria", "celestria.shootingStar.1": "§eО, гляди! Появилась падающая звезда и благословила тебя удачей!", "celestria.shootingStar.2": "§6Вау, появилась падающая звезда, загадай желание!", "celestria.shootingStar.3": "§2♪ Можем ли мы представить, что самолеты в ночном небе походят на падающие звезды...... ♫", - "celestria.insomnia.1": "§cТы боишься полнолуния, поэтому не можешь найти себе покоя...", - "celestria.insomnia.2": "§3Ауууууууу... Ты слышишь странные звуки издалека и не можешь закрыть глаза", "effect.celestria.insomnia": "Бессонница" -} +} \ No newline at end of file diff --git a/common/src/main/resources/assets/celestria/textures/environment/shooting_star1.png b/common/src/main/resources/assets/celestria/textures/environment/shooting_star1.png index b0d3396..01e7ab5 100644 Binary files a/common/src/main/resources/assets/celestria/textures/environment/shooting_star1.png and b/common/src/main/resources/assets/celestria/textures/environment/shooting_star1.png differ diff --git a/common/src/main/resources/assets/celestria/textures/environment/shooting_star2.png b/common/src/main/resources/assets/celestria/textures/environment/shooting_star2.png index 6c3e927..680f527 100644 Binary files a/common/src/main/resources/assets/celestria/textures/environment/shooting_star2.png and b/common/src/main/resources/assets/celestria/textures/environment/shooting_star2.png differ diff --git a/common/src/main/resources/assets/celestria/textures/environment/shooting_star3.png b/common/src/main/resources/assets/celestria/textures/environment/shooting_star3.png index be8902f..9f384fd 100644 Binary files a/common/src/main/resources/assets/celestria/textures/environment/shooting_star3.png and b/common/src/main/resources/assets/celestria/textures/environment/shooting_star3.png differ diff --git a/common/src/main/resources/assets/celestria/textures/environment/shooting_star4.png b/common/src/main/resources/assets/celestria/textures/environment/shooting_star4.png index 382cc0f..37efa03 100644 Binary files a/common/src/main/resources/assets/celestria/textures/environment/shooting_star4.png and b/common/src/main/resources/assets/celestria/textures/environment/shooting_star4.png differ diff --git a/common/src/main/resources/celestria.mixins.json b/common/src/main/resources/celestria.mixins.json index b6e3fcb..cca6cab 100755 --- a/common/src/main/resources/celestria.mixins.json +++ b/common/src/main/resources/celestria.mixins.json @@ -3,7 +3,7 @@ "package": "eu.midnightdust.celestria.mixin", "compatibilityLevel": "JAVA_17", "client": [ - "MixinWorldRenderer" + "MixinSkyRendering" ], "mixins": [ "MixinBedBlock" diff --git a/gradle.properties b/gradle.properties index d99506b..1e89a7a 100755 --- a/gradle.properties +++ b/gradle.properties @@ -2,27 +2,24 @@ org.gradle.parallel=true org.gradle.jvmargs=-Xmx2048M -minecraft_version=1.21 -supported_versions=1.21.1 -yarn_mappings=1.21+build.2 +minecraft_version=1.21.6 +supported_versions=1.21.6 +yarn_mappings=1.21.6+build.1 enabled_platforms=fabric,neoforge archives_base_name=celestria -mod_version=2.0.0 +mod_version=2.0.1-rc.1 maven_group=eu.midnightdust release_type=release curseforge_id=1085811 modrinth_id=GoCfVRkX # Configure the IDs here after creating the projects on the websites -midnightlib_version=1.5.8 +midnightlib_version=1.7.5+1.21.6 -fabric_loader_version=0.15.11 -fabric_api_version=0.100.1+1.21 -polymer_version=0.9.6+1.21 +fabric_loader_version=0.16.14 +fabric_api_version=0.127.1+1.21.6 +polymer_version=0.13.1+1.21.6 -neoforge_version=21.0.143 -yarn_mappings_patch_neoforge_version = 1.21+build.4 - -quilt_loader_version=0.19.0-beta.18 -quilt_fabric_api_version=7.0.1+0.83.0-1.20 +neoforge_version=21.6.11-beta +yarn_mappings_patch_neoforge_version=1.21+build.4 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 19cfad9..96d8316 100755 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip +distributionUrl=https://mirrors.aliyun.com/gradle/distributions/v8.13.0/gradle-8.13-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/neoforge/src/main/resources/META-INF/neoforge.mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml index 9f794f4..126275f 100644 --- a/neoforge/src/main/resources/META-INF/neoforge.mods.toml +++ b/neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -19,14 +19,14 @@ config = "celestria.mixins.json" [[dependencies.celestria]] modId = "neoforge" mandatory = true -versionRange = "[21.0,)" +versionRange = "[21.6,)" ordering = "NONE" side = "BOTH" [[dependencies.celestria]] modId = "minecraft" mandatory = true -versionRange = "[1.21,)" +versionRange = "[1.21.6,)" ordering = "NONE" side = "BOTH"