diff --git a/src/lib/parseCommandArgs.ts b/src/lib/parseCommandArgs.ts index 27a44ee..0bf3b15 100644 --- a/src/lib/parseCommandArgs.ts +++ b/src/lib/parseCommandArgs.ts @@ -2,15 +2,17 @@ import { commandPrefix } from ".."; /** Helper function to extract arguments from commands */ export default function parseCommandArgs(input: string) { - const a = input.slice(commandPrefix.length); - const sliceLength = a.startsWith('use') ? 2 : 1; - const b = a.trim().split(' ').slice(sliceLength); - return b; + const nice = input.toLowerCase().slice(commandPrefix.length).trim(); + const sliceLength = nice.startsWith('use') ? 2 : 1; + return nice.split(' ').slice(sliceLength); }; export function parseCheerArgs(input: string) { - const a = input.slice(commandPrefix.length); - const sliceLength = a.startsWith('testcheer') ? 2 : 0; - const b = a.trim().split(' ').slice(sliceLength); - return b; + const nice = input.toLowerCase().trim(); + + // This is for the test command. Remove the command prefix, the command, the whitespace after and the amount of fake bits + if (nice.startsWith(commandPrefix + 'testcheer')) return nice.slice(commandPrefix.length + 'testcheer'.length + 1).split(' ').slice(1); + + // This is for actual cheers. Remove all 'cheerx' parts of the message + return nice.split(' ').filter(a => !/cheer[0-9]+/.test(a)); };