Liniuss

Update

Sep 4th, 2017
579
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const vk            = new (require('vk-io')),
  2.     request         = require('request'),
  3.     BOTID           = 1231645;
  4.  
  5. vk.setToken('TOKEN');
  6. vk.longpoll.start();
  7.  
  8. var commands = [];
  9.  
  10. var users = {
  11.     '1': {
  12.         'balance': 1000
  13.     }
  14. }
  15.  
  16. vk.longpoll.on('message', (message) => {
  17.     if(message.user == BOTID) return;
  18.     if(!users[message.user])
  19.         users[message.user] = {balance: 1000};
  20.     commands.map(function (cmd) {
  21.         if(!cmd.r.test(message.text))return;
  22.         var params = message.text.match(cmd.r) || [];
  23.         params[0] = message;
  24.         cmd.f(message, params);
  25.     });
  26. });
  27.  
  28. function command(_regex, _desc, _func) {
  29.     commands.push({r: _regex, f: _func, d: _desc}); // Прост красиво оформляем пуш значений в массив.
  30. }
  31.  
  32. command(/^\/help/i, 'none', function (message, params) {
  33.     return message.send("Команды бота:\n" + commands.filter(e => e.d != 'none').map(x => x.d).join("\n"));
  34. });
  35.  
  36. command(/^\/test/i, '/start -- проверка бота', function (message, params) {
  37.     return message.send("Привет, я работаю!");
  38. });
  39.  
  40. command(/^\/spot\s([0-9]+)/i, '/spot <поинты> -- топ рулетка класс', function (message, params) {
  41.     if(users[message.user].balance <= 0) return message.send('мало денег');
  42.     if(getRandomInt(0, 100) < 50) {
  43.         users[message.user].balance += Number(params[1]);
  44.         return message.send(`Вы выиграли ${params[1]} поинтов!\nНа вашем балансе ${users[message.user].balance} поинтов`);
  45.     }else{
  46.         users[message.user].balance -= Number(params[1]);
  47.         return message.send(`Вы проиграли ${params[1]} поинтов!\nНа вашем балансе ${users[message.user].balance} поинтов`);
  48.     }
  49. });
  50.  
  51. function getRandomInt(min, max){return Math.round(Math.random() * (max - min)) + min}
  52. Array.prototype.random = function(){return this[Math.floor(this.length * Math.random())];}
Advertisement
Add Comment
Please, Sign In to add comment