Skip to content

Commit 287829f

Browse files
committed
fix mode button inject local capture discrepancy on 1.20.5+
could not use a surrogate injector due to DirectionalLayoutWidget not existing in 1.19.4
1 parent 0643f46 commit 287829f

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

src/main/java/fast_reset/client/mixin/OptionsScreenMixin.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package fast_reset.client.mixin;
22

3+
import com.llamalad7.mixinextras.sugar.Local;
34
import fast_reset.client.Client;
45
import net.minecraft.client.gui.screen.Screen;
56
import net.minecraft.client.gui.screen.option.OptionsScreen;
67
import net.minecraft.client.gui.widget.*;
78
import net.minecraft.text.Text;
89
import org.spongepowered.asm.mixin.Mixin;
9-
import org.spongepowered.asm.mixin.injection.At;
10-
import org.spongepowered.asm.mixin.injection.Inject;
11-
import org.spongepowered.asm.mixin.injection.callback.*;
10+
import org.spongepowered.asm.mixin.injection.*;
11+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
1212

1313
@Mixin(OptionsScreen.class)
1414
public class OptionsScreenMixin extends Screen {
@@ -29,8 +29,8 @@ private static Text getButtonText(){
2929
}
3030
}
3131

32-
@Inject(method = "init", at= @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/GridWidget$Adder;add(Lnet/minecraft/client/gui/widget/Widget;ILnet/minecraft/client/gui/widget/Positioner;)Lnet/minecraft/client/gui/widget/Widget;"), locals = LocalCapture.CAPTURE_FAILHARD)
33-
public void initInject(CallbackInfo ci, GridWidget gridWidget, GridWidget.Adder adder){
32+
@Inject(method = "init", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/widget/GridWidget$Adder;add(Lnet/minecraft/client/gui/widget/Widget;)Lnet/minecraft/client/gui/widget/Widget;", shift = At.Shift.AFTER), slice = @Slice(from = @At(value = "FIELD", target = "Lnet/minecraft/client/gui/screen/option/OptionsScreen;CREDITS_AND_ATTRIBUTION_TEXT:Lnet/minecraft/text/Text;")))
33+
public void initInject(CallbackInfo ci, @Local GridWidget.Adder adder){
3434
adder.add(ButtonWidget.builder(getButtonText(), (buttonWidget) -> {
3535
Client.updateButtonLocation();
3636
buttonWidget.setMessage(getButtonText());

0 commit comments

Comments
 (0)