• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Problèmes de keybinding en 1.7.10

    1.7.x
    1.7.10
    3
    4
    306
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • L
      LeVerre dernière édition par LeVerre

      Bonjour à tous, j’éprouve des difficultés à faire fonctionner le keybind de mon code:

      package com.LeVerre.rinamod;
      
      import org.lwjgl.input.Keyboard;
      
      import cpw.mods.fml.client.registry.ClientRegistry;
      import cpw.mods.fml.common.Mod;
      import cpw.mods.fml.common.Mod.EventHandler;
      import cpw.mods.fml.common.event.FMLInitializationEvent;
      import cpw.mods.fml.common.eventhandler.SubscribeEvent;
      import cpw.mods.fml.common.gameevent.InputEvent.KeyInputEvent;
      import net.minecraft.client.Minecraft;
      import net.minecraft.client.settings.KeyBinding;
      import net.minecraftforge.common.MinecraftForge;
      import net.minecraftforge.event.entity.living.LivingDeathEvent;
      
      @Mod(modid = Main.MODID, version = Main.VERSION)
      public class Main
      {
          public static final String MODID = "rinamod";
          public static final String VERSION = "1.0";
          //public static KeyBinding menu= new KeyBinding("Menu", Keyboard.KEY_Y, "\2474R\2476i\247en\247aa\247bM\2473o\2471d"); 
          
          public static Minecraft mc = Minecraft.getMinecraft();
          
          private static KeyBinding menu;
          
          public Main()
          {
              menu = new KeyBinding("Menu", Keyboard.KEY_T, "\2474R\2476i\247en\247aa\247bM\2473o\2471d");
              ClientRegistry.registerKeyBinding(menu);
          }
      
          @EventHandler
          public void init(FMLInitializationEvent event)
          {
          	MinecraftForge.EVENT_BUS.register(this);
          	
          	    	ClientRegistry.registerKeyBinding(menu);    	
          	
          }
           
          
          public void onEvent(KeyInputEvent event)
          {
              if(menu.isPressed())
              {
                  OpenMenu();
              }
          }
       
          private void OpenMenu() {
      		
          	System.out.println("TEST");
      		
      	}
      

      Dans les contrôles de minecraft je le vois mais il n’y a aucune action.
      J’éspère que vous pourrez m’aider et merci d’avoir regardé.

      1 réponse Dernière réponse Répondre Citer 0
      • SpyMan
        SpyMan dernière édition par SpyMan

        yo, deja les keybind c’est client-side-only, donc rien a faire dans la main class, je te conseille de mettre ça dans ton client proxy, de plus je vois pas pourquoi tu init ton KeyBind dans le constructeur de ta Main class, init plutôt ça en une seul ligne, sous la forme d’une constante =>
        public static final Keybinding MY_KEY_BINDING = new Keybinding(...);

        1 réponse Dernière réponse Répondre Citer 0
        • R
          robs13 dernière édition par

          N’oublie pas le @EventSubscribe au dessus de ta fonction concernant l’évenèment de détection de l’appuie sur la touche du clavier.

          1 réponse Dernière réponse Répondre Citer 0
          • SpyMan
            SpyMan dernière édition par

            c’est @SubscribeEvent pour annoter une fonction en tant qu’event et @EventBusSubscriber pour notifier forge comme quoi cette class contient des fonctions potentiellement annoter en tant qu’event et qui doivent etre interprété comme tel

            1 réponse Dernière réponse Répondre Citer 0
            • 1 / 1
            • Premier message
              Dernier message
            Design by Woryk
            Contact / Mentions Légales

            MINECRAFT FORGE FRANCE © 2018

            Powered by NodeBB