Phase 1: 复合属性修饰器管线与伤害结算系统
This commit is contained in:
@@ -216,7 +216,7 @@ namespace SepCore.Entity
|
||||
|
||||
_inputComponent.OnInit();
|
||||
_inputComponent.SetListening(true);
|
||||
_absorbComponent.OnInit(this, _statComponent);
|
||||
_absorbComponent.OnInit(this);
|
||||
_weaponEnabled = true;
|
||||
|
||||
_currentLevel = 0;
|
||||
|
||||
@@ -34,8 +34,8 @@ namespace SepCore.Entity
|
||||
get
|
||||
{
|
||||
if (WeaponData == null) return 0f;
|
||||
float attackSpeed = _ownerAttributeProvider?.GetValue(StatType.AttackSpeed) ?? 0f;
|
||||
float speedFactor = Mathf.Max(0.2f, 1f + attackSpeed);
|
||||
float attackSpeed = _ownerAttributeProvider?.GetValue(StatType.AttackSpeed) ?? 1f;
|
||||
float speedFactor = Mathf.Max(0.2f, attackSpeed);
|
||||
return Mathf.Max(0.02f, WeaponData.Cooldown / speedFactor);
|
||||
}
|
||||
}
|
||||
@@ -46,8 +46,7 @@ namespace SepCore.Entity
|
||||
{
|
||||
if (WeaponData == null) return 0f;
|
||||
float rangeBonus = _ownerAttributeProvider?.GetValue(StatType.Range) ?? 0f;
|
||||
float effectiveBonus = rangeBonus >= 50f ? rangeBonus / 1000f : rangeBonus;
|
||||
return Mathf.Max(0.5f, WeaponData.AttackRange + effectiveBonus);
|
||||
return Mathf.Max(0.5f, WeaponData.AttackRange + rangeBonus);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user