1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-10-16 15:13:40 -04:00
OpenDiablo2/OpenDiablo2.ServiceBus/Message Frames/Client/MFMoveRequest.cs
2018-12-08 13:31:50 -05:00

35 lines
1.0 KiB
C#

using OpenDiablo2.Common.Attributes;
using OpenDiablo2.Common.Enums;
using OpenDiablo2.Common.Interfaces;
namespace OpenDiablo2.ServiceBus.Message_Frames.Client
{
[MessageFrame(eMessageFrameType.MoveRequest)]
public sealed class MFMoveRequest : IMessageFrame
{
public byte Direction { get; set; } = 0;
public eMovementType MovementType { get; set; } = eMovementType.Stopped;
public byte[] Data
{
get => new byte[] { Direction, (byte)MovementType };
set
{
Direction = value[0];
MovementType = (eMovementType)value[1];
}
}
public MFMoveRequest() { }
public MFMoveRequest(byte direction, eMovementType movementType)
{
this.Direction = direction;
this.MovementType = movementType;
}
public void Process(int clientHash, ISessionEventProvider sessionEventProvider)
=> sessionEventProvider.OnMoveRequest(clientHash, Direction, MovementType);
}
}