fix: Adjusts spell ranges to match OSI (#2171)
### Summary Adjusts spell ranges according to OSI. Specifically, the [April 14, 1999 patch](https://uo.com/wiki/ultima-online-wiki/technical/previous-publishes/1999-2/1999-06-14th-april/) changed spell ranges to 10 tiles, and 15 tiles for fields.
This commit is contained in:
parent
5cb97cc6de
commit
6d43f2549c
7 changed files with 14 additions and 1 deletions
|
|
@ -22,6 +22,8 @@ namespace Server.Spells.Fifth
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Fifth;
|
public override SpellCircle Circle => SpellCircle.Fifth;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(Item item)
|
public void Target(Item item)
|
||||||
{
|
{
|
||||||
if (!item.GetType().IsDefined(typeof(DispellableFieldAttribute), false))
|
if (!item.GetType().IsDefined(typeof(DispellableFieldAttribute), false))
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ public class PoisonFieldSpell : MagerySpell, ITargetingSpell<IPoint3D>
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Fifth;
|
public override SpellCircle Circle => SpellCircle.Fifth;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(IPoint3D p)
|
public void Target(IPoint3D p)
|
||||||
{
|
{
|
||||||
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ public class FireFieldSpell : MagerySpell, ITargetingSpell<IPoint3D>
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Fourth;
|
public override SpellCircle Circle => SpellCircle.Fourth;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(IPoint3D p)
|
public void Target(IPoint3D p)
|
||||||
{
|
{
|
||||||
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ public class EnergyFieldSpell : MagerySpell, ITargetingSpell<IPoint3D>
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Seventh;
|
public override SpellCircle Circle => SpellCircle.Seventh;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(IPoint3D p)
|
public void Target(IPoint3D p)
|
||||||
{
|
{
|
||||||
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,8 @@ public class ParalyzeFieldSpell : MagerySpell, ITargetingSpell<IPoint3D>
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Sixth;
|
public override SpellCircle Circle => SpellCircle.Sixth;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(IPoint3D p)
|
public void Target(IPoint3D p)
|
||||||
{
|
{
|
||||||
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,8 @@ public interface IRangedSpell
|
||||||
{
|
{
|
||||||
Mobile Caster { get; }
|
Mobile Caster { get; }
|
||||||
|
|
||||||
int TargetRange => Core.ML ? 10 : 12;
|
// https://uo.com/wiki/ultima-online-wiki/technical/previous-publishes/1999-2/1999-06-14th-april/
|
||||||
|
int TargetRange => Core.T2A ? 10 : 12;
|
||||||
void FinishSequence();
|
void FinishSequence();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,8 @@ public class WallOfStoneSpell : MagerySpell, ITargetingSpell<IPoint3D>
|
||||||
|
|
||||||
public override SpellCircle Circle => SpellCircle.Third;
|
public override SpellCircle Circle => SpellCircle.Third;
|
||||||
|
|
||||||
|
public int TargetRange => Core.T2A ? 15 : 18;
|
||||||
|
|
||||||
public void Target(IPoint3D p)
|
public void Target(IPoint3D p)
|
||||||
{
|
{
|
||||||
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
if (SpellHelper.CheckTown(p, Caster) && CheckSequence())
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue