[CHORE] Update porting patches
This commit is contained in:
@@ -1 +1 @@
|
|||||||
ce16c08760cf548e5c6a3d698a4f4a3c31f7aca1
|
843f23b9c72c71b2ac99a9f3b874a4613462980e
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,11 +9,10 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,14 +9,10 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
-
|
-
|
||||||
@@ -14,21 +25,32 @@
|
|||||||
|
|
||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
@@ -23,11 +22,11 @@
|
@@ -28,30 +22,20 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,7 +35,7 @@
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
// sent back to discord. This should help fix those issues
|
||||||
public static Component safeCopy(Component inComponent) {
|
public static Component safeCopy(Component inComponent) {
|
||||||
String value = inComponent.getString();
|
String value = inComponent.getString();
|
||||||
Style style = inComponent.getStyle();
|
Style style = inComponent.getStyle();
|
||||||
@@ -37,7 +59,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static String strip(String inString, String... toStrip) {
|
public static String strip(String inString, String... toStrip) {
|
||||||
@@ -65,7 +64,7 @@
|
@@ -80,7 +64,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component resolve(String component, boolean formatted) {
|
public static net.kyori.adventure.text.Component resolve(String component, boolean formatted) {
|
||||||
@@ -46,7 +68,7 @@
|
|||||||
if (formatted) {
|
if (formatted) {
|
||||||
returnVal = MinecraftSerializer.INSTANCE.serialize(component);
|
returnVal = MinecraftSerializer.INSTANCE.serialize(component);
|
||||||
}
|
}
|
||||||
@@ -93,7 +92,7 @@
|
@@ -108,7 +92,7 @@
|
||||||
if (identifier == null)
|
if (identifier == null)
|
||||||
return net.kyori.adventure.text.Component.text("Unknown");
|
return net.kyori.adventure.text.Component.text("Unknown");
|
||||||
|
|
||||||
|
@@ -1,35 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,59 +1,0 @@
|
@@ -1,41 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib;
|
-package com.hypherionmc.craterlib;
|
||||||
-
|
-
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
-import com.hypherionmc.craterlib.compat.Vanish;
|
-import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
-import net.neoforged.bus.api.IEventBus;
|
-import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
-import net.neoforged.fml.common.Mod;
|
-import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
-import net.neoforged.fml.loading.FMLLoader;
|
-import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
-import net.neoforged.neoforge.common.NeoForge;
|
-import net.neoforged.neoforge.common.NeoForge;
|
||||||
-
|
-
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
-@Mod(CraterConstants.MOD_ID)
|
-@Mod(CraterConstants.MOD_ID)
|
||||||
-public class CraterLib {
|
-public class CraterLib {
|
||||||
-
|
-
|
||||||
@@ -38,6 +26,7 @@
|
|||||||
- public CraterLib(IEventBus eventBus) {
|
- public CraterLib(IEventBus eventBus) {
|
||||||
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
- eventBus.addListener(this::commonSetup);
|
- eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
-
|
-
|
||||||
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
@@ -47,16 +36,9 @@
|
|||||||
-
|
-
|
||||||
- public void commonSetup(FMLCommonSetupEvent evt) {
|
- public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
- new CraterPacketNetwork(handler);
|
- new CraterPacketNetwork(handler);
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
- }
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
-
|
-
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- NeoForgeClientHelper.registerClient();
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
- }
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,14 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,40 +1,0 @@
|
@@ -1,61 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib.client;
|
-package com.hypherionmc.craterlib.client;
|
||||||
-
|
-
|
||||||
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||||
|
-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.ClientPlatform;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
-import net.minecraft.client.Minecraft;
|
-import net.minecraft.client.Minecraft;
|
||||||
-import net.minecraft.network.Connection;
|
-import net.minecraft.network.Connection;
|
||||||
|
-import net.neoforged.fml.ModList;
|
||||||
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
-
|
-
|
||||||
-import java.util.Objects;
|
-import java.util.Objects;
|
||||||
-
|
-
|
||||||
@@ -40,4 +49,16 @@
|
|||||||
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
- return Minecraft.getInstance().getConnection().getConnection();
|
- return Minecraft.getInstance().getConnection().getConnection();
|
||||||
- }
|
- }
|
||||||
|
-
|
||||||
|
- public static void registerClient() {
|
||||||
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
-
|
||||||
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
|
- }
|
||||||
|
- });
|
||||||
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,12 +9,9 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,15 +9,9 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
|
|
||||||
@@ -13,17 +24,28 @@
|
|||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
||||||
@@ -23,11 +20,11 @@
|
@@ -28,22 +20,12 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
@@ -1,35 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,59 +1,0 @@
|
@@ -1,41 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib;
|
-package com.hypherionmc.craterlib;
|
||||||
-
|
-
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
-import com.hypherionmc.craterlib.compat.Vanish;
|
-import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
-import net.neoforged.bus.api.IEventBus;
|
-import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
-import net.neoforged.fml.common.Mod;
|
-import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
-import net.neoforged.fml.loading.FMLLoader;
|
-import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
-import net.neoforged.neoforge.common.NeoForge;
|
-import net.neoforged.neoforge.common.NeoForge;
|
||||||
-
|
-
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
-@Mod(CraterConstants.MOD_ID)
|
-@Mod(CraterConstants.MOD_ID)
|
||||||
-public class CraterLib {
|
-public class CraterLib {
|
||||||
-
|
-
|
||||||
@@ -38,6 +26,7 @@
|
|||||||
- public CraterLib(IEventBus eventBus) {
|
- public CraterLib(IEventBus eventBus) {
|
||||||
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
- eventBus.addListener(this::commonSetup);
|
- eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
-
|
-
|
||||||
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
@@ -47,16 +36,9 @@
|
|||||||
-
|
-
|
||||||
- public void commonSetup(FMLCommonSetupEvent evt) {
|
- public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
- new CraterPacketNetwork(handler);
|
- new CraterPacketNetwork(handler);
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
- }
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
-
|
-
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- NeoForgeClientHelper.registerClient();
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
- }
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,14 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,40 +1,0 @@
|
@@ -1,61 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib.client;
|
-package com.hypherionmc.craterlib.client;
|
||||||
-
|
-
|
||||||
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||||
|
-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.ClientPlatform;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
-import net.minecraft.client.Minecraft;
|
-import net.minecraft.client.Minecraft;
|
||||||
-import net.minecraft.network.Connection;
|
-import net.minecraft.network.Connection;
|
||||||
|
-import net.neoforged.fml.ModList;
|
||||||
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
-
|
-
|
||||||
-import java.util.Objects;
|
-import java.util.Objects;
|
||||||
-
|
-
|
||||||
@@ -40,4 +49,16 @@
|
|||||||
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
- return Minecraft.getInstance().getConnection().getConnection();
|
- return Minecraft.getInstance().getConnection().getConnection();
|
||||||
- }
|
- }
|
||||||
|
-
|
||||||
|
- public static void registerClient() {
|
||||||
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
-
|
||||||
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
|
- }
|
||||||
|
- });
|
||||||
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,12 +9,9 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,15 +9,9 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
|
|
||||||
@@ -13,17 +24,28 @@
|
|||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
||||||
@@ -23,11 +20,11 @@
|
@@ -28,22 +20,12 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
@@ -1,35 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,59 +1,0 @@
|
@@ -1,41 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib;
|
-package com.hypherionmc.craterlib;
|
||||||
-
|
-
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
-import com.hypherionmc.craterlib.compat.Vanish;
|
-import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
-import net.neoforged.bus.api.IEventBus;
|
-import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
-import net.neoforged.fml.common.Mod;
|
-import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
-import net.neoforged.fml.loading.FMLLoader;
|
-import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
-import net.neoforged.neoforge.common.NeoForge;
|
-import net.neoforged.neoforge.common.NeoForge;
|
||||||
-
|
-
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
-@Mod(CraterConstants.MOD_ID)
|
-@Mod(CraterConstants.MOD_ID)
|
||||||
-public class CraterLib {
|
-public class CraterLib {
|
||||||
-
|
-
|
||||||
@@ -38,6 +26,7 @@
|
|||||||
- public CraterLib(IEventBus eventBus) {
|
- public CraterLib(IEventBus eventBus) {
|
||||||
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
- eventBus.addListener(this::commonSetup);
|
- eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
-
|
-
|
||||||
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
@@ -47,16 +36,9 @@
|
|||||||
-
|
-
|
||||||
- public void commonSetup(FMLCommonSetupEvent evt) {
|
- public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
- new CraterPacketNetwork(handler);
|
- new CraterPacketNetwork(handler);
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
- }
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
-
|
-
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- NeoForgeClientHelper.registerClient();
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
- }
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,14 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,40 +1,0 @@
|
@@ -1,61 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib.client;
|
-package com.hypherionmc.craterlib.client;
|
||||||
-
|
-
|
||||||
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||||
|
-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.ClientPlatform;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
-import net.minecraft.client.Minecraft;
|
-import net.minecraft.client.Minecraft;
|
||||||
-import net.minecraft.network.Connection;
|
-import net.minecraft.network.Connection;
|
||||||
|
-import net.neoforged.fml.ModList;
|
||||||
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
-
|
-
|
||||||
-import java.util.Objects;
|
-import java.util.Objects;
|
||||||
-
|
-
|
||||||
@@ -40,4 +49,16 @@
|
|||||||
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
- return Minecraft.getInstance().getConnection().getConnection();
|
- return Minecraft.getInstance().getConnection().getConnection();
|
||||||
- }
|
- }
|
||||||
|
-
|
||||||
|
- public static void registerClient() {
|
||||||
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
-
|
||||||
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
|
- }
|
||||||
|
- });
|
||||||
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,12 +9,9 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,15 +9,9 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
|
|
||||||
@@ -13,17 +24,28 @@
|
|||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
||||||
@@ -23,11 +20,11 @@
|
@@ -28,22 +20,12 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
@@ -1,35 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,59 +1,0 @@
|
@@ -1,41 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib;
|
-package com.hypherionmc.craterlib;
|
||||||
-
|
-
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
-import com.hypherionmc.craterlib.compat.Vanish;
|
-import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
-import net.neoforged.bus.api.IEventBus;
|
-import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
-import net.neoforged.fml.common.Mod;
|
-import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
-import net.neoforged.fml.loading.FMLLoader;
|
-import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
-import net.neoforged.neoforge.common.NeoForge;
|
-import net.neoforged.neoforge.common.NeoForge;
|
||||||
-
|
-
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
-@Mod(CraterConstants.MOD_ID)
|
-@Mod(CraterConstants.MOD_ID)
|
||||||
-public class CraterLib {
|
-public class CraterLib {
|
||||||
-
|
-
|
||||||
@@ -38,6 +26,7 @@
|
|||||||
- public CraterLib(IEventBus eventBus) {
|
- public CraterLib(IEventBus eventBus) {
|
||||||
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
- eventBus.addListener(this::commonSetup);
|
- eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
-
|
-
|
||||||
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
@@ -47,16 +36,9 @@
|
|||||||
-
|
-
|
||||||
- public void commonSetup(FMLCommonSetupEvent evt) {
|
- public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
- new CraterPacketNetwork(handler);
|
- new CraterPacketNetwork(handler);
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
- }
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
-
|
-
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- NeoForgeClientHelper.registerClient();
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
- }
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,14 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,40 +1,0 @@
|
@@ -1,61 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib.client;
|
-package com.hypherionmc.craterlib.client;
|
||||||
-
|
-
|
||||||
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||||
|
-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.ClientPlatform;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
-import net.minecraft.client.Minecraft;
|
-import net.minecraft.client.Minecraft;
|
||||||
-import net.minecraft.network.Connection;
|
-import net.minecraft.network.Connection;
|
||||||
|
-import net.neoforged.fml.ModList;
|
||||||
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
-
|
-
|
||||||
-import java.util.Objects;
|
-import java.util.Objects;
|
||||||
-
|
-
|
||||||
@@ -40,4 +49,16 @@
|
|||||||
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
- return Minecraft.getInstance().getConnection().getConnection();
|
- return Minecraft.getInstance().getConnection().getConnection();
|
||||||
- }
|
- }
|
||||||
|
-
|
||||||
|
- public static void registerClient() {
|
||||||
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
-
|
||||||
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
|
- }
|
||||||
|
- });
|
||||||
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,12 +9,9 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,15 +9,9 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
|
|
||||||
@@ -13,17 +24,28 @@
|
|||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
||||||
@@ -23,11 +20,11 @@
|
@@ -28,22 +20,12 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
@@ -1,46 +1,48 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ b/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
+++ b/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
@@ -1,12 +1,8 @@
|
@@ -1,17 +1,21 @@
|
||||||
package com.hypherionmc.craterlib;
|
package com.hypherionmc.craterlib;
|
||||||
|
|
||||||
import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
+import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
import com.hypherionmc.craterlib.compat.Vanish;
|
import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
+import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
@@ -17,16 +13,12 @@
|
import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
import net.minecraft.client.Minecraft;
|
import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
|
+import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
+import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
|
+import net.minecraft.client.Minecraft;
|
||||||
import net.neoforged.bus.api.IEventBus;
|
import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
import net.neoforged.fml.common.Mod;
|
import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
import net.neoforged.fml.loading.FMLEnvironment;
|
+import net.neoforged.fml.loading.FMLEnvironment;
|
||||||
import net.neoforged.fml.loading.FMLLoader;
|
import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
import net.neoforged.neoforge.common.NeoForge;
|
import net.neoforged.neoforge.common.NeoForge;
|
||||||
|
|
||||||
-import java.util.Optional;
|
@@ -23,7 +27,6 @@
|
||||||
-
|
public CraterLib(IEventBus eventBus) {
|
||||||
@Mod(CraterConstants.MOD_ID)
|
NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
public class CraterLib {
|
eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
|
handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
|
|
||||||
@@ -47,13 +39,6 @@
|
if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
if (FMLEnvironment.dist.isClient()) {
|
@@ -33,9 +36,9 @@
|
||||||
LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
CraterEventBus.INSTANCE.postEvent(event);
|
public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
-
|
new CraterPacketNetwork(handler);
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
- }
|
||||||
- });
|
-
|
||||||
}
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
|
- NeoForgeClientHelper.registerClient();
|
||||||
|
+ if (FMLEnvironment.dist.isClient()) {
|
||||||
|
+ LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
+ CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
+ }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,41 +1,41 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ b/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
+++ b/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
@@ -1,11 +1,20 @@
|
@@ -1,20 +1,11 @@
|
||||||
package com.hypherionmc.craterlib.client;
|
package com.hypherionmc.craterlib.client;
|
||||||
|
|
||||||
+import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
+import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
+import com.hypherionmc.craterlib.core.config.ConfigController;
|
-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.NoConfigScreen;
|
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
||||||
+import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
||||||
import com.hypherionmc.craterlib.core.platform.ClientPlatform;
|
import com.hypherionmc.craterlib.core.platform.ClientPlatform;
|
||||||
import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
+import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.network.Connection;
|
import net.minecraft.network.Connection;
|
||||||
+import net.neoforged.fml.ModList;
|
-import net.neoforged.fml.ModList;
|
||||||
+import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
@@ -36,5 +45,17 @@
|
@@ -45,17 +36,5 @@
|
||||||
public Connection getClientConnection() {
|
public Connection getClientConnection() {
|
||||||
Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
return Minecraft.getInstance().getConnection().getConnection();
|
return Minecraft.getInstance().getConnection().getConnection();
|
||||||
+ }
|
- }
|
||||||
+
|
-
|
||||||
+ public static void registerClient() {
|
- public static void registerClient() {
|
||||||
+ LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
+ CraterEventBus.INSTANCE.postEvent(event);
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
+
|
-
|
||||||
+ ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
+ if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
+ ModuleConfig config = (ModuleConfig) conf;
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
+ ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
+ }
|
- }
|
||||||
+ });
|
- });
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -9,7 +9,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
public ResourceIdentifier(String path) {
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
- this.internal = ResourceLocation.parse(path);
|
||||||
+ this.internal = new ResourceLocation(path);
|
+ this.internal = new ResourceLocation(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,10 +1,21 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
||||||
@@ -9,12 +9,9 @@
|
@@ -1,7 +1,5 @@
|
||||||
|
package com.hypherionmc.craterlib.utils;
|
||||||
|
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
||||||
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
|
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
||||||
|
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
||||||
|
@@ -11,15 +9,9 @@
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.SharedConstants;
|
import net.minecraft.SharedConstants;
|
||||||
import net.minecraft.Util;
|
import net.minecraft.Util;
|
||||||
|
-import net.minecraft.client.Minecraft;
|
||||||
|
-import net.minecraft.core.HolderLookup;
|
||||||
-import net.minecraft.core.RegistryAccess;
|
-import net.minecraft.core.RegistryAccess;
|
||||||
|
-import net.minecraft.data.registries.VanillaRegistries;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.Style;
|
import net.minecraft.network.chat.Style;
|
||||||
|
|
||||||
@@ -13,17 +24,28 @@
|
|||||||
public class ChatUtils {
|
public class ChatUtils {
|
||||||
|
|
||||||
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
private static final GsonComponentSerializer adventureSerializer = GsonComponentSerializer.builder().options(
|
||||||
@@ -23,11 +20,11 @@
|
@@ -28,22 +20,12 @@
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
final String serialised = adventureSerializer.serialize(inComponent);
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
- return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
||||||
+ return Component.Serializer.fromJson(serialised);
|
+ return Component.Serializer.fromJson(serialised);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
- final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent);
|
+ final String serialised = Component.Serializer.toJson(inComponent);
|
||||||
return adventureSerializer.deserialize(serialised);
|
return adventureSerializer.deserialize(serialised);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private static HolderLookup.Provider getRegistryLookup() {
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
||||||
|
- return Minecraft.getInstance().level.registryAccess();
|
||||||
|
-
|
||||||
|
- if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
||||||
|
- return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
||||||
|
-
|
||||||
|
- return RegistryAccess.EMPTY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some text components contain duplicate text, resulting in duplicate messages
|
||||||
|
@@ -1,35 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,59 +1,0 @@
|
@@ -1,41 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib;
|
-package com.hypherionmc.craterlib;
|
||||||
-
|
-
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
-import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
-import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
||||||
-import com.hypherionmc.craterlib.compat.Vanish;
|
-import com.hypherionmc.craterlib.compat.Vanish;
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
-import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
||||||
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
-import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
||||||
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
-import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
||||||
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
-import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
||||||
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
-import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
-import net.neoforged.bus.api.IEventBus;
|
-import net.neoforged.bus.api.IEventBus;
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
-import net.neoforged.fml.common.Mod;
|
-import net.neoforged.fml.common.Mod;
|
||||||
|
-import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
-import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
-import net.neoforged.fml.loading.FMLLoader;
|
-import net.neoforged.fml.loading.FMLLoader;
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
-import net.neoforged.neoforge.common.NeoForge;
|
-import net.neoforged.neoforge.common.NeoForge;
|
||||||
-
|
-
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
-@Mod(CraterConstants.MOD_ID)
|
-@Mod(CraterConstants.MOD_ID)
|
||||||
-public class CraterLib {
|
-public class CraterLib {
|
||||||
-
|
-
|
||||||
@@ -38,6 +26,7 @@
|
|||||||
- public CraterLib(IEventBus eventBus) {
|
- public CraterLib(IEventBus eventBus) {
|
||||||
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
- NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
||||||
- eventBus.addListener(this::commonSetup);
|
- eventBus.addListener(this::commonSetup);
|
||||||
|
- eventBus.addListener(this::clientSetup);
|
||||||
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
- handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
||||||
-
|
-
|
||||||
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
- if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
||||||
@@ -47,16 +36,9 @@
|
|||||||
-
|
-
|
||||||
- public void commonSetup(FMLCommonSetupEvent evt) {
|
- public void commonSetup(FMLCommonSetupEvent evt) {
|
||||||
- new CraterPacketNetwork(handler);
|
- new CraterPacketNetwork(handler);
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
- }
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
-
|
-
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
- public void clientSetup(FMLClientSetupEvent evt) {
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
- NeoForgeClientHelper.registerClient();
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
- }
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,14 +1,23 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/client/NeoForgeClientHelper.java
|
||||||
+++ /dev/null
|
+++ /dev/null
|
||||||
@@ -1,40 +1,0 @@
|
@@ -1,61 +1,0 @@
|
||||||
-package com.hypherionmc.craterlib.client;
|
-package com.hypherionmc.craterlib.client;
|
||||||
-
|
-
|
||||||
|
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
||||||
|
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
||||||
|
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
||||||
|
-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.ClientPlatform;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
||||||
|
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
||||||
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
-import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
|
||||||
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
-import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
-import net.minecraft.client.Minecraft;
|
-import net.minecraft.client.Minecraft;
|
||||||
-import net.minecraft.network.Connection;
|
-import net.minecraft.network.Connection;
|
||||||
|
-import net.neoforged.fml.ModList;
|
||||||
|
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
||||||
-
|
-
|
||||||
-import java.util.Objects;
|
-import java.util.Objects;
|
||||||
-
|
-
|
||||||
@@ -40,4 +49,16 @@
|
|||||||
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
- Objects.requireNonNull(Minecraft.getInstance().getConnection(), "Cannot send packets when not in game!");
|
||||||
- return Minecraft.getInstance().getConnection().getConnection();
|
- return Minecraft.getInstance().getConnection().getConnection();
|
||||||
- }
|
- }
|
||||||
|
-
|
||||||
|
- public static void registerClient() {
|
||||||
|
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
||||||
|
- CraterEventBus.INSTANCE.postEvent(event);
|
||||||
|
-
|
||||||
|
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
||||||
|
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
||||||
|
- ModuleConfig config = (ModuleConfig) conf;
|
||||||
|
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
||||||
|
- }
|
||||||
|
- });
|
||||||
|
- }
|
||||||
-}
|
-}
|
||||||
|
@@ -1,11 +0,0 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/resources/ResourceIdentifier.java
|
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/resources/ResourceIdentifier.java
|
|
||||||
@@ -11,7 +11,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
public ResourceIdentifier(String path) {
|
|
||||||
- this.internal = ResourceLocation.withDefaultNamespace(path);
|
|
||||||
+ this.internal = ResourceLocation.parse(path);
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getNamespace() {
|
|
@@ -1,46 +0,0 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/utils/ChatUtils.java
|
|
||||||
@@ -1,5 +1,7 @@
|
|
||||||
package com.hypherionmc.craterlib.utils;
|
|
||||||
|
|
||||||
+import com.hypherionmc.craterlib.core.platform.CommonPlatform;
|
|
||||||
+import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
|
||||||
import com.hypherionmc.craterlib.nojang.resources.ResourceIdentifier;
|
|
||||||
import me.hypherionmc.mcdiscordformatter.discord.DiscordSerializer;
|
|
||||||
import me.hypherionmc.mcdiscordformatter.minecraft.MinecraftSerializer;
|
|
||||||
@@ -9,7 +11,10 @@
|
|
||||||
import net.minecraft.ChatFormatting;
|
|
||||||
import net.minecraft.SharedConstants;
|
|
||||||
import net.minecraft.Util;
|
|
||||||
+import net.minecraft.client.Minecraft;
|
|
||||||
+import net.minecraft.core.HolderLookup;
|
|
||||||
import net.minecraft.core.RegistryAccess;
|
|
||||||
+import net.minecraft.data.registries.VanillaRegistries;
|
|
||||||
import net.minecraft.network.chat.Component;
|
|
||||||
import net.minecraft.network.chat.Style;
|
|
||||||
|
|
||||||
@@ -23,12 +28,22 @@
|
|
||||||
|
|
||||||
public static Component adventureToMojang(net.kyori.adventure.text.Component inComponent) {
|
|
||||||
final String serialised = adventureSerializer.serialize(inComponent);
|
|
||||||
- return Component.Serializer.fromJson(serialised, RegistryAccess.EMPTY);
|
|
||||||
+ return Component.Serializer.fromJson(serialised, getRegistryLookup());
|
|
||||||
}
|
|
||||||
|
|
||||||
public static net.kyori.adventure.text.Component mojangToAdventure(Component inComponent) {
|
|
||||||
- final String serialised = Component.Serializer.toJson(inComponent, RegistryAccess.EMPTY);
|
|
||||||
+ final String serialised = Component.Serializer.toJson(inComponent, getRegistryLookup());
|
|
||||||
return adventureSerializer.deserialize(serialised);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ private static HolderLookup.Provider getRegistryLookup() {
|
|
||||||
+ if (ModloaderEnvironment.INSTANCE.getEnvironment().isClient() && Minecraft.getInstance().level != null)
|
|
||||||
+ return Minecraft.getInstance().level.registryAccess();
|
|
||||||
+
|
|
||||||
+ if (ModloaderEnvironment.INSTANCE.getEnvironment().isServer() && CommonPlatform.INSTANCE.getMCServer() != null)
|
|
||||||
+ return CommonPlatform.INSTANCE.getMCServer().toMojang().registryAccess();
|
|
||||||
+
|
|
||||||
+ return RegistryAccess.EMPTY;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Some text components contain duplicate text, resulting in duplicate messages
|
|
@@ -1,65 +0,0 @@
|
|||||||
--- a/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
|
||||||
+++ b/NeoForge/src/main/java/com/hypherionmc/craterlib/CraterLib.java
|
|
||||||
@@ -1,32 +1,20 @@
|
|
||||||
package com.hypherionmc.craterlib;
|
|
||||||
|
|
||||||
-import com.hypherionmc.craterlib.api.events.client.LateInitEvent;
|
|
||||||
-import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
|
|
||||||
+import com.hypherionmc.craterlib.client.NeoForgeClientHelper;
|
|
||||||
import com.hypherionmc.craterlib.common.NeoForgeServerEvents;
|
|
||||||
import com.hypherionmc.craterlib.compat.Vanish;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ConfigController;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.ModuleConfig;
|
|
||||||
-import com.hypherionmc.craterlib.core.config.annotations.NoConfigScreen;
|
|
||||||
-import com.hypherionmc.craterlib.core.event.CraterEventBus;
|
|
||||||
import com.hypherionmc.craterlib.core.networking.CraterPacketNetwork;
|
|
||||||
import com.hypherionmc.craterlib.core.networking.PacketRegistry;
|
|
||||||
import com.hypherionmc.craterlib.core.networking.data.PacketSide;
|
|
||||||
import com.hypherionmc.craterlib.core.platform.ModloaderEnvironment;
|
|
||||||
import com.hypherionmc.craterlib.network.CraterNeoForgeNetworkHandler;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
|
|
||||||
-import com.hypherionmc.craterlib.nojang.client.BridgedOptions;
|
|
||||||
-import net.minecraft.client.Minecraft;
|
|
||||||
import net.neoforged.bus.api.IEventBus;
|
|
||||||
-import net.neoforged.fml.ModList;
|
|
||||||
import net.neoforged.fml.common.Mod;
|
|
||||||
+import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
|
|
||||||
import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent;
|
|
||||||
-import net.neoforged.fml.loading.FMLEnvironment;
|
|
||||||
import net.neoforged.fml.loading.FMLLoader;
|
|
||||||
-import net.neoforged.neoforge.client.gui.IConfigScreenFactory;
|
|
||||||
import net.neoforged.neoforge.common.NeoForge;
|
|
||||||
|
|
||||||
-import java.util.Optional;
|
|
||||||
-
|
|
||||||
@Mod(CraterConstants.MOD_ID)
|
|
||||||
public class CraterLib {
|
|
||||||
|
|
||||||
@@ -35,6 +23,7 @@
|
|
||||||
public CraterLib(IEventBus eventBus) {
|
|
||||||
NeoForge.EVENT_BUS.register(new NeoForgeServerEvents());
|
|
||||||
eventBus.addListener(this::commonSetup);
|
|
||||||
+ eventBus.addListener(this::clientSetup);
|
|
||||||
handler = new CraterNeoForgeNetworkHandler(FMLLoader.getDist().isClient() ? PacketSide.CLIENT : PacketSide.SERVER);
|
|
||||||
|
|
||||||
if (ModloaderEnvironment.INSTANCE.isModLoaded("vmod")) {
|
|
||||||
@@ -44,16 +33,9 @@
|
|
||||||
|
|
||||||
public void commonSetup(FMLCommonSetupEvent evt) {
|
|
||||||
new CraterPacketNetwork(handler);
|
|
||||||
- if (FMLEnvironment.dist.isClient()) {
|
|
||||||
- LateInitEvent event = new LateInitEvent(new BridgedMinecraft(), BridgedOptions.of(Minecraft.getInstance().options));
|
|
||||||
- CraterEventBus.INSTANCE.postEvent(event);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- ConfigController.getMonitoredConfigs().forEach((conf, watcher) -> {
|
|
||||||
- if (!conf.getClass().isAnnotationPresent(NoConfigScreen.class)) {
|
|
||||||
- ModuleConfig config = (ModuleConfig) conf;
|
|
||||||
- ModList.get().getModContainerById(config.getModId()).ifPresent(c -> c.registerExtensionPoint(IConfigScreenFactory.class, ((minecraft, screen) -> new CraterConfigScreen(config, screen))));
|
|
||||||
- }
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
+ public void clientSetup(FMLClientSetupEvent evt) {
|
|
||||||
+ NeoForgeClientHelper.registerClient();
|
|
||||||
}
|
|
||||||
}
|
|
Reference in New Issue
Block a user