Java 类net.minecraft.entity.passive.IAnimals 实例源码

项目:SerenityCE    文件:KillAura.java   
private boolean entityMatchesTargetTypes(EntityLivingBase entityLivingBase) {
    boolean matches = false;

    if (entityLivingBase instanceof EntityPlayer) {
        matches = players.getValue();
    } else if (entityLivingBase instanceof IMob) {
        matches = mobs.getValue();
    } else if (entityLivingBase instanceof IAnimals) {
        matches = animals.getValue();
    }

    if (mobs.getValue()) {
        if (entityLivingBase instanceof EntityWolf) {
            EntityWolf wolf = (EntityWolf) entityLivingBase;
            matches = wolf.isAngry();
        }
    }

    return matches;
}
项目:N-API    文件:EntityRegistry.java   
/**
 * Adds a passive mob spawn to all biomes.
 * @param spawnClazz The class of the entity that is to be spawned when the entry is registered.
 * @param chance The chance the entity has of spawning.
 * @param minGroupCount The smallest number of mobs there can be in a group of mobs spawned.
 * @param maxGroupCount The largest number of mobs there can be in a group of mobs spawned.
 */
public static final void addPassiveSpawnToAll(Class<? extends Entity> spawnClazz, int chance, int minGroupCount, int maxGroupCount)
{
    try 
    {
        BiomeGenBase.SpawnListEntry spawn = constructSpawnEntryFromArgs(spawnClazz, chance, minGroupCount, maxGroupCount);

        if (spawn.entityClass.newInstance() instanceof IAnimals)
        {
            for (int i = 0; i == biomes.length; i++)
            {
                biomes[i].spawnableCreatureList.add(spawn);
            }
        }
    } 
    catch (InstantiationException | IllegalAccessException e) 
    {
        e.printStackTrace();
    }
}
项目:Mini-Bosses    文件:EntityFeeder.java   
@Override
public void onKillEntity(EntityLivingBase entity) {
    super.onKillEntity(entity);

    if(entity instanceof EntityCreeper) {
        this.getDataWatcher().updateObject(12, Integer.valueOf(3));
    }
    if(entity instanceof EntitySkeleton) {
        this.getDataWatcher().updateObject(12, Integer.valueOf(2));
    }
    if(entity instanceof EntityZombie) {
        this.getDataWatcher().updateObject(12, Integer.valueOf(1));
    }
    if(entity instanceof IAnimals) {
        this.heal(10.0F);
    }
    this.heal(5.0F);
}
项目:InControl    文件:GenericRuleEvaluator.java   
private void addPassiveCheck(AttributeMap map) {
    if (map.get(PASSIVE)) {
        checks.add((event,query) -> (query.getEntity(event) instanceof IAnimals && !(query.getEntity(event) instanceof IMob)));
    } else {
        checks.add((event,query) -> !(query.getEntity(event) instanceof IAnimals && !(query.getEntity(event) instanceof IMob)));
    }
}
项目:InControl    文件:CmdKillMobs.java   
@Override
public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException {
    if (args.length <= 0) {
        ChatTools.addChatMessage(sender, new TextComponentString(TextFormatting.RED + "Use 'all', 'passive', 'hostile' or name of the mob followed by optional dimension id"));
        InControl.logger.error("Use 'all', 'passive', 'hostile', 'entity' or name of the mob followed by optional dimension id");
        return;
    }
    int dimension = (sender instanceof EntityPlayer) ? sender.getEntityWorld().provider.getDimension() : 0;
    if (args.length > 1) {
        dimension = Integer.parseInt(args[1]);
    }
    String arg0 = args[0].toLowerCase();
    boolean all = "all".equals(arg0);
    boolean passive = "passive".equals(arg0);
    boolean hostile = "hostile".equals(arg0);
    boolean entity = "entity".equals(arg0);

    WorldServer worldServer = server.worldServerForDimension(dimension);
    List<Entity> entities = worldServer.getEntities(Entity.class, input -> {
        if (all) {
            return !(input instanceof EntityPlayer);
        } else if (passive) {
            return input instanceof IAnimals && !(input instanceof IMob);
        } else if (hostile) {
            return input instanceof IMob;
        } else if (entity) {
            return !(input instanceof IAnimals) && !(input instanceof EntityPlayer);
        } else {
            String id = EntityTools.findEntityIdByClass(input.getClass());
            return arg0.equals(id);
        }
    });
    for (Entity e : entities) {
        worldServer.removeEntity(e);
    }
    ChatTools.addChatMessage(sender, new TextComponentString(TextFormatting.YELLOW + "Removed " + entities.size() + " entities!"));
}
项目:TorchMaster    文件:VanillaCompat.java   
@SubscribeEvent
public static void registerDreadLampEntities(EntityFilterRegisterEvent.DreadLamp event)
{
    EntityList.getEntityNameList().stream()
            .map(EntityList::getClass)
            .filter(Objects::nonNull)
            .filter(c -> IAnimals.class.isAssignableFrom(c) && !IMob.class.isAssignableFrom(c))
            .forEach(event.getRegistry()::registerEntity);
}
项目:MineFantasy    文件:EntityHound.java   
public EntityHound(World world)
{
    super(world);
    ID = rand.nextInt(100000000)+1;
    setHome(world.getSpawnPoint().posX, world.getSpawnPoint().posY, world.getSpawnPoint().posZ);
    setStats();
    armour = new ItemStack[2];
    this.setSize(0.6F, 0.8F);
    getNavigator().setAvoidsWater(true);
    this.tasks.addTask(1, new EntityAISwimming(this));
    this.tasks.addTask(3, new EntityAILeapAtTargetHound(this, 0.4F));
    this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0F, false));
    this.tasks.addTask(5, new EntityAIFollowHound(this, 1.0F, 2.0F, 4.0F));
    this.tasks.addTask(6, new EntityAIMate(this, 1.0F));
    this.tasks.addTask(7, new EntityAIWanderHound(this, 1.0F));
    this.tasks.addTask(8, new EntityAIBegHound(this, 8.0F));
    this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
    this.tasks.addTask(9, new EntityAILookIdle(this));
    this.tasks.addTask(3, new EntityAITemptHound(this, 0.75F, false));

    //Defend Self
    this.targetTasks.addTask(3, new EntityAIDefendHound(this, true));

    //Defend Owner
    this.targetTasks.addTask(1, new EntityAIDefendOwnerHound(this));
    this.targetTasks.addTask(2, new EntityAIFightForHound(this));

    //Attack Entities 
    this.targetTasks.addTask(2, new EntityAIHoundAttackMonster(this, IMob.class, 0, true));
    this.targetTasks.addTask(2, new EntityAIHoundAttackAnimal(this, IAnimals.class, 0, true));
    this.targetTasks.addTask(2, new EntityAIHoundAttackPlayer(this, EntityPlayer.class, 0, true));

    this.targetTasks.addTask(4, new EntityAITargetPack(this, EntityAnimal.class, 200, true));
}
项目:N-API    文件:EntityRegistry.java   
/**
 * Adds a passive spawn to the specified biomes.
 * @param spawnClazz The class of the entity that is to be spawned when the entry is registered.
 * @param chance The chance the entity has of spawning.
 * @param minGroupCount The smallest number of mobs there can be in a group of mobs spawned.
 * @param maxGroupCount The largest number of mobs there can be in a group of mobs spawned.
 * @param biomesToAddTo
 */
public static final void addPassiveSpawn(Class<? extends Entity> spawnClazz, int chance, int minGroupCount, int maxGroupCount, BiomeGenBase... biomesToAddTo)
{
    BiomeGenBase.SpawnListEntry spawn = constructSpawnEntryFromArgs(spawnClazz, chance, minGroupCount, maxGroupCount);

    if (!(biomesToAddTo.length == 0))
    {
        try 
        {
            if (spawn.entityClass.newInstance() instanceof IAnimals)
            {
                for (int i = 0; i == biomes.length; i++)
                {
                    for (int d = 0; i == biomesToAddTo.length; i++)
                    {
                        if (biomes[i] == biomesToAddTo[d])
                        {
                            biomes[i].spawnableCreatureList.add(spawn);
                        }
                    }
                }
            }
        }
        catch (InstantiationException | IllegalAccessException e)
        {
            e.printStackTrace();
        }
    }
    else
    {
        addPassiveSpawnToAll(spawnClazz, chance, minGroupCount, maxGroupCount);
    }
}
项目:MyEssentials-Core    文件:EntityUtils.java   
private static String getEntityTypeNonCache(Entity e) {
    if (e instanceof EntityGolem) {
        return "Golem";
    } else if (e instanceof IBossDisplayData) {
        return "Boss";
    } else if (e instanceof IAnimals) {
        return "Animal";
    } else if (e instanceof IMob) {
        return "Monster";
    } else if (e instanceof IProjectile) {
        return "Projectile";
    } else if (e instanceof INpc) {
        return "NPC";
    } else if (e instanceof EntityItem) {
        return "Item";
    } else if (e instanceof EntityMob) {
        return "Monster";
    } else if (e instanceof EntityPlayer) {
        return "Player";
    } else if (e instanceof EntityFireball) {
        return "Projectile";
    } else if (e instanceof EntityTNTPrimed) {
        return "TNT";
    } else {
        return "Unknown"; // e.getClass().getName();
    }
}
项目:Mob-Rebirth    文件:CommonEvents.java   
private void transition(LivingDropsEvent event) {
    if (event.getEntityLiving() instanceof IMob)
        makeMobRebornTransition(event);
    else if (event.getEntityLiving() instanceof IAnimals && ConfigValues.ANIMALREBIRTH)
        makeMobRebornTransition(event);
}
项目:rpginventory    文件:PacketPalaSpecial.java   
@Override
public IMessage onMessage(PacketPalaSpecial message, MessageContext ctx) {

    EntityPlayer p = ctx.getServerHandler().playerEntity;
    PlayerRpgInventory inv = PlayerRpgInventory.get(p);
    ItemStack weapon = p.getCurrentEquippedItem();

    inv.markDirty();

    if (!RpgInventoryMod.developers.contains(p.getDisplayName().toLowerCase()) || (weapon == null)) {
        if (!RpgInventoryMod.playerClass.toLowerCase().contains(RpgDreadAddon.CLASSPALADIN)) {
            return null;
        }
    }

    if (!ServerTickHandler.globalCooldownMap.containsKey(p.getDisplayName())) {
        ServerTickHandler.globalCooldownMap.put(p.getDisplayName(), 0);
    }

    if (ServerTickHandler.globalCooldownMap.get(p.getDisplayName()) <= 0) {
        ServerTickHandler.globalCooldownMap.put(p.getDisplayName(),7 * 20);
        // System.out.println("Healing time!");
        // Allow staff/hammer to perform one last aoe then break the weapon
        // if its damaged enough.
        if ((weapon.getItemDamage() + 3) >= weapon.getMaxDamage()) {
            // Trigger item break stuff
            weapon.damageItem(
                    (weapon.getMaxDamage() - weapon.getItemDamage()) + 1, p);
            // delete the item
            p.renderBrokenItemStack(weapon);
            p.setCurrentItemOrArmor(0, (ItemStack) null);
        } else if (!RpgInventoryMod.developers.contains(p.getDisplayName().toLowerCase())) {
            weapon.damageItem(5, p);
        }

        float rad = 6.0f;
        AxisAlignedBB pool = AxisAlignedBB.getBoundingBox(p.posX - rad, p.posY - rad, p.posZ - rad, p.posX + rad,p.posY + rad, p.posZ + rad);
        List<EntityLivingBase> entl = p.worldObj.getEntitiesWithinAABB(EntityLivingBase.class, pool);

        if ((entl != null) && (entl.size() > 0)) {
            for (EntityLivingBase el : entl) {
                if (el != null) {
                    double dist = (p.getDistanceSqToEntity(el));
                    double potstrength = 1.0D - (Math.sqrt(dist) / 4.0D);
                    if(el.isEntityUndead()  ){
                        Potion.heal.affectEntity(p, el,(2),potstrength * 2);
                        p.worldObj.playSoundAtEntity(el, "mob.zombie.remedy", 0.5f, 1f);
                    }
                    if(el instanceof EntityPlayer){
                        Potion.heal.affectEntity(p, el,(2),potstrength * 2);
                        p.worldObj.playSoundAtEntity(el, "random.orb", 1f, 1f);
                    }
                    if(el instanceof IAnimals && !(el instanceof IMob)){
                        el.heal(5f);
                        p.worldObj.playSoundAtEntity(el, "random.levelup", 1f, 1f);
                    }
                }
            }
        }
    } else {
        p.addChatMessage(new ChatComponentText("You must wait for energy to replenish, left: "
                + Math.floor(1 + (ServerTickHandler.globalCooldownMap.get(p
                        .getDisplayName()) / 20)) + " seconds"));
    }

    return null;
}
项目:nailed    文件:WorldEditEntityType.java   
@Override
public boolean isAnimal() {
    return entity instanceof IAnimals;
}
项目:RuneCraftery    文件:ModLoaderHelper.java   
public static void buildEntityTracker(BaseModProxy mod, Class<? extends Entity> entityClass, int entityTypeId, int updateRange, int updateInterval,
        boolean sendVelocityInfo)
{
    EntityRegistration er = EntityRegistry.registerModLoaderEntity(mod, entityClass, entityTypeId, updateRange, updateInterval, sendVelocityInfo);
    er.setCustomSpawning(new ModLoaderEntitySpawnCallback(mod, er), EntityDragon.class.isAssignableFrom(entityClass) || IAnimals.class.isAssignableFrom(entityClass));
}
项目:RuneCraftery    文件:EntityTracker.java   
public void func_72786_a(Entity p_72786_1_) {
   if(p_72786_1_ instanceof EntityPlayerMP) {
      this.func_72791_a(p_72786_1_, 512, 2);
      EntityPlayerMP var2 = (EntityPlayerMP)p_72786_1_;
      Iterator var3 = this.field_72793_b.iterator();

      while(var3.hasNext()) {
         EntityTrackerEntry var4 = (EntityTrackerEntry)var3.next();
         if(var4.field_73132_a != var2) {
            var4.func_73117_b(var2);
         }
      }
   } else if(p_72786_1_ instanceof EntityFishHook) {
      this.func_72785_a(p_72786_1_, 64, 5, true);
   } else if(p_72786_1_ instanceof EntityArrow) {
      this.func_72785_a(p_72786_1_, 64, 20, false);
   } else if(p_72786_1_ instanceof EntitySmallFireball) {
      this.func_72785_a(p_72786_1_, 64, 10, false);
   } else if(p_72786_1_ instanceof EntityFireball) {
      this.func_72785_a(p_72786_1_, 64, 10, false);
   } else if(p_72786_1_ instanceof EntitySnowball) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityEnderPearl) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityEnderEye) {
      this.func_72785_a(p_72786_1_, 64, 4, true);
   } else if(p_72786_1_ instanceof EntityEgg) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityPotion) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityExpBottle) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityFireworkRocket) {
      this.func_72785_a(p_72786_1_, 64, 10, true);
   } else if(p_72786_1_ instanceof EntityItem) {
      this.func_72785_a(p_72786_1_, 64, 20, true);
   } else if(p_72786_1_ instanceof EntityMinecart) {
      this.func_72785_a(p_72786_1_, 80, 3, true);
   } else if(p_72786_1_ instanceof EntityBoat) {
      this.func_72785_a(p_72786_1_, 80, 3, true);
   } else if(p_72786_1_ instanceof EntitySquid) {
      this.func_72785_a(p_72786_1_, 64, 3, true);
   } else if(p_72786_1_ instanceof EntityWither) {
      this.func_72785_a(p_72786_1_, 80, 3, false);
   } else if(p_72786_1_ instanceof EntityBat) {
      this.func_72785_a(p_72786_1_, 80, 3, false);
   } else if(p_72786_1_ instanceof IAnimals) {
      this.func_72785_a(p_72786_1_, 80, 3, true);
   } else if(p_72786_1_ instanceof EntityDragon) {
      this.func_72785_a(p_72786_1_, 160, 3, true);
   } else if(p_72786_1_ instanceof EntityTNTPrimed) {
      this.func_72785_a(p_72786_1_, 160, 10, true);
   } else if(p_72786_1_ instanceof EntityFallingSand) {
      this.func_72785_a(p_72786_1_, 160, 20, true);
   } else if(p_72786_1_ instanceof EntityHanging) {
      this.func_72785_a(p_72786_1_, 160, Integer.MAX_VALUE, false);
   } else if(p_72786_1_ instanceof EntityXPOrb) {
      this.func_72785_a(p_72786_1_, 160, 20, true);
   } else if(p_72786_1_ instanceof EntityEnderCrystal) {
      this.func_72785_a(p_72786_1_, 256, Integer.MAX_VALUE, false);
   }

}
项目:RuneCraftery    文件:ModLoaderHelper.java   
public static void buildEntityTracker(BaseModProxy mod, Class<? extends Entity> entityClass, int entityTypeId, int updateRange, int updateInterval,
        boolean sendVelocityInfo)
{
    EntityRegistration er = EntityRegistry.registerModLoaderEntity(mod, entityClass, entityTypeId, updateRange, updateInterval, sendVelocityInfo);
    er.setCustomSpawning(new ModLoaderEntitySpawnCallback(mod, er), EntityDragon.class.isAssignableFrom(entityClass) || IAnimals.class.isAssignableFrom(entityClass));
}
项目:ProgressiveAutomation    文件:TileKiller.java   
public EntityLivingBase getMob(int n) {
    Point3I point = getPoint(n);
    boundCheck = new AxisAlignedBB(point.getX(), point.getY()-1, point.getZ(), 
            point.getX()+1, point.getY()+2, point.getZ()+1);
    List<EntityLivingBase> entities = world.getEntitiesWithinAABB(EntityLivingBase.class, boundCheck);
    if (!entities.isEmpty()) {
        for (EntityLivingBase mob: entities) {
            if (mob instanceof EntityPlayer) {
                if (PAConfig.allowKillPlayer) {
                    if (hasFilterInstalled()) {
                        if (hasUpgrade(UpgradeType.FILTER_PLAYER)) return mob;
                    } else {
                        return mob;
                    }
                }
            } else if (hasFilterInstalled()) {
                if (hasUpgrade(UpgradeType.FILTER_ANIMAL)) {
                    if (mob instanceof IAnimals) {
                        if (hasUpgrade(UpgradeType.FILTER_ADULT)) {
                            if (!mob.isChild()) {
                                return mob;
                            }
                        } else {
                            return mob;
                        }
                    }
                }
                if (hasUpgrade(UpgradeType.FILTER_MOB)) {
                    if (mob instanceof IMob) {
                        if (hasUpgrade(UpgradeType.FILTER_ADULT)) {
                            if (!mob.isChild()) {
                                return mob;
                            }
                        } else {
                            return mob;
                        }
                    }
                }
                if ( (!hasUpgrade(UpgradeType.FILTER_MOB)) && (!hasUpgrade(UpgradeType.FILTER_ANIMAL)) ) {
                    if (hasUpgrade(UpgradeType.FILTER_ADULT)) {
                        if (!mob.isChild()) {
                            return mob;
                        }
                    }
                }
            } else {
                return mob;
            }
        }
    }

    return null;
}
项目:BetterNutritionMod    文件:ModLoaderHelper.java   
public static void buildEntityTracker(BaseModProxy mod, Class<? extends Entity> entityClass, int entityTypeId, int updateRange, int updateInterval,
        boolean sendVelocityInfo)
{
    EntityRegistration er = EntityRegistry.registerModLoaderEntity(mod, entityClass, entityTypeId, updateRange, updateInterval, sendVelocityInfo);
    er.setCustomSpawning(new ModLoaderEntitySpawnCallback(mod, er), EntityDragon.class.isAssignableFrom(entityClass) || IAnimals.class.isAssignableFrom(entityClass));
}