Краш при отправке пакета

Версия Minecraft
1.7.10
126
6
33
Возможно всё предельно просто и это уже было, но... краш при отправке пакета...

Код:
[00:57:42] [Client thread/ERROR] [FML]: Exception caught during firing event cpw.mods.fml.common.gameevent.InputEvent$KeyInputEvent@15a38f3e:
java.lang.NullPointerException
    at by.Sasha.AtisotEffect.Client.KeyHandlerClient.sendKeyControlsPacket(KeyHandlerClient.java:101) ~[KeyHandlerClient.class:?]
    at by.Sasha.AtisotEffect.Client.KeyHandlerClient.onKeyInput(KeyHandlerClient.java:88) ~[KeyHandlerClient.class:?]
    at cpw.mods.fml.common.eventhandler.ASMEventHandler_6_KeyHandlerClient_onKeyInput_KeyInputEvent.invoke(.dynamic) ~[?:?]
    at cpw.mods.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:54) ~[ASMEventHandler.class:?]
    at cpw.mods.fml.common.eventhandler.EventBus.post(EventBus.java:140) [EventBus.class:?]
    at cpw.mods.fml.common.FMLCommonHandler.fireKeyInput(FMLCommonHandler.java:540) [FMLCommonHandler.class:?]
    at net.minecraft.client.Minecraft.runTick(Minecraft.java:1964) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_151]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_151]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_151]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_151]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
    at GradleStart.main(Unknown Source) [start/:?]

Java:
public class KeyHandlerClient {

    public static KeyBinding strafeUP;
    public static KeyBinding strafeDOWN;
    public static KeyBinding strafeLEFT;
    public static KeyBinding strafeRIGHT;

    public static KeyBinding accelerateFORWARD;
    public static KeyBinding accelerateBACK;

    public static KeyBinding yawLEFT;
    public static KeyBinding yawRIGHT;
    public static KeyBinding pitchUP;
    public static KeyBinding pitchDOWN;

    public static KeyBinding EXIT;
    public static KeyBinding DOORS;

    private static Minecraft mc = Minecraft.getMinecraft();


    public KeyHandlerClient()
    {
        KeyHandlerClient.strafeUP = KeyHandlerClient.mc.gameSettings.keyBindJump;
        KeyHandlerClient.strafeDOWN = KeyHandlerClient.mc.gameSettings.keyBindSneak;
        KeyHandlerClient.strafeLEFT = KeyHandlerClient.mc.gameSettings.keyBindLeft;
        KeyHandlerClient.strafeRIGHT = KeyHandlerClient.mc.gameSettings.keyBindRight;

        KeyHandlerClient.accelerateFORWARD = KeyHandlerClient.mc.gameSettings.keyBindForward;
        KeyHandlerClient.accelerateBACK = KeyHandlerClient.mc.gameSettings.keyBindBack;



        KeyHandlerClient.yawLEFT = new KeyBinding("key.sasha.yawLEFT", Keyboard.KEY_LEFT, constants.ACK);
        KeyHandlerClient.yawRIGHT = new KeyBinding("key.sasha.yawRIGHT", Keyboard.KEY_RIGHT, constants.ACK);
        KeyHandlerClient.pitchUP = new KeyBinding("key.sasha.yawRIGHT", Keyboard.KEY_UP, constants.ACK);
        KeyHandlerClient.pitchDOWN = new KeyBinding("key.sasha.yawRIGHT", Keyboard.KEY_DOWN, constants.ACK);

        KeyHandlerClient.EXIT = new KeyBinding("key.sasha.EXIT", Keyboard.KEY_BACK, constants.ACK);
        KeyHandlerClient.DOORS = new KeyBinding("key.sasha.DOORS", Keyboard.KEY_O, constants.ACK);
    }



    @SubscribeEvent
    public void onKeyInput(InputEvent.KeyInputEvent event) {
        if(!Minecraft.getMinecraft().ingameGUI.getChatGUI().getChatOpen()) {
            if (strafeUP.isPressed()) {
                sendKeyControlsPacket(0);
            }
            if (strafeDOWN.isPressed()) {
                sendKeyControlsPacket(1);
            }
            if (strafeLEFT.isPressed()) {
                sendKeyControlsPacket(2);
            }
            if (strafeRIGHT.isPressed()) {
                sendKeyControlsPacket(3);
            }
            if (accelerateFORWARD.isPressed()) {
                sendKeyControlsPacket(4);
            }
            if (accelerateBACK.isPressed()) {
                sendKeyControlsPacket(5);
            }
            if (yawLEFT.isPressed()) {
                sendKeyControlsPacket(6);
            }
            if (yawRIGHT.isPressed()) {
                sendKeyControlsPacket(7);
            }
            if (pitchUP.isPressed()) {
                sendKeyControlsPacket(8);
            }
            if (pitchDOWN.isPressed()) {
                sendKeyControlsPacket(9); //88
            }
            if (EXIT.isPressed()) {
                sendKeyControlsPacket(10);
            }
            if (DOORS.isPressed()) {
                sendKeyControlsPacket(11);
            }
        }
    }

    private static void sendKeyControlsPacket(int key)
    {
        AtisotEffect.keyChannelTest.sendToServer(new PacketKeyPress(key)); //101
    }

Java:
public class PacketKeyPress implements IMessage {

    /** The key that was pressed. */
    int key;

    public PacketKeyPress() {}

    public PacketKeyPress(int key) {

        this.key = key;
    }

    @Override
    public void fromBytes(ByteBuf bbuf) {

        this.key = bbuf.readInt();
    }

    @Override
    public void toBytes(ByteBuf bbuf) {

        bbuf.writeInt(this.key);
    }


    public static class Handler implements IMessageHandler<PacketKeyPress, IMessage> {

        @Override
        public IMessage onMessage(PacketKeyPress message, MessageContext context) {

            Entity ridingEntity = context.getServerHandler().playerEntity.ridingEntity;
            if (ridingEntity != null) {
                if (ridingEntity instanceof EntityShip1) {

                    ((EntityShip1) ridingEntity).pressKey(message.key);
                }
            }
            return null;
        }

    }
}
 
Сверху