Everything posted by SaltBeard
-
Missing library?
Have you installed Forge MDK and Java 8?
-
LivingDeathEvent Listener code problem
Oh I am an idiot, thank you very much for patience
-
LivingDeathEvent Listener code problem
-
-
LivingDeathEvent Listener code problem
package com.saltbeard.potc; import com.google.common.eventbus.Subscribe; import com.saltbeard.potc.util.RegistryBlocksHandler; import com.saltbeard.potc.util.RegistryItemsHandler; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; import net.minecraft.util.DamageSource; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.living.LivingDeathEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @Mod("potc") public class PotC { private static final Logger LOGGER = LogManager.getLogger(); public static final String MOD_ID = "potc"; public PotC() { FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup); FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff); MinecraftForge.EVENT_BUS.register(this); RegistryItemsHandler.init(); RegistryBlocksHandler.init(); } private void setup(final FMLCommonSetupEvent event){ } private void doClientStuff(final FMLClientSetupEvent event) { } public static final ItemGroup MISC_TAB = new ItemGroup("miscTab"){ @Override public ItemStack createIcon(){ return new ItemStack(RegistryItemsHandler.JADE.get()); } }; @Subscribe public static void onLivingDeathEvent (LivingDeathEvent deadEntity){ if ( deadEntity.getSource() == DamageSource.DROWN) { System.out.println("Entity died: drown"); } else{ System.out.println("Entity died: other reasons"); } } }
-
LivingDeathEvent Listener code problem
Ohh sorry , now I reread it, and I tried with same, but static method: @Subscribe public static void onLivingDeathEvent (LivingDeathEvent deadEntity){ if ( deadEntity.getSource() == DamageSource.DROWN) { System.out.println("Entity died: drown"); } else{ System.out.println("Entity died: other reasons"); } } And it still doesn't work - I am confused, why should it be static?
-
LivingDeathEvent Listener code problem
How can I avoid it? And second question it should still work? Thanks for reply tho
-
LivingDeathEvent Listener code problem
After some debugging I still can't figure out why this code (code below) don't print expected - when print line was outside if, it also didn't work @Subscribe public void onLivingDeathEvent (LivingDeathEvent deadEntity){ if ( deadEntity.getSource() == DamageSource.DROWN) { System.out.println("Entity died: drown"); } else{ System.out.println("Entity died: other reasons"); } } This code is in main class, class is registered to MinecraftForge.EVENT_BUS Thanks for your time
-
How to detect when player drowned?
Oh thank you very much
-
How to detect when player drowned?
I want to teleport player somewhere when he had drown, how can I "listen" (detect) for that? For example send "special message" in chat when that happened or anything else.
-
Creating dimension
When I create my dimension, where I can define biome, terrain, structures generation?
- Creating dimension
-
Creating dimension
oh sorry for late answer, v15.2
-
Creating dimension
Does anyone knows for good article for dimensions in Minecraft (something that will help me in creating my own), and probably some basic terrain generation?
-
Better way of registering Item to register then using ItemBase
nvm guys, it all works now, thank you so much for help
-
Better way of registering Item to register then using ItemBase
I want to specify properties when I create item "JADE", and I tried that with that piece of code above This is ItemBase code: package com.saltbeard.potc.items; import com.saltbeard.potc.PotC; import net.minecraft.item.Item; public class ItemBaseMisc extends Item { public ItemBaseMisc(){ super(new Properties().group(PotC.MISC_TAB)); } } This is old code for registering item "JADE": public static final RegistryObject<Item> JADE = ITEMS.register("jade", ItemBaseMisc::new);
-
Better way of registering Item to register then using ItemBase
public static final RegistryObject<Item> JADE = ITEMS.register("jade", () -> new Item(Item.Properties.group(PotC.MISC_TAB))); something like this??? - MISC_TAB is custome ItemGroup that works fine ( when I tried with ItemBase) Thank you for your help
-
Better way of registering Item to register then using ItemBase
oh, just giving ItemGroup: public static final RegistryObject<Item> COPPER = ITEMS.register("copper", new Item.Properties().group(MAT.MISC_TAB));
-
Better way of registering Item to register then using ItemBase
I am new in modding, and I saw that some people use ItemBase (in tutorial) when registering new Item, and they said that, that isn't best way to give properties to an Item. What is better way for that, and why use of ItemBase isn't "good"? Thank you all for time
IPS spam blocked by CleanTalk.