Sha256: ed9728a39798dc35213138642c2490749c40829e6faffd39980fb78ec0b32538
Contents?: true
Size: 1.28 KB
Versions: 1
Compression:
Stored size: 1.28 KB
Contents
require 'mad_chatter/actions/base' require 'mad_chatter/actions/join' require 'mad_chatter/actions/rename' module MadChatter module Actions class << self def config(&block) @config_block = block end def registered_actions @registered_actions end def init load_config_file load_default_actions load_action_extensions end def load_config_file if File.exists?('config.rb') load 'config.rb' # load up action extensions end end def load_default_actions @registered_actions = {} @registered_actions['/join'] = 'MadChatter::Actions::Join' @registered_actions['/nick'] = 'MadChatter::Actions::Rename' end def load_action_extensions config = MadChatter::Actions::Config.new @config_block.call(config) if @config_block config.actions.each do |command, action_class| @registered_actions[command] = action_class end end end class Config attr_accessor :actions def initialize @actions = {} end def add(command, action_class) @actions[command] = action_class end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mad_chatter-0.0.7 | lib/mad_chatter/actions.rb |