29 lines
967 B
Java
29 lines
967 B
Java
package net.shadowfacts.phycon.mixin.client;
|
|
|
|
import net.minecraft.client.MinecraftClient;
|
|
import net.minecraft.client.gui.screen.Screen;
|
|
import net.shadowfacts.cacao.AbstractCacaoScreen;
|
|
import org.objectweb.asm.Opcodes;
|
|
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;
|
|
|
|
/**
|
|
* @author shadowfacts
|
|
*/
|
|
@Mixin(MinecraftClient.class)
|
|
public class MixinMinecraftClient {
|
|
|
|
@Inject(
|
|
method = "setScreen(Lnet/minecraft/client/gui/screen/Screen;)V",
|
|
at = @At(value = "FIELD", target = "Lnet/minecraft/client/MinecraftClient;currentScreen:Lnet/minecraft/client/gui/screen/Screen;", opcode = Opcodes.PUTFIELD, shift = At.Shift.AFTER)
|
|
)
|
|
private void setScreen(Screen screen, CallbackInfo ci) {
|
|
if (screen instanceof AbstractCacaoScreen) {
|
|
((AbstractCacaoScreen)screen).screenWillAppear();
|
|
}
|
|
}
|
|
|
|
}
|