59 lines
1.2 KiB
Lua
Executable File
59 lines
1.2 KiB
Lua
Executable File
local eightball = {}
|
|
|
|
local utilities = require('otouto.utilities')
|
|
|
|
eightball.command = '8ball'
|
|
eightball.doc = '`Returns an answer from a magic 8-ball!`'
|
|
|
|
function eightball:init(config)
|
|
eightball.triggers = utilities.triggers(self.info.username, config.cmd_pat,
|
|
{'[Yy]/[Nn]%p*$'}):t('8ball', true).table
|
|
end
|
|
|
|
local ball_answers = {
|
|
"It is certain.",
|
|
"It is decidedly so.",
|
|
"Without a doubt.",
|
|
"Yes, definitely.",
|
|
"You may rely on it.",
|
|
"As I see it, yes.",
|
|
"Most likely.",
|
|
"Outlook: good.",
|
|
"Yes.",
|
|
"Signs point to yes.",
|
|
"Reply hazy try again.",
|
|
"Ask again later.",
|
|
"Better not tell you now.",
|
|
"Cannot predict now.",
|
|
"Concentrate and ask again.",
|
|
"Don't count on it.",
|
|
"My reply is no.",
|
|
"My sources say no.",
|
|
"Outlook: not so good.",
|
|
"Very doubtful.",
|
|
"There is a time and place for everything, but not now."
|
|
}
|
|
|
|
local yesno_answers = {
|
|
'Absolutely.',
|
|
'In your dreams.',
|
|
'Yes.',
|
|
'No.'
|
|
}
|
|
|
|
function eightball:action(msg)
|
|
|
|
local output
|
|
|
|
if msg.text_lower:match('y/n%p?$') then
|
|
output = yesno_answers[math.random(#yesno_answers)]
|
|
else
|
|
output = ball_answers[math.random(#ball_answers)]
|
|
end
|
|
|
|
utilities.send_reply(self, msg, output)
|
|
|
|
end
|
|
|
|
return eightball
|