diff --git a/PluralKit.Bot/CommandMeta/CommandTree.cs b/PluralKit.Bot/CommandMeta/CommandTree.cs index 052da197..92441f9d 100644 --- a/PluralKit.Bot/CommandMeta/CommandTree.cs +++ b/PluralKit.Bot/CommandMeta/CommandTree.cs @@ -44,13 +44,13 @@ public partial class CommandTree else return ctx.Execute(Help, m => m.HelpRoot(ctx)); if (ctx.Match("explain")) return ctx.Execute(Explain, m => m.Explain(ctx)); - if (ctx.Match("message", "msg")) + if (ctx.Match("message", "msg", "messageinfo")) return ctx.Execute(Message, m => m.GetMessage(ctx)); if (ctx.Match("edit", "e")) return ctx.Execute(MessageEdit, m => m.EditMessage(ctx, false)); if (ctx.Match("x")) return ctx.Execute(MessageEdit, m => m.EditMessage(ctx, true)); - if (ctx.Match("reproxy", "rp", "crimes")) + if (ctx.Match("reproxy", "rp", "crimes", "crime")) return ctx.Execute(MessageReproxy, m => m.ReproxyMessage(ctx)); if (ctx.Match("log")) if (ctx.Match("channel")) @@ -91,7 +91,7 @@ public partial class CommandTree if (ctx.Match("rool")) return ctx.Execute(null, m => m.Rool(ctx)); if (ctx.Match("sus")) return ctx.Execute(null, m => m.Sus(ctx)); if (ctx.Match("error")) return ctx.Execute(null, m => m.Error(ctx)); - if (ctx.Match("stats")) return ctx.Execute(null, m => m.Stats(ctx)); + if (ctx.Match("stats", "status")) return ctx.Execute(null, m => m.Stats(ctx)); if (ctx.Match("permcheck")) return ctx.Execute(PermCheck, m => m.PermCheckGuild(ctx)); if (ctx.Match("proxycheck")) @@ -100,7 +100,7 @@ public partial class CommandTree return HandleDebugCommand(ctx); if (ctx.Match("admin")) return HandleAdminCommand(ctx); - if (ctx.Match("random", "r")) + if (ctx.Match("random", "rand", "r")) if (ctx.Match("group", "g") || ctx.MatchFlag("group", "g")) return ctx.Execute(GroupRandom, r => r.Group(ctx, ctx.System)); else @@ -229,9 +229,9 @@ public partial class CommandTree await ctx.CheckSystem(target).Execute(SystemTag, m => m.Tag(ctx, target)); else if (ctx.Match("servertag", "st", "stag", "deer")) await ctx.CheckSystem(target).Execute(SystemServerTag, m => m.ServerTag(ctx, target)); - else if (ctx.Match("description", "desc", "bio", "info", "text")) + else if (ctx.Match("description", "desc", "describe", "d", "bio", "info", "text", "intro")) await ctx.CheckSystem(target).Execute(SystemDesc, m => m.Description(ctx, target)); - else if (ctx.Match("pronouns", "prns")) + else if (ctx.Match("pronouns", "pronoun", "prns", "pn")) await ctx.CheckSystem(target).Execute(SystemPronouns, m => m.Pronouns(ctx, target)); else if (ctx.Match("color", "colour")) await ctx.CheckSystem(target).Execute(SystemColor, m => m.Color(ctx, target)); @@ -269,7 +269,7 @@ public partial class CommandTree await ctx.CheckSystem(target).Execute(SystemDelete, m => m.Delete(ctx, target)); else if (ctx.Match("id")) await ctx.CheckSystem(target).Execute(SystemId, m => m.DisplayId(ctx, target)); - else if (ctx.Match("random", "r")) + else if (ctx.Match("random", "rand", "r")) if (ctx.Match("group", "g") || ctx.MatchFlag("group", "g")) await ctx.CheckSystem(target).Execute(GroupRandom, r => r.Group(ctx, target)); else @@ -299,13 +299,13 @@ public partial class CommandTree // Commands that have a member target (eg. pk;member delete) if (ctx.Match("rename", "name", "changename", "setname", "rn")) await ctx.Execute(MemberRename, m => m.Name(ctx, target)); - else if (ctx.Match("description", "info", "bio", "text", "desc")) + else if (ctx.Match("description", "desc", "describe", "d", "bio", "info", "text", "intro")) await ctx.Execute(MemberDesc, m => m.Description(ctx, target)); else if (ctx.Match("pronouns", "pronoun", "prns", "pn")) await ctx.Execute(MemberPronouns, m => m.Pronouns(ctx, target)); else if (ctx.Match("color", "colour")) await ctx.Execute(MemberColor, m => m.Color(ctx, target)); - else if (ctx.Match("birthday", "bday", "birthdate", "cakeday", "bdate")) + else if (ctx.Match("birthday", "birth", "bday", "birthdate", "cakeday", "bdate", "bd")) await ctx.Execute(MemberBirthday, m => m.Birthday(ctx, target)); else if (ctx.Match("proxy", "tags", "proxytags", "brackets")) await ctx.Execute(MemberProxy, m => m.Proxy(ctx, target)); @@ -313,7 +313,7 @@ public partial class CommandTree await ctx.Execute(MemberDelete, m => m.Delete(ctx, target)); else if (ctx.Match("avatar", "profile", "picture", "icon", "image", "pfp", "pic")) await ctx.Execute(MemberAvatar, m => m.Avatar(ctx, target)); - else if (ctx.Match("proxyavatar", "proxypfp", "webhookavatar", "webhookpfp", "pa")) + else if (ctx.Match("proxyavatar", "proxypfp", "webhookavatar", "webhookpfp", "pa", "pavatar", "ppfp")) await ctx.Execute(MemberAvatar, m => m.WebhookAvatar(ctx, target)); else if (ctx.Match("banner", "splash", "cover")) await ctx.Execute(MemberBannerImage, m => m.BannerImage(ctx, target)); @@ -348,7 +348,7 @@ public partial class CommandTree await ctx.Execute(MemberPrivacy, m => m.Privacy(ctx, target, null)); else if (ctx.Match("private", "hidden", "hide")) await ctx.Execute(MemberPrivacy, m => m.Privacy(ctx, target, PrivacyLevel.Private)); - else if (ctx.Match("public", "shown", "show")) + else if (ctx.Match("public", "shown", "show", "unhide", "unhidden")) await ctx.Execute(MemberPrivacy, m => m.Privacy(ctx, target, PrivacyLevel.Public)); else if (ctx.Match("soulscream")) await ctx.Execute(MemberInfo, m => m.Soulscream(ctx, target)); @@ -376,7 +376,7 @@ public partial class CommandTree await ctx.Execute(GroupRename, g => g.RenameGroup(ctx, target)); else if (ctx.Match("nick", "dn", "displayname", "nickname")) await ctx.Execute(GroupDisplayName, g => g.GroupDisplayName(ctx, target)); - else if (ctx.Match("description", "info", "bio", "text", "desc")) + else if (ctx.Match("description", "desc", "describe", "d", "bio", "info", "text", "intro")) await ctx.Execute(GroupDesc, g => g.GroupDescription(ctx, target)); else if (ctx.Match("add", "a")) await ctx.Execute(GroupAdd, @@ -386,7 +386,7 @@ public partial class CommandTree g => g.AddRemoveMembers(ctx, target, Groups.AddRemoveOperation.Remove)); else if (ctx.Match("members", "list", "ms", "l", "ls")) await ctx.Execute(GroupMemberList, g => g.ListGroupMembers(ctx, target)); - else if (ctx.Match("random")) + else if (ctx.Match("random", "rand")) await ctx.Execute(GroupMemberRandom, r => r.GroupMember(ctx, target)); else if (ctx.Match("privacy")) await ctx.Execute(GroupPrivacy, g => g.GroupPrivacy(ctx, target, null)); diff --git a/PluralKit.Bot/CommandSystem/Context/ContextPrivacyExt.cs b/PluralKit.Bot/CommandSystem/Context/ContextPrivacyExt.cs index d299f624..2f120f8a 100644 --- a/PluralKit.Bot/CommandSystem/Context/ContextPrivacyExt.cs +++ b/PluralKit.Bot/CommandSystem/Context/ContextPrivacyExt.cs @@ -6,10 +6,10 @@ public static class ContextPrivacyExt { public static PrivacyLevel PopPrivacyLevel(this Context ctx) { - if (ctx.Match("public", "show", "shown", "visible")) + if (ctx.Match("public", "pub", "show", "shown", "visible", "unhide", "unhidden")) return PrivacyLevel.Public; - if (ctx.Match("private", "hide", "hidden")) + if (ctx.Match("private", "priv", "hide", "hidden")) return PrivacyLevel.Private; if (!ctx.HasNext()) diff --git a/PluralKit.Bot/Commands/Lists/ContextListExt.cs b/PluralKit.Bot/Commands/Lists/ContextListExt.cs index d2f1272f..2821cf57 100644 --- a/PluralKit.Bot/Commands/Lists/ContextListExt.cs +++ b/PluralKit.Bot/Commands/Lists/ContextListExt.cs @@ -44,7 +44,7 @@ public static class ContextListExt p.SortProperty = SortProperty.LastSwitch; if (ctx.MatchFlag("by-last-message", "blm", "blp")) p.SortProperty = SortProperty.LastMessage; if (ctx.MatchFlag("by-birthday", "by-birthdate", "bbd")) p.SortProperty = SortProperty.Birthdate; - if (ctx.MatchFlag("random")) p.SortProperty = SortProperty.Random; + if (ctx.MatchFlag("random", "rand")) p.SortProperty = SortProperty.Random; // Sort reverse? if (ctx.MatchFlag("r", "rev", "reverse")) diff --git a/PluralKit.Core/Models/Privacy/GroupPrivacySubject.cs b/PluralKit.Core/Models/Privacy/GroupPrivacySubject.cs index 24e1f2b1..cb5c8358 100644 --- a/PluralKit.Core/Models/Privacy/GroupPrivacySubject.cs +++ b/PluralKit.Core/Models/Privacy/GroupPrivacySubject.cs @@ -45,8 +45,12 @@ public static class GroupPrivacyUtils break; case "description": case "desc": - case "text": + case "describe": + case "d": + case "bio": case "info": + case "text": + case "intro": subject = GroupPrivacySubject.Description; break; case "avatar": diff --git a/PluralKit.Core/Models/Privacy/MemberPrivacySubject.cs b/PluralKit.Core/Models/Privacy/MemberPrivacySubject.cs index 731fab2d..acfdadf4 100644 --- a/PluralKit.Core/Models/Privacy/MemberPrivacySubject.cs +++ b/PluralKit.Core/Models/Privacy/MemberPrivacySubject.cs @@ -49,8 +49,12 @@ public static class MemberPrivacyUtils break; case "description": case "desc": - case "text": + case "describe": + case "d": + case "bio": case "info": + case "text": + case "intro": subject = MemberPrivacySubject.Description; break; case "avatar": @@ -64,10 +68,14 @@ public static class MemberPrivacyUtils case "bday": case "birthdate": case "bdate": + case "cakeday": + case "bd": subject = MemberPrivacySubject.Birthday; break; case "pronouns": case "pronoun": + case "prns": + case "pn": subject = MemberPrivacySubject.Pronouns; break; case "meta": diff --git a/PluralKit.Core/Models/Privacy/SystemPrivacySubject.cs b/PluralKit.Core/Models/Privacy/SystemPrivacySubject.cs index 3bc8a2aa..bd3bde32 100644 --- a/PluralKit.Core/Models/Privacy/SystemPrivacySubject.cs +++ b/PluralKit.Core/Models/Privacy/SystemPrivacySubject.cs @@ -55,12 +55,18 @@ public static class SystemPrivacyUtils break; case "description": case "desc": - case "text": + case "describe": + case "d": + case "bio": case "info": + case "text": + case "intro": subject = SystemPrivacySubject.Description; break; case "pronouns": + case "pronoun": case "prns": + case "pn": subject = SystemPrivacySubject.Pronouns; break; case "members":