ModernUO/Projects/UOContent/Skills/Tracking/QuestArrow.cs
Kamron Batman 6f5cb00cdd
Updates Combat Packets & Moves Tracking to Content (#298)
- [X] Changes outgoing combat packets
- [X] Moves quest arrow to PlayerMobile and moves quest arrow packets to content.

Bumps release version
2020-11-01 21:33:01 -08:00

68 lines
1.3 KiB
C#

using Server.Mobiles;
using Server.Network;
namespace Server
{
public class QuestArrow
{
public QuestArrow(PlayerMobile m, Mobile t)
{
Running = true;
Mobile = m;
Target = t;
}
public QuestArrow(PlayerMobile m, Mobile t, int x, int y) : this(m, t)
{
Update(x, y);
}
public PlayerMobile Mobile { get; }
public Mobile Target { get; }
public bool Running { get; private set; }
public void Update()
{
Update(Target.X, Target.Y);
}
public void Update(int x, int y)
{
if (!Running)
{
return;
}
Mobile.NetState?.SendSetArrow(x, y, Target.Serial);
}
public void Stop()
{
Stop(Target.X, Target.Y);
}
public void Stop(int x, int y)
{
if (!Running)
{
return;
}
Mobile.ClearQuestArrow();
Mobile.NetState?.SendCancelArrow(x, y, Target.Serial);
Running = false;
OnStop();
}
public virtual void OnStop()
{
}
public virtual void OnClick(bool rightClick)
{
}
}
}