· 5 years ago · Mar 29, 2020, 03:44 PM
1const Discord = require("discord.js");
2const client = new Discord.Client();
3const config = require("./config.json");
4const sqlite3 = require('sqlite3').verbose();
5const db = new sqlite3.Database("./baseDeDatos.sqlite");
6
7let prefix = config.prefix;
8
9
10
11client.on("ready", () => {
12 console.log("Ya we");
13
14let SQLCreate = "CREATE TABLE IF NOT EXISTS usuarios (idusuario TEXT, nivel INTEGER, exp INTEGER)";
15
16db.run(SQLCreate, function(err) {
17 if (err) return console.error(err.message)
18})
19
20setInterval(()=> {
21let array = ["60000", "120000", "180000", "240000", "300000", "360000", "420000", "480000", "540000", "600000", "660000", "720000", "780000", "840000", "900000", "960000", "1020000", "1080000", "1140000", "1200000", "1260000", "1320000", "1380000", "1440000", "1500000", "1560000", "1620000", "1680000", "1740000", "1800000"]
22let numeros = array[Math.floor(Math.random() * array.length)]
23const mismensajes = ["*aparece un zombie*", "*aparecen dos zombies*", "*aparecen tres zombies*", "*aparecen más de tres zombies*"]
24const mensaje = mismensajes[Math.floor(Math.random() * mismensajes.length)]
25client.channels.get("693111125004517496").send(mensaje)
26}, numeros)
27
28});
29
30client.on("message", (message) => {
31 const args = message.content.slice(prefix.length).trim().split(/ +/g);
32 const command = args.shift().toLowerCase();
33
34let id = message.author.id;
35let sentencia = "SELECT * FROM usuarios WHERE idusuario = ${id}";
36
37db.get(sentencia, (err, filas) => {
38 if (err) return console.error(err.message)
39 if (!filas) {
40 let insert = `INSERT INTO usuarios(idusuario, nivel, exp) VALUES(${id}, 0, 1)`;
41
42 db.run(insert, function (err) {
43 if (err) return console.error(err.message)
44 });
45
46 }
47
48let curLevel = Math.floor(0.1 * Math.sqrt(filas.exp + 1));
49
50 if (curLevel > filas.nivel) {
51 let update = `UPDATE usuarios SET exp = ${filas.exp + 1}, nivel = ${curLevel} WHERE idusuario = ${id}`;
52
53 db.run(update, function (err) {
54 if (err) return console.error(err.message)
55 message.channel.send('Subiste de nivel, ' + message.author.tag)
56
57 });
58
59 }
60
61 let update = `UPDATE perfiles SET exp = ${filas.exp + 1} WHERE idusuario = ${id}`;
62 db.run(update, function (err) {
63 if (err) return console.error(err.message)
64 })
65
66});
67
68if (command === "Perfil") {
69 let select = `SELECT * FROM usuarios WHERE idusuario = ${id}`;
70
71 db.get(select, (err, filas) => {
72 if (err) return console.error(err.message)
73 if (!filas) return message.channel.send('Sin resultados.')
74
75 let embed = new Discord.RichEmbed()
76 .setAuthor('Perfil de ' + message.author.username, message.author.displayAvatarURL)
77 .addField('Nivel', filas.nivel, true)
78 .addField('Exp', filas.exp, true)
79 .setColor("ff7b00")
80
81 message.channel.send(embed);
82
83 });
84
85}
86
87if (command === "Eliminar") {
88 let miembro = message.mentions.users.first();
89 if (!miembro) return message.channel.send('Debe mencionar a un usuario a eliminar.')
90
91 let remover = `DELETE FROM usuarios WHERE idusuario = ${miembro.id}`;
92 db.run(remover, function (err) {
93 if (err) return console.error(err.message)
94 message.channel.send(miembro.username + ', fue eliminado correctamente.');
95 });
96
97}
98
99});
100
101client.login(config.token);