本文整理汇总了Java中net.minecraft.entity.ai.EntityAINearestAttackableTarget类的典型用法代码示例。如果您正苦于以下问题:Java EntityAINearestAttackableTarget类的具体用法?Java EntityAINearestAttackableTarget怎么用?Java EntityAINearestAttackableTarget使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
EntityAINearestAttackableTarget类属于net.minecraft.entity.ai包,在下文中一共展示了EntityAINearestAttackableTarget类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
@Override
protected void initEntityAI() {
this.tasks.addTask(8, new AIEntityFlyingTowardsPlayer(this));
this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 3.0F, 1.0F));
this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityLiving.class, 8.0F));
this.tasks.addTask(11, new EntityAILookIdle(this));
this.targetTasks.addTask(0, new EntityAINearestAttackableTarget<>(this, EntityPlayer.class, 10, false, false, new Predicate<EntityLivingBase>() {
@Override
public boolean apply(EntityLivingBase input) {
return !input.isPotionActive(HarshenPotions.potionSoulless);
}
}));
}
示例2: setRabbitType
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public void setRabbitType(int rabbitTypeId)
{
if (rabbitTypeId == 99)
{
this.tasks.removeTask(this.aiAvoidWolves);
this.tasks.addTask(4, new EntityRabbit.AIEvilAttack(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityWolf.class, true));
if (!this.hasCustomName())
{
this.setCustomNameTag(StatCollector.translateToLocal("entity.KillerBunny.name"));
}
}
this.dataWatcher.updateObject(18, Byte.valueOf((byte)rabbitTypeId));
}
示例3: EntitySkeleton
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public EntitySkeleton(World worldIn)
{
super(worldIn);
this.tasks.addTask(1, new EntityAISwimming(this));
this.tasks.addTask(2, new EntityAIRestrictSun(this));
this.tasks.addTask(3, new EntityAIFleeSun(this, 1.0D));
this.tasks.addTask(3, new EntityAIAvoidEntity(this, EntityWolf.class, 6.0F, 1.0D, 1.2D));
this.tasks.addTask(4, new EntityAIWander(this, 1.0D));
this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(6, new EntityAILookIdle(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
this.targetTasks.addTask(3, new EntityAINearestAttackableTarget(this, EntityIronGolem.class, true));
if (worldIn != null && !worldIn.isRemote)
{
this.setCombatTask();
}
}
示例4: EntityEnderman
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public EntityEnderman(World worldIn)
{
super(worldIn);
this.setSize(0.6F, 2.9F);
this.stepHeight = 1.0F;
this.tasks.addTask(0, new EntityAISwimming(this));
this.tasks.addTask(2, new EntityAIAttackOnCollide(this, 1.0D, false));
this.tasks.addTask(7, new EntityAIWander(this, 1.0D));
this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(8, new EntityAILookIdle(this));
this.tasks.addTask(10, new EntityEnderman.AIPlaceBlock(this));
this.tasks.addTask(11, new EntityEnderman.AITakeBlock(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityEnderman.AIFindPlayer(this));
this.targetTasks.addTask(3, new EntityAINearestAttackableTarget(this, EntityEndermite.class, 10, true, false, new Predicate<EntityEndermite>()
{
public boolean apply(EntityEndermite p_apply_1_)
{
return p_apply_1_.isSpawnedByPlayer();
}
}));
}
示例5: EntityGuardian
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public EntityGuardian(World worldIn)
{
super(worldIn);
this.experienceValue = 10;
this.setSize(0.85F, 0.85F);
this.tasks.addTask(4, new EntityGuardian.AIGuardianAttack(this));
EntityAIMoveTowardsRestriction entityaimovetowardsrestriction;
this.tasks.addTask(5, entityaimovetowardsrestriction = new EntityAIMoveTowardsRestriction(this, 1.0D));
this.tasks.addTask(7, this.wander = new EntityAIWander(this, 1.0D, 80));
this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityGuardian.class, 12.0F, 0.01F));
this.tasks.addTask(9, new EntityAILookIdle(this));
this.wander.setMutexBits(3);
entityaimovetowardsrestriction.setMutexBits(3);
this.targetTasks.addTask(1, new EntityAINearestAttackableTarget(this, EntityLivingBase.class, 10, true, false, new EntityGuardian.GuardianTargetSelector(this)));
this.moveHelper = new EntityGuardian.GuardianMoveHelper(this);
this.field_175484_c = this.field_175482_b = this.rand.nextFloat();
}
示例6: EntityWither
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public EntityWither(World worldIn)
{
super(worldIn);
this.setHealth(this.getMaxHealth());
this.setSize(0.9F, 3.5F);
this.isImmuneToFire = true;
((PathNavigateGround)this.getNavigator()).setCanSwim(true);
this.tasks.addTask(0, new EntityAISwimming(this));
this.tasks.addTask(2, new EntityAIArrowAttack(this, 1.0D, 40, 20.0F));
this.tasks.addTask(5, new EntityAIWander(this, 1.0D));
this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(7, new EntityAILookIdle(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityLiving.class, 0, false, false, attackEntitySelector));
this.experienceValue = 50;
}
示例7: setRabbitType
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
public void setRabbitType(int rabbitTypeId)
{
if (rabbitTypeId == 99)
{
this.getEntityAttribute(SharedMonsterAttributes.ARMOR).setBaseValue(8.0D);
this.tasks.addTask(4, new EntityRabbit.AIEvilAttack(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, true));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityWolf.class, true));
if (!this.hasCustomName())
{
this.setCustomNameTag(I18n.translateToLocal("entity.KillerBunny.name"));
}
}
this.dataManager.set(RABBIT_TYPE, Integer.valueOf(rabbitTypeId));
}
示例8: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
protected void initEntityAI()
{
this.aiSit = new EntityAISit(this);
this.tasks.addTask(1, new EntityAISwimming(this));
this.tasks.addTask(2, this.aiSit);
this.tasks.addTask(3, new EntityWolf.AIAvoidEntity(this, EntityLlama.class, 24.0F, 1.5D, 1.5D));
this.tasks.addTask(4, new EntityAILeapAtTarget(this, 0.4F));
this.tasks.addTask(5, new EntityAIAttackMelee(this, 1.0D, true));
this.tasks.addTask(6, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F));
this.tasks.addTask(7, new EntityAIMate(this, 1.0D));
this.tasks.addTask(8, new EntityAIWanderAvoidWater(this, 1.0D));
this.tasks.addTask(9, new EntityAIBeg(this, 8.0F));
this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(10, new EntityAILookIdle(this));
this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this));
this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this));
this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, true, new Class[0]));
this.targetTasks.addTask(4, new EntityAITargetNonTamed(this, EntityAnimal.class, false, new Predicate<Entity>()
{
public boolean apply(@Nullable Entity p_apply_1_)
{
return p_apply_1_ instanceof EntitySheep || p_apply_1_ instanceof EntityRabbit;
}
}));
this.targetTasks.addTask(5, new EntityAINearestAttackableTarget(this, AbstractSkeleton.class, false));
}
示例9: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
protected void initEntityAI()
{
super.initEntityAI();
this.tasks.addTask(0, new EntityAISwimming(this));
this.tasks.addTask(1, new EntityEvoker.AICastingSpell());
this.tasks.addTask(2, new EntityAIAvoidEntity(this, EntityPlayer.class, 8.0F, 0.6D, 1.0D));
this.tasks.addTask(4, new EntityEvoker.AISummonSpell());
this.tasks.addTask(5, new EntityEvoker.AIAttackSpell());
this.tasks.addTask(6, new EntityEvoker.AIWololoSpell());
this.tasks.addTask(8, new EntityAIWander(this, 0.6D));
this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 3.0F, 1.0F));
this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityLiving.class, 8.0F));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, true, new Class[] {EntityEvoker.class}));
this.targetTasks.addTask(2, (new EntityAINearestAttackableTarget(this, EntityPlayer.class, true)).func_190882_b(300));
this.targetTasks.addTask(3, (new EntityAINearestAttackableTarget(this, EntityVillager.class, false)).func_190882_b(300));
this.targetTasks.addTask(3, new EntityAINearestAttackableTarget(this, EntityIronGolem.class, false));
}
示例10: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
protected void initEntityAI()
{
this.tasks.addTask(0, new EntityAISwimming(this));
this.tasks.addTask(2, new EntityAIAttackMelee(this, 1.0D, false));
this.tasks.addTask(7, new EntityAIWanderAvoidWater(this, 1.0D, 0.0F));
this.tasks.addTask(8, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(8, new EntityAILookIdle(this));
this.tasks.addTask(10, new EntityEnderman.AIPlaceBlock(this));
this.tasks.addTask(11, new EntityEnderman.AITakeBlock(this));
this.targetTasks.addTask(1, new EntityEnderman.AIFindPlayer(this));
this.targetTasks.addTask(2, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(3, new EntityAINearestAttackableTarget(this, EntityEndermite.class, 10, true, false, new Predicate<EntityEndermite>()
{
public boolean apply(@Nullable EntityEndermite p_apply_1_)
{
return p_apply_1_.isSpawnedByPlayer();
}
}));
}
示例11: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
protected void initEntityAI()
{
this.tasks.addTask(1, new EntityAIAttackMelee(this, 1.0D, true));
this.tasks.addTask(2, new EntityAIMoveTowardsTarget(this, 0.9D, 32.0F));
this.tasks.addTask(3, new EntityAIMoveThroughVillage(this, 0.6D, true));
this.tasks.addTask(4, new EntityAIMoveTowardsRestriction(this, 1.0D));
this.tasks.addTask(5, new EntityAILookAtVillager(this));
this.tasks.addTask(6, new EntityAIWanderAvoidWater(this, 0.6D));
this.tasks.addTask(7, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F));
this.tasks.addTask(8, new EntityAILookIdle(this));
this.targetTasks.addTask(1, new EntityAIDefendVillage(this));
this.targetTasks.addTask(2, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(3, new EntityAINearestAttackableTarget(this, EntityLiving.class, 10, false, true, new Predicate<EntityLiving>()
{
public boolean apply(@Nullable EntityLiving p_apply_1_)
{
return p_apply_1_ != null && IMob.VISIBLE_MOB_SELECTOR.apply(p_apply_1_) && !(p_apply_1_ instanceof EntityCreeper);
}
}));
}
示例12: onSpawn
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
@SubscribeEvent
public void onSpawn(EntityJoinWorldEvent event) {
if (TF2ConfigVars.targetSentries && event.getEntity() instanceof IMob && event.getEntity() instanceof EntityCreature) {
((EntityCreature)event.getEntity()).targetTasks.addTask(100,
new EntityAINearestAttackableTarget<EntitySentry>((EntityCreature) event.getEntity(), EntitySentry.class, 10, true, false, sentry -> {
return sentry.getOwnerId() != null;
}) {
protected double getTargetDistance()
{
return super.getTargetDistance() * 0.45f;
}
});
}
if (event.getEntity() instanceof EntityPlayer){
if (event.getEntity().world.isRemote) {
if (event.getEntity() == ClientProxy.getLocalPlayer())
TF2weapons.network.sendToServer(new TF2Message.InitClientMessage(TF2weapons.conf));
TF2weapons.network.sendToServer(new TF2Message.ActionMessage(99, (EntityLivingBase) event.getEntity()));
}
if (event.getEntity().world != null && !event.getEntity().world.isRemote && event.getEntity() instanceof EntityPlayerMP){
EntityPlayerMP player=((EntityPlayerMP)event.getEntity());
player.inventoryContainer.addListener(new TF2ContainerListener(player));
}
}
}
示例13: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
protected void initEntityAI()
{
this.tasks.addTask(1, new EntityAISwimming(this));
this.tasks.addTask(4, new AIAttack(this));
this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
this.tasks.addTask(6, new EntityAILookIdle(this));
this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false, new Class[0]));
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget<EntityLivingBase>(this, EntityLivingBase.class,3, false,false,new Predicate<EntityLivingBase>(){
@Override
public boolean apply(EntityLivingBase input) {
// TODO Auto-generated method stub
return (input instanceof EntityTF2Character || input instanceof EntityPlayer) && getDistanceSqToEntity(input)<600;
}
}));
}
示例14: initEntityAI
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
@Override
protected void initEntityAI() {
this.tasks.addTask(5, new AIRandomFly(this));
this.tasks.addTask(7, new AILookAround(this));
this.tasks.addTask(7, new AIFireballAttack(this));
this.targetTasks.taskEntries.clear();
this.targetTasks.addTask(2, new EntityAINearestAttackableTarget<EntityLivingBase>(this, EntityLivingBase.class, 0,true, false,
new Predicate<EntityLivingBase>() {
@Override
public boolean apply(EntityLivingBase input) {
// TODO Auto-generated method stub
return input instanceof EntityPlayer || input instanceof EntityTF2Character;
}
}));
this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, false));
}
示例15: draw
import net.minecraft.entity.ai.EntityAINearestAttackableTarget; //导入依赖的package包/类
@Override
public void draw(WeaponsCapability weaponsCapability, ItemStack stack, final EntityLivingBase living, World world) {
super.draw(weaponsCapability, stack, living, world);
if (!world.isRemote) {
weaponsCapability.controlledSentry = null;
List<EntitySentry> list = world.getEntitiesWithinAABB(EntitySentry.class,
living.getEntityBoundingBox().grow(128, 128, 128), new Predicate<EntitySentry>() {
@Override
public boolean apply(EntitySentry input) {
// TODO Auto-generated method stub
return input.getOwner() == living && !input.isDisabled();
}
});
Collections.sort(list, new EntityAINearestAttackableTarget.Sorter(living));
if (!list.isEmpty()) {
list.get(0).setControlled(true);
weaponsCapability.controlledSentry = list.get(0);
}
}
}