Advertisement
Sch0ll3r

Untitled

Apr 30th, 2020
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.38 KB | None | 0 0
  1. package com.example.examplemod;
  2.  
  3. import net.java.games.input.Controller;
  4. import net.java.games.input.Keyboard;
  5. import net.minecraft.block.Block;
  6. import net.minecraft.block.Blocks;
  7. import net.minecraft.client.Minecraft;
  8. import net.minecraft.client.settings.KeyBinding;
  9. import net.minecraft.entity.Entity;
  10. import net.minecraft.entity.player.PlayerEntity;
  11. import net.minecraft.util.Hand;
  12. import net.minecraft.util.text.StringTextComponent;
  13. import net.minecraftforge.client.event.GuiScreenEvent;
  14. import net.minecraftforge.client.event.InputEvent;
  15. import net.minecraftforge.common.MinecraftForge;
  16. import net.minecraftforge.event.RegistryEvent;
  17. import net.minecraftforge.event.TickEvent;
  18. import net.minecraftforge.event.entity.living.LivingKnockBackEvent;
  19. import net.minecraftforge.eventbus.api.SubscribeEvent;
  20. import net.minecraftforge.fml.InterModComms;
  21. import net.minecraftforge.fml.client.registry.ClientRegistry;
  22. import net.minecraftforge.fml.common.Mod;
  23. import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
  24. import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
  25. import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent;
  26. import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent;
  27. import net.minecraftforge.fml.event.server.FMLServerStartingEvent;
  28. import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
  29. import org.apache.logging.log4j.LogManager;
  30. import org.apache.logging.log4j.Logger;
  31. import net.minecraft.network.NetworkManager;
  32.  
  33.  
  34. import javax.swing.*;
  35. import javax.xml.crypto.dsig.keyinfo.KeyValue;
  36. import java.security.Key;
  37. import java.util.stream.Collectors;
  38.  
  39. // The value here should match an entry in the META-INF/mods.toml file
  40. @Mod("examplemod")
  41. public class ExampleMod
  42. {
  43. // Directly reference a log4j logger.
  44. private static final Logger LOGGER = LogManager.getLogger();
  45.  
  46.  
  47. public static Minecraft mc = Minecraft.getInstance();
  48.  
  49. public ExampleMod() {
  50. // Register the setup method for modloading
  51. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
  52. // Register the enqueueIMC method for modloading
  53. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::enqueueIMC);
  54. // Register the processIMC method for modloading
  55. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::processIMC);
  56. // Register the doClientStuff method for modloading
  57. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff);
  58.  
  59. MinecraftForge.EVENT_BUS.register(new RegistryEvents());
  60. //BEFORE U TELL ME I USE WRONG EVENT BUS, I tried with the other one. So it was FMLJavaModLoadingContext.get().getModEventBus().register(new KnockbackR());
  61.  
  62. MinecraftForge.EVENT_BUS.register(new KnockbackR());
  63.  
  64.  
  65. }
  66.  
  67. private void setup(final FMLCommonSetupEvent event)
  68. {
  69.  
  70. }
  71.  
  72. private void doClientStuff(final FMLClientSetupEvent event) {
  73. // do something that can only be done on the client
  74. LOGGER.info("Got game settings {}", event.getMinecraftSupplier().get().gameSettings);
  75. }
  76.  
  77. private void enqueueIMC(final InterModEnqueueEvent event)
  78. {
  79. // some example code to dispatch IMC to another mod
  80. InterModComms.sendTo("examplemod", "helloworld", () -> { LOGGER.info("Hello world from the MDK"); return "Hello world";});
  81. }
  82.  
  83. private void processIMC(final InterModProcessEvent event)
  84. {
  85. // some example code to receive and process InterModComms from other mods
  86. LOGGER.info("Got IMC {}", event.getIMCStream().
  87. map(m->m.getMessageSupplier().get()).
  88. collect(Collectors.toList()));
  89. }
  90. // You can use SubscribeEvent and let the Event Bus discover methods to call
  91. @SubscribeEvent
  92. public void onServerStarting(FMLServerStartingEvent event) {
  93. // do something when the server starts
  94. LOGGER.info("HELLO from server starting");
  95. }
  96. stuff
  97.  
  98.  
  99. public static class KnockbackR { //Tried without static, tried with only the class static.
  100. public static void onKb(LivingKnockBackEvent e) {
  101. System.out.println("Called");
  102. no, not called
  103. }
  104. }
  105.  
  106. @Mod.EventBusSubscriber(bus=Mod.EventBusSubscriber.Bus.MOD)
  107. public class RegistryEvents {
  108. @SubscribeEvent
  109. a normal void WHICH STILL WORKING
  110. }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement