fix: Fixes cast spell speeds for various expansions (#1178)
* Adds 0.25s for all spells for SA+ Era * Fixes Summon Creature & Blade Spirits cast delay * Fixes minimum cast delay for chivalry spells * Fixes poison strike and wither spells
This commit is contained in:
parent
aa270ac868
commit
8a2c0ead3d
8 changed files with 62 additions and 45 deletions
|
|
@ -98,8 +98,19 @@ namespace Server.Spells
|
|||
|
||||
public virtual double GetResistPercent(Mobile target) => GetResistPercentForCircle(target, Circle);
|
||||
|
||||
public override TimeSpan GetCastDelay() =>
|
||||
!Core.ML && Scroll is BaseWand ? TimeSpan.Zero :
|
||||
!Core.AOS ? TimeSpan.FromSeconds(0.5 + 0.25 * (int)Circle) : base.GetCastDelay();
|
||||
public override TimeSpan GetCastDelay()
|
||||
{
|
||||
if (!Core.ML || Scroll is BaseWand)
|
||||
{
|
||||
return TimeSpan.Zero;
|
||||
}
|
||||
|
||||
if (!Core.AOS)
|
||||
{
|
||||
return TimeSpan.FromSeconds(0.5 + 0.25 * (int)Circle);
|
||||
}
|
||||
|
||||
return base.GetCastDelay();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -705,6 +705,13 @@ namespace Server.Spells
|
|||
fc -= EssenceOfWindSpell.GetFCMalus(Caster);
|
||||
}
|
||||
|
||||
if (Core.SA)
|
||||
{
|
||||
// At some point OSI added 0.25s to every spell. This makes the minimum 0.5s
|
||||
// Note: This is done after multiplying for summon creature & blade spirits.
|
||||
fc--;
|
||||
}
|
||||
|
||||
var fcDelay = TimeSpan.FromSeconds(-(CastDelayFastScalar * fc * CastDelaySecondsPerTick));
|
||||
|
||||
return Utility.Max(CastDelayBase + fcDelay, CastDelayMinimum);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue