Babar.java
package Babar;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.common.MinecraftForge;
import Babar.Zombie;
@Mod(modid = Babar.MODID, name = Babar.NAME, version = Babar.VERSION)
public class Babar {
public static final String
MODID = "Babar",
NAME = "Babar Mod",
VERSION = "1.0";
@Mod.Instance(MODID)
public static Babar instance;
@EventHandler
public void init(FMLInitializationEvent event)
{
MinecraftForge.EVENT_BUS.register(new Zombie());
}
}
Zombie.java
package Babar;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.entity.Entity;
import net.minecraft.util.DamageSource;
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraft.entity.ai.EntityAIOpenDoor;
import net.minecraft.entity.ai.EntityAIMoveIndoors;
import net.minecraft.entity.ai.EntityAIRestrictOpenDoor;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.monster.EntityZombie;
public class Zombie {
@SubscribeEvent
public void onEntityJoiningWorld(EntityJoinWorldEvent event)
{
if (event == null || event.entity == null || !(event.entity instanceof EntityZombie))
return;
EntityLiving elb = (EntityLiving) event.entity;
EntityCreature ec = (EntityCreature) event.entity;
elb.getNavigator().setBreakDoors(true);
elb.tasks.addTask(1, new EntityAIMoveIndoors(ec));
elb.tasks.addTask(1, new EntityAIRestrictOpenDoor(ec));
elb.tasks.addTask(1, new EntityAIOpenDoor(ec, true));
}
}