本文整理汇总了Java中net.minecraft.entity.EntityLivingBase.setFire方法的典型用法代码示例。如果您正苦于以下问题:Java EntityLivingBase.setFire方法的具体用法?Java EntityLivingBase.setFire怎么用?Java EntityLivingBase.setFire使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.minecraft.entity.EntityLivingBase
的用法示例。
在下文中一共展示了EntityLivingBase.setFire方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: apply
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@Override
public void apply(World world, BlockPos pos, EntityLivingBase entity, int amplifier, int tick) {
if (amplifier >= 3) {
if (entity instanceof EntityWitch) {
entity.setFire(500);
entity.attackEntityFrom(DamageSource.MAGIC, 20);
} else if (entity.getCreatureAttribute() == EnumCreatureAttribute.ILLAGER) {
entity.addPotionEffect(new PotionEffect(MobEffects.WITHER, 1500, 0));
entity.attackEntityFrom(DamageSource.MAGIC, 20);
}
} else if (amplifier == 2 && entity.getCreatureAttribute() == EnumCreatureAttribute.ILLAGER || entity instanceof EntityWitch) {
entity.attackEntityFrom(DamageSource.MAGIC, 16);
} else if (entity.getCreatureAttribute() == EnumCreatureAttribute.ILLAGER) {
entity.attackEntityFrom(DamageSource.MAGIC, 10);
}
}
示例2: apply
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@Override
public void apply(World world, BlockPos pos, EntityLivingBase entity, int amplifier, int tick) {
if (entity.isEntityUndead()) {
if (amplifier >= 3 && entity.isEntityUndead()) {
entity.setFire(500);
entity.attackEntityFrom(DamageSource.MAGIC, 20);
} else if (amplifier == 2) {
entity.attackEntityFrom(DamageSource.MAGIC, 16);
} else {
entity.attackEntityFrom(DamageSource.MAGIC, 10);
}
}
}
示例3: onEntityUpdate
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@SubscribeEvent
public void onEntityUpdate(LivingUpdateEvent event)
{
EntityLivingBase living = event.getEntityLiving();
if(living instanceof IBurnInDay && living.world.isDaytime() && !living.world.isRemote && !living.isChild() && ((IBurnInDay)living).shouldBurn() && living.getBrightness() > 0.5F &&
living.getRNG().nextFloat() * 30.0F < (living.getBrightness() - 0.4F) * 2.0F && living.world.canSeeSky(new BlockPos(living.posX, living.posY + (double)living.getEyeHeight(), living.posZ)))
{
boolean flag = true;
ItemStack itemstack = living.getItemStackFromSlot(EntityEquipmentSlot.HEAD);
if (!itemstack.isEmpty())
{
if (itemstack.isItemStackDamageable())
{
itemstack.setItemDamage(itemstack.getItemDamage() + living.getRNG().nextInt(2));
if (itemstack.getItemDamage() >= itemstack.getMaxDamage())
{
living.renderBrokenItemStack(itemstack);
living.setItemStackToSlot(EntityEquipmentSlot.HEAD, ItemStack.EMPTY);
}
}
flag = false;
}
if (flag)
{
living.setFire(8);
}
}
}
示例4: onCastMelee
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@Override
public boolean onCastMelee(World world, EntityPlayer player, Entity entity, ItemStack stack) {
if (!entity.isImmuneToFire() && entity instanceof EntityLivingBase && consumePower(player)) {
EntityLivingBase entityLivingBase = (EntityLivingBase) entity;
entityLivingBase.attackEntityFrom(new EntityDamageSourceSpell(player), 4);
entityLivingBase.setFire(5);
if (!world.isRemote && world instanceof WorldServer) {
((WorldServer) world).spawnParticle(EnumParticleTypes.FLAME, true, entity.posX, entity.posY + (entity.height / 2F), entity.posZ, world.rand.nextInt(8) + 12, entity.width / 2F, entity.height / 2F, entity.width / 2F, 0.01F);
}
}
return false;
}
示例5: apply
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@Override
public void apply(World world, BlockPos pos, EntityLivingBase entity, int amplifier, int tick) {
if (!entity.isBurning()) {
entity.setFire(500);
}
}