bot_controller.rb 880 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. class BotController
  2. def self.reply(bot, event, response)
  3. case response
  4. when Array
  5. response.each do |r|
  6. r.call(event, bot) if r.is_a? BotResponse
  7. end
  8. when BotResponse
  9. response.call(event, bot)
  10. when Embed
  11. event.send_embed("", response)
  12. when String
  13. event.respond(response)
  14. end
  15. end
  16. def self.application_react(event)
  17. Emoji::APPLICATION.each do |e|
  18. event.message.react(e)
  19. end
  20. end
  21. def self.unauthorized_char_app(bot, event, member)
  22. embed = Embed.new(
  23. title: "You have too many characters!",
  24. description: "Please deactivate and try again " +
  25. "[here](#{Url::CHARACTER}#{edit_url})"
  26. )
  27. response = [
  28. BotResponse.new(destination: member.dm, embed: embed),
  29. BotResponse.new(embed: embed),
  30. ]
  31. event.message.delete
  32. reply(bot, event, response)
  33. end
  34. end