Skip to content

Instantly share code, notes, and snippets.

@mikesorae
Created September 9, 2014 15:53
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikesorae/89432e2e707c6ad4c9cb to your computer and use it in GitHub Desktop.
Save mikesorae/89432e2e707c6ad4c9cb to your computer and use it in GitHub Desktop.
hubot用 巻雲時報 & ランダムメッセージスクリプト
# Description:
# 巻雲がしゃべるだけのbot
#
# Commands:
# hubot
Cron = require('cron').CronJob
JIHOU_MESSAGES = [
"零時、深夜零時ですよぉ?"
"はわわわわ、なんともう、深夜1時ですよぉ!"
"深夜2時…巻雲限界だよぉ~"
"午前3時…司令官様ぁ、艦これは逃げないからさぁ、寝よぉよぅ"
"よ…4時… …ぷはっ… ぅう~ん…"
"ご~…じ~……んぅ~…む…"
"ろ…ろ……わ!ごめんなさい寝てません~"
"しちじ~…むにゃ…夕雲ねえさ~ん"
"はち……じ? うわあぁ!? 寝落ちしちゃったぁ"
"9時です!本日も一日よろしくです、びしっ!"
"10時になりましたぁ。今日の演習相手はどんな人かなぁ?"
"11時です!司令官様の今日のお昼はなぁに?"
"12時。天気のいい日はぁ、甲板でお昼もいいですよねぇ♪"
"午後1時。こうして司令官様とぽ~っとしてると、なんか落ち着くな~"
"午後2時。司令官様ぁ、特訓しよう、特訓!"
"午後3時。はっ! 忘れてた! 金剛さん主催のティーパーティーに誘われてるんだったぁ!"
"午後4時。まぁー、司令官様と一緒だから、いっかなぁ? ティーパーティー行かなくても?"
"夕方5時で~す、日が落ちますね~。"
"午後6時になりましたぁ~。"
"夜7時。司令官様、ご飯を所望します!"
"夜8時です。司令官様、あのー あの~ お風呂とか…入ってもいい?"
"9時です。お風呂お先に頂きましたぁ…あれ? メガネメガネぇ~"
"夜10時です。司令官様? 調子はいかがですか?"
"11時です。司令官様ぁ、巻雲眠くなってきましたよぉ"
]
RANDOM_MESSAGES = [
"夕雲型駆逐艦、巻雲といいます。夕雲姉さんを見習って、頑張ります!"
"司令官様、巻雲、お役に立ちますよぉ?"
"司令官様、巻雲はいつでも万全の体制で…あれぇ~?服のサイズが大きいよぉ"
"はわわわわぅ!?夕雲姉さんしかさわっちゃダメなんですよぉ!"
"司令官様、今日はとってもゆっくりさせてもらえて、ありがとうございました。巻雲も、もうそろそろ夕雲姉さんから卒業しなくちゃいけないのかな。良いの?"
"司令官様、がんばって!巻雲もがんばります!"
"巻雲の出番ですね、がんばります!"
"夕雲姉さん、見ていてください"
"巻雲の出番ですね、がんばります!"
"お役立ちです"
"秋雲よりはちゃんとやりますって!"
"夕雲姉さん、見てて!巻雲、突撃します!"
"秋雲よりはちゃんとやりますって!"
"へやぁー!ど真ん中命中させますっ!"
"処分雷撃より、敵艦を討つことが本途です!"
"ひゃわぁ!?船尾に被弾!"
"うわーん、今日はいけると思ってたのにぃ"
"はわわわわ…こんな時に探照灯つけるなんて!秋雲のばかぁ!"
"司令官様、夕雲姉さん!私、やりました!"
"艦隊が戻ってきたよぉ?"
"もう食べられないかもー"
"巻雲、強くなりたいです"
"うわーん、直してくださーい"
"巻雲、派手にやられてしまいました…もっとがんばらなきゃ…"
"新しい仲間が誕生しましたよ"
"司令官様にご報告ですっ!"
"夕雲姉さん、私はもう動けないから置いて行って。巻雲の最後のわがまま…雷撃処分…夕雲姉さんになら…"
"じぃー…私は画面から、いつも司令官様を見ています。じぃー…"
]
randomInt = (lower, upper) ->
[lower, upper] = [0, lower] unless upper? # Called with one argument
[lower, upper] = [upper, lower] if lower > upper # Lower must be less then upper
Math.floor(Math.random() * (upper - lower + 1) + lower) # Last statement is a return value
registerJihou = (robot, hour, message) ->
cron = new Cron("0 0 #{hour} * * *", () =>
console.log "fire: #{hour} #{message}"
envelope = room: "#makigumo"
robot.send envelope, message
)
cron.start()
sendRandomMessage = (robot) ->
setTimeout ->
envelope = room: "#makigumo"
robot.send envelope, RANDOM_MESSAGES[randomInt(0, RANDOM_MESSAGES.length)]
sendRandomMessage(robot)
, 60 * 1000
module.exports = (robot) ->
console.log "時報登録"
for message, index in JIHOU_MESSAGES
registerJihou robot, index, message
console.log "registered: #{index}時 #{message}"
sendRandomMessage(robot)
robot.enter (msg) ->
msg.send "夕雲型駆逐艦、巻雲といいます。夕雲姉さんを見習って、頑張ります!"
robot.respond /TEST$/i, (msg) ->
msg.send "TEST MESSAGE"
@mikesorae
Copy link
Author

汚いので追々直す

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment