129 lines
3.9 KiB
CoffeeScript
129 lines
3.9 KiB
CoffeeScript
# Description:
|
|
# piccole cose e easter egg di Asjon
|
|
#
|
|
# Dependencies:
|
|
# None
|
|
#
|
|
# Configuration:
|
|
# None
|
|
#
|
|
# Commands:
|
|
# grazie/bravo asjon - ringrazia asjon
|
|
# hubot ringraziamenti - chiedi ad asjon quante volte è stato ringraziato
|
|
# hubot sei ... - giudica asjon
|
|
# hubot come ti hanno chiamato? - chiedi ad asjon come è stato giudicato
|
|
# hubot saluta <utente> - saluta l'utente
|
|
# hubot come va - chiede ad asjon come sta
|
|
# hubot ridi - assa ride ad una battuta
|
|
# ciao asjon - saluta asjon
|
|
#
|
|
# Author:
|
|
# Enrico Fasoli (fazo96)
|
|
# Michele Guerini Rocco (rnhmjoj)
|
|
# Ravinder Pal Singh
|
|
# Leonardo Magon
|
|
# Gabriele Della Torre
|
|
#
|
|
|
|
|
|
module.exports = (robot) ->
|
|
|
|
# replies
|
|
confirm = ['si, ci sono', 'sono qui', 'si, che c\'è', 'eccomi']
|
|
complim = ['bravo', 'grande', 'grandissimo', 'bella' ]
|
|
status = ['tutto bene zio' , 'bene dai' , 'sono triste', 'si va avanti']
|
|
laugh = ['ahahahha!!!', 'ahahhaha!\nNO!', 'Bella questa! Ahahahah',
|
|
'NO!', 'Non fa ridere', 'Non è divertente...']
|
|
thank = ['prego :)', "non c'è di che", 'faccio solo il mio lavoro',
|
|
'no problemo amigo', 'non fate complimenti ;)']
|
|
|
|
sender = (res) -> res.message.user.name
|
|
|
|
welcome = (res) ->
|
|
current = robot.brain.get 'ringraziato'
|
|
robot.brain.set 'ringraziato', (current or 0) + 1
|
|
res.send res.random thank
|
|
|
|
# thank asjon
|
|
robot.hear /(?:grazie|bravo) (?:asjon|assa|assion(?:i|e))/i, welcome
|
|
|
|
robot.respond /grazie/i, welcome
|
|
|
|
robot.respond /ringraziamenti/i, (res) ->
|
|
count = robot.brain.get 'ringraziato'
|
|
if not count?
|
|
res.send 'non... mi... avete mai ringraziato :('
|
|
else if count is 1
|
|
res.send 'mi avete ringraziato solo una volta, ingrati'
|
|
res.send 'con tutto quello che faccio per voi...'
|
|
else
|
|
res.send "mi avete ringraziato #{count} volte!"
|
|
|
|
# how you called asjon
|
|
robot.respond /sei (?:(?:proprio|davvero|veramente|molto|un|una) )?(.+)/i, (res) ->
|
|
names = (robot.brain.get 'nomi') or {}
|
|
names[res.match[1]] ?= 0
|
|
names[res.match[1]] += 1
|
|
robot.brain.set 'nomi', names
|
|
|
|
robot.respond /come ti hanno chiamato/i, (res) ->
|
|
names = robot.brain.get 'nomi'
|
|
if not names?
|
|
return res.send 'nessuno mi ha mai chiamato'
|
|
text = []
|
|
for i of names
|
|
text.push "#{names[i]} volt#{if names[i] is 1 then 'a' else 'e'} #{i}"
|
|
res.send 'mi hanno chiamato ' + text.join ', '
|
|
|
|
# memes
|
|
robot.respond /teq/i, (res) ->
|
|
res.send 'http://i3.kym-cdn.com/photos/images/newsfeed/000/353/279/e31.jpg'
|
|
|
|
# other
|
|
robot.respond /saluta (.+)$/i, (res) ->
|
|
res.send 'ciao ' + res.match[1]
|
|
|
|
robot.respond /spaca botilia/i, (res) ->
|
|
res.send 'AMAZO FAMILIA'
|
|
|
|
robot.respond /come va/i, (res)->
|
|
res.send (res.random status) + ', tu?'
|
|
|
|
robot.respond /ridi/i, (res)->
|
|
res.send res.random laugh
|
|
|
|
robot.hear /(^|.+ )gg(?!.*wp)( .+)?$/i, (res)->
|
|
res.send 'wp'
|
|
|
|
robot.hear /^bravo (\w+).?$/i, (res)->
|
|
unless res.match[1].match /asjon|assa|assion|assioni(?:i|e)/i
|
|
res.send (res.random complim) + ' ' + res.match[1]
|
|
|
|
robot.respond /dove sei/i, (res) ->
|
|
robot.http('http://canihazip.com/s')
|
|
.get() (err, r, body) ->
|
|
res.send 'dovrei essere a ' + body
|
|
|
|
robot.respond /con chi stai parlando/i, (res) ->
|
|
if res.message.user.id is res.message.room
|
|
res.send "sto parlando con te, #{sender res}"
|
|
else
|
|
res.send "sto parlando in #{res.message.room}, #{sender res}"
|
|
|
|
robot.respond /ti amo/i, (res) ->
|
|
res.send "anche io ti amo #{sender res}"
|
|
|
|
robot.respond /ti odio/i, (res) ->
|
|
res.send "ma cosa ti ho fatto di male #{sender res}? :("
|
|
|
|
robot.hear /(?:ehi|ciao|we|(?:bella(?: li)?)) (?:asjon|assa|assion(?:i|e))/i, (res) ->
|
|
greet = ['ciao', 'bella', 'eccolooo',
|
|
'dimmi', 'weeee', 'ehilà']
|
|
res.send "#{res.random greet} #{sender res}"
|
|
|
|
robot.respond /ci sei\?/i, (res) ->
|
|
res.send res.random confirm
|
|
|
|
robot.hear /\bassa\?/, (res) ->
|
|
res.send res.random confirm
|