本文整理匯總了Java中net.minecraft.entity.ai.attributes.IAttributeInstance.getAttribute方法的典型用法代碼示例。如果您正苦於以下問題:Java IAttributeInstance.getAttribute方法的具體用法?Java IAttributeInstance.getAttribute怎麽用?Java IAttributeInstance.getAttribute使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類net.minecraft.entity.ai.attributes.IAttributeInstance
的用法示例。
在下文中一共展示了IAttributeInstance.getAttribute方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: writeAttributeInstanceToNBT
import net.minecraft.entity.ai.attributes.IAttributeInstance; //導入方法依賴的package包/類
/**
* Creates an NBTTagCompound from an AttributeInstance, including its AttributeModifiers
*/
private static NBTTagCompound writeAttributeInstanceToNBT(IAttributeInstance p_111261_0_)
{
NBTTagCompound nbttagcompound = new NBTTagCompound();
IAttribute iattribute = p_111261_0_.getAttribute();
nbttagcompound.setString("Name", iattribute.getAttributeUnlocalizedName());
nbttagcompound.setDouble("Base", p_111261_0_.getBaseValue());
Collection<AttributeModifier> collection = p_111261_0_.func_111122_c();
if (collection != null && !collection.isEmpty())
{
NBTTagList nbttaglist = new NBTTagList();
for (AttributeModifier attributemodifier : collection)
{
if (attributemodifier.isSaved())
{
nbttaglist.appendTag(writeAttributeModifierToNBT(attributemodifier));
}
}
nbttagcompound.setTag("Modifiers", nbttaglist);
}
return nbttagcompound;
}
示例2: writeAttributeInstanceToNBT
import net.minecraft.entity.ai.attributes.IAttributeInstance; //導入方法依賴的package包/類
/**
* Creates an NBTTagCompound from an AttributeInstance, including its AttributeModifiers
*/
private static NBTTagCompound writeAttributeInstanceToNBT(IAttributeInstance instance)
{
NBTTagCompound nbttagcompound = new NBTTagCompound();
IAttribute iattribute = instance.getAttribute();
nbttagcompound.setString("Name", iattribute.getAttributeUnlocalizedName());
nbttagcompound.setDouble("Base", instance.getBaseValue());
Collection<AttributeModifier> collection = instance.getModifiers();
if (collection != null && !collection.isEmpty())
{
NBTTagList nbttaglist = new NBTTagList();
for (AttributeModifier attributemodifier : collection)
{
if (attributemodifier.isSaved())
{
nbttaglist.appendTag(writeAttributeModifierToNBT(attributemodifier));
}
}
nbttagcompound.setTag("Modifiers", nbttaglist);
}
return nbttagcompound;
}
示例3: updateSharedMonsterAttributes
import net.minecraft.entity.ai.attributes.IAttributeInstance; //導入方法依賴的package包/類
private void updateSharedMonsterAttributes(EntityCreature entity, int buffAmount) {
for (IAttributeInstance attribute : entity.getAttributeMap().getAllAttributes()) {
if (attribute.getAttribute() == SharedMonsterAttributes.ATTACK_DAMAGE) {
attribute.setBaseValue(determineAttackDamage(attribute.getAttributeValue(), buffAmount));
}
if (attribute.getAttribute() == SharedMonsterAttributes.MAX_HEALTH) {
attribute.setBaseValue(determineMaxHealth(attribute.getAttributeValue(), buffAmount));
entity.setHealth(entity.getMaxHealth());
}
}
}
示例4: decorate
import net.minecraft.entity.ai.attributes.IAttributeInstance; //導入方法依賴的package包/類
/**
* Convert the provided entity into the given nemesis
*
* @param entity the entity to be converted into a nemesis
* @param nemesis the nemesis to create
*/
public static void decorate(EntityLiving entity, NemesisEntry nemesis) {
entity.addTag(NemesisSystem.TAG_NEMESIS);
entity.getEntityData().setUniqueId(NemesisSystem.NBT_NEMESIS_ID, nemesis.getId());
entity.setCustomNameTag(nemesis.getNameAndTitle());
if (entity instanceof EntityZombie) {
((EntityZombie) entity).setChild(nemesis.isChild());
}
ItemStack helmet = nemesis.getArmorInventory().get(EntityEquipmentSlot.HEAD.getIndex());
entity.setItemStackToSlot(EntityEquipmentSlot.HEAD, helmet);
entity.setItemStackToSlot(EntityEquipmentSlot.CHEST, nemesis.getArmorInventory().get(EntityEquipmentSlot.CHEST.getIndex()));
entity.setItemStackToSlot(EntityEquipmentSlot.LEGS, nemesis.getArmorInventory().get(EntityEquipmentSlot.LEGS.getIndex()));
entity.setItemStackToSlot(EntityEquipmentSlot.FEET, nemesis.getArmorInventory().get(EntityEquipmentSlot.FEET.getIndex()));
entity.setItemStackToSlot(EntityEquipmentSlot.MAINHAND, nemesis.getHandInventory().get(EntityEquipmentSlot.MAINHAND.getIndex()));
entity.setItemStackToSlot(EntityEquipmentSlot.OFFHAND, nemesis.getHandInventory().get(EntityEquipmentSlot.OFFHAND.getIndex()));
for (IAttributeInstance attribute : entity.getAttributeMap().getAllAttributes()) {
if (attribute.getAttribute() == SharedMonsterAttributes.ATTACK_DAMAGE) {
attribute.setBaseValue(attribute.getAttributeValue() * (nemesis.getLevel() / 3));
}
if (attribute.getAttribute() == SharedMonsterAttributes.ATTACK_SPEED) {
attribute.setBaseValue(attribute.getAttributeValue() * (nemesis.getLevel() / 8));
}
if (attribute.getAttribute() == SharedMonsterAttributes.MAX_HEALTH) {
attribute.setBaseValue(attribute.getAttributeValue() * nemesis.getLevel());
entity.setHealth(entity.getMaxHealth());
}
}
}