Java 类net.minecraft.entity.monster.EntityMob 实例源码

项目:Uranium    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:BaseClient    文件:Aura.java   
private boolean checkValidity(final EntityLivingBase entity) {
    if (entity == this.mc.thePlayer) {
        return false;
    }
    if (!entity.isEntityAlive()) {
        return false;
    }
    if (this.mc.thePlayer.getDistanceToEntity(entity) > this.range) {
        return false;
    }
    if (!(entity instanceof EntityPlayer)) {
        return (this.monsters && entity instanceof EntityMob) || (this.animals && (entity instanceof EntityAnimal || entity instanceof EntitySquid)) || (this.bats && entity instanceof EntityBat);
    }
    if (this.players) {
        final EntityPlayer player = (EntityPlayer)entity;
        return (this.friend && FriendManager.isFriend(player.getName())) || (!FriendManager.isFriend(player.getName()) && (!this.noArmor || this.hasArmor(player)));
    }
    return false;
}
项目:BaseClient    文件:EntityLiving.java   
private void onUpdateMinimal()
{
    ++this.entityAge;

    if (this instanceof EntityMob)
    {
        float f = this.getBrightness(1.0F);

        if (f > 0.5F)
        {
            this.entityAge += 2;
        }
    }

    this.despawnEntity();
}
项目:BaseClient    文件:EntityLiving.java   
private void onUpdateMinimal()
{
    ++this.entityAge;

    if (this instanceof EntityMob)
    {
        float f = this.getBrightness(1.0F);

        if (f > 0.5F)
        {
            this.entityAge += 2;
        }
    }

    this.despawnEntity();
}
项目:Halloween    文件:EntityAIHaunter.java   
/**
 * Make the drone mob attack the target player
 */
private boolean initializeDrone(EntityMob mob)
{
    // ensure that the drone has sufficient follow range to be able to path to the player
    double followRange = mob.getEntityAttribute(SharedMonsterAttributes.FOLLOW_RANGE).getAttributeValue();
    float distance = mob.getDistanceToEntity(this.attackTarget);
    if (followRange < distance)
    {
        mob.getEntityAttribute(SharedMonsterAttributes.FOLLOW_RANGE).setBaseValue(distance * 1.1D);
    }

    // set the drone on a path to the player
    boolean canNavigate = mob.getNavigator().tryMoveToEntityLiving(this.attackTarget, this.currentDrone.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).getAttributeValue());
    if (canNavigate)
    {
        // set the drone's attack target to be the player
        mob.setAttackTarget(this.attackTarget);
    }
    else
    {
        this.currentDrone = null;
    }

    return canNavigate;
}
项目:Mob-Option-Redux    文件:MobOptionsEventHandler.java   
/**
 * Checks spawning
 */
@SubscribeEvent
public void onSpawn(CheckSpawn event) {
    //If the entity is not a mob or above the forced-spawn-y-level, stop
    if (!(event.getEntity() instanceof EntityMob && event.getY() < underground))
        return;

    EntityMob mob = (EntityMob) event.getEntity();
    String name = EntityList.getEntityString(mob);

    //If whitelist and list contains mob, or blacklist and list does not contain mob
    if ((spawnWhitelist && mobsToSpawn.contains(name)) || (!(spawnWhitelist && mobsToSpawn.contains(name)))){
        //If the chance is within allowed mob-spawn-under-y-level range, and the game is not on Peaceful
        if (rand.nextFloat() < undergroundChance && event.getWorld().getDifficulty() != EnumDifficulty.PEACEFUL){
            //If there are no other entities in this area, and there are no collisions, and there is not a liquid
            if (event.getWorld().checkNoEntityCollision(mob.getEntityBoundingBox())
                    && event.getWorld().getCollisionBoxes(mob, mob.getEntityBoundingBox()).isEmpty()
                    && !event.getWorld().containsAnyLiquid(mob.getEntityBoundingBox())){
                //Allow the spawn
                event.setResult(Result.ALLOW);
            }
        }
    }

}
项目:Thermionics    文件:ItemHammer.java   
@Override
public int activateSkill(IWeaponSkillInfo info, EntityLivingBase attacker, ItemStack item, DamageSource source, EntityLivingBase opponent) {
    //If you don't know about Earthbound, we can't be friends. Sorry, I don't make the rules.
    DamageSource smaaaaaaash = new EntityDamageSource("weaponskill.smash", attacker);
    opponent.attackEntityFrom(smaaaaaaash, 4f);

    opponent.addPotionEffect( new PotionEffect(Potion.getPotionFromResourceLocation("minecraft:blindness"), 20*3, 2 ));
    //Thermionics.LOG.info("SMAAAAAAASH WeaponSkill activated against entity {} at {},{},{}", opponent, opponent.posX, opponent.posY, opponent.posZ);
    if (opponent instanceof EntityMob) {
        EntityMob monster = (EntityMob)opponent;
        monster.setAttackTarget(null);
        monster.setRevengeTarget(null);
    }
    if (!attacker.world.isRemote) {
        //Serverside, queue the effect
        SpawnParticleEmitterMessage fx = new SpawnParticleEmitterMessage(Thermionics.CONTEXT, EnumWeaponSkill.SMAAAAAAASH, opponent);
        fx.sendToAllWatching(opponent);
    }

    return 20*5;
}
项目:EMC    文件:IEntity.java   
public Color getEntityColor() {
    if ((entity instanceof EntityAnimal)) {
        return Color.white;
    }
    if ((entity instanceof EntityMob)) {
        return Color.red;
    }
    if ((entity instanceof EntitySlime)) {
        return Color.green;
    }
    if ((entity instanceof EntityVillager)) {
        return new Color(245, 245, 220);
    }
    if ((entity instanceof EntityBat)) {
        return Color.BLACK;
    }
    if ((entity instanceof EntitySquid)) {
        return Color.PINK;
    }
    return Color.white;
}
项目:Backmemed    文件:EntityLiving.java   
private void onUpdateMinimal()
{
    ++this.entityAge;

    if (this instanceof EntityMob)
    {
        float f = this.getBrightness(1.0F);

        if (f > 0.5F)
        {
            this.entityAge += 2;
        }
    }

    this.despawnEntity();
}
项目:NemesisSystem    文件:SpawnHandler.java   
private void buffMobInAroundNemeses(World world, EntityCreature entity) {
    if (!(entity instanceof EntityMob)) {
        return;
    }

    if (entity.getTags().contains(NemesisSystem.TAG_BUFF_MOB_REINFORCEMENT)) {
        return;
    }

    List<NemesisEntry> nemeses = NemesisRegistryProvider.get(world).list();
    sortByHighestLevel(nemeses);

    for (NemesisEntry nemesis : nemeses) {
        if (buffEntity(entity, nemesis)) {
            return;
        }
    }
}
项目:ExtraUtilities    文件:BlockCursedEarth.java   
public boolean SpawnMob(final EntityLiving t) {
    if (t.getCanSpawnHere()) {
        t.onSpawnWithEgg((IEntityLivingData)null);
        if (t instanceof EntityMob) {
            t.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 3600, 1));
            t.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 3600, 1));
        }
        else {
            t.addPotionEffect(new PotionEffect(Potion.regeneration.id, 3600, 1));
        }
        t.getEntityData().setLong("CursedEarth", 3600L);
        t.forceSpawn = true;
        t.func_110163_bv();
        return true;
    }
    return false;
}
项目:ExtraUtilities    文件:EventHandlerSiege.java   
public static void beginSiege(final World world) {
    if (world.isRemote) {
        return;
    }
    if (world.provider.dimensionId != 1) {
        return;
    }
    for (int i = 0; i < world.loadedEntityList.size(); ++i) {
        if (world.loadedEntityList.get(i) instanceof EntityMob) {
            world.removeEntity((Entity)world.loadedEntityList.get(i));
        }
        else if (world.loadedEntityList.get(i) instanceof EntityPlayer) {
            final EntityPlayer player = (EntityPlayer)world.loadedEntityList.get(i);
            EventHandlerSiege.SiegeParticipants.add(player.getGameProfile().getName());
            player.getEntityData().setInteger("SiegeKills", 0);
        }
    }
    if (EventHandlerSiege.SiegeParticipants.size() != 0) {
        MinecraftServer.getServer().getConfigurationManager().sendChatMsg((IChatComponent)new ChatComponentText("The Siege has begun in 'The End'"));
    }
    else {
        endSiege(world, false);
    }
}
项目:ExtraUtilities    文件:EventHandlerSiege.java   
@SubscribeEvent
public void SiegeCheckSpawn(final LivingSpawnEvent.CheckSpawn event) {
    if (EventHandlerSiege.SiegeParticipants.isEmpty()) {
        return;
    }
    if (event.entity.worldObj.isRemote) {
        return;
    }
    if (event.world.provider.dimensionId != 1) {
        return;
    }
    if (event.entityLiving instanceof EntityMob && event.entityLiving.worldObj.checkNoEntityCollision(event.entityLiving.boundingBox) && event.entityLiving.worldObj.getCollidingBoundingBoxes((Entity)event.entityLiving, event.entityLiving.boundingBox).isEmpty() && !event.entityLiving.worldObj.isAnyLiquid(event.entityLiving.boundingBox)) {
        event.entityLiving.getEntityData().setBoolean("Siege", true);
        event.entityLiving.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 7200, 2));
        event.setResult(Event.Result.ALLOW);
    }
}
项目:ExtraUtilities    文件:EventHandlerUnderdark.java   
@SubscribeEvent
public void noMobs(final LivingSpawnEvent.CheckSpawn event) {
    if (event.getResult() == Event.Result.DEFAULT && event.world.provider.dimensionId == ExtraUtils.underdarkDimID && event.entity instanceof EntityMob) {
        if (EventHandlerUnderdark.rand.nextDouble() < Math.min(0.95, event.entity.posY / 80.0)) {
            event.setResult(Event.Result.DENY);
        }
        else {
            IAttributeInstance t = ((EntityMob)event.entity).getEntityAttribute(SharedMonsterAttributes.maxHealth);
            t.setBaseValue(t.getBaseValue() * 2.0);
            ((EntityMob)event.entity).heal((float)t.getAttributeValue());
            t = ((EntityMob)event.entity).getEntityAttribute(SharedMonsterAttributes.attackDamage);
            t.setBaseValue(t.getBaseValue() * 2.0);
            if (!EventHandlerServer.isInRangeOfTorch(event.entity) && event.entityLiving.worldObj.checkNoEntityCollision(event.entityLiving.boundingBox) && event.entityLiving.worldObj.getCollidingBoundingBoxes((Entity)event.entityLiving, event.entityLiving.boundingBox).isEmpty() && !event.entityLiving.worldObj.isAnyLiquid(event.entityLiving.boundingBox)) {
                event.setResult(Event.Result.ALLOW);
            }
        }
    }
}
项目:CrystalMod    文件:MinionAICombat.java   
public boolean isEntityValidToAttack(EntityMinionWarrior minion, EntityLivingBase entity)
{
    if(entity == minion || entity == minion.getRidingEntity() || !EntityAITarget.isSuitableTarget(minion, entity, false, false) || entity.getClass() == EntityCreeper.class) return false;

    if (entity instanceof EntityMob &&
            (getTargetBehavior() == EnumCombatBehaviors.TARGET_HOSTILE_MOBS || 
            getTargetBehavior() == EnumCombatBehaviors.TARGET_PASSIVE_OR_HOSTILE_MOBS))
    {
        return true;
    }

    else if (entity instanceof EntityAnimal &&
            (getTargetBehavior() == EnumCombatBehaviors.TARGET_PASSIVE_MOBS || 
            getTargetBehavior() == EnumCombatBehaviors.TARGET_PASSIVE_OR_HOSTILE_MOBS))
    {
        return true;
    }

    else
    {
        return false;
    }
}
项目:MidgarCrusade    文件:EntitySlave.java   
public EntitySlave(World p_i1688_1_)
{
    super(p_i1688_1_);
    this.setSize(0.8F, 1.6F);
    this.getNavigator().setAvoidsWater(true);
    this.tasks.addTask(1, new EntityAISwimming(this));
    this.tasks.addTask(2, this.aiSit);
    this.tasks.addTask(3, this.aiTempt = new EntityAITempt(this, 0.6D, Items.diamond, true));
    this.tasks.addTask(4, new EntityAIFollowOwner(this, 1.0D, 10.0F, 5.0F));
    this.tasks.addTask(5, new EntityAIAvoidEntity(this, EntityCreeper.class, 16.0F, 0.8D, 1.33D));
    this.tasks.addTask(6, new EntityAILeapAtTarget(this, 0.3F));
    this.tasks.addTask(7, new EntityAIOcelotAttack(this));
    this.tasks.addTask(8, new EntityAIMate(this, 0.8D));
    this.tasks.addTask(9, new EntityAIWander(this, 0.8D));
    this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F));
    this.targetTasks.addTask(1, new EntityAITargetNonTamed(this, EntityMob.class, 750, false));
    this.setType(this.rand.nextInt(4));
    this.setRandomStuff();
}
项目:MidgarCrusade    文件:LivingEntityEvent.java   
@SubscribeEvent
   public void onEntityDrops(LivingDropsEvent event)
{
    int alea;

    if (event.entityLiving instanceof EntityMob)
        alea = 20;
    else
        alea = 50;

    if (event.entityLiving.worldObj.rand.nextInt(alea) < 1 + event.lootingLevel * 2)
    {
        EntityItem e;

        e = new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(ItemRegister.getRandomArmor(), 1));
        e = new EntityItem(event.entityLiving.worldObj, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(ItemRegistry1.bagdrop, 1));


        event.drops.add(e);
    }
}
项目:Rival-Rebels-Mod    文件:TileEntityReciever.java   
private boolean isValidTarget(Entity e)
{
    if (e == null) return false;
    else if (e instanceof EntityPlayer)
    {
        EntityPlayer p = ((EntityPlayer) e);
        if (p.capabilities.isCreativeMode) return false;
        else
        {
            if (kPlayers) return true;
            else if (!kTeam) return false;
            RivalRebelsPlayer rrp = RivalRebels.round.rrplayerlist.getForName(((EntityPlayer) e).getCommandSenderName());
            if (rrp == null) return kTeam;
            if (rrp.rrteam == RivalRebelsTeam.NONE) return !p.getCommandSenderName().equals(username);
            if (rrp.rrteam != team) return kTeam;
            else return false;
        }
    }
    else return (kMobs && (e instanceof EntityRhodes || (e instanceof EntityMob && !(e instanceof EntityAnimal) && !(e instanceof EntityBat) && !(e instanceof EntityVillager) && !(e instanceof EntitySquid)) || e instanceof EntityGhast));
}
项目:ToroQuest    文件:EntityGuard.java   
protected void initEntityAI() {
    areaAI = new EntityAIMoveIntoArea(this, 0.5D, 30);
    tasks.addTask(0, new EntityAISwimming(this));
    tasks.addTask(2, new EntityAIAttackMelee(this, 0.6D, false));
    tasks.addTask(4, areaAI);
    tasks.addTask(7, new EntityAIWander(this, 0.35D));
    tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
    tasks.addTask(8, new EntityAILookIdle(this));

    targetTasks.addTask(2, new EntityAINearestAttackableCivTarget(this));
    targetTasks.addTask(3, new EntityAINearestAttackableTarget<EntityMob>(this, EntityMob.class, 10, false, false, new Predicate<EntityMob>() {
        @Override
        public boolean apply(EntityMob target) {
            return !(target instanceof EntityCreeper);
        }
    }));
}
项目:ToroHealth    文件:AbstractHealthDisplay.java   
protected Relation determineRelation() {
    if (entity instanceof EntityMob) {
        return Relation.FOE;
    } else if (entity instanceof EntitySlime) {
        return Relation.FOE;
    } else if (entity instanceof EntityGhast) {
        return Relation.FOE;
    } else if (entity instanceof EntityAnimal) {
        return Relation.FRIEND;
    } else if (entity instanceof EntitySquid) {
        return Relation.FRIEND;
    } else if (entity instanceof EntityAmbientCreature) {
        return Relation.FRIEND;
    } else {
        return Relation.UNKNOWN;
    }
}
项目:ThermosRebased    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:FissionWarfare    文件:TileEntityTurretSentry.java   
@Override
public void checkTarget() {

    if (RaytraceUtil.raytrace(getAngleFromTarget(), getTurretVector(), worldObj, InitBlocks.sentry_turret, target, RANGE) == HitType.BLOCK) {
        target = null;
    }

    if (target instanceof EntityPlayer) {

        EntityPlayer player = (EntityPlayer)target;

        if (target == null || player.isDead || target.getDistance(xCoord, yCoord, zCoord) >= RANGE ||  player.capabilities.isCreativeMode || profile.isSameTeam(player)) {
            target = null;
        }
    }

    if (target instanceof EntityMob) {

        if (target == null || target.isDead || target.getDistance(xCoord, yCoord, zCoord) >= RANGE) {
            target = null;
        }
    }       
}
项目:FissionWarfare    文件:TileEntityTurretSentry.java   
@Override
public void fire() {

    if (target != null) {

        if (target instanceof EntityPlayer) {   

            EntityPlayer player = (EntityPlayer) target;
            player.attackEntityFrom(new DamageSourceTeam((EntityPlayer) player, profile.getTeamName() + "'s Sentry Turret"), DAMAGE);               
        }

        if (target instanceof EntityMob) {

            target.attackEntityFrom(DamageSource.generic, DAMAGE);
        }
    }
}
项目:Lost-Eclipse-Outdated    文件:ItemVoidScroll.java   
@SuppressWarnings("rawtypes")
@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, EnumHand hand)
{       
    ItemStack stack = player.inventory.getCurrentItem();

    if (player.inventory.getCurrentItem().getItem() == ModItems.voidScroll)
    {
        if (!world.isRemote)
        {
            List entityList = world.getEntitiesWithinAABB(EntityLivingBase.class, new AxisAlignedBB(player.posX - 10, player.posY - 10, player.posZ - 10, player.posX + 10, player.posY + 10, player.posZ + 10));
            Iterator iterator = entityList.iterator();

            while (iterator.hasNext())
            {
                   Entity entity = (Entity) iterator.next();
                if (entity instanceof EntityMob) ((EntityMob) entity).setHealth(0);
            }

            // decrease stack size by 1
            stack.shrink(1);
        }
    }

    return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, stack);
}
项目:Lost-Eclipse-Outdated    文件:ItemRadiationScroll.java   
@SuppressWarnings("rawtypes")
@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, EnumHand hand)
{       
    ItemStack stack = player.inventory.getCurrentItem();

    if (player.inventory.getCurrentItem().getItem() == ModItems.radiationScroll)
    {
        if (!world.isRemote)
        {
            List entityList = world.getEntitiesWithinAABB(EntityLivingBase.class, new AxisAlignedBB(player.posX - 10, player.posY - 10, player.posZ - 10, player.posX + 10, player.posY + 10, player.posZ + 10));
            Iterator iterator = entityList.iterator();

            while (iterator.hasNext())
            {
                   Entity entity = (Entity) iterator.next();
                if (entity instanceof EntityMob) entity.setFire(5);
            }

            // decrease stack size by 1
            stack.shrink(1);
        }
    }

    return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, stack);
}
项目:LightningCraft    文件:WorldUtils.java   
/** Spawn a hostile mob near the player in between mindist and maxdist at a random angle
 * @return Returns true if the mob was successfully spawned
 */
public static boolean spawnMobNearPlayer(EntityPlayer player, EntityMob mob, double mindist, double maxdist) {
    // try this distance and angle
    double dd = maxdist - mindist;
    double dist = mindist + random.nextDouble() * dd;
    float angle = (float)(random.nextDouble() * 2 * Math.PI);

    // get corresponding position
    double x = player.posX - MathHelper.sin(angle) * dist;
    double z = player.posZ + MathHelper.cos(angle) * dist;
    Integer y = getOpenSurface(player.worldObj, (int)x, (int)z, (int)player.posY, 10, true);
    if(y == null) return false;

    // spawning
    if(player.worldObj.getCombinedLight(new BlockPos((int)x, y, (int)z), 0) <= 7) {
        mob.setPositionAndUpdate(x, y, z);
        return player.worldObj.spawnEntityInWorld(mob);
    }

    return false;
}
项目:Thermos    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:KCauldron    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:CauldronGit    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:Cauldron-Old    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:Cauldron-Reloaded    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity instanceof EntityMob || entity instanceof EntitySlime || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity instanceof EntityCreature || entity instanceof EntityAmbientCreature || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:FFoKC    文件:ActivationRange.java   
/**
 * Initializes an entities type on construction to specify what group this
 * entity is in for activation ranges.
 *
 * @param entity
 * @return group id
 */
public static byte initializeEntityActivationType(Entity entity)
{
    Chunk chunk = null;
    // Cauldron start - account for entities that dont extend EntityMob, EntityAmbientCreature, EntityCreature
    if ( entity.getClass().equals(EntityMob.class) || entity.getClass().equals(EntitySlime.class) || entity.isCreatureType(EnumCreatureType.monster, false)) // Cauldron - account for entities that dont extend EntityMob
    {
        return 1; // Monster
    } else if ( entity.getClass().equals(EntityCreature.class) || entity.getClass().equals(EntityAmbientCreature.class) || entity.isCreatureType(EnumCreatureType.creature, false) 
             || entity.isCreatureType(EnumCreatureType.waterCreature, false) || entity.isCreatureType(EnumCreatureType.ambient, false))
    {
        return 2; // Animal
    // Cauldron end
    } else
    {
        return 3; // Misc
    }
}
项目:FusionWarfare    文件:TileEntityAuraMobTurret.java   
@Override
public boolean onAction() {

    for (Object o : entitiesInAura) {

        if (o != null && o instanceof EntityMob) {

            EntityMob mob = (EntityMob)o;               
            mob.attackEntityFrom(DamageSource.magic, 12);
            System.out.println(mob.toString());
            return true;
        }
    }

    return false;
}
项目:Skills    文件:CombatBase.java   
public float getParrySkill(Entity target)
{
    if(target instanceof EntityPlayer)
    {
        SkillTreeBase parry = SkillTrackerData.get((EntityPlayer) target).GetSkillByID("parry");
        return parry != null ? parry.getSkillLevel() : 0;
    }
    else if (target instanceof EntityMob)
    {
        //TODO Give Mobs a Defense
        return EntityMobsExt.get((EntityMob)target).parry;
    }
    else if(target instanceof EntityAnimal)
    {
        return EntityAnimalExt.get((EntityAnimal)target).parry;
    }

    return 0;
}
项目:Minestrappolation-4    文件:BlockGodstone.java   
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand)
{
    if (!world.isRemote)
    {
        world.scheduleUpdate(pos, this, 5);
        AxisAlignedBB axisalignedbb = this.getCollisionBoundingBox(world, pos, state).expand(6, 6, 6);
        List<EntityMob> list = world.getEntitiesWithinAABB(EntityMob.class, axisalignedbb);
        for (EntityMob mob : list)
        {
            if (mob.getCreatureAttribute() == EnumCreatureAttribute.UNDEAD)
            {
                mob.setFire(20);
            }
        }
    }
}
项目:Hemomancy    文件:EntitySummon.java   
@Override
    protected void applyEntityAI()
    {
//        this.tasks.addTask(4, new EntityAIAttackOnCollide(this, EntityMob.class, 1.0D, true));

        this.tasks.addTask(9, new SummonAIMoveToArea(this, 1.0));
        this.tasks.addTask(4, new SummonAIManipulateTargetBlock(this));
        this.tasks.addTask(6, new SummonAIMoveToNextTargetBlock(this, 1.0));

        this.tasks.addTask(3, new SummonAIMoveToChest(this, 1.0));
        this.tasks.addTask(4, new SummonAIDumpToChest(this));

//        this.tasks.addTask(6, new EntityAIMoveThroughVillage(this, 1.0D, false));
        this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, true, new Class[] {EntityPigZombie.class}));
        this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityMob.class, true));
    }
项目:Resilience-Client-Source    文件:ModuleMobESP.java   
@Override
public void onRender(EventOnRender event){
    for(Object o : invoker.getEntityList()){
        if(o instanceof EntityPlayer) continue;
        if(o instanceof EntityLivingBase){
            EntityLivingBase entity = (EntityLivingBase) o;

            boolean mob = (entity instanceof EntityMob);

            RenderUtils.drawESP(false,
                    invoker.getBoundboxMinX(entity) - invoker.getRenderPosX() - 0.1, 
                    invoker.getBoundboxMinY(entity) - invoker.getRenderPosY() - 0.1, 
                    invoker.getBoundboxMinZ(entity) - invoker.getRenderPosZ() - 0.1, 
                    invoker.getBoundboxMaxX(entity) - invoker.getRenderPosX() + 0.1, 
                    invoker.getBoundboxMaxY(entity) - invoker.getRenderPosY() + 0.1, 
                    invoker.getBoundboxMaxZ(entity) - invoker.getRenderPosZ() + 0.1, 
                    1, 1, 1, 0.19, mob ? 1 : 0, mob ? 0 : 1, mob ? 0 : 1, 1);
        }
    }
}
项目:Gadomancy    文件:AuraEffects.java   
@Override
public boolean isEntityApplicable(Entity e) {
    if(e instanceof EntityMob) {
        EntityMob mob = (EntityMob) e;
        if(mob.getEntityAttribute(EntityUtils.CHAMPION_MOD).getAttributeValue() < 0
                && mob.getEntityAttribute(SharedMonsterAttributes.maxHealth).getBaseValue() >= 10.0D) {
            boolean whitelisted = false;
            for (Class clazz : ConfigEntities.championModWhitelist.keySet()) {
                if (clazz.isAssignableFrom(e.getClass())) {
                    whitelisted = true;
                }
            }
            return whitelisted;
        }
    }
    return false;
}
项目:AdvancedPotions    文件:AdvancedPotions.java   
@SubscribeEvent
public void onLivingDrops(LivingDropsEvent event) {
    debug("drop");
    float dropChance = 0.0f;
    if (event.entityLiving instanceof EntityMob) {
        debug("drop1");
        dropChance = 0.2f;
        if (event.entityLiving instanceof EntityWitch) {
            debug("drop2");
            dropChance = 1.0f;
        }
    }
    dropChance *= (event.lootingLevel + 1);
    if (rng.nextFloat() < dropChance) {
        debug("dropping");
        event.entityLiving.worldObj.spawnEntityInWorld(new EntityItem(
                event.entityLiving.worldObj, event.entityLiving.posX,
                event.entityLiving.posY, event.entityLiving.posZ, new ItemStack(ingredient, 1, 9)));
    }
}
项目:MineFantasy    文件:TacticalManager.java   
public static int getHearing(Entity entity)
{
    if(entity instanceof ISpecialSenses)
    {
        return((ISpecialSenses)entity).getSight();
    }
    if(entity instanceof EntityMob)
    {
        if(((EntityMob)entity).getCreatureAttribute() == EnumCreatureAttribute.UNDEAD)
        {
            return 10;
        }
    }

    return 5;
}