1 module dash.net.packets; 2 3 enum PacketType : ubyte 4 { 5 Login, 6 Logoff, 7 Whisper, 8 ChangePassword, 9 UploadFile, 10 Data, 11 } 12 13 class Packet 14 { 15 16 } 17 18 class LoginPacket : Packet 19 { 20 string username; 21 } 22 23 class LogoffPacket : Packet 24 { 25 string username; 26 } 27 28 class WhisperPacket : Packet 29 { 30 string target; 31 string message; 32 } 33 34 class DataPacket : Packet 35 { 36 string type; 37 ubyte[] data; 38 }