public bool ProcessUniversalPacketCommand(UniversalPacket universalPacket, ClientWorkObject client, AsynchronousSocketListener server) { bool sentClientData = false; string[] commandArgs = ((string[])JsonConvert.DeserializeObject <string[]>(universalPacket.MessageData.Data)); //Process plugins UniversalPlugin plugin = server.GetPlugin(commandArgs[0]); if (plugin != null) { sentClientData = plugin.core.Invoke(client, commandArgs); server.serverPluginLogger.AddToLog(ILogger.Levels.INFO, "Client [" + client.clientTracker.userID + "] has used command [" + plugin.core.Name + "."); } //Processes default commands if (!sentClientData) { foreach (IUniversalCommand universalCommand in UniversalCommand.GetDefaultCommands()) { if (universalCommand.GetNamespace().ToLower() == commandArgs[0].ToLower()) { bool tmpbool = universalCommand.Invoke(commandArgs, universalPacket, client); server.serverPluginLogger.AddToLog(ILogger.Levels.INFO, "Client [" + client.clientTracker.userID + "] has used command [" + universalCommand.GetNamespace() + "."); if (tmpbool == true) { sentClientData = true; return(tmpbool); } } } } return(sentClientData); }