attack speed
This commit is contained in:
@@ -27,7 +27,7 @@ import java.util.concurrent.ConcurrentHashMap;
|
|||||||
public class PlayerBonuses {
|
public class PlayerBonuses {
|
||||||
|
|
||||||
//First bonus set
|
//First bonus set
|
||||||
private ConcurrentHashMap<AbstractEffectModifier, Float> bonusFloats = new ConcurrentHashMap<>();
|
ConcurrentHashMap<AbstractEffectModifier, Float> bonusFloats = new ConcurrentHashMap<>();
|
||||||
private ConcurrentHashMap<AbstractEffectModifier, DamageShield> bonusDamageShields = new ConcurrentHashMap<>();
|
private ConcurrentHashMap<AbstractEffectModifier, DamageShield> bonusDamageShields = new ConcurrentHashMap<>();
|
||||||
private ConcurrentHashMap<AbstractEffectModifier, String> bonusStrings = new ConcurrentHashMap<>();
|
private ConcurrentHashMap<AbstractEffectModifier, String> bonusStrings = new ConcurrentHashMap<>();
|
||||||
private ConcurrentHashMap<ModType, HashSet<SourceType>> bonusLists = new ConcurrentHashMap<>();
|
private ConcurrentHashMap<ModType, HashSet<SourceType>> bonusLists = new ConcurrentHashMap<>();
|
||||||
|
|||||||
@@ -3970,8 +3970,7 @@ public class PlayerCharacter extends AbstractCharacter {
|
|||||||
else
|
else
|
||||||
speed = 20f; //unarmed attack speed
|
speed = 20f; //unarmed attack speed
|
||||||
|
|
||||||
//if (weapon != null) {
|
if(this.effects != null) {
|
||||||
//speed *= (1 + this.bonuses.getFloatPercentAll(ModType.WeaponSpeed, SourceType.None));
|
|
||||||
for (Effect eff : this.effects.values()) {
|
for (Effect eff : this.effects.values()) {
|
||||||
for (AbstractEffectModifier mod : eff.getEffectModifiers()) {
|
for (AbstractEffectModifier mod : eff.getEffectModifiers()) {
|
||||||
if (mod.modType.equals(ModType.WeaponSpeed)) {
|
if (mod.modType.equals(ModType.WeaponSpeed)) {
|
||||||
@@ -3980,8 +3979,6 @@ public class PlayerCharacter extends AbstractCharacter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//}
|
|
||||||
//speed *= (1 + this.bonuses.getFloatPercentAll(ModType.AttackDelay, SourceType.None));
|
|
||||||
|
|
||||||
for (Effect eff : this.effects.values()) {
|
for (Effect eff : this.effects.values()) {
|
||||||
for (AbstractEffectModifier mod : eff.getEffectModifiers()) {
|
for (AbstractEffectModifier mod : eff.getEffectModifiers()) {
|
||||||
@@ -3991,6 +3988,16 @@ public class PlayerCharacter extends AbstractCharacter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if(this.bonuses!= null){
|
||||||
|
for (AbstractEffectModifier mod : this.bonuses.bonusFloats.keySet()) {
|
||||||
|
if (mod.modType.equals(ModType.AttackDelay) || mod.modType.equals(ModType.WeaponSpeed)) {
|
||||||
|
float modValue = 1 + mod.getPercentMod() * 0.01f;
|
||||||
|
speed *= modValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (speed < 10)
|
if (speed < 10)
|
||||||
speed = 10;
|
speed = 10;
|
||||||
|
|||||||
Reference in New Issue
Block a user