public static bool OpenYS_Command_Administration_Password_Method(Client ThisClient, CommandReader Command) { Console.WriteLine("&c" + ThisClient.Username + " is trying to log in to the server as an administrator..."); if (Settings.Administration.AdminPassword == "") { ThisClient.SendMessage("&cNo Admin Password is set for the server, cannot log you in!"); return(false); } ThisClient.SendMessage("&9OpenYS Server Authentication System"); ThisClient.SendMessage("&f==================================="); ThisClient.SendMessage(""); ThisClient.SendMessage("&9Ready to log you in to the server. All messages are now being securely caught, and will not be passed onto the server."); ThisClient.SendMessage("&9Please also note that you are deaf to all messages while you you are in this interface!"); ThisClient.SendMessage(""); ThisClient.SendMessage("Please enter the admin password."); Console.WriteLine("&e" + ThisClient.Username + " temporarily deafened as part of the authentication process..."); ThisClient.IsDeaf = true; while (true) { Packets.GenericPacket InPacket = ThisClient.YSFClient.ReceivePacket(); if (InPacket.Type == 32) { ThisClient.IsDeaf = false; Packets.Packet_32_ChatMessage ChatMessage = new Packets.Packet_32_ChatMessage(InPacket, ThisClient.Username); if (ChatMessage.Message == Settings.Administration.AdminPassword) { Console.WriteLine("&a" + ThisClient.Username + " has successfully authenticated as a server administrator."); ThisClient.SendMessage("&aSuccessfully logged in as an administrator... Returning you back to the server."); Clients.YSFClients.Exclude(ThisClient).SendMessage("&a" + ThisClient.Username + " has successfully authenticated as a server administrator."); ThisClient.OP(); break; } else { Console.WriteLine("&c" + ThisClient.Username + " failed to authenticate as an administrator."); ThisClient.SendMessage("&cAdmin Password Incorrect... Returning you back to the server."); break; } } else { if (InPacket.Type == 08) { ThisClient.IsDeaf = false; ThisClient.SendMessage("&cJoin Requested Detected... Returning you back to the server."); ThisClient.YSFClient.ProcessPacket(InPacket); break; } ThisClient.YSFClient.ProcessPacket(InPacket); } } return(true); }
private static bool YSFHandle_32_ChatMessage(Client ThisClient, Packets.GenericPacket InPacket) { Packets.Packet_32_ChatMessage ChatMessage = new Packets.Packet_32_ChatMessage(InPacket, ThisClient.Username); lock (ThisClient.MessagesTyped) { if ((ChatMessage.Message) == "/" & ThisClient.MessagesTyped.Count == 0) { ThisClient.SendMessage("No previously typed commands..."); return(false); } if ((ChatMessage.Message) != "/") { ThisClient.MessagesTyped.Add(new Client.MessageTypedInfo(ChatMessage.Message)); } } CommandManager.Process(ThisClient, ChatMessage.Message); return(true); }