[MAJOR] Implement new NOJANG modding system

This commit is contained in:
2024-05-01 13:26:18 +02:00
parent 76bc39ec33
commit bcbf91b39f
112 changed files with 1336 additions and 920 deletions

View File

@@ -1,8 +1,9 @@
package com.hypherionmc.craterlib.client;
import com.hypherionmc.craterlib.CraterConstants;
import com.hypherionmc.craterlib.api.event.client.CraterClientTickEvent;
import com.hypherionmc.craterlib.api.events.client.CraterClientTickEvent;
import com.hypherionmc.craterlib.core.event.CraterEventBus;
import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
import net.minecraft.client.Minecraft;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.SubscribeEvent;
@@ -14,7 +15,7 @@ public class NeoForgeClientEvents {
@SubscribeEvent
public static void clientTick(TickEvent.LevelTickEvent event) {
CraterClientTickEvent craterClientTickEvent = new CraterClientTickEvent(Minecraft.getInstance().level);
CraterClientTickEvent craterClientTickEvent = new CraterClientTickEvent(BridgedClientLevel.of(Minecraft.getInstance().level));
CraterEventBus.INSTANCE.postEvent(craterClientTickEvent);
}

View File

@@ -1,6 +1,9 @@
package com.hypherionmc.craterlib.client;
import com.hypherionmc.craterlib.core.platform.ClientPlatform;
import com.hypherionmc.craterlib.nojang.client.BridgedMinecraft;
import com.hypherionmc.craterlib.nojang.client.multiplayer.BridgedClientLevel;
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
import net.minecraft.client.Minecraft;
import net.minecraft.network.Connection;
import net.minecraft.world.entity.player.Player;
@@ -10,7 +13,6 @@ import java.util.Objects;
/**
* @author HypherionSA
* @date 16/06/2022
*/
public class NeoForgeClientHelper implements ClientPlatform {
@@ -18,18 +20,18 @@ public class NeoForgeClientHelper implements ClientPlatform {
}
@Override
public Minecraft getClientInstance() {
return Minecraft.getInstance();
public BridgedMinecraft getClientInstance() {
return new BridgedMinecraft();
}
@Override
public Player getClientPlayer() {
return Minecraft.getInstance().player;
public BridgedPlayer getClientPlayer() {
return BridgedPlayer.of(Minecraft.getInstance().player);
}
@Override
public Level getClientLevel() {
return Minecraft.getInstance().level;
public BridgedClientLevel getClientLevel() {
return BridgedClientLevel.of(Minecraft.getInstance().level);
}
@Override