chipmunkbot3/plugins/mail.js

32 lines
1 KiB
JavaScript
Raw Normal View History

const { createUuidSelector } = require('../util/command/utility')
function inject (bot) {
bot.sendMail = sendMail
2024-02-11 21:23:41 -05:00
async function sendMail (sender, receiver, message) {
let playerData = Object.values(bot.playerData).find(playerData => playerData.data.username === receiver)
2024-02-11 21:23:41 -05:00
let loadedManually = false
if (!playerData) {
playerData = await bot.loadPlayerData(receiver)
loadedManually = true
}
2024-02-11 21:23:41 -05:00
2024-05-27 18:34:26 -04:00
if (loadedManually) playerData.data.username ??= receiver
playerData.data.mail ??= []
playerData.data.mail.push({ sender: sender, message, host: bot.host, port: bot.port })
2024-02-11 21:23:41 -05:00
if (loadedManually) await playerData.save()
2024-02-11 21:23:41 -05:00
}
bot.on('player_data_loaded', (player, playerData) => {
if (!playerData.data.mail?.length) return
const msg = [{ text: "You\'ve got mail!\nRun ", ...bot.styles.primary }, { text: bot.commands.prefixes[0] + 'mail list', ...bot.styles.secondary }, ' to read it']
bot.tellraw(msg, createUuidSelector(player.uuid))
})
2024-02-11 21:23:41 -05:00
}
2024-02-29 20:39:21 -05:00
module.exports = inject