1 package com.irtimaled.bbor.mixin.client;
3 import com.irtimaled.bbor.client.ClientProxy;
4 import com.irtimaled.bbor.client.keyboard.KeyListener;
5 import net.minecraft.client.GameSettings;
6 import net.minecraft.client.Minecraft;
7 import net.minecraft.client.settings.KeyBinding;
8 import org.apache.commons.lang3.ArrayUtils;
9 import org.spongepowered.asm.mixin.Final;
10 import org.spongepowered.asm.mixin.Mixin;
11 import org.spongepowered.asm.mixin.Mutable;
12 import org.spongepowered.asm.mixin.Shadow;
13 import org.spongepowered.asm.mixin.injection.At;
14 import org.spongepowered.asm.mixin.injection.Inject;
15 import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
19 @Mixin(GameSettings.class)
20 public abstract class MixinGameSettings {
24 public KeyBinding[] keyBindings;
27 public abstract void loadOptions();
29 @Inject(method = "<init>", at = @At("RETURN"))
30 private void init(Minecraft minecraft, File file, CallbackInfo ci) {
31 ClientProxy.registerKeyBindings();
32 keyBindings = ArrayUtils.addAll(keyBindings, KeyListener.keyBindings());