Guest User

KeyHandler

a guest
Dec 27th, 2015
311
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.05 KB | None | 0 0
  1. package com.happykiller.weightlimit.client.keyhandling;
  2.  
  3. import org.lwjgl.input.Keyboard;
  4.  
  5. import com.happykiller.weightlimit.player.inventory.container.ContainerWeightedPlayer;
  6. import com.happykiller.weightlimit.server.packet.PacketHandler;
  7. import com.happykiller.weightlimit.server.packet.packets.PacketCloseGui;
  8. import com.happykiller.weightlimit.server.packet.packets.PacketOpenGui;
  9.  
  10. import net.minecraft.client.settings.KeyBinding;
  11. import net.minecraft.entity.player.EntityPlayer;
  12. import net.minecraftforge.fml.client.FMLClientHandler;
  13. import net.minecraftforge.fml.client.registry.ClientRegistry;
  14. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  15. import net.minecraftforge.fml.common.gameevent.InputEvent.KeyInputEvent;
  16.  
  17. public class KeyHandler {
  18.    
  19.     public static final int CUSTOM_INV = 0;
  20.    
  21.     private static final String[] desc = {"key.weight_inventory.desc"};
  22.    
  23.     private static final int[] keyValues = {Keyboard.KEY_R};
  24.    
  25.     private final KeyBinding[] keys;
  26.    
  27.     public KeyHandler() {
  28.         keys = new KeyBinding[desc.length];
  29.        
  30.         for(int i = 0; i < desc.length; i++) {
  31.             keys[i] = new KeyBinding(desc[i], keyValues[i], "key.weight_limit.category");
  32.            
  33.             ClientRegistry.registerKeyBinding(keys[i]);
  34.         }
  35.     }
  36.    
  37.     @SubscribeEvent
  38.     public void onKeyInput(KeyInputEvent event) {
  39.         System.out.println("Key Down");
  40.        
  41.         EntityPlayer player = FMLClientHandler.instance().getClient().thePlayer;
  42.        
  43.         if(FMLClientHandler.instance().getClient().inGameHasFocus) {
  44.             System.out.println("Game does have focus");
  45.            
  46.             int kb = Keyboard.getEventKey();
  47.             boolean isDown = Keyboard.getEventKeyState();
  48.            
  49.             if(kb == keys[CUSTOM_INV].getKeyCode()) {
  50.                 System.out.println(player.openContainer);
  51.                
  52.                 if(player.openContainer instanceof ContainerWeightedPlayer) {
  53.                     System.out.println("Container is open. Closing...");
  54.                     PacketHandler.network.sendToServer(new PacketCloseGui());
  55.                 }else {
  56.                     PacketHandler.network.sendToServer(new PacketOpenGui(CUSTOM_INV));
  57.                     System.out.println("Packet was sent");
  58.                 }
  59.             }
  60.         }
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment