Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.42 KB | None | 0 0
  1. var Discord = require("discord.js");
  2. var mysql = require('mysql');
  3.  
  4. var bot = new Discord.Client();
  5.  
  6. var connection = mysql.createConnection({
  7. host : 'localhost',
  8. port : 3306,
  9. user : 'root',
  10. password : 'kusabieru',
  11. database : 'nexus_bot',
  12. });
  13.  
  14. //Llamada a BD del bot
  15. connection.connect(function(error) {
  16. if(error) {
  17. console.log("Error de conexión a la BD");
  18. } else{
  19. console.log("Conectado a la BD");
  20. }
  21. });
  22.  
  23. //Bienvenida a nuevos usuarios
  24. bot.on("guildMemberAdd", (guild, member) => {
  25. console.log(`"${member.user.username}" se ha unido al servidor de Nexus.` );
  26. guild.defaultChannel.sendMessage(`Bienvenido/a al Discord de Nexus, "${member.user.username}"`);
  27. });
  28.  
  29. //Mensajeria
  30. bot.on("message", msg => {
  31. var reply = "";
  32. // Set the prefix
  33. let prefix = "n";
  34.  
  35. /********** METODOS ***********/
  36. //Lectura de citas
  37. function leerCita(idcita){
  38. connection.query('SELECT textocita FROM citas WHERE idcita=' + idcita, function(error, row){
  39. if(error){
  40. console.log("Error de la muerte, no encuentro la cita.");
  41. } else{
  42. if(row[0] != undefined){
  43. msg.channel.sendMessage(":pencil: " + row[0].textocita);
  44. } else {
  45. msg.channel.sendMessage("¿Me tomas el pelo? Esa cita no existe...tontete :smirk:");
  46. }
  47. }
  48. });
  49. }
  50.  
  51. /************ LISTENERS ************/
  52.  
  53. //Escucha y trollea
  54. if(msg.content.startsWith("¬¬")){
  55. msg.channel.sendMessage(":smirk:");
  56. }
  57.  
  58. if(msg.content.indexOf('reviento') >= 0){
  59. msg.channel.sendMessage("A ver si te voy a reventar yo :smirk:");
  60. }
  61.  
  62. /************ COMANDOS ************/
  63.  
  64. // Filtramos los comandos de otros bots
  65. if(!msg.content.startsWith(prefix)) return;
  66.  
  67. //n!randcita - Muestra una cita aleatoria de la BD
  68. if(msg.content.startsWith(prefix + "!randcita")){
  69. //Cuenta número de citas en db
  70. connection.query('SELECT COUNT(*) AS citasCount FROM citas', function(error, rows){
  71. console.log("Citas encontradas: " + rows[0].citasCount);
  72. if(error){
  73. console.log("Error de la muerte, no encuentro número de citas.");
  74. } else{
  75. console.log("Cita aleatoria referenciada correctamente");
  76. leerCita(Math.floor((Math.random() * rows[0].citasCount) + 1));
  77. }
  78. });
  79. }
  80.  
  81. //n!cita texto - Muestra cita de la BD
  82. if(msg.content.startsWith(prefix + "!dicita")){
  83. var idcitaget = msg.content.split(" ");
  84.  
  85. if(idcitaget.length == 2){
  86. console.log("Cita referenciada correctamente");
  87. leerCita(idcitaget[1]);
  88. } else {
  89. msg.channel.sendMessage("Cuando sepas pedir citas trabajaré :smirk:. Pista, debes poner un espacio y el número del registro para consultarlas.");
  90. }
  91. }
  92.  
  93. //n!cita texto - Registra cita en la BD
  94. if(msg.content.startsWith(prefix + "!cita")){
  95. console.log("Entrando al registro de citas");
  96. if(msg.content.charAt(6) == ' '){
  97. console.log("Cita listada correctamente");
  98. var idcitaset = msg.content.substr(msg.content.indexOf('a')+2);
  99. console.log("Cita: " + idcitaset);
  100. var postcita = {
  101. "textocita": idcitaset
  102. };
  103.  
  104. //Lectura de citas
  105. connection.query('INSERT INTO citas SET ?', postcita, function(error){
  106. if(error){
  107. console.log("Error de la muerte");
  108. }
  109. else{
  110. msg.channel.sendMessage("Gracias guap@, cita añadida al registro nexunianoniano.");
  111. }
  112. });
  113. } else {
  114. msg.channel.sendMessage("Cuando sepas registrar citas trabajaré :smirk:. Pista, debes poner un espacio y el texto de la cita a registrar.");
  115. console.log(msg.content.charAt(6));
  116. }
  117. }
  118.  
  119. //n!galleta
  120. if(msg.content.startsWith(prefix + "!galleta")){
  121. msg.channel.sendMessage("Gracias amo :heart_eyes:");
  122. }
  123.  
  124. //n!dialgo
  125. if(msg.content.startsWith(prefix + "!dialgo")){
  126. switch(Math.floor((Math.random() * 5) + 1)){
  127. case 1 : reply = "Algo."
  128. break;
  129. case 2 : reply = "Weenie Looney."
  130. break;
  131. case 3 : reply = "Eres malvado/a."
  132. break;
  133. case 4 : reply = "Pergamino de elefante."
  134. break;
  135. case 5 : reply = "Pues oye, qué bonitos los nuevos árboles de Heidel."
  136. break;
  137. }
  138. msg.channel.sendMessage(reply);
  139. }
  140. });
  141.  
  142. bot.on('ready', () => {
  143. console.log('I am ready!');
  144. });
  145.  
  146. bot.login("MjM4OTA2NTU1NTk0OTY0OTky.CutCrA.K3wFuNWs7GW3iYnxc5-olETjhWg");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement