Here is my 1.3.2 code:
Spoiler:
Here is the mob i want to spawn.
For the TileEntity is used the TileEntityMobSpawner code, i just changed
EntityArcher.class
Here is the mob i want to spawn.
EntityRegistry.registerModEntity(EntityArcher.class, "Archer", archerID, this, 250, 1, false); EntityRegistry.registerGlobalEntityID(EntityArcher.class, "Archer", archerID);The whole mod_castledef:
Spoiler:
package net.minecraft.src;
import java.util.Map;
import CastleDef.Common.CommonProxyCastleDef;
import net.minecraftforge.common.Configuration;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
import net.minecraft.src.Block;
import net.minecraft.src.Item;
@Mod(modid="Castle Defenders", name ="Castle Defenders",version="1.0.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class mod_castledef
{
public static Block BlockKnight;
public static Block BlockArcher;
public static Block BlockMerc;
public static Block BlockEKnight;
public static Block BlockEArcher;
public static Item ItemMedallion;
public int defenderID = 220;
public int knightID = 221;
public int archerID = 222;
public int mercID = 223;
public int EknightID = 224;
public int EarcherID = 225;
public int BlockKnightID;
public int BlockArcherID;
public int BlockMercID;
public int BlockEKnightID;
public int BlockEArcherID;
public int MedallionID;
public static int CastleSpawnRaste;
public static int MercSpawnRate;
@SidedProxy(clientSide="CastleDef.Client.ClientProxyCastleDef", serverSide = "CastleDef.Common.ClientProxyCastleDef")
public static CommonProxyCastleDef proxy;
@PreInit
public void PreLoad(FMLPreInitializationEvent event)
{
Configuration config = new Configuration(event.getSuggestedConfigurationFile());
config.load();
BlockKnightID = config.getOrCreateIntProperty("BlockKnightID", Configuration.CATEGORY_BLOCK, 238).getInt();
BlockArcherID = config.getOrCreateIntProperty("BlockArcherID", Configuration.CATEGORY_BLOCK, 239).getInt();
BlockMercID = config.getOrCreateIntProperty("BlockMercID", Configuration.CATEGORY_BLOCK, 234).getInt();
BlockEKnightID = config.getOrCreateIntProperty("BlockEKnightID", Configuration.CATEGORY_BLOCK, 237).getInt();
BlockEArcherID = config.getOrCreateIntProperty("BlockEArcherID", Configuration.CATEGORY_BLOCK, 236).getInt();
CastleSpawnRaste = config.getOrCreateIntProperty("CastleSpawnRaste", Configuration.CATEGORY_GENERAL, 4).getInt();
MercSpawnRate = config.getOrCreateIntProperty("MercSpawnRate", Configuration.CATEGORY_GENERAL, 4).getInt();
config.save();
}
@Init
public void load(FMLInitializationEvent event)
{
proxy.registerRenderThings();
ItemMedallion=(new ItemMedallion(MedallionID)).setItemName("Medallion").setIconIndex(1);
LanguageRegistry.addName(ItemMedallion, "Medallion");
BlockKnight=(new BlockKnight(BlockKnightID,0)).setBlockName("BlockKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockKnight);
LanguageRegistry.addName(BlockKnight,"Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockKnight.class, "Knight Block");
BlockArcher=(new BlockArcher(BlockArcherID,1)).setBlockName("BlockArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockArcher);
LanguageRegistry.addName(BlockArcher, "Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockArcher.class, "Archer Block");
BlockMerc=(new BlockMerc(BlockMercID,0)).setBlockName("BlockMerc").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockMerc);
LanguageRegistry.addName(BlockMerc, "Merc Spawner");
GameRegistry.registerTileEntity(TileEntityBlockMerc.class, "Merc Block");
BlockEKnight=(new BlockEKnight(BlockEKnightID,6)).setBlockName("BlockEKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEKnight);
LanguageRegistry.addName(BlockEKnight,"Enemy Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEKnight.class, "Enemy Knight Block");
BlockEArcher=(new BlockEArcher(BlockEArcherID,1)).setBlockName("BlockEArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEArcher);
LanguageRegistry.addName(BlockEArcher, "Enemy Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEArcher.class, "Enemy Archer Block");
//crafting Recipe
GameRegistry.addRecipe(new ItemStack(BlockKnight,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.swordSteel
});
GameRegistry.addRecipe(new ItemStack(BlockArcher,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.bow
});
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle());
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle2());
EntityRegistry.registerModEntity(EntityDefender.class, "Defender", defenderID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityDefender.class, "Defender", defenderID);
EntityRegistry.registerModEntity(EntityKnight.class, "Knight", knightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityKnight.class, "Knight", knightID);
EntityRegistry.registerModEntity(EntityArcher.class, "Archer", archerID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityArcher.class, "Archer", archerID);
EntityRegistry.registerModEntity(EntityMerc.class, "Merc", mercID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityMerc.class, "Merc", mercID);
EntityRegistry.registerModEntity(EntityEKnight.class, "Enemy Knight", EknightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEKnight.class, "Enemy Knight", EknightID);
EntityRegistry.registerModEntity(EntityEArcher.class, "Enemy Archer", EarcherID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEArcher.class, "Enemy Archer", EarcherID);
}
}
package net.minecraft.src;
import java.util.Map;
import CastleDef.Common.CommonProxyCastleDef;
import net.minecraftforge.common.Configuration;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
import net.minecraft.src.Block;
import net.minecraft.src.Item;
@Mod(modid="Castle Defenders", name ="Castle Defenders",version="1.0.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class mod_castledef
{
public static Block BlockKnight;
public static Block BlockArcher;
public static Block BlockMerc;
public static Block BlockEKnight;
public static Block BlockEArcher;
public static Item ItemMedallion;
public int defenderID = 220;
public int knightID = 221;
public int archerID = 222;
public int mercID = 223;
public int EknightID = 224;
public int EarcherID = 225;
public int BlockKnightID;
public int BlockArcherID;
public int BlockMercID;
public int BlockEKnightID;
public int BlockEArcherID;
public int MedallionID;
public static int CastleSpawnRaste;
public static int MercSpawnRate;
@SidedProxy(clientSide="CastleDef.Client.ClientProxyCastleDef", serverSide = "CastleDef.Common.ClientProxyCastleDef")
public static CommonProxyCastleDef proxy;
@PreInit
public void PreLoad(FMLPreInitializationEvent event)
{
Configuration config = new Configuration(event.getSuggestedConfigurationFile());
config.load();
BlockKnightID = config.getOrCreateIntProperty("BlockKnightID", Configuration.CATEGORY_BLOCK, 238).getInt();
BlockArcherID = config.getOrCreateIntProperty("BlockArcherID", Configuration.CATEGORY_BLOCK, 239).getInt();
BlockMercID = config.getOrCreateIntProperty("BlockMercID", Configuration.CATEGORY_BLOCK, 234).getInt();
BlockEKnightID = config.getOrCreateIntProperty("BlockEKnightID", Configuration.CATEGORY_BLOCK, 237).getInt();
BlockEArcherID = config.getOrCreateIntProperty("BlockEArcherID", Configuration.CATEGORY_BLOCK, 236).getInt();
CastleSpawnRaste = config.getOrCreateIntProperty("CastleSpawnRaste", Configuration.CATEGORY_GENERAL, 4).getInt();
MercSpawnRate = config.getOrCreateIntProperty("MercSpawnRate", Configuration.CATEGORY_GENERAL, 4).getInt();
config.save();
}
@Init
public void load(FMLInitializationEvent event)
{
proxy.registerRenderThings();
ItemMedallion=(new ItemMedallion(MedallionID)).setItemName("Medallion").setIconIndex(1);
LanguageRegistry.addName(ItemMedallion, "Medallion");
BlockKnight=(new BlockKnight(BlockKnightID,0)).setBlockName("BlockKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockKnight);
LanguageRegistry.addName(BlockKnight,"Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockKnight.class, "Knight Block");
BlockArcher=(new BlockArcher(BlockArcherID,1)).setBlockName("BlockArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockArcher);
LanguageRegistry.addName(BlockArcher, "Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockArcher.class, "Archer Block");
BlockMerc=(new BlockMerc(BlockMercID,0)).setBlockName("BlockMerc").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockMerc);
LanguageRegistry.addName(BlockMerc, "Merc Spawner");
GameRegistry.registerTileEntity(TileEntityBlockMerc.class, "Merc Block");
BlockEKnight=(new BlockEKnight(BlockEKnightID,6)).setBlockName("BlockEKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEKnight);
LanguageRegistry.addName(BlockEKnight,"Enemy Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEKnight.class, "Enemy Knight Block");
BlockEArcher=(new BlockEArcher(BlockEArcherID,1)).setBlockName("BlockEArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEArcher);
LanguageRegistry.addName(BlockEArcher, "Enemy Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEArcher.class, "Enemy Archer Block");
//crafting Recipe
GameRegistry.addRecipe(new ItemStack(BlockKnight,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.swordSteel
});
GameRegistry.addRecipe(new ItemStack(BlockArcher,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.bow
});
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle());
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle2());
EntityRegistry.registerModEntity(EntityDefender.class, "Defender", defenderID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityDefender.class, "Defender", defenderID);
EntityRegistry.registerModEntity(EntityKnight.class, "Knight", knightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityKnight.class, "Knight", knightID);
EntityRegistry.registerModEntity(EntityArcher.class, "Archer", archerID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityArcher.class, "Archer", archerID);
EntityRegistry.registerModEntity(EntityMerc.class, "Merc", mercID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityMerc.class, "Merc", mercID);
EntityRegistry.registerModEntity(EntityEKnight.class, "Enemy Knight", EknightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEKnight.class, "Enemy Knight", EknightID);
EntityRegistry.registerModEntity(EntityEArcher.class, "Enemy Archer", EarcherID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEArcher.class, "Enemy Archer", EarcherID);
}
}
For the TileEntity is used the TileEntityMobSpawner code, i just changed
private String mobID = "Pig";to
private String mobID = "Archer";
EntityArcher.class
Spoiler:
package net.minecraft.src;
import java.util.List;
import net.minecraft.src.AxisAlignedBB;
import net.minecraft.src.EntityAIArrowAttack;
import net.minecraft.src.EntityAINearestAttackableTarget;
import net.minecraft.src.EntityAIWander;
import net.minecraft.src.ItemStack;
import net.minecraft.src.MathHelper;
import net.minecraft.src.World;
import cpw.mods.fml.common.Mod.Item;
public class EntityArcher extends EntityDefender
{
public EntityArcher(World world)
{
super(world);
this.texture = "/archer.png";
this.health = 20;
this.moveSpeed = 0.0F;
this.setSize(1.1F, 1.8F);
this.tasks.addTask(1, new EntityAIArrowAttack(this, moveSpeed, 1, 30));
this.tasks.addTask(2, new EntityAIWander(this, moveSpeed));
this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, net.minecraft.src.IMob.class, 30F, 0, false));
}
public boolean isAIEnabled()
{
return true;
}
protected int getDropItemId()
{
return 0;
}
public boolean getCanSpawnHere()
{
if(worldObj.countEntities(getClass()) >= 500)
{
return false;
} else
{
int i = MathHelper.floor_double(posX);
int j = MathHelper.floor_double(boundingBox.minY);
int k = MathHelper.floor_double(posZ);
int l = worldObj.getBlockId(i, j - 1, k);
List localarchers = worldObj.getEntitiesWithinAABB(EntityArcher.class, AxisAlignedBB.getBoundingBox(posX, posY, posZ, posX + 1.0D, posY + 1.0D, posZ + 1.0D).expand(2D, 2D, 2D));
return (worldObj.getBlockId(i, j - 1, k) == 239 && worldObj.checkIfAABBIsClear(boundingBox) && worldObj.getCollidingBoundingBoxes(this, boundingBox).size() == 0 && localarchers.isEmpty());
}
}
protected boolean canDespawn()
{
return false;
}
public int getMaxHealth()
{
return 20;
}
public int getMaxSpawnedInChunk()
{
return 0;
}
}
That code worked fine in 1.3.2 but when i updated it to 1.4.5 it wont work.
Here is the 1.4.5 code:
Spoiler:
mod_castledef
If i change the
I have tried to do it using modloader aswell, still no luck.mod_castledef
Spoiler:
EntityArcher
package net.minecraft.src;
import java.util.Map;
import CastleDef.Common.CommonProxyCastleDef;
import net.minecraftforge.common.Configuration;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
//import com.jcraft.jorbis.Block;
//import cpw.mods.fml.common.Mod.Item;
import net.minecraft.src.Block;
import net.minecraft.src.Item;
@Mod(modid="Castle Defenders", name ="Castle Defenders",version="1.0.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class mod_castledef
{
public static Block BlockKnight;
public static Block BlockArcher;
public static Block BlockMerc;
public static Block BlockEKnight;
public static Block BlockEArcher;
public static Item ItemMedallion;
public int defenderID = 220;
public int knightID = 221;
public int archerID = 222;
public int mercID = 223;
public int EknightID = 224;
public int EarcherID = 225;
public int BlockKnightID;
public int BlockArcherID;
public int BlockMercID;
public int BlockEKnightID;
public int BlockEArcherID;
public int MedallionID;
public static int CastleSpawnRaste;
public static int MercSpawnRate;
@SidedProxy(clientSide="CastleDef.Client.ClientProxyCastleDef", serverSide = "CastleDef.Common.ClientProxyCastleDef")
public static CommonProxyCastleDef proxy;
@PreInit
public void PreLoad(FMLPreInitializationEvent event)
{
Configuration config = new Configuration(event.getSuggestedConfigurationFile());
config.load();
BlockKnightID = config.get("BlockKnightID", Configuration.CATEGORY_BLOCK, 238).getInt();
BlockArcherID = config.get("BlockArcherID", Configuration.CATEGORY_BLOCK, 239).getInt();
BlockMercID = config.get("BlockMercID", Configuration.CATEGORY_BLOCK, 234).getInt();
BlockEKnightID = config.get("BlockEKnightID", Configuration.CATEGORY_BLOCK, 237).getInt();
BlockEArcherID = config.get("BlockEArcherID", Configuration.CATEGORY_BLOCK, 236).getInt();
CastleSpawnRaste = config.get("CastleSpawnRaste", Configuration.CATEGORY_GENERAL, 4).getInt();
MercSpawnRate = config.get("MercSpawnRate", Configuration.CATEGORY_GENERAL, 4).getInt();
config.save();
}
@Init
public void load(FMLInitializationEvent event)
{
proxy.registerRenderThings();
ItemMedallion=(new ItemMedallion(MedallionID)).setItemName("Medallion").setIconIndex(1);
LanguageRegistry.addName(ItemMedallion, "Medallion");
BlockKnight=(new BlockKnight(BlockKnightID,0)).setBlockName("BlockKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockKnight);
LanguageRegistry.addName(BlockKnight,"Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockKnight.class, "Knight Block");
BlockArcher=(new BlockArcher(BlockArcherID,1)).setBlockName("BlockArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockArcher);
LanguageRegistry.addName(BlockArcher, "Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockArcher.class, "Archer Block");
BlockMerc=(new BlockMerc(BlockMercID,0)).setBlockName("BlockMerc").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockMerc);
LanguageRegistry.addName(BlockMerc, "Merc Spawner");
GameRegistry.registerTileEntity(TileEntityBlockMerc.class, "Merc Block");
BlockEKnight=(new BlockEKnight(BlockEKnightID,6)).setBlockName("BlockEKnight").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEKnight);
LanguageRegistry.addName(BlockEKnight,"Enemy Knight Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEKnight.class, "Enemy Knight Block");
BlockEArcher=(new BlockEArcher(BlockEArcherID,1)).setBlockName("BlockEArcher").setHardness(2F).setResistance(5F);
GameRegistry.registerBlock(BlockEArcher);
LanguageRegistry.addName(BlockEArcher, "Enemy Archer Spawner");
GameRegistry.registerTileEntity(TileEntityBlockEArcher.class, "Enemy Archer Block");
//crafting Recipe
GameRegistry.addRecipe(new ItemStack(BlockKnight,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.swordSteel
});
GameRegistry.addRecipe(new ItemStack(BlockArcher,1), new Object [] {
" X ","XYX"," X ", Character.valueOf('X'), Item.ingotIron,Character.valueOf('Y'), Item.bow
});
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle());
GameRegistry.registerWorldGenerator(new WorldGeneratorCastle2());
EntityRegistry.registerModEntity(EntityDefender.class, "Defender", defenderID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityDefender.class, "Defender", defenderID);
EntityRegistry.registerModEntity(EntityKnight.class, "Knight", knightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityKnight.class, "Knight", knightID);
EntityRegistry.registerModEntity(EntityArcher.class, "Archer", archerID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityArcher.class, "Archer", archerID);
EntityRegistry.registerModEntity(EntityMerc.class, "Merc", mercID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityMerc.class, "Merc", mercID);
EntityRegistry.registerModEntity(EntityEKnight.class, "Enemy Knight", EknightID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEKnight.class, "Enemy Knight", EknightID);
EntityRegistry.registerModEntity(EntityEArcher.class, "Enemy Archer", EarcherID, this, 250, 1, false);
EntityRegistry.registerGlobalEntityID(EntityEArcher.class, "Enemy Archer", EarcherID);
}
}
Spoiler:
It does not give me any errors.
package net.minecraft.src;
import java.util.List;
import net.minecraft.src.AxisAlignedBB;
import net.minecraft.src.EntityAIArrowAttack;
import net.minecraft.src.EntityAINearestAttackableTarget;
import net.minecraft.src.EntityAIWander;
import net.minecraft.src.ItemStack;
import net.minecraft.src.MathHelper;
import net.minecraft.src.World;
import cpw.mods.fml.common.Mod.Item;
public class EntityArcher extends EntityDefender
{
public EntityArcher(World world)
{
super(world);
this.texture = "/archer.png";
this.health = 20;
this.moveSpeed = 0.0F;
this.setSize(1.1F, 1.8F);
this.tasks.addTask(1, new EntityAIArrowAttack((IRangedAttackMob) this, moveSpeed, 1, 30));
this.tasks.addTask(2, new EntityAIWander(this, moveSpeed));
this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, net.minecraft.src.IMob.class, 30F, 0, false));
}
public boolean isAIEnabled()
{
return true;
}
protected int getDropItemId()
{
return 0;
}
public boolean getCanSpawnHere()
{
if(worldObj.countEntities(getClass()) >= 500)
{
return false;
} else
{
int i = MathHelper.floor_double(posX);
int j = MathHelper.floor_double(boundingBox.minY);
int k = MathHelper.floor_double(posZ);
int l = worldObj.getBlockId(i, j - 1, k);
List localarchers = worldObj.getEntitiesWithinAABB(EntityArcher.class, AxisAlignedBB.getBoundingBox(posX, posY, posZ, posX + 1.0D, posY + 1.0D, posZ + 1.0D).expand(2D, 2D, 2D));
return (worldObj.getBlockId(i, j - 1, k) == 239 && worldObj.checkIfAABBIsClear(boundingBox) && worldObj.getCollidingBoundingBoxes(this, boundingBox).size() == 0 && localarchers.isEmpty());
}
}
protected boolean canDespawn()
{
return false;
}
public int getMaxHealth()
{
return 20;
}
public int getMaxSpawnedInChunk()
{
return 0;
}
}
If i change the
private String mobID = "Archer";to
private String mobID = "Pig";it works without problems.
If someone where to give me some help or tips i would be very thankfull.









