本文整理汇总了Java中net.minecraft.entity.ai.attributes.AbstractAttributeMap类的典型用法代码示例。如果您正苦于以下问题:Java AbstractAttributeMap类的具体用法?Java AbstractAttributeMap怎么用?Java AbstractAttributeMap使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
AbstractAttributeMap类属于net.minecraft.entity.ai.attributes包,在下文中一共展示了AbstractAttributeMap类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setAttributeModifiers
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public static void setAttributeModifiers(AbstractAttributeMap map, NBTTagList list)
{
for (int i = 0; i < list.tagCount(); ++i)
{
NBTTagCompound nbttagcompound = list.getCompoundTagAt(i);
IAttributeInstance iattributeinstance = map.getAttributeInstanceByName(nbttagcompound.getString("Name"));
if (iattributeinstance == null)
{
LOGGER.warn("Ignoring unknown attribute \'{}\'", new Object[] {nbttagcompound.getString("Name")});
}
else
{
applyModifiersToAttributeInstance(iattributeinstance, nbttagcompound);
}
}
}
示例2: setAttributeModifiers
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public static void setAttributeModifiers(AbstractAttributeMap map, NBTTagList list)
{
for (int i = 0; i < list.tagCount(); ++i)
{
NBTTagCompound nbttagcompound = list.getCompoundTagAt(i);
IAttributeInstance iattributeinstance = map.getAttributeInstanceByName(nbttagcompound.getString("Name"));
if (iattributeinstance != null)
{
applyModifiersToAttributeInstance(iattributeinstance, nbttagcompound);
}
else
{
LOGGER.warn("Ignoring unknown attribute \'{}\'", new Object[] {nbttagcompound.getString("Name")});
}
}
}
示例3: setNbt
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public static void setNbt(AbstractHorse horse, NBTTagCompound nbt) {
setName(horse, nbt);
EnumHorseType horseType = getHorseType(horse);
nbt.setInteger("HorseType", horseType.ordinal());
int variant = 0;
if (horseType == EnumHorseType.HORSE) {
variant = ((EntityHorse) horse).getHorseVariant();
}
nbt.setInteger("Variant", variant);
AbstractAttributeMap attrMap = horse.getAttributeMap();
nbt.setDouble("Max Health", attrMap.getAttributeInstanceByName("Max Health").getAttributeValue());
nbt.setDouble("Movement Speed", attrMap.getAttributeInstanceByName("Movement Speed").getAttributeValue());
nbt.setDouble("Jump Strength", attrMap.getAttributeInstanceByName("Jump Strength").getAttributeValue());
}
示例4: applyAttributesModifiersToEntity
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
@Override
public void applyAttributesModifiersToEntity(EntityLivingBase entity,
AbstractAttributeMap attributeMapIn, int amplifier) {
if(this==PotionRegistry.Radiation){
entity.getActivePotionEffect(PotionRegistry.Radiation).getCurativeItems().clear();
}
if(this==PotionRegistry.Arsenic){
entity.getActivePotionEffect(PotionRegistry.Arsenic).getCurativeItems().clear();
}
if(this==PotionRegistry.Hydrargyrum){
entity.getActivePotionEffect(PotionRegistry.Hydrargyrum).getCurativeItems().clear();
}
if(this==PotionRegistry.CarbonMonoxyde){
entity.getActivePotionEffect(PotionRegistry.CarbonMonoxyde).getCurativeItems().clear();
}
}
示例5: applyAttributeModifiers
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public void applyAttributeModifiers(AbstractAttributeMap attributeMap, int amplifier) {
for (Map.Entry<IAttribute, AttributeModifier> entry : modifierMap.entrySet()) {
IAttributeInstance attribute = attributeMap.getAttributeInstance(entry.getKey());
if (attribute == null) continue;
AttributeModifier modifier = entry.getValue();
attribute.removeModifier(modifier);
attribute.applyModifier(new AttributeModifier(modifier.getID(), this.getName() + " " + amplifier, modifier.getAmount() * (double) (amplifier + 1), modifier.getOperation()));
}
}
示例6: removeAttributeModifiers
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public void removeAttributeModifiers(AbstractAttributeMap attributeMapIn, int amplifier) {
for (Map.Entry<IAttribute, AttributeModifier> entry : modifierMap.entrySet()) {
IAttributeInstance attribute = attributeMapIn.getAttributeInstance(entry.getKey());
if (attribute == null) continue;
attribute.removeModifier(entry.getValue());
}
}
示例7: getAttributeMap
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
@Override
public AbstractAttributeMap getAttributeMap() {
if (m_realPlayer == null) {
return super.getAttributeMap();
} else {
syncToRealPlayer();
return syncPublicFieldsFromRealAndReturn(m_realPlayer.getAttributeMap());
}
}
示例8: getAttributeMap
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
@Override
public AbstractAttributeMap getAttributeMap() {
if (m_realPlayer == null) {
return super.getAttributeMap();
} else {
return m_realPlayer.getAttributeMap();
}
}
示例9: handleEntityProperties
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
/**
* Updates en entity's attributes and their respective modifiers, which are used for speed bonusses (player
* sprinting, animals fleeing, baby speed), weapon/tool attackDamage, hostiles followRange randomization, zombie
* maxHealth and knockback resistance as well as reinforcement spawning chance.
*/
public void handleEntityProperties(SPacketEntityProperties packetIn)
{
PacketThreadUtil.checkThreadAndEnqueue(packetIn, this, this.gameController);
Entity entity = this.clientWorldController.getEntityByID(packetIn.getEntityId());
if (entity != null)
{
if (!(entity instanceof EntityLivingBase))
{
throw new IllegalStateException("Server tried to update attributes of a non-living entity (actually: " + entity + ")");
}
else
{
AbstractAttributeMap abstractattributemap = ((EntityLivingBase)entity).getAttributeMap();
for (SPacketEntityProperties.Snapshot spacketentityproperties$snapshot : packetIn.getSnapshots())
{
IAttributeInstance iattributeinstance = abstractattributemap.getAttributeInstanceByName(spacketentityproperties$snapshot.getName());
if (iattributeinstance == null)
{
iattributeinstance = abstractattributemap.registerAttribute(new RangedAttribute((IAttribute)null, spacketentityproperties$snapshot.getName(), 0.0D, 2.2250738585072014E-308D, Double.MAX_VALUE));
}
iattributeinstance.setBaseValue(spacketentityproperties$snapshot.getBaseValue());
iattributeinstance.removeAllModifiers();
for (AttributeModifier attributemodifier : spacketentityproperties$snapshot.getModifiers())
{
iattributeinstance.applyModifier(attributemodifier);
}
}
}
}
}
示例10: getAttributeMap
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
/**
* Returns this entity's attribute map (where all its attributes are stored)
*/
public AbstractAttributeMap getAttributeMap()
{
if (this.attributeMap == null)
{
this.attributeMap = new AttributeMap();
}
return this.attributeMap;
}
示例11: writeBaseAttributeMapToNBT
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
/**
* Creates an NBTTagList from a BaseAttributeMap, including all its AttributeInstances
*/
public static NBTTagList writeBaseAttributeMapToNBT(AbstractAttributeMap map)
{
NBTTagList nbttaglist = new NBTTagList();
for (IAttributeInstance iattributeinstance : map.getAllAttributes())
{
nbttaglist.appendTag(writeAttributeInstanceToNBT(iattributeinstance));
}
return nbttaglist;
}
示例12: removeAttributesModifiersFromEntity
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public void removeAttributesModifiersFromEntity(EntityLivingBase entityLivingBaseIn, AbstractAttributeMap attributeMapIn, int amplifier)
{
for (Entry<IAttribute, AttributeModifier> entry : this.attributeModifierMap.entrySet())
{
IAttributeInstance iattributeinstance = attributeMapIn.getAttributeInstance((IAttribute)entry.getKey());
if (iattributeinstance != null)
{
iattributeinstance.removeModifier((AttributeModifier)entry.getValue());
}
}
}
示例13: applyAttributesModifiersToEntity
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public void applyAttributesModifiersToEntity(EntityLivingBase entityLivingBaseIn, AbstractAttributeMap attributeMapIn, int amplifier)
{
for (Entry<IAttribute, AttributeModifier> entry : this.attributeModifierMap.entrySet())
{
IAttributeInstance iattributeinstance = attributeMapIn.getAttributeInstance((IAttribute)entry.getKey());
if (iattributeinstance != null)
{
AttributeModifier attributemodifier = (AttributeModifier)entry.getValue();
iattributeinstance.removeModifier(attributemodifier);
iattributeinstance.applyModifier(new AttributeModifier(attributemodifier.getID(), this.getName() + " " + amplifier, this.getAttributeModifierAmount(amplifier, attributemodifier), attributemodifier.getOperation()));
}
}
}
示例14: removeAttributesModifiersFromEntity
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
public void removeAttributesModifiersFromEntity(EntityLivingBase entityLivingBaseIn, AbstractAttributeMap attributeMapIn, int amplifier)
{
super.removeAttributesModifiersFromEntity(entityLivingBaseIn, attributeMapIn, amplifier);
if (entityLivingBaseIn.getHealth() > entityLivingBaseIn.getMaxHealth())
{
entityLivingBaseIn.setHealth(entityLivingBaseIn.getMaxHealth());
}
}
示例15: applyAttributesModifiersToEntity
import net.minecraft.entity.ai.attributes.AbstractAttributeMap; //导入依赖的package包/类
@Override
public void applyAttributesModifiersToEntity(EntityLivingBase entityLivingBaseIn, @Nonnull AbstractAttributeMap attributeMapIn, int amplifier) {
super.applyAttributesModifiersToEntity(entityLivingBaseIn, attributeMapIn, amplifier);
entityLivingBaseIn.world.playSound(null, entityLivingBaseIn.getPosition(), ModSounds.ETHEREAL_PASS_BY, SoundCategory.NEUTRAL, 1f, 1);
if (!(entityLivingBaseIn instanceof EntityPlayer))
PacketHandler.NETWORK.sendToAll(new PacketVanishPotion(entityLivingBaseIn.getEntityId(), 0, 100));
}