#Help with a money transfer gui

1 messages · Page 1 of 1 (latest)

brittle snow
#

I am trying to make a money transfer in an item gui, i want it so players cant use symbols and letters etc, whilst alowing people to do like 1k to send 1000 can someone help me|

const MoneyTransfer = (player) => {
    const players = [...world.getPlayers()];
    new ModalFormData()
.title('')
.dropdown('§dSelect A Player!', players.map(plr => plr.name))
.textField(`§dEnter An Amount\n §8  Current Money: ${getScore('money', player)}`, `Only Use Numbers`)
.show(player)
.then(({ formValues: [dropdown, textField] }) => {
    const selectedPlayer = players[dropdown];
    
    if (selectedPlayer === player) {
        player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cYou Cant Select Yourself"}]}`)
        return
    }
    if (getScore('money', player) < textField) {
    player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cYou Dont Have Enough Money"}]}`);
    return;
    }try{
    player.runCommandAsync(`tag @s add 'money:${textField}'`)
    player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§aSent §l${selectedPlayer.name} §r§2$${textField}"}]}`)
    selectedPlayer.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§l${player.name} §r§aHas Given You §2$${textField}"}]}`);
    selectedPlayer.runCommandAsync(`scoreboard players add ${selectedPlayer.name} money ${textField}`);
    selectedPlayer.runCommandAsync(`scoreboard players remove ${player.name} money ${textField}`);
    selectedPlayer.runCommandAsync(`tag @s add 'money:${textField}'`)
    }catch{
        player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cOnly Use Numbers"}]}`)
        return 
    } }).catch((e) => {
    console.error(e, e.stack) 
});
} ```
gritty bolt
#

use slider

brittle snow
#

Oh Yh good idea 💀

ornate herald
gritty bolt
brittle snow
#

i tried doing

const MoneyTransfer = (player) => {
    const players = [...world.getPlayers()];
    new ModalFormData()
.title('')
.dropdown('§dSelect A Player!', players.map(plr => plr.name))
.textField(`§dEnter An Amount\n §8  Current Money: ${getScore('money', player)}`, `Only Use Numbers`)
.show(player)
.then(({ formValues: [dropdown, textField] }) => {
    const selectedPlayer = players[dropdown];
    
    if (selectedPlayer === player) {
        player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cYou Cant Select Yourself"}]}`)
        return
    }
    if (getScore('money', player) < textField) {
    player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cYou Dont Have Enough Money"}]}`);
    return;
    }try{ 
    player.runCommandAsync(`tag @s add 'money:${textField}'`)
    player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§aSent §l${selectedPlayer.name} §r§2$${textField}"}]}`)
    selectedPlayer.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§l${player.name} §r§aHas Given You §2$${textField}"}]}`);
    selectedPlayer.runCommandAsync(`scoreboard players add ${selectedPlayer.name} money ${textField}`);
    selectedPlayer.runCommandAsync(`scoreboard players remove ${player.name} money ${textField}`);
    selectedPlayer.runCommandAsync(`tag @s add 'money:${textField}'`)
    !isNaN(Number())
        player.runCommandAsync(`tellraw @s {"rawtext":[{"text":"§cOnly Use Numbers"}]}`)
        return 
}})``` but that has errors
true nimbus
#
const MoneyTransfer = async (player, input = {}) => {
    const players = [{ name: '§dSelect A Player!' }, ...world.getAllPlayers().filter(p => p !== player)];
    const myMoney = getScore('money', player)
    const { canceled, formValues } = await new ModalFormData()
        .title('Money Transfer')
        .dropdown('', players.map(plr => plr.name), input.dropdown ?? 0)
        .slider(`§dEnter An Amount\n §8  Current Money: ${myMoney}`, 1, myMoney, 1, input.slider ?? 1)
        .show(player);
    if (canceled) return;
    const [dropdown, slider] = formValues;
    if (dropdown == 0) return MoneyTransfer(player, { dropdown, slider });
    const selectedPlayer = players[dropdown];
    player.sendMessage(`§aSent §l${selectedPlayer.name} §r§2$${slider}`)
    selectedPlayer.sendMessage(`§l${player.name} §r§aHas Given You §2$${slider}`);
    selectedPlayer.runCommandAsync(`scoreboard players add "${selectedPlayer.name}" money ${slider}`);
    selectedPlayer.runCommandAsync(`scoreboard players remove "${player.name}" money ${slider}`);
};
brittle snow
#

lad i love you

true nimbus
#

Uh... Ok...

#

I'd be happy if u learn the code

brittle snow
#

so wouldi

#

it smy goal over the summer holidays

#

but ive got exams right now so i dont have time

brittle snow
true nimbus
#

Actually it's possible with textField

brittle snow
#

I just changed it a bit