asjon/scripts/internamento.coffee

54 lines
1.9 KiB
CoffeeScript
Raw Normal View History

2015-04-26 04:05:44 +02:00
# Description:
# permette di internare persone nel campo di Diliberti
#
# Configuration:
# None
#
# Commands:
# hubot interna <nome> - interna una persona
# hubot lista/mostrami internati - mostra la lista di internati
#
# Author:
# Ravinder Pal Singh
#
module.exports = (robot) ->
robot.respond /interna (.+)/i, (res) ->
mem = robot.brain.get('internati') or {}
name = res.match[1].toLowerCase();
exp1 = ['è dentro finalmente', 'internato', 'è stato internato con successo'];
exp2 = ['vai così!!', 'al lavoroooo!!!'];
if mem[name]?
res.send 'Mi dispiace ma '+name+' è già stato internato...'
else
if name is 'dili' or name is 'diliberti'
res.send 'non posso internare il mio padrone...'
else if name is 'fazo' or name is 'fasoli'
res.send 'ciccio, io internerei te al posto suo'
else if name is 'assa' or name is 'asjon'
res.send 'ma sei scemo????'
else
res.send name+' '+res.random(exp1)+'. '+ res.random(exp2)
mem[name] = name
robot.brain.set 'internati', mem
robot.respond /libera? (.+)/i, (res) ->
mem = robot.brain.get('internati') or {}
m = res.match[1].toLowerCase()
boh = ['non so chi sia','sorry non è qui','troppo tardi','ti piacerebbe, eh?', 'scordatelo']
if mem[m]?
res.send 'ho liberato "'+mem[m]+'" ma ricordate che sarà sempre il benvenuto qui ;)'
delete mem[m]
robot.brain.set 'internati', mem
else res.send res.random boh
robot.respond /memory-dump/i, (res) ->
res.send JSON.stringify robot.brain.get('internati')
robot.respond /(?:mostrami )|(?:lista )?internati(?:\?)?/i, (res) ->
m = robot.brain.get 'internati'
if m isnt null
r = ['ho internato', 'ho preso', 'ho catturato']
res.send 'negli ultimi giorni '+res.random(r)+' '+(i for i of m).join(', ')
else res.send res.random ['nessun prigioniero...', 'nessuno. mandatemi qualcuno']