/* OpenDiablo 2 - An open source re-implementation of Diablo 2 in C# * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ using System; using OpenDiablo2.Common.Enums; namespace OpenDiablo2.Common.Attributes { /// /// Defines the class as a Message Frame. This is used by the client/server logic /// to decide how to serialize and deserialize networking objects. /// [AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)] public sealed class MessageFrameAttribute : Attribute { /// /// The type of message frame this class represents. /// public eMessageFrameType FrameType { get; private set; } /// /// Define this class as a message frame. /// /// The type of message frame this class represents. public MessageFrameAttribute(eMessageFrameType frameType) => this.FrameType = frameType; } }