#!/bin/env ruby require 'discordrb' require 'rufus-scheduler' # fetches a random quote from quotes def random_quote(quotes) quote = "**Quote of the Day**" quote << "```" quotes.sample.split("\n")[2..].each { | line | quote << line.delete("^") + "\n" } quote << "```" end token = File.read("./token").strip bot = Discordrb::Bot.new token: token quotes = File.read("Game Files/blurbsx.txt").split("##") quotes.delete_at(0) # Remove empty first item scheduler = Rufus::Scheduler.new start_time = Rufus::Scheduler.parse('12:30') # what time of day the message should send # start tomorrow if start_time has passed start_time += Rufus::Scheduler.parse('1d') if start_time < Time.now scheduler.every '1d', first_at: start_time do bot.send_message(852541842511495210, random_quote(quotes)) end bot.message(with_text: 'Ping!') do |event| event.respond random_quote(quotes) pp bot end bot.run