From 1aab737fba636b16a4042e7d0543dede11a72280 Mon Sep 17 00:00:00 2001 From: "James (Jamalam)" Date: Wed, 21 Jun 2023 10:42:15 +0100 Subject: [PATCH] fix: crash on dedicated servers --- CHANGELOG.md | 2 +- gradle.properties | 4 ++-- .../jamalam360/tutorial/lib/CustomTutorialToast.java | 3 +++ .../java/io/github/jamalam360/tutorial/lib/Tutorial.java | 3 +++ .../io/github/jamalam360/tutorial/lib/TutorialLib.java | 9 ++++++--- .../io/github/jamalam360/tutorial/lib/stage/Stage.java | 3 +++ src/main/resources/fabric.mod.json | 4 ++-- 7 files changed, 20 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 767b728..a719685 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,3 @@ ## Changelog -- Fix final tutorial stage constantly triggering after it has already been finished. +- Fix crash on dedicated servers. diff --git a/gradle.properties b/gradle.properties index 4fae27f..b010ca4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,8 +3,8 @@ org.gradle.parallel=true # Name of your built jar archive_base_name=tutorial-lib -mod_version=1.1.1+1.19.2 -release_name=V1.1.1 [1.19.2] +mod_version=1.1.2+1.19.2 +release_name=V1.1.2 [1.19.2] supported_versions=1.19.2 # Used for releasing GitHub releases diff --git a/src/main/java/io/github/jamalam360/tutorial/lib/CustomTutorialToast.java b/src/main/java/io/github/jamalam360/tutorial/lib/CustomTutorialToast.java index 8bc093b..663129b 100644 --- a/src/main/java/io/github/jamalam360/tutorial/lib/CustomTutorialToast.java +++ b/src/main/java/io/github/jamalam360/tutorial/lib/CustomTutorialToast.java @@ -26,6 +26,8 @@ import com.mojang.blaze3d.systems.RenderSystem; import java.util.List; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.DrawableHelper; import net.minecraft.client.render.GameRenderer; @@ -43,6 +45,7 @@ * A copy of {@link TutorialToast} which allows custom textures and dynamically expands to fit its content. * Textures must be 256x256. */ +@Environment(EnvType.CLIENT) public class CustomTutorialToast extends TutorialToast implements ToastDuck { private static final int TEXT_LEFT_MARGIN = 30; diff --git a/src/main/java/io/github/jamalam360/tutorial/lib/Tutorial.java b/src/main/java/io/github/jamalam360/tutorial/lib/Tutorial.java index fb2b78e..bcd0729 100644 --- a/src/main/java/io/github/jamalam360/tutorial/lib/Tutorial.java +++ b/src/main/java/io/github/jamalam360/tutorial/lib/Tutorial.java @@ -25,6 +25,8 @@ package io.github.jamalam360.tutorial.lib; import io.github.jamalam360.tutorial.lib.stage.Stage; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.minecraft.client.MinecraftClient; import net.minecraft.client.tutorial.TutorialManager; import org.jetbrains.annotations.ApiStatus; @@ -35,6 +37,7 @@ * * @see Stage */ +@Environment(EnvType.CLIENT) public class Tutorial { private final Stage[] stages; diff --git a/src/main/java/io/github/jamalam360/tutorial/lib/TutorialLib.java b/src/main/java/io/github/jamalam360/tutorial/lib/TutorialLib.java index 687f78a..8b9c7d7 100644 --- a/src/main/java/io/github/jamalam360/tutorial/lib/TutorialLib.java +++ b/src/main/java/io/github/jamalam360/tutorial/lib/TutorialLib.java @@ -27,7 +27,9 @@ import io.github.jamalam360.tutorial.lib.stage.DelayedStage; import java.util.List; import java.util.stream.Collectors; -import net.fabricmc.api.ModInitializer; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder; import net.minecraft.client.MinecraftClient; @@ -40,7 +42,8 @@ /** * @see Tutorial */ -public class TutorialLib implements ModInitializer { +@Environment(EnvType.CLIENT) +public class TutorialLib implements ClientModInitializer { public static final String MOD_ID = "tutorial-lib"; public static final Registry TUTORIAL_REGISTRY = FabricRegistryBuilder @@ -57,7 +60,7 @@ public static Identifier idOf(String path) { } @Override - public void onInitialize() { + public void onInitializeClient() { ClientTickEvents.END_WORLD_TICK.register(world -> { for (Tutorial tutorial : getTutorials()) { if (tutorial.getCurrentStage() instanceof DelayedStage delayedStage diff --git a/src/main/java/io/github/jamalam360/tutorial/lib/stage/Stage.java b/src/main/java/io/github/jamalam360/tutorial/lib/stage/Stage.java index ff946bb..df4ee4f 100644 --- a/src/main/java/io/github/jamalam360/tutorial/lib/stage/Stage.java +++ b/src/main/java/io/github/jamalam360/tutorial/lib/stage/Stage.java @@ -25,6 +25,8 @@ package io.github.jamalam360.tutorial.lib.stage; import io.github.jamalam360.tutorial.lib.ToastDuck; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; import net.minecraft.client.toast.TutorialToast; import net.minecraft.client.tutorial.TutorialManager; import org.jetbrains.annotations.ApiStatus; @@ -44,6 +46,7 @@ * * */ +@Environment(EnvType.CLIENT) public abstract class Stage { private final TutorialToast toast; diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index ee0b18e..cc1768b 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -13,10 +13,10 @@ }, "license": "MIT", "icon": "assets/tutorial-lib/icon.png", - "environment": "*", + "environment": "client", "accessWidener": "tutoriallib.accesswidener", "entrypoints": { - "main": [ + "client": [ "io.github.jamalam360.tutorial.lib.TutorialLib" ] },