SnowyGUI/fabric/src/main/java/fr/username404/snowygui/mixins/TitleScreenMixin.java
Username404-59 19304abe03
Fix the fabric TitleScreenMixin on Minecraft 1.21.2
Signed-off-by: Username404-59 <w.iron.zombie@gmail.com>
2025-04-15 15:38:41 +02:00

25 lines
960 B
Java

package fr.username404.snowygui.mixins;
import fr.username404.snowygui.ClickGui;
import fr.username404.snowygui.gui.feature.ButtonImpl;
import net.minecraft.client.gui.screens.TitleScreen;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(TitleScreen.class)
abstract class TitleScreenMixin {
@Unique private static boolean buttonsInitialized = false;
@Unique private static synchronized void setButtonsInitialized() { buttonsInitialized = true; }
@Inject(method = "createNormalMenuOptions", at = @At(value = "RETURN"))
public void createNormalMenuOptions(int i, int j, CallbackInfoReturnable<Integer> cir) {
if (!buttonsInitialized) {
ClickGui.INSTANCE.tick();
ButtonImpl.initButtons();
setButtonsInitialized();
}
}
}