UNPKG

dbd.js-new

Version:

dbd.js-new - Simplifica la programación de un bot de discord, dbd.js-new es una versión de dbd.js con soporte

79 lines (64 loc) 1.82 kB
const checkCondition = async (d) => { const code = d.command.code; const r = code.split("$checkCondition").length - 1; const inside = code.split("$checkCondition")[r].after(); const err = d.inside(inside); if (err) return d.error(err); const p = inside.splits; const condition = p.shift(); const operators = () => { for (const op of ["<=", ">=", "==", "!=", "<", ">"]) { if (condition.includes(op)) return op; } }; const op = operators(); if (!operators) return d.error(`:x: No valid operator in \`$checkCondition${inside}\``); const fields = condition.split(op); let pass = true; if (op === "<=") { if ( Number(fields[0]) > Number(fields[1]) || !fields[0] || !fields[1] || Number(fields[0]) === NaN || Number(fields[1]) === NaN ) pass = false; } else if (op === ">=") { if ( Number(fields[0]) < Number(fields[1]) || !fields[0] || !fields[1] || Number(fields[0]) === NaN || Number(fields[1]) === NaN ) pass = false; } else if (op === "==") { if (fields[0].addBrackets() !== fields[1].addBrackets()) pass = false; } else if (op === "<") { if ( Number(fields[0]) >= Number(fields[1]) || !fields[0] || !fields[1] || Number(fields[0]) === NaN || Number(fields[1]) === NaN ) pass = false; } else if (op === ">") { if ( Number(fields[0]) <= Number(fields[1]) || !fields[0] || !fields[1] || Number(fields[0]) === NaN || Number(fields[1]) === NaN ) pass = false; } else if (op === "!=") { if (fields[0].addBrackets() === fields[1].addBrackets()) pass = false; } return { code: code.replaceLast(`$checkCondition${inside}`, pass), }; }; module.exports = checkCondition;