make the command parser nicer, fix the cheer parser

This commit is contained in:
2025-07-20 22:22:07 +01:00
parent 41bad3dbd1
commit 5228bfb96a

View File

@@ -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));
};