I made a custom mob called Mk1 and it's moving around.
I have two Problems.
First: This mob should stay on a place and do nothing.
Second: When the mob should drop the Item there appear two Items. I can pick up one and the other is a fake Item.
[spoiler=EntityMk1.java]
package com.ironman.entity;
import com.ironman.item.IronItem;
import net.minecraft.entity.EntityAgeable;
import net.minecraft.entity.ai.EntityAIBase;
import net.minecraft.entity.ai.EntityAILookIdle;
import net.minecraft.entity.ai.EntityAIWander;
import net.minecraft.entity.passive.EntityAnimal;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class EntityMK1
extends EntityAnimal
{
public EntityMK1(World par1World)
{
super(par1World);
this.setSize(0.9F, 1.3F);
}
protected String getHurtSound()
{
return "mob.irongolem.hit";
}
protected String get()
{
return "mob.irongolem.death";
}
protected float getSoundVolume()
{
return 0.4F;
}
@Override
public boolean isAIEnabled(){
return false;
}
public boolean interact(EntityPlayer par1EntityPlayer)
{
if (!par1EntityPlayer.isDead)
{
if(par1EntityPlayer.getCurrentArmor(0)==null){
par1EntityPlayer.setCurrentItemOrArmor(1, new ItemStack(IronItem.Mk1Boots,1));
}
else{
if(!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(IronItem.Mk1Boots,1))){
par1EntityPlayer.dropItem(IronItem.Mk1Boots, 1);
}
}
if(par1EntityPlayer.getCurrentArmor(1)==null){
par1EntityPlayer.setCurrentItemOrArmor(2, new ItemStack(IronItem.Mk1Pants,1));
}
else{
if(!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(IronItem.Mk1Pants,1))){
}
}
if(par1EntityPlayer.getCurrentArmor(2)==null){
par1EntityPlayer.setCurrentItemOrArmor(3, new ItemStack(IronItem.Mk1Plate,1));
}
else{
if(!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(IronItem.Mk1Plate,1))){
}
}
if(par1EntityPlayer.getCurrentArmor(3)==null){
par1EntityPlayer.setCurrentItemOrArmor(4, new ItemStack(IronItem.Mk1Helmet,1));
}
else{
if(!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(IronItem.Mk1Helmet,1))){
}
}
this.isDead=true;
}
return true;
}
public EntityMK1 spawnBabyAnimal(EntityAgeable par1EntityAgeable)
{
return new EntityMK1(this.worldObj);
}
public EntityAgeable createChild(EntityAgeable par1EntityAgeable)
{
return spawnBabyAnimal(par1EntityAgeable);
}
}