Jump to content

Recommended Posts

Posted

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));
                        }
                    }
                }
            }
        }
    }
}

 

Posted
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 

Posted
1 hour ago, 7yu7 said:

gives me this error

image.png

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.

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.

Announcements



×
×
  • Create New...

Important Information

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