rpg-levelup.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { canLevelUp, xpRange } from '../lib/levelling.js'
  2. import { levelup } from '../lib/canvas.js'
  3. let handler = async (m, { conn }) => {
  4. let name = conn.getName(m.sender)
  5. let user = global.db.data.users[m.sender]
  6. if (!canLevelUp(user.level, user.role, user.exp, global.multiplier)) {
  7. let { min, xp, max } = xpRange(user.level, global.multiplier)
  8. throw `『 *TUS ESTADISTICAS 🆙* 』
  9. Tus estadisticas en tiempo real 🕐
  10. ├─ ❏ *NOMBRE:* ${name}
  11. ├─ ❏ *XP 🆙:* ${user.exp - min}/${xp}
  12. ├─ ❏ *NIVEL:* ${user.level}
  13. └─ ❏ *RANGO:* ${user.role}
  14. > Te falta *${max - user.exp}* De *XP* para subir de nivel
  15. `.trim()
  16. }
  17. let before = user.level * 1
  18. while (canLevelUp(user.level, user.exp, global.multiplier)) user.level++
  19. if (before !== user.level) {
  20. let teks = `🎊 Felicidades ${conn.getName(m.sender)} llegaste a un nuevo nivel:`
  21. let str = `*[ 𝐋𝐄𝐕𝐄𝐋 𝐔𝐏 ]*
  22. *• 𝐍𝐢𝐯𝐞𝐥 𝐚𝐧𝐭𝐞𝐫𝐢𝐨𝐫:* ${before}
  23. *• 𝐍𝐢𝐯𝐞𝐥 𝐚𝐜𝐭𝐮𝐚𝐥:* ${user.level}
  24. *• 𝐑𝐚𝐧𝐠𝐨:* ${user.role}
  25. > _*Cuanto mas interactues con los bots, mayor sera tu nivel_*
  26. `.trim()
  27. try {
  28. const img = await levelup(teks, user.level)
  29. conn.sendFile(m.chat, img, 'levelup.jpg', str, m)
  30. } catch (e) {
  31. m.reply(str)
  32. }}}
  33. handler.help = ['levelup']
  34. handler.tags = ['econ']
  35. handler.command = ['nivel', 'lvl', 'levelup', 'level']
  36. handler.register = true
  37. export default handler