mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 08:14:23 +01:00
Removed MixinMinecraftClient
This commit is contained in:
parent
3ee6109cac
commit
d590c8d9d6
3 changed files with 25 additions and 33 deletions
|
@ -3,6 +3,7 @@ package com.minelittlepony.client;
|
|||
import net.fabricmc.api.ClientModInitializer;
|
||||
import net.fabricmc.fabric.api.client.keybinding.FabricKeyBinding;
|
||||
import net.fabricmc.fabric.api.client.keybinding.KeyBindingRegistry;
|
||||
import net.fabricmc.fabric.api.event.client.ClientTickCallback;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
|
@ -21,14 +22,21 @@ import com.minelittlepony.client.settings.ClientPonyConfig;
|
|||
import com.minelittlepony.hdskins.mixin.MixinEntityRenderDispatcher;
|
||||
import com.minelittlepony.settings.JsonConfig;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.function.Function;
|
||||
|
||||
public class FabMod implements ClientModInitializer, IModUtilities {
|
||||
public class FabMod implements ClientModInitializer, ClientTickCallback, IModUtilities {
|
||||
|
||||
@Nullable
|
||||
private MineLPClient mlp;
|
||||
|
||||
private boolean firstTick = true;
|
||||
|
||||
@Override
|
||||
public void onInitializeClient() {
|
||||
MineLPClient mlp;
|
||||
ClientTickCallback.EVENT.register(this);
|
||||
|
||||
if (FabricLoader.getInstance().isModLoaded("hdskins")) {
|
||||
mlp = new MineLPHDSkins(this);
|
||||
|
@ -39,6 +47,21 @@ public class FabMod implements ClientModInitializer, IModUtilities {
|
|||
mlp.init(JsonConfig.of(getConfigDirectory().resolve("minelp.json"), ClientPonyConfig::new));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tick(MinecraftClient client) {
|
||||
if (mlp == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (firstTick) {
|
||||
firstTick = false;
|
||||
|
||||
mlp.postInit(client);
|
||||
} else {
|
||||
mlp.onTick(client, client.world != null && client.player != null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public KeyBinding registerKeybind(String category, int key, String bindName) {
|
||||
// normalize Fabric's behavior
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
package com.minelittlepony.client.mixin;
|
||||
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
import com.minelittlepony.client.MineLPClient;
|
||||
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.WindowEventHandler;
|
||||
import net.minecraft.util.NonBlockingThreadExecutor;
|
||||
import net.minecraft.util.snooper.SnooperListener;
|
||||
|
||||
@Mixin(MinecraftClient.class)
|
||||
public abstract class MixinMinecraftClient extends NonBlockingThreadExecutor<Runnable> implements SnooperListener, WindowEventHandler, AutoCloseable {
|
||||
|
||||
public MixinMinecraftClient() { super(null); }
|
||||
|
||||
@Inject(method = "init()V", at = @At("RETURN"))
|
||||
private void onInit(CallbackInfo info) {
|
||||
MineLPClient.getInstance().postInit((MinecraftClient)(Object)this);
|
||||
}
|
||||
|
||||
@Inject(method = "tick()V", at = @At("RETURN"))
|
||||
private void onTick(CallbackInfo info) {
|
||||
MinecraftClient self = (MinecraftClient)(Object)this;
|
||||
MineLPClient.getInstance().onTick(self, self.world != null && self.player != null);
|
||||
}
|
||||
}
|
|
@ -11,7 +11,6 @@
|
|||
"MixinFirstPersonRenderer",
|
||||
"MixinGlStateManager",
|
||||
"MixinItemRenderer",
|
||||
"MixinMinecraftClient",
|
||||
"MixinRenderManager",
|
||||
"MixinThreadDownloadImageData"
|
||||
]
|
||||
|
|
Loading…
Reference in a new issue