Nestor

Mon petit bot Discord
Log | Files | Refs

commit 213dbaa32136983e764b9e70213788c3b4dddc66
parent 3d11a28b2e42fc59cefca78a4cb85624e1cbae4b
Author: Doshirae <doshirae@doshirae.fr>
Date:   Sun, 29 Jul 2018 04:55:25 +0200

New vim folds

Diffstat:
Nestor.rb | 68++++++++++++++++++++++++++++++++++++--------------------------------
1 file changed, 36 insertions(+), 32 deletions(-)

diff --git a/Nestor.rb b/Nestor.rb @@ -17,28 +17,28 @@ $ALLOWED = { # created bot, and eventually run it. bot = Discordrb::Commands::CommandBot.new token: configatron.token, client_id: 261161348124114945, prefix: '!' -# invite ==> +# invite {{{ bot.command(:invite, chain_usable: false) do |event| # This simply sends the bot's invite URL, without any specific permissions, # to the channel. event.bot.invite_url end -# <== +# }}} -# random ==> +# random {{{ bot.command(:random, min_args: 0, max_args: 2, description: 'Generates a random number between 0 and 1, 0 and max or min and max.', usage: 'random [min/max] [max]') do |_event, min, max| random(min, max) end -# <== +# }}} -# ping ==> +# ping {{{ bot.command :ping do |event| m = event.respond('Pong!') m.edit "Pong! `#{(Time.now - event.timestamp).round(2)}s`" end -# <== +# }}} -# dtc ==> +# dtc {{{ bot.command(:dtc, description: "Renvoie une quote avec un certain numéro, ou une au hasard", usage: 'dtc [numéro_quote]') do |event, num_quote| if num_quote # File.open("latestQuote.txt", 'r') do |file,latestQuote| @@ -61,16 +61,16 @@ bot.command(:dtc, description: "Renvoie une quote avec un certain numéro, ou un "http://danstonchat.com/#{random}.html" end end -# <== +# }}} -# lenny ==> +# lenny {{{ bot.command(:lenny, description: "Lenny sous la main") do |event| event.message.delete "( ͡° ͜ʖ ͡° )" end -# <== +# }}} -# pokemon ==> +# pokemon {{{ bot.command(:pokelink, description: "Renvoie une page poképedia") do |event, *args| nom_pokemon = args.join('%20') event.respond "http://www.pokepedia.fr/#{nom_pokemon}" @@ -116,9 +116,9 @@ bot.command(:poke, description: "Renvoie le nom, les évolutions, et les talents end event << "" end -# <== +# }}} -# xkcd ==> +# xkcd {{{ bot.command(:xkcd, description: "Renvoie une page XKCD") do |event, num| # "https://xkcd.com/#{num}" page = Nokogiri::HTML(open("https://xkcd.com/#{num}")) # TODO : Recuperer l'image sur le site, et l'upload sur le chat @@ -126,9 +126,9 @@ bot.command(:xkcd, description: "Renvoie une page XKCD") do |event, num| event.channel.send_file File.new('xkcd.png'), caption: url `rm xkcd.png` end -# <== +# }}} -# dl ==> +# dl {{{ bot.command(:dl) do |event, uri| require "net/http" if idx = uri =~ /jpe?g|png|gif$/ @@ -145,9 +145,9 @@ bot.command(:dl) do |event, uri| "Je ne peux pas poster un fichier qui ne soit pas une image, enfin !" end end -# <== +# }}} -# insulte ==> +# insulte {{{ bot.command(:insulte, description: "Renvoie une insulte générée") do |event, action| if action == "add" lol @@ -155,40 +155,40 @@ bot.command(:insulte, description: "Renvoie une insulte générée") do |event, insulte(action) end end -# <== +# }}} -# dragodinde ==> +# dragodinde {{{ bot.command(:dd, min_args: 4, max_args: 4, description: "Donne l'heure de recup d'une dd", usage: "dd.rb [couleur dd] [fatigue] [niveau jauge courant] [niveau jauge voulu]") do |event, couleur, fatigue, jaugeCourant, jaugeVoulue|# {{{# }}}# {{{# }}} drago = Dragodinde.new(couleur, fatigue, jaugeCourant) objet = Objet.new main = Main.new(drago, objet) event.respond("#{main.temps(jaugeVoulue)}") end -# <== +# }}} -# strawpoll ==> +# strawpoll {{{ bot.command(:strawpoll, description: "Créer un strawpoll", usage: "!strawpoll [q[m] <question>] | choix1 | choix2 | choix3 | ...\nq <question> → la question devient <question> (aucune question si le champ n'est pas là)\nqm <question> → question devient <question> et active le choix multiple des réponses") do |event, *choices| strawpoll(event.user.name, choices) end -# <== +# }}} -# doggo ==> +# doggo {{{ bot.command(:doggo) do |event| doggo() event.channel.send_file File.new('doggo.png') `rm doggo.png` end -# <== +# }}} -# kitten ==> +# kitten {{{ bot.command(:kitten) do |event| kitten() event.channel.send_file File.new('kitten.png') `rm kitten.png` end -# <== +# }}} -# exit ==> +# exit {{{ bot.command(:exit, help_available: false) do |event| # This is a check that only allows a user with a specific ID to execute this command. Otherwise, everyone would be # able to shut your bot down whenever they wanted. @@ -197,9 +197,9 @@ bot.command(:exit, help_available: false) do |event| bot.send_message(event.channel.id, 'À bientôt j\'espère') exit end -# <== +# }}} -# eval ==> +# eval {{{ bot.command(:eval, help_available: false) do |event, *code| break unless $ALLOWED.values.include? event.user.id begin @@ -208,9 +208,9 @@ bot.command(:eval, help_available: false) do |event, *code| "Il semblerait qu'une erreur soit apparue, très cher" end end -# <== +# }}} -# Réponses aux messages ==> +# Réponses aux messages {{{ bot.message(containing: ['(╯°□°)╯︵ ┻━┻', '(ノಥ益ಥ)ノ ┻━┻', '(ノಠ益ಠ)ノ彡┻━┻']) do |event| event.respond '┬─┬ノ( º _ ºノ )' end @@ -219,6 +219,7 @@ bot.message(containing: /Aladin/i) do |event| event.respond "TOUT L'MONDE DIT LE PRINCE !" end +# michel {{{ bot.message(containing: /Mi+chel/i) do |event| event.respond "Oui, c'est moi" sleep(2) @@ -231,6 +232,7 @@ bot.message(containing: /Mi+chel/i) do |event| event.respond "For you, forever" event.channel.send_file File.new("michel.png") end +# }}} bot.message(content: /rt/i) do |event| event.respond "#{event.content}" @@ -240,6 +242,7 @@ bot.message(containing: [/tg/i, /ta gueule/i]) do |event| event.send_temp "Oui monsieur, bien monsieur, je pars me flageller monsieur", 5 end +# scribe {{{ bot.message(containing: /C'est une bonne situation ça,? scribe \?/) do |event| event.respond "Vous savez, moi je ne crois pas qu’il y ait de bonne ou de mauvaise situation." sleep 1.5 @@ -255,6 +258,7 @@ bot.message(containing: /C'est une bonne situation ça,? scribe \?/) do |event| sleep 4 event.respond "Et finalement, quand beaucoup de gens aujourd’hui me disent « Mais comment fais-tu pour avoir cette humanité ? », et bien je leur réponds très simplement, je leur dis que c’est ce goût de l’amour ce goût donc qui m’a poussé aujourd’hui à entreprendre une construction mécanique, mais demain qui sait ? Peut-être simplement à me mettre au service de la communauté, à faire le don, le don de soi…" end -# <== +# }}} +# }}} bot.run