use of net.minecraft.entity.ai.attributes.AttributeModifier in project BloodMagic by WayofTime.
the class ItemBoundSword method getAttributeModifiers.
@Override
public Multimap<String, AttributeModifier> getAttributeModifiers(EntityEquipmentSlot equipmentSlot, ItemStack stack) {
Multimap<String, AttributeModifier> multimap = HashMultimap.create();
if (equipmentSlot == EntityEquipmentSlot.MAINHAND) {
multimap.put(SharedMonsterAttributes.ATTACK_DAMAGE.getName(), new AttributeModifier(ATTACK_DAMAGE_MODIFIER, "Weapon modifier", getActivated(stack) ? 8 : 2, 0));
multimap.put(SharedMonsterAttributes.ATTACK_SPEED.getName(), new AttributeModifier(ATTACK_SPEED_MODIFIER, "Weapon modifier", -2.4, 0));
}
return multimap;
}
use of net.minecraft.entity.ai.attributes.AttributeModifier in project BloodMagic by WayofTime.
the class ItemSentientArmour method getAttributeModifiers.
@Override
public Multimap<String, AttributeModifier> getAttributeModifiers(EntityEquipmentSlot slot, ItemStack stack) {
Multimap<String, AttributeModifier> multimap = HashMultimap.create();
if (slot == EntityEquipmentSlot.CHEST) {
multimap.put(SharedMonsterAttributes.MAX_HEALTH.getName(), new AttributeModifier(new UUID(0, 318145), "Armor modifier", this.getHealthBonus(stack), 0));
multimap.put(SharedMonsterAttributes.KNOCKBACK_RESISTANCE.getName(), new AttributeModifier(new UUID(0, 8145), "Armor modifier", this.getKnockbackResistance(stack), 0));
multimap.put(SharedMonsterAttributes.MOVEMENT_SPEED.getName(), new AttributeModifier(new UUID(0, 94021), "Armor modifier", this.getSpeedBoost(stack), 2));
multimap.put(SharedMonsterAttributes.ATTACK_DAMAGE.getName(), new AttributeModifier(new UUID(0, 96721), "Armor modifier", this.getDamageBoost(stack), 2));
multimap.put(SharedMonsterAttributes.ATTACK_SPEED.getName(), new AttributeModifier(new UUID(0, 73245), "Armor modifier", this.getAttackSpeedBoost(stack), 2));
}
return multimap;
}
use of net.minecraft.entity.ai.attributes.AttributeModifier in project GregTech by GregTechCE.
the class NanoSaberBehavior method getAttributeModifiers.
@Override
public Multimap<String, AttributeModifier> getAttributeModifiers(EntityEquipmentSlot slot, ItemStack stack) {
HashMultimap<String, AttributeModifier> modifiers = HashMultimap.create();
if (slot == EntityEquipmentSlot.MAINHAND) {
double attackDamage = baseAttackDamage + (isItemActive(stack) ? additionalAttackDamage : 0.0D);
modifiers.put(SharedMonsterAttributes.ATTACK_SPEED.getName(), new AttributeModifier(ATTACK_SPEED_MODIFIER, "Weapon modifier", -2.0, 0));
modifiers.put(SharedMonsterAttributes.ATTACK_DAMAGE.getName(), new AttributeModifier(ATTACK_DAMAGE_MODIFIER, "Weapon Modifier", attackDamage, 0));
}
return modifiers;
}
use of net.minecraft.entity.ai.attributes.AttributeModifier in project Gaia-Dimension by Andromander.
the class GDGaiaBaronSword method getItemAttributeModifiers.
// TODO: Deals damage to target, regardless of armor
// TODO: [FUTURE] Can be used to unlock Unknown Stage 3 Final Boss Structure
// We will need this in order to make the weapon speedy
@Override
@Nonnull
public Multimap<String, AttributeModifier> getItemAttributeModifiers(EntityEquipmentSlot equipmentSlot) {
Multimap<String, AttributeModifier> multimap = super.getItemAttributeModifiers(equipmentSlot);
if (equipmentSlot == EntityEquipmentSlot.MAINHAND) {
// This is not our speed anymore
multimap.removeAll(SharedMonsterAttributes.ATTACK_SPEED.getName());
// Speed is set to 2.2; 0.6 more than normal
multimap.put(SharedMonsterAttributes.ATTACK_SPEED.getName(), new AttributeModifier(ATTACK_SPEED_MODIFIER, "Weapon modifier", -1.8, 0));
}
return multimap;
}
use of net.minecraft.entity.ai.attributes.AttributeModifier in project Gaia-Dimension by Andromander.
the class GDGaiaDuchessSword method getItemAttributeModifiers.
// TODO: Make this sword shoot projectiles, but lowers durability by 2
// TODO: [FUTURE] Can be used to unlock Unknown Stage 2 Final Boss Structure
// We will need this in order to make the weapon slow
@Override
@Nonnull
public Multimap<String, AttributeModifier> getItemAttributeModifiers(EntityEquipmentSlot equipmentSlot) {
Multimap<String, AttributeModifier> multimap = super.getItemAttributeModifiers(equipmentSlot);
if (equipmentSlot == EntityEquipmentSlot.MAINHAND) {
// This is not our speed anymore
multimap.removeAll(SharedMonsterAttributes.ATTACK_SPEED.getName());
// Speed is set to 1.8; 0.2 less than normal
multimap.put(SharedMonsterAttributes.ATTACK_SPEED.getName(), new AttributeModifier(ATTACK_SPEED_MODIFIER, "Weapon modifier", -2.2, 0));
}
return multimap;
}
Aggregations