parent
39a06a6437
commit
9b30af2d7b
@ -7,7 +7,7 @@
|
|||||||
# Commands:
|
# Commands:
|
||||||
# hubot interna <nome> - interna una persona
|
# hubot interna <nome> - interna una persona
|
||||||
# hubot libera <nome> - libera una persona
|
# hubot libera <nome> - libera una persona
|
||||||
# hubot lista/mostrami internati - mostra la lista di internati
|
# hubot lista/mostrami (gli) internati - mostra la lista di internati
|
||||||
#
|
#
|
||||||
# Author:
|
# Author:
|
||||||
# Ravinder Pal Singh
|
# Ravinder Pal Singh
|
||||||
@ -16,36 +16,44 @@
|
|||||||
module.exports = (robot) ->
|
module.exports = (robot) ->
|
||||||
robot.respond /interna (.+)/i, (res) ->
|
robot.respond /interna (.+)/i, (res) ->
|
||||||
mem = robot.brain.get('internati') or {}
|
mem = robot.brain.get('internati') or {}
|
||||||
name = res.match[1].toLowerCase();
|
name = res.match[1].toLowerCase()
|
||||||
exp1 = ['ho sbattuto dentro', 'come vuoi, sbattiamo dentro', 'è la tua fine'];
|
exp1 = ['ho sbattuto dentro', 'come vuoi, sbattiamo dentro', 'è la tua fine']
|
||||||
if mem[name]?
|
if mem[name]?
|
||||||
res.send 'Mi dispiace ma '+name+' è già stato internato...'
|
if mem[name].da
|
||||||
|
intern = mem[name].da.name
|
||||||
|
res.send 'Mi dispiace ma '+name+' è già stato internato su ordine di '+intern
|
||||||
|
else res.send 'Mi dispiace ma '+name+' è già stato internato...'
|
||||||
else
|
else
|
||||||
if name is 'dili' or name is 'diliberti'
|
if name.match /(?:dili(?:bert(?:i)?)?)|(?:ros(?:y|ario))|dre/i
|
||||||
|
# Diliberti
|
||||||
res.send 'non posso internare il mio padrone...'
|
res.send 'non posso internare il mio padrone...'
|
||||||
else if name is 'fazo' or name is 'fasoli'
|
else if name.match /fa(?:zo|soli)/i
|
||||||
|
# Fasoli
|
||||||
res.send 'ciccio, io internerei te al posto suo'
|
res.send 'ciccio, io internerei te al posto suo'
|
||||||
else if name is 'assa' or name is 'asjon'
|
else if name.match /as(?:sa|jon|sion(?:e|i))/i
|
||||||
|
# Asjon
|
||||||
res.send 'ma sei scemo????'
|
res.send 'ma sei scemo????'
|
||||||
else
|
else
|
||||||
res.send res.random(exp1)+' '+name
|
res.send res.random(exp1)+' '+name
|
||||||
mem[name] = name
|
# Salvo chi ha internato
|
||||||
|
mem[name] = { da: res.message.user }
|
||||||
|
console.log res.message.user, mem[name]
|
||||||
robot.brain.set 'internati', mem
|
robot.brain.set 'internati', mem
|
||||||
|
|
||||||
robot.respond /libera? (.+)/i, (res) ->
|
robot.respond /libera (.+)/i, (res) ->
|
||||||
mem = robot.brain.get('internati') or {}
|
mem = robot.brain.get('internati') or {}
|
||||||
m = res.match[1].toLowerCase()
|
m = res.match[1].toLowerCase()
|
||||||
boh = ['non so chi sia','sorry non è qui','troppo tardi','ti piacerebbe, eh?', 'scordatelo']
|
boh = ['sorry non è qui','troppo tardi','ti piacerebbe, eh?', 'scordatelo']
|
||||||
if mem[m]?
|
if mem[m]?
|
||||||
res.send 'ho liberato "'+mem[m]+'" ma ricordate che potete sbatterlo dentro quando volete ;)'
|
res.send 'ho liberato '+m+' ma ricordate che potete sbatterlo dentro quando volete ;)'
|
||||||
delete mem[m]
|
delete mem[m]
|
||||||
robot.brain.set 'internati', mem
|
robot.brain.set 'internati', mem
|
||||||
else res.send res.random boh
|
else res.send res.random boh
|
||||||
|
|
||||||
robot.respond /memory-dump/i, (res) ->
|
robot.respond /internati-dump/i, (res) ->
|
||||||
res.send JSON.stringify robot.brain.get('internati')
|
res.send JSON.stringify robot.brain.get('internati')
|
||||||
|
|
||||||
robot.respond /(?:mostrami )|(?:lista )?internati(?:\?)?/i, (res) ->
|
robot.respond /(?:(?:(?:dimmi|mostrami) )|(?:lista ))?(?:gli )?internat(?:i|o)(?:\?)?/i, (res) ->
|
||||||
m = robot.brain.get 'internati'
|
m = robot.brain.get 'internati'
|
||||||
if m isnt null
|
if m isnt null
|
||||||
r = ['ho internato', 'ho preso', 'ho catturato', 'sbattuto dentro']
|
r = ['ho internato', 'ho preso', 'ho catturato', 'sbattuto dentro']
|
||||||
|
@ -19,6 +19,12 @@
|
|||||||
moment = require 'moment'
|
moment = require 'moment'
|
||||||
moment.locale 'it'
|
moment.locale 'it'
|
||||||
|
|
||||||
|
dateFormatsA = ['YYYY-MM-DD','DD-MM-YYYY',"DD MMMM YYYY", "DD MMMM","DD"]
|
||||||
|
|
||||||
|
toDate = (d) ->
|
||||||
|
dat = d.replace /(?:l'|il )/i, ''
|
||||||
|
moment dat, dateFormatsA
|
||||||
|
|
||||||
module.exports = (robot) ->
|
module.exports = (robot) ->
|
||||||
robot.respond /ricorda(?:ti)? (?:che )?(.+) ([=è]|sono) (.+)/i, (res) ->
|
robot.respond /ricorda(?:ti)? (?:che )?(.+) ([=è]|sono) (.+)/i, (res) ->
|
||||||
mem = robot.brain.get('memoria') or {}
|
mem = robot.brain.get('memoria') or {}
|
||||||
@ -63,10 +69,9 @@ module.exports = (robot) ->
|
|||||||
# non rispondo
|
# non rispondo
|
||||||
return
|
return
|
||||||
# Controllo se l'argomento è data
|
# Controllo se l'argomento è data
|
||||||
argIsDate = arg.trim().match(/^(?:il )?\d{4}-\d{1,2}-\d{1,2}$/i) and moment(arg,'YYYY-MM-DD').isValid()
|
data = toDate arg
|
||||||
if argIsDate and (query is 'quand' or query is 'cos')
|
if data.isValid() and (query is 'quand' or query is 'cos')
|
||||||
# chiesto una data
|
# chiesto una data
|
||||||
data = moment(arg,'[il] YYYY-MM-DD')
|
|
||||||
res.send arg+' è '+data.format('dddd Do MMMM YYYY')+' ovvero '+data.fromNow()
|
res.send arg+' è '+data.format('dddd Do MMMM YYYY')+' ovvero '+data.fromNow()
|
||||||
else
|
else
|
||||||
# chiesto qualcosa che non è una data
|
# chiesto qualcosa che non è una data
|
||||||
@ -76,11 +81,10 @@ module.exports = (robot) ->
|
|||||||
if query is 'qual' then verbo = 'è' else if !query? then verbo = 'sono'
|
if query is 'qual' then verbo = 'è' else if !query? then verbo = 'sono'
|
||||||
if mem[arg]
|
if mem[arg]
|
||||||
# controllo se è salvata una data nell'argomento chiesto
|
# controllo se è salvata una data nell'argomento chiesto
|
||||||
data = moment(mem[arg],'[il] YYYY-MM-DD')
|
odata = toDate mem[arg]
|
||||||
contentIsDate = mem[arg].trim().match(/^(?:il )?\d{4}-\d{1,2}-\d{1,2}$/i) and data.isValid()
|
if odata.isValid()
|
||||||
if contentIsDate
|
|
||||||
# nella memoria era salvata una data
|
# nella memoria era salvata una data
|
||||||
res.send arg+' è '+data.format('dddd Do MMMM YYYY')+' ovvero '+data.fromNow()
|
res.send arg+' è '+odata.format('dddd Do MMMM YYYY')+' ovvero '+odata.fromNow()
|
||||||
else res.send arg+' '+verbo+' '+mem[arg]
|
else res.send arg+' '+verbo+' '+mem[arg]
|
||||||
else res.send res.random ['boh','mistero','se qualcuno me lo spiegasse magari','BZBZ 404-NOT-FOUND']
|
else res.send res.random ['boh','mistero','se qualcuno me lo spiegasse magari','BZBZ 404-NOT-FOUND']
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user