当前位置: 首页>>代码示例>>Java>>正文


Java IBossDisplayData类代码示例

本文整理汇总了Java中net.minecraft.entity.boss.IBossDisplayData的典型用法代码示例。如果您正苦于以下问题:Java IBossDisplayData类的具体用法?Java IBossDisplayData怎么用?Java IBossDisplayData使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


IBossDisplayData类属于net.minecraft.entity.boss包,在下文中一共展示了IBossDisplayData类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: checkBoundingBoxSize

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
public static boolean checkBoundingBoxSize(Entity entity, AxisAlignedBB aabb)
{
    if (entity instanceof EntityLivingBase && (!(entity instanceof IBossDisplayData) || !(entity instanceof IEntityMultiPart))
            && !(entity instanceof EntityPlayer))
    {
        int logSize = MinecraftServer.cauldronConfig.largeBoundingBoxLogSize.getValue();
        if (logSize <= 0 || !MinecraftServer.cauldronConfig.checkEntityBoundingBoxes.getValue()) return false;
        int x = MathHelper.floor_double(aabb.minX);
        int x1 = MathHelper.floor_double(aabb.maxX + 1.0D);
        int y = MathHelper.floor_double(aabb.minY);
        int y1 = MathHelper.floor_double(aabb.maxY + 1.0D);
        int z = MathHelper.floor_double(aabb.minZ);
        int z1 = MathHelper.floor_double(aabb.maxZ + 1.0D);

        int size = Math.abs(x1 - x) * Math.abs(y1 - y) * Math.abs(z1 - z);
        if (size > MinecraftServer.cauldronConfig.largeBoundingBoxLogSize.getValue())
        {
            logWarning("Entity being removed for bounding box restrictions");
            logWarning("BB Size: {0} > {1} avg edge: {2}", size, logSize, aabb.getAverageEdgeLength());
            logWarning("Motion: ({0}, {1}, {2})", entity.motionX, entity.motionY, entity.motionZ);
            logWarning("Calculated bounding box: {0}", aabb);
            logWarning("Entity bounding box: {0}", entity.getBoundingBox());
            logWarning("Entity: {0}", entity);
            NBTTagCompound tag = new NBTTagCompound();
            entity.writeToNBT(tag);
            logWarning("Entity NBT: {0}", tag);
            logStack();
            entity.setDead();
            return true;
        }
    }

    return false;
}
 
开发者ID:UraniumMC,项目名称:Uranium,代码行数:35,代码来源:CauldronHooks.java

示例2: doRender

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public void doRender(EntityLiving par1EntityLiving, double par2, double par4, double par6, float par8, float par9)
{
    BossStatus.setBossStatus((IBossDisplayData) par1EntityLiving, false);

    super.doRender(par1EntityLiving, par2, par4, par6, par8, par9);
}
 
开发者ID:4Space,项目名称:4Space-5,代码行数:8,代码来源:RenderCreeperBoss.java

示例3: getAllRegisteredMobNames

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
public static List<String> getAllRegisteredMobNames(boolean excludeBosses) {
  List<String> result = new ArrayList<String>();
  Set<Map.Entry<Class, String>> entries = EntityList.classToStringMapping.entrySet();
  for (Map.Entry<Class, String> entry : entries) {
    if (EntityLiving.class.isAssignableFrom(entry.getKey())) {
      if (!excludeBosses || !IBossDisplayData.class.isAssignableFrom(entry.getKey())) {
        result.add(entry.getValue());
      }
    }
  }
  return result;
}
 
开发者ID:SleepyTrousers,项目名称:EnderCore,代码行数:13,代码来源:EntityUtil.java

示例4: on

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@SubscribeEvent
public void on(EnderTeleportEvent e) {
    if (!(e.entityLiving instanceof EntityPlayer) && !(e.entityLiving instanceof IBossDisplayData)) {
        if (TileBlockProtector.isSpotProtected(e.entityLiving.worldObj, e.entityLiving)) {
            e.setCanceled(true);
        }
    }
}
 
开发者ID:makeoo,项目名称:Gadomancy,代码行数:9,代码来源:EventHandlerEntity.java

示例5: getMeta

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public Object getMeta(IBossDisplayData target, Vec3 relativePos) {
	Map<String, Object> map = Maps.newHashMap();

	map.put("name", target.func_145748_c_().getUnformattedText());
	map.put("health", target.getHealth());
	map.put("maxHealth", target.getMaxHealth());

	return map;
}
 
开发者ID:OpenMods,项目名称:OpenPeripheral-Integration,代码行数:11,代码来源:BossMetaProvider.java

示例6: applyToMob

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public void applyToMob(EntityPlayer player, IPlayerSession session, Entity target, int boost, int cost) {
    if (!player.getEntityWorld().isRemote) {
        if (player.getCurrentEquippedItem().getTagCompound() != null && (target instanceof EntityLivingBase && !(target instanceof EntityPlayer) && !(target instanceof IBossDisplayData)) && session.hasEnoughMana(cost())) {
            if (!player.getCurrentEquippedItem().getTagCompound().hasKey("EntityData")) {
                NBTTagCompound tag = new NBTTagCompound();
                ((EntityLivingBase) target).writeEntityToNBT(tag);
                Rings.pktHandler.sendToServer(new PacketStoreEntity(player, true, target.getClass().getName(), tag));
                target.setDead();
                session.adjustMana(-cost(), false);
            }
        }
    }
}
 
开发者ID:Lomeli12,项目名称:MagicalRings,代码行数:15,代码来源:BeingDisplacement.java

示例7: itemInteractionForEntity

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public boolean itemInteractionForEntity(ItemStack stack, EntityPlayer player, EntityLivingBase target) {
	if (FarragoMod.config.getBoolean("kahur.allowPickingUpMobs") && player.isSneaking()) {
		if (stack.hasTagCompound() && stack.getTagCompound().hasKey("KahurEntityName")) {
			return true;
		}
		if (!stack.hasTagCompound() || !stack.getTagCompound().getBoolean("KahurCanPickUpMobs")) return true;
		if (target instanceof EntityPlayer) return true;
		if (target instanceof IBossDisplayData) return true;
		if (stack.getMaxDamage()-stack.getItemDamage() < 12) {
			stack.damageItem(2000, player);
		} else {
			NBTTagCompound tag = stack.getTagCompound();
			if (tag == null) {
				tag = new NBTTagCompound();
				stack.setTagCompound(tag);
			}
			
			tag.setString("KahurEntityName", EntityList.getEntityString(target));
			NBTTagCompound entityTag = new NBTTagCompound();
			target.writeToNBT(entityTag);
			tag.setTag("KahurEntity", entityTag);
			target.setDead();
			player.worldObj.playSoundAtEntity(player, "tile.piston.in", 1.0F, (itemRand.nextFloat() * 0.4F + 1.2F));
			stack.damageItem(10, player);
		}
		return true;
	}
	return false;
}
 
开发者ID:unascribed,项目名称:Farrago,代码行数:31,代码来源:ItemKahur.java

示例8: canOneHitKill

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
/**
 * Returns true if the light arrow can kill this entity in one hit (endermen and wither skeletons)
 */
private boolean canOneHitKill(Entity entity) {
	if (entity instanceof IEntityEvil) {
		return ((IEntityEvil) entity).isLightArrowFatal();
	}
	boolean flag = (entity instanceof EntitySkeleton && ((EntitySkeleton) entity).getSkeletonType() == 1);
	return (!(entity instanceof IBossDisplayData)) && (flag || entity instanceof EntityEnderman);
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:11,代码来源:EntityArrowElemental.java

示例9: doRender

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public void doRender(EntityLiving entity, double dx, double dy, double dz, float yaw, float partialTick) {
	if (entity instanceof IBossDisplayData) {
		BossStatus.setBossStatus((IBossDisplayData) entity, true);
	}
	super.doRender(entity, dx, dy, dz, yaw, partialTick);
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:8,代码来源:RenderGenericLiving.java

示例10: doRender

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@Override
public void doRender(EntityWizzrobe entity, double dx, double dy, double dz, float yaw, float partialTick) {
	if (entity instanceof IBossDisplayData) {
		BossStatus.setBossStatus((IBossDisplayData) entity, true);
	}
	super.doRender(entity, dx, dy, dz, yaw, partialTick);
	if (model.atPeak) {
		renderSpell(entity, dx, dy, dz, yaw, partialTick);
	}
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:11,代码来源:RenderEntityWizzrobe.java

示例11: getEntityTypeNonCache

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
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();
    }
}
 
开发者ID:MyEssentials,项目名称:MyEssentials-Core,代码行数:28,代码来源:EntityUtils.java

示例12: isBossOrValidMob

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
private boolean isBossOrValidMob(Entity entity) {
    return entity != null ? (entity instanceof IBossDisplayData || mobWhiteList.contains(entity.getClass().getName())) : false;
}
 
开发者ID:Lomeli12,项目名称:arcadian-octo-duck,代码行数:4,代码来源:ModEventHandler.java

示例13: beginSpell

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
public void beginSpell(World world, int x, int y, int z, EntityPlayer player, Entity entity) {
    if ((!(entity instanceof IBossDisplayData) && !(entity instanceof INotKillCurseable)) || entity instanceof IMurderable) {
        super.beginSpell(world, x, y, z, player, entity);
    }
}
 
开发者ID:MagiciansArtificeTeam,项目名称:Magicians-Artifice,代码行数:6,代码来源:DeathSpell.java

示例14: isImmuneToStun

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
/**
 * Returns true if this property's entity is immune to stun effects
 */
public boolean isImmuneToStun() {
	// TODO make a public list that other mods can add entities to
	return ((entity instanceof EntityPlayer && !Config.canPlayersBeStunned()) || entity instanceof IBossDisplayData);
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:8,代码来源:ZSSEntityInfo.java

示例15: onLivingDrops

import net.minecraft.entity.boss.IBossDisplayData; //导入依赖的package包/类
@SubscribeEvent
public void onLivingDrops(LivingDropsEvent event) {
	if (event.source.getEntity() instanceof EntityPlayer) {
		EntityPlayer player = (EntityPlayer) event.source.getEntity();
		EntityLivingBase mob = event.entityLiving;
		boolean isBoss = mob instanceof IBossDisplayData;
		boolean flag = ZSSPlayerSkills.get(player).getSkillLevel(SkillBase.mortalDraw) == SkillBase.mortalDraw.getMaxLevel();
		ItemStack orb = (isBoss && !flag ? new ItemStack(ZSSItems.skillOrb,1,SkillBase.mortalDraw.getId()) : getOrbDrop(mob, isBoss));
		if (orb != null && Config.areOrbDropsEnabled()) {
			ItemStack helm = (player).getCurrentArmor(ArmorIndex.WORN_HELM);
			float f = (helm != null && helm.getItem() == ZSSItems.maskTruth ? 0.01F : 0.0F); 
			float baseChance = Config.getDropChance(orb.getItem() == ZSSItems.heartPiece ? SkillBase.bonusHeart.getId() : orb.getItemDamage());
			if (baseChance > 0.0F && (isBoss || mob.worldObj.rand.nextFloat() < (baseChance + f + (0.005F * event.lootingLevel)))) {
				event.drops.add(new EntityItem(mob.worldObj, mob.posX, mob.posY, mob.posZ, orb.copy()));
				mob.worldObj.playSoundEffect(mob.posX, mob.posY, mob.posZ, Sounds.SPECIAL_DROP, 1.0F, 1.0F);
				player.triggerAchievement(ZSSAchievements.skillGain);
				if (isBoss) {
					player.triggerAchievement(ZSSAchievements.skillMortal);
				}
			}
		}
		if (mob instanceof EntityCreeper && mob.worldObj.rand.nextFloat() < Config.getCreeperDropChance()) {
			event.drops.add(new EntityItem(mob.worldObj, mob.posX, mob.posY, mob.posZ, new ItemStack(ZSSItems.bomb)));
		}
		if (mob instanceof IMob && mob.worldObj.rand.nextInt(Config.getPowerDropRate()) == 0) {
			event.drops.add(new EntityItem(mob.worldObj, mob.posX, mob.posY, mob.posZ, new ItemStack(ZSSItems.powerPiece)));
		}
		// Check for heart and magic jar drops
		if (mob instanceof IMob) {
			// High-HP mobs have a better chance of dropping a Large Magic Jar;
			// as a base line, Dark Nuts (50 HP) should have a 5-10% drop rate (caps at 25%)
			float hp = mob.getMaxHealth();
			float chance = MathHelper.clamp_float(((hp - 40F) / 100F), 0F, 0.25F);
			if (hp > 100) { // add 5% per additional 100 HP to a max of 50% for a 500+ HP critter
				chance = MathHelper.clamp_float(chance + (hp - 100F) / 2000F, 0F, 0.5F);
			}
			if (mob.worldObj.rand.nextFloat() < chance) {
				event.drops.add(new EntityItem(mob.worldObj, mob.posX, mob.posY, mob.posZ, new ItemStack(ZSSItems.magicJarBig)));
			}
			int consumable_chance = Config.getMobConsumableFrequency();
			if (consumable_chance > 0 && mob.worldObj.rand.nextInt((event.drops.size() + 1) * (12 - consumable_chance)) == 0) {
				ItemStack stack = new ItemStack(mob.worldObj.rand.nextInt(4) == 0 ? ZSSItems.magicJar : ZSSItems.smallHeart);
				event.drops.add(new EntityItem(mob.worldObj, mob.posX, mob.posY, mob.posZ, stack));
			}
		}
	}
}
 
开发者ID:coolAlias,项目名称:ZeldaSwordSkills,代码行数:48,代码来源:ZSSItemEvents.java


注:本文中的net.minecraft.entity.boss.IBossDisplayData类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。