public static IMessageStruct ParseMessageData(Message message) { switch ((Message.TYPE_ID)message.TypeID) { case Message.TYPE_ID.FIRST_SECURE_MESSAGE: return(FirstSecureMessage.Parse(message.Data)); case Message.TYPE_ID.FIRST_SECURE_MESSAGE_SERVER: return(FirstSecureMessageServer.Parse(message.Data)); case Message.TYPE_ID.GENERATE_SECURITY_CONTEXT: return(GenerateSecurityContext.Parse(message.Data)); case Message.TYPE_ID.SECURITY_CONTEXT_SERVER_MSG: return(SecurityContextServer.Parse(message.Data)); case Message.TYPE_ID.AUTHENTICATE_MSG: return(AuthenticateMessage.Parse(message.Data)); case Message.TYPE_ID.SERVER_ACCESS_GRANTED: return(ServerAccessGranted.Parse(message.Data)); case Message.TYPE_ID.SERVER_ACCESS_DENIED: return(ServerAccessDenied.Parse(message.Data)); case Message.TYPE_ID.CONNECT_MSG: return(ConnectMessage.Parse(message.Data)); case Message.TYPE_ID.CONNECT_ACK_MSG: return(ConnectAckMessage.Parse(message.Data)); case Message.TYPE_ID.STATE_MSG: return(StateMessage.Parse(message.Data)); case Message.TYPE_ID.USER_MSG: return(UserMessage.Parse(message.Data)); case Message.TYPE_ID.ERROR_MSG: return(ErrorMessage.Parse(message.Data)); case Message.TYPE_ID.WATCH_MSG: return(WatchMessage.Parse(message.Data)); case Message.TYPE_ID.DATA_MSG: return(DataMessage.Parse(message.Data)); default: return(null); } }
public static ServerAccessGranted Parse(byte[] Data) { var parsedMessage = new ServerAccessGranted(); parsedMessage.Unused_0 = BitConverter.ToInt32(Data, 0); parsedMessage.ZWebAuthSignature = System.Text.Encoding.ASCII.GetString(Data, 4, 8); parsedMessage.Unused_1 = BitConverter.ToInt32(Data, 13); parsedMessage.Unused_2 = BitConverter.ToInt32(Data, 17); parsedMessage.Username = System.Text.Encoding.ASCII.GetString(Data, 21, 19); parsedMessage.Unused_3 = BitConverter.ToInt32(Data, 41); parsedMessage.Unused_4 = BitConverter.ToInt32(Data, 45); parsedMessage.Unused_5 = BitConverter.ToInt32(Data, 49); parsedMessage.UserID = System.Text.Encoding.ASCII.GetString(Data, 53, Data.Length - 53); return(parsedMessage); }
private static void ServerManager_MessageReceived(ServerMessage msg) { switch (msg.Name) { case "mudhack_users": UsersReceived?.Invoke(JsonConvert.DeserializeObject <List <OnlineUser> >(msg.Contents)); break; case "mudhack_init": ServerPasswordGenerated?.Invoke(msg.Contents); break; case "mudhack_denied": ServerAccessDenied?.Invoke(); break; case "mudhack_granted": ServerAccessGranted?.Invoke(); break; case "getguid_fromserver": if (SaveSystem.CurrentSave.Username == msg.Contents) { client.Send(new NetObject("yes_i_am", new ServerMessage { Name = "getguid_reply", GUID = msg.GUID, Contents = thisGuid.ToString(), })); } break; case "getguid_reply": GUIDReceived?.Invoke(msg.Contents); break; } }