public bool OnBanUserCommand(IStarProxy proxy, StarCommand command) { if (!proxy.AuthenticatedUser.Admin) return false; ChatReceivedMessage message = new ChatReceivedMessage { Context = new MessageContext { Mode = Mode.CommandResult } }; if (command.Arguments.Length != 2) { message.Text = "Syntax: /banuser <uuid> \"<reason>\" <all characters? (optional)>"; proxy.SendChatMessage(message); } string uuid = command.Arguments[0]; string reason = command.Arguments[1]; string allCharsStr = command.Arguments[1]?.ToLower(); bool allChars = allCharsStr == "yes" || allCharsStr == "true" || allCharsStr == "1"; if (ActivateBanHammer(proxy.Server, uuid, reason, allChars)) message.Text = $"Player with uuid {uuid} has been banned!"; else message.Text = $"Error while trying to ban {uuid}!"; proxy.SendChatMessage(message); return true; }
public static void SendChatMessage(this IStarProxy proxy, ChatReceivedMessage message) { IChatReceivePacket chatPacket = proxy.Server.Star.Resolve<IChatReceivePacket>(); chatPacket.ReceivedMessage = message; proxy.SendPacket(chatPacket, Destination.Client); }
public bool OnRegisterCommand(IStarProxy proxy, StarCommand command) { var resp = new ChatReceivedMessage { Context = new MessageContext { Mode = Mode.CommandResult } }; if (command.Arguments.Length != 3) { resp.Text = "Syntax: /register <username> <password> <confirm>"; proxy.SendChatMessage(resp); return false; } if (!RegisterUser(command.Arguments[0], command.Arguments[1])) { resp.Text = $"The username {command.Arguments[0]} has already been taken!"; proxy.SendChatMessage(resp); return false; } resp.Text = $"The account {command.Arguments[0]} has been created!"; proxy.SendChatMessage(resp); return true; }
public void Read(IStarReader reader) { ReceivedMessage = new ChatReceivedMessage { Context = new MessageContext { Mode = (Mode)reader.ReadByte(), ChannelName = reader.ReadString() }, ClientId = reader.ReadInt32(), FromNick = reader.ReadString(), Text = reader.ReadString() }; }