Reduce Magery Spells cast time

volkinson

Citizen
Operating System
Windows
ServUO Version
latest
Hey guys.
Kinda new to ServUO. Found anser on that question, but it is little bit old)

I want to reduce precast time for some spells. Tried to change many times Spell.cs, then ParalizeField.cs.
Can someone give me direction, where i need to dig? Tried to search any similar topics here, but with no luck. Few threads and very old one.
Thanks in advance folks!
 

Juzzver

Citizen
By default all delays of magery spells are based on circles. But you can just override GetCastDelay() method in any spell to set your custom time and conditions.
For example we want add delay conditions to GreaterHealSpell:
C#:
        public override TimeSpan GetCastDelay()
        {
            if (Caster.Hits >= Caster.HitsMax / 2) //if the caster has good health, he heals quickly.
                return base.GetCastDelay();
            else
                return TimeSpan.FromSeconds(5); //if he is significantly injured, then the delay increases.
        }