Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SkelletonX

Members
  • Joined

  • Last visited

  1. @diesieben07 How can I be doing the loop? example
  2. @Draco18s my problem, I can not do, that my methodo loop in {} with delay
  3. @diesieben07 I tried this https://pastebin.com/DJusQxZE
  4. @diesieben07 This, I tried to use for (... and thread did not work ...
  5. @diesieben07 Do you have an example to show me?
  6. I want you to repeat the messages sent with delay. example, every 5 seconds will send a message ( Minecraft.getMinecraft().thePlayer.sendChatMessage("teste"); ) What can I use to do this? Scheduler exist in forge? @SideOnly(Side.CLIENT) @SubscribeEvent(priority=EventPriority.NORMAL, receiveCanceled=true) public void onTickEvent(TickEvent.ClientTickEvent event) { if(event.phase == TickEvent.Phase.END) { if (mc.inGameHasFocus) { if (keys[3].isKeyDown()) { Minecraft.getMinecraft().thePlayer.sendChatMessage(Ini.getIni("Loja")); } } } }
  7. @jabelar my new KeybindHandler package com.skelletonx.MacroSK.handler; import org.lwjgl.input.Keyboard; import com.skelletonx.MacroSK.util.LogHelper; import net.minecraft.client.Minecraft; import net.minecraft.client.settings.KeyBinding; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.InputEvent.KeyInputEvent; import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.common.eventhandler.EventPriority; public class KeybindHandler { public static KeyBinding[] keyBindings; private final Minecraft mc; public KeybindHandler(Minecraft mc) { this.mc = mc; keyBindings = new KeyBinding[2]; // instantiate the key bindings keyBindings[0] = new KeyBinding("key.structure.desc", Keyboard.KEY_P, "key.magicbeans.category"); keyBindings[1] = new KeyBinding("key.hud.desc", Keyboard.KEY_H, "key.magicbeans.category"); // register all the key bindings for (int i = 0; i < keyBindings.length; ++i) { ClientRegistry.registerKeyBinding(keyBindings[i]); LogHelper.info("Register KeyBindings >> " + keyBindings[i]); } } @SubscribeEvent(priority= EventPriority.HIGH) public void onEvent(KeyInputEvent event) { LogHelper.info("onEvent"); KeyBinding[] keyBindings = KeybindHandler.keyBindings; if (keyBindings[0].isPressed()) { // DEBUG LogHelper.info("Key binding ="+keyBindings[0].getKeyDescription()); // do stuff for this key binding here // remember you may need to send packet to server Minecraft.getMinecraft().thePlayer.sendChatMessage(" TEST "); } if (keyBindings[1].isKeyDown()) { // DEBUG LogHelper.info("Key binding ="+keyBindings[1].getKeyDescription()); // do stuff for this key binding here // remember you may need to send packet to server Minecraft.getMinecraft().thePlayer.sendChatMessage(" TEST "); } } } register my Handler in pre int (my main class) @Mod.EventHandler public void PreInit(FMLInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new KeybindHandler(mc)); } When I go to test, it does not work again ...
  8. @jabelar I can not create a class for the registerKeyBinding and call it on the ClientProxy?
  9. @Draco18s I asked the staff to delete the old one it is disorganized Can you help me with this?
  10. I'm trying to do that when a player presses the Key_P and Key_H button do something. Events are being correctly registered (keyBindings). KeybindHandler.java: package com.skelletonx.MacroSK.handler; import org.lwjgl.input.Keyboard; import com.skelletonx.MacroSK.util.LogHelper; import net.minecraft.client.settings.KeyBinding; import net.minecraftforge.fml.client.registry.ClientRegistry; public class KeybindHandler { public static KeyBinding[] keyBindings; public static void init() { keyBindings = new KeyBinding[2]; // instantiate the key bindings keyBindings[0] = new KeyBinding("MacroSK Shop", Keyboard.KEY_P, "key.magicbeans.category"); keyBindings[1] = new KeyBinding("MacroSK Shop2", Keyboard.KEY_H, "key.magicbeans.category"); // register all the key bindings for (int i = 0; i < keyBindings.length; ++i) { ClientRegistry.registerKeyBinding(keyBindings[i]); LogHelper.info("KeyBinding register OK"); } } } ButtonClickEvent.java: package com.skelletonx.MacroSK.handler; import com.skelletonx.MacroSK.util.LogHelper; import net.minecraft.client.Minecraft; import net.minecraft.client.settings.KeyBinding; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.InputEvent.KeyInputEvent; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.common.eventhandler.EventPriority; public class ButtonClickEvent { @SideOnly(Side.CLIENT) @SubscribeEvent(priority= EventPriority.NORMAL, receiveCanceled=true) public static void onEvent(KeyInputEvent event) { KeyBinding[] keyBindings = KeybindHandler.keyBindings; if (keyBindings[0].isKeyDown()) { // DEBUG LogHelper.info("Key binding ="+keyBindings[0].getKeyDescription()); // do stuff for this key binding here // remember you may need to send packet to server Minecraft.getMinecraft().thePlayer.sendChatMessage(" TEST "); } if (keyBindings[1].isKeyDown()) { // DEBUG LogHelper.info("Key binding ="+keyBindings[1].getKeyDescription()); // do stuff for this key binding here // remember you may need to send packet to server Minecraft.getMinecraft().thePlayer.sendChatMessage(" TEST "); } } } ClientProxy.java: package com.skelletonx.MacroSK.proxy; import com.skelletonx.MacroSK.handler.ButtonClickEvent; import com.skelletonx.MacroSK.handler.KeybindHandler; import net.minecraftforge.common.MinecraftForge; public class ClientProxy extends CommonProxy{ public void registerClient(){ KeybindHandler.init(); MinecraftForge.EVENT_BUS.register(ButtonClickEvent.class); } } my class Main: package com.skelletonx.MacroSK; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import com.skelletonx.MacroSK.proxy.*; @Mod(modid = MacroSK.MODID, version = MacroSK.VERSION) public class MacroSK { public static final String MODID = "MacroSK"; public static final String VERSION = "1.0"; public static final String COMMON_PROXY ="com.skelletonx.MacroSK.proxy.CommonProxy"; public static final String CLIENT_PROXY ="com.skelletonx.MacroSK.proxy.ClientProxy"; @SidedProxy(clientSide=CLIENT_PROXY, serverSide=COMMON_PROXY) public static CommonProxy proxy; @Mod.EventHandler public void PreInit(FMLInitializationEvent event) { } @Mod.EventHandler public void init(FMLInitializationEvent event) { proxy.registerClient(); proxy.globalRegister(); } @Mod.EventHandler public void postInit(FMLPostInitializationEvent event) { } } When I press the buttons nothing happens. it looks like the event does not work... , What did I do wrong ? I'm using the tutorial from @jabelar
  11. @diesieben07 I'm asking if this is to put in the ButtonClickEven package com.skelletonx.MacroSK.handler; import com.skelletonx.MacroSK.util.LogHelper; import net.minecraft.client.Minecraft; import net.minecraftforge.fml.common.gameevent.TickEvent; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; public class ButtonClickEvent { @SideOnly(Side.CLIENT) public void ClientTickEvent(TickEvent.Phase phase) { LogHelper.info("ClientTickEvent execute"); if(KeybindHandler.keybind.isKeyDown()) { LogHelper.info("OK??????????"); Minecraft.getMinecraft().thePlayer.sendChatMessage(" TEST "); } } } oioio
  12. phase ? public ClientTickEvent(TickEvent.Phase phase ok?
  13. @diesieben07 I'm using Forge API 1.7
  14. @Draco18s exemple code plz?
  15. I'm trying to do that, when I press "KEY_F" Do something, but I'm not getting ButtonClickEvent: package com.skelletonx.MacroSK.handler; import net.minecraft.client.settings.KeyBinding; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.InputEvent; import net.minecraftforge.fml.common.gameevent.InputEvent.KeyInputEvent; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import org.lwjgl.input.Keyboard; public class ButtonClickEvent { public KeyBinding key = new KeyBinding("key name", Keyboard.KEY_F, "My_Mod_Category"); @SideOnly(Side.CLIENT) @SubscribeEvent(priority= EventPriority.NORMAL, receiveCanceled=true) public void onEvent(KeyInputEvent event) { if(key) { // execute KEY_F } } } ClientProxy: package com.skelletonx.MacroSK.proxy; import com.skelletonx.MacroSK.handler.ButtonClickEvent; import com.sun.javafx.scene.control.behavior.KeyBinding; import net.minecraftforge.common.MinecraftForge; public class ClientProxy extends CommonProxy{ public static KeyBinding[] keyBindings; public void registerClient(){ //ClientCommandHandler.instance.registerCommand(new CommandBind()); MinecraftForge.EVENT_BUS.register(new ButtonClickEvent()); } }

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.