Jump to content

Recommended Posts

Posted

Just trying to create a simple ticker here - tried reading as many tutorials as possible, but nothing I seemed to do worked (Most of them were out of date anyway). All I want to do is create a block of code that is called every 1/20th of a second, every tick.

 

My code:

 

public class MyEventHandler {

@SubscribeEvent
public void onTick(TickEvent.ClientTickEvent event){
	System.out.print("ding");
}
}

 

and my main class's init method

 

	@EventHandler
public void init(FMLInitializationEvent event){
	MinecraftForge.EVENT_BUS.register(new MyEventHandler());
}

 

Thanks in advance, this just seems to be something I can't figure out D:

Posted

Edit- thought that maybe because the TickEvent is a FML event, it would require a FML event registration so I put:

 

FMLCommonHandler.instance().bus().register(MyEventHandler.class);

 

in the main class's init method instead of

 

MinecraftForge.EVENT_BUS.register(new MyEventHandler());

 

but it still didn't work D:

Posted

Hi

 

I was curious, so I tried it.  It works fine for me with the following code (dingdingdingdingdign..):

 

 

MyEventHandler::

package com.example.examplemod;
public class MyEventHandler
{
  @SubscribeEvent
  public void onTick(TickEvent.ClientTickEvent event){
    System.out.print("ding");
  }
}

 

 

ExampleMod::

package com.example.examplemod;

import cpw.mods.fml.common.FMLCommonHandler;
import net.minecraft.init.Blocks;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.common.MinecraftForge;

@Mod(modid = ExampleMod.MODID, version = ExampleMod.VERSION)
public class ExampleMod
{
    public static final String MODID = "examplemod";
    public static final String VERSION = "1.0";
    
    @EventHandler
    public void init(FMLInitializationEvent event)
    {
	// some example code
        System.out.println("DIRT BLOCK >> "+Blocks.dirt.getUnlocalizedName());
      FMLCommonHandler.instance().bus().register(new MyEventHandler());
    }
}

 

-TGG

Posted

Thanks, I had it partially wrong:

 

FMLCommonHandler.instance().bus().register(MyEventHandler.class);

should be

FMLCommonHandler.instance().bus().register(new MyEventHandler());

 

Thanks TGG :D

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

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