fix: Fixes poison field duration, cleans up skill calculations and poison calculations (#1582)

### Summary
- [X] Fixes poison field duration
- [X] Adds SA+ poison spell calculations
- [X] Cleans up skill calculations
- [X] Adjusts poison level thresholds to properly reflect OSI
This commit is contained in:
Kamron Batman 2023-11-04 12:32:54 -07:00 • committed by GitHub
parent 54431f05b5
commit 1f04a13f67
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 68 additions and 81 deletions

View file

@ -133,11 +133,11 @@ namespace Server.Spells.Second
{
if (Caster.BeginAction<DefensiveSpell>())
{
int value = (Caster.Skills.EvalInt.Fixed +
Caster.Skills.Meditation.Fixed +
Caster.Skills.Inscribe.Fixed) / 4;
double value = (Caster.Skills.EvalInt.Value +
Caster.Skills.Meditation.Value +
Caster.Skills.Inscribe.Value) * 10 / 4;
Registry.Add(Caster, Math.Clamp(value, 0, 750)); // 75.0% protection from disruption
Registry.Add(Caster, Math.Clamp((int)value, 0, 750)); // 75.0% protection from disruption
new InternalTimer(Caster).Start();
Caster.FixedParticles(0x375A, 9, 20, 5016, EffectLayer.Waist);