Something went wrong. Try again.
Connect to a configured server, front-and-center
minecraft
Something went wrong. Try again.
Java
at commit 0d566abf
1234567891011121314151617181920212223242526272829303132333435363738394041package dev.encode42.myserver.mixin;
import net.minecraft.client.gui.components.Button;import net.minecraft.client.gui.components.SpriteIconButton;import net.minecraft.client.gui.components.events.GuiEventListener;import net.minecraft.client.gui.screens.TitleScreen;import net.minecraft.resources.Identifier;import org.spongepowered.asm.mixin.Mixin;import org.spongepowered.asm.mixin.injection.At;import org.spongepowered.asm.mixin.injection.ModifyArg;
@Mixin(TitleScreen.class)public class SpriteMultiplayerButton { @ModifyArg( method = "createNormalMenuOptions", at = @At( value = "INVOKE", target = "Lnet/minecraft/client/gui/screens/TitleScreen;addRenderableWidget(Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener;", ordinal = 1 ), index = 0 ) private GuiEventListener rebuildMultiplayerButton(GuiEventListener guiEventListener) { if (guiEventListener instanceof Button button) { Button.OnPress onPress = ((ButtonAccessor) button).myserver$getOnPress();
SpriteIconButton spriteIconButton = SpriteIconButton.builder(button.getMessage(), onPress, true) .sprite(Identifier.withDefaultNamespace("icon/search"), 15, 15) .width(button.getHeight()) .build();
spriteIconButton.setPosition(button.getX() + 180, button.getY()); spriteIconButton.active = button.isActive();
return spriteIconButton; }
return guiEventListener; }}