TheCerealKill3r Posted September 7, 2015 Posted September 7, 2015 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] Quote
Failender Posted September 7, 2015 Posted September 7, 2015 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] Quote
TheCerealKill3r Posted September 7, 2015 Author Posted September 7, 2015 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);; } } } } } }); } } Quote
Failender Posted September 7, 2015 Posted September 7, 2015 what do you think you are doing with that thread Quote
TheCerealKill3r Posted September 7, 2015 Author Posted September 7, 2015 I'm trying to create a delay for the click interval. Every 90 milliseconds is another click when the mouse button is held down. Quote
Failender Posted September 7, 2015 Posted September 7, 2015 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? Quote
TheCerealKill3r Posted September 7, 2015 Author Posted September 7, 2015 When you hold down the left mouse button, it clicks for you. Quote
Ernio Posted September 7, 2015 Posted September 7, 2015 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). Quote 1.7.10 is no longer supported by forge, you are on your own.
TheCerealKill3r Posted September 8, 2015 Author Posted September 8, 2015 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. Quote
Failender Posted September 8, 2015 Posted September 8, 2015 u should better be reading some minecraft modding tutorials. Quote
TheCerealKill3r Posted September 8, 2015 Author Posted September 8, 2015 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. Quote
Failender Posted September 8, 2015 Posted September 8, 2015 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 Quote
Recommended Posts
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.