Posted September 7, 201510 yr It's able to load in my mods, but it doesn't have any effect on the game, it's not running. Can someone tell me if there's something wrong with my code or if there's something wrong with the way I'm exporting? Thanks. package net.frozenorb.h2c; import java.util.Iterator; import java.util.concurrent.ConcurrentLinkedQueue; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.TickEvent; @Mod(modid="Mod name", name="Insert Custom Name", version="1.0") public class Clickhold { public static final ConcurrentLinkedQueue<Runnable> queuedTasks = new ConcurrentLinkedQueue(); public static final String MODID = "Mod name"; public static final String VERSION = "1.0"; @Mod.Instance public static Clickhold instance; private String lastServer; @Mod.EventHandler public void init(FMLInitializationEvent event) { FMLCommonHandler.instance().bus().register(this); MinecraftForge.EVENT_BUS.register(this); new Thread(new Runnable() { public void run() { for (; { try { Thread.sleep(90L); } catch (InterruptedException e) { e.printStackTrace(); } } } }) .start(); } @SubscribeEvent public void onTick(TickEvent event) { Iterator<Runnable> iter = queuedTasks.iterator(); while (iter.hasNext()) { ((Runnable)iter.next()).run(); iter.remove(); } } } [\code] [code]package net.frozenorb.h2c; import cpw.mods.fml.client.FMLClientHandler; import java.util.concurrent.ConcurrentLinkedQueue; import net.minecraft.client.Minecraft; import net.minecraft.client.entity.EntityClientPlayerMP; import net.minecraft.client.network.NetHandlerPlayClient; import net.minecraft.entity.Entity; import net.minecraft.network.play.client.C02PacketUseEntity; import net.minecraft.network.play.client.C02PacketUseEntity.Action; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.MovingObjectPosition.MovingObjectType; import org.lwjgl.input.Mouse; public class PlayerTicker { public static void tick() { Clickhold.queuedTasks.add(new Runnable() { public void run() { EntityClientPlayerMP ep = Minecraft.getMinecraft().thePlayer; if ((ep != null) && (FMLClientHandler.instance().getClient().inGameHasFocus)) { if (Mouse.isButtonDown(0)) { ep.swingItem();; if (Minecraft.getMinecraft().objectMouseOver != null) { MovingObjectPosition mop = Minecraft.getMinecraft().objectMouseOver; if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY) { Entity entity = mop.entityHit; C02PacketUseEntity pac = new C02PacketUseEntity(entity, C02PacketUseEntity.Action.ATTACK); ep.sendQueue.addToSendQueue(pac);; } } } } } }); } } [\code]
September 7, 201510 yr what the..? @Mod.EventHandler public void init(FMLInitializationEvent event) { FMLCommonHandler.instance().bus().register(this); MinecraftForge.EVENT_BUS.register(this); new Thread(new Runnable() { public void run() { for (; { try { Thread.sleep(90L); } catch (InterruptedException e) { e.printStackTrace(); } } } }) .start(); } @SubscribeEvent public void onTick(TickEvent event) { Iterator<Runnable> iter = queuedTasks.iterator(); while (iter.hasNext()) { ((Runnable)iter.next()).run(); iter.remove(); } } } [\code] [\code]
September 7, 201510 yr Author For some reason, the insert code button was not working. here we go now. package net.frozenorb.h2c; import java.util.Iterator; import java.util.concurrent.ConcurrentLinkedQueue; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.TickEvent; @Mod(modid="Mod name", name="Insert Custom Name", version="1.0") public class Clickhold { public static final ConcurrentLinkedQueue<Runnable> queuedTasks = new ConcurrentLinkedQueue(); public static final String MODID = "Mod name"; public static final String VERSION = "1.0"; @Mod.Instance public static Clickhold instance; private String lastServer; @Mod.EventHandler public void init(FMLInitializationEvent event) { FMLCommonHandler.instance().bus().register(this); MinecraftForge.EVENT_BUS.register(this); new Thread(new Runnable() { public void run() { for (; { try { Thread.sleep(90L); } catch (InterruptedException e) { e.printStackTrace(); } } } }) .start(); } @SubscribeEvent public void onTick(TickEvent event) { Iterator<Runnable> iter = queuedTasks.iterator(); while (iter.hasNext()) { ((Runnable)iter.next()).run(); iter.remove(); } } } package net.frozenorb.h2c; import cpw.mods.fml.client.FMLClientHandler; import java.util.concurrent.ConcurrentLinkedQueue; import net.minecraft.client.Minecraft; import net.minecraft.client.entity.EntityClientPlayerMP; import net.minecraft.client.network.NetHandlerPlayClient; import net.minecraft.entity.Entity; import net.minecraft.network.play.client.C02PacketUseEntity; import net.minecraft.network.play.client.C02PacketUseEntity.Action; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.MovingObjectPosition.MovingObjectType; import org.lwjgl.input.Mouse; public class PlayerTicker { public static void tick() { Clickhold.queuedTasks.add(new Runnable() { public void run() { EntityClientPlayerMP ep = Minecraft.getMinecraft().thePlayer; if ((ep != null) && (FMLClientHandler.instance().getClient().inGameHasFocus)) { if (Mouse.isButtonDown(0)) { ep.swingItem();; if (Minecraft.getMinecraft().objectMouseOver != null) { MovingObjectPosition mop = Minecraft.getMinecraft().objectMouseOver; if (mop.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY) { Entity entity = mop.entityHit; C02PacketUseEntity pac = new C02PacketUseEntity(entity, C02PacketUseEntity.Action.ATTACK); ep.sendQueue.addToSendQueue(pac);; } } } } } }); } }
September 7, 201510 yr Author I'm trying to create a delay for the click interval. Every 90 milliseconds is another click when the mouse button is held down.
September 7, 201510 yr So. U are creating a new thread that is running infinite in ur main mad class that is doing exactly nothing. Why? Also dont register "this" as a event handler. create a separate class that handles events and register that. What the hell are u triing to do?
September 7, 201510 yr Jesus christ - REMOVE IT NOW. There are events for a reason - Subscribe to MouseEvent, check if mouse is clicked and perform click from code-level if needed. Also: I HATE those kind of "cheaty" ways of coding (meaning you are writing "easing" gameplay mod). 1.7.10 is no longer supported by forge, you are on your own.
September 8, 201510 yr Author Jesus christ - REMOVE IT NOW. There are events for a reason - Subscribe to MouseEvent, check if mouse is clicked and perform click from code-level if needed. Also: I HATE those kind of "cheaty" ways of coding (meaning you are writing "easing" gameplay mod). I'm just making this to practice my Java skills.
September 8, 201510 yr Author I haven't found any copy in the format of literature, but only videos. And the videos typically showcase "HOW TO MAKE A BLOCK" or something, it's something I'm not looking for. I appreciate your guys' replies, though.
September 8, 201510 yr http://www.minecraftforum.net/forums/mapping-and-modding/mapping-and-modding-tutorials/1571567-forge-1-6-4-1-8-eventhandler-and event handling will be important 4 you if u want to do such stuff
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.