Posted August 4, 20205 yr In my mod I made it so it gives you an item but if i try to interact with it just Disappears here is my code package com.yusuf.PotatoMod.events; import com.yusuf.PotatoMod.potatoMod; import com.yusuf.PotatoMod.utils.RegistryHandler; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.client.event.InputUpdateEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @Mod.EventBusSubscriber(modid = potatoMod.MOD_ID, bus = Mod.EventBusSubscriber.Bus.FORGE, value = Dist.CLIENT) public class ModClientEvents { @SubscribeEvent public static void onShiftEvent(InputUpdateEvent e){ PlayerEntity p = e.getPlayer(); if (p.isSneaking()){ if(p.inventory.hasItemStack(new ItemStack(RegistryHandler.POTATO_CHESTPLATE.get())) && p.inventory.armorItemInSlot(2).getItem() == RegistryHandler.POTATO_CHESTPLATE.get()) { if(p.inventory.hasItemStack(new ItemStack(RegistryHandler.POTATO_HELMET.get())) && p.inventory.armorItemInSlot(3).getItem() == RegistryHandler.POTATO_HELMET.get()) { if(p.inventory.hasItemStack(new ItemStack(RegistryHandler.POTATO_LEGGINGS.get())) && p.inventory.armorItemInSlot(1).getItem() == RegistryHandler.POTATO_LEGGINGS.get()) { if(p.inventory.hasItemStack(new ItemStack(RegistryHandler.POTATO_BOOTS.get())) && p.inventory.armorItemInSlot(0).getItem() == RegistryHandler.POTATO_BOOTS.get()) { p.addItemStackToInventory(new ItemStack(Items.POTATO, 1)); } } } } } } }
August 4, 20205 yr Author 1 hour ago, diesieben07 said: Check in PlayerTickEvent. If the player is not sneaking in Phase START and is sneaking in Phase END then they started sneaking. Make sure to check you are on the server, read the documentation that was linked to find out how. I read the documentation but i didnt understand how to make it on the server side
August 4, 20205 yr Author 25 minutes ago, diesieben07 said: Use World#isRemote to check. gives me this error
August 4, 20205 yr 1 hour ago, 7yu7 said: gives me this error isRemote is not a static field, which means you need get it for a world object instance, not for a world class. All entity objects have a "world" field, which contains a world they exist in. So, in you context you should check for p.world.isRemote. And yea, this is a pretty basic java, you need more practice to start modding. Everything said above may be absolutely wrong. No rights reserved.
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.