#Math

1 messages · Page 1 of 1 (latest)

young tinsel
#
function math(player) {
    const Select = ["+", "-", "/", "*"];
    const form = new ModalFormData()
        .title('Calculator')
        .textField('Input 1', 'First Number')
        .textField('Input 2', 'Second Number')
        .dropdown('Mode', Select);

    form.show(player).then(({ canceled, formValues }) => {
        if (canceled) return;

        const mode = Select[formValues.pop()];
        const [firstNumber, secondNumber] = formValues.map(parseFloat);

        let answer;
        switch (mode) {
            case '+':
                answer = firstNumber + secondNumber
                break;
            case '-':
                answer = firstNumber - secondNumber
                break;
            case '/':
                answer = firstNumber / secondNumber
                break;
            case '*':
                answer = firstNumber * secondNumber
                break;
            default:
                player.sendMessage('Invalid operation selected.');
                return;
        }

        player.sendMessage(`${firstNumber} ${mode} ${secondNumber}: ${answer}`);
    });
}```
molten haven
#

does it say ) expected or } expected

young tinsel
#
function math(player) {
    const operation = {
        "+": (a, b) => a + b,
        "-": (a, b) => a - b,
        "/": (a, b) => a / b,
        "*": (a, b) => a * b
    };
    const modes = Object.keys(operation)
    const form = new ModalFormData()
        .title('Calculator')
        .textField('Input 1', 'First Number')
        .textField('Input 2', 'Second Number')
        .dropdown('Mode', modes);

    form.show(player).then(({ canceled, formValues }) => {
        if (canceled) return;

        const mode = modes[formValues.pop()];
        const [firstNumber, secondNumber] = formValues.map(parseFloat);

        let answer = operation[mode](firstNumber, secondNumber)

        player.sendMessage(`${firstNumber} ${mode} ${secondNumber}: ${answer}`);
    });
}```
untold folio
young tinsel
#

there

#

nice