0
- define_method(name) do |*args|
0
- when 0: instance_variable_get("@#{name}")
0
- else instance_variable_set("@#{name}", *args)
0
+ @registered_plugins = {}
0
+ @registered_commands = []
0
+ @registered_messages = []
0
+ @registered_speakers = []
0
+ @registered_intervals = []
0
+ @registered_times = []
0
+ attr_reader :registered_plugins,
0
+ :registered_intervals,
0
+ Plugin.registered_plugins[child.to_s] = child
0
- @registered_plugins = {}
0
- def_field :author, :version
0
- attr_reader :registered_plugins
0
- PluginBase.registered_plugins[child.to_s] = child.new
0
+ def on_command(command, *methods)
0
+ methods.each do |method|
0
+ Plugin.registered_commands << Event::Command.new(command, self.to_s, method)
0
- def on_command(command, *methods)
0
- methods.each do |method|
0
- registered_handlers << CampfireBot::Event::Command.new(command, self.to_s, method)
0
- def on_message(regexp, *methods)
0
- methods.each do |method|
0
- registered_handlers << CampfireBot::Event::Message.new(regexp, self.to_s, method)
0
+ def on_message(regexp, *methods)
0
+ methods.each do |method|
0
+ Plugin.registered_messages << Event::Message.new(regexp, self.to_s, method)
0
- def on_speaker(speaker, *methods)
0
- methods.each do |method|
0
- registered_handlers << CampfireBot::Event::Speaker.new(speaker, self.to_s, method)
0
+ def on_speaker(speaker, *methods)
0
+ methods.each do |method|
0
+ Plugin.registered_speakers << Event::Speaker.new(speaker, self.to_s, method)
0
- def at_interval(interval, *methods)
0
- methods.each do |method|
0
- registered_handlers << CampfireBot::Event::Interval.new(interval, self.to_s, method)
0
+ def at_interval(interval, *methods)
0
+ methods.each do |method|
0
+ Plugin.registered_intervals << Event::Interval.new(interval, self.to_s, method)
0
- def at_time(timestamp, *methods)
0
- methods.each do |method|
0
- registered_handlers << CampfireBot::Event::Time.new(timestamp, self.to_s, method)
0
+ def at_time(timestamp, *methods)
0
+ methods.each do |method|
0
+ Plugin.registered_times << Event::Time.new(timestamp, self.to_s, method)
0
- # Shortcuts to access the room
0
- CampfireBot::Bot.instance.room.speak(words)
0
- CampfireBot::Bot.instance.room.paste(words)
0
- CampfireBot::Bot.instance.room.upload(file_path)
0
+ # Shortcuts to access the room
0
+ CampfireBot::Bot.instance.room.speak(words)
0
+ CampfireBot::Bot.instance.room.paste(words)
0
+ CampfireBot::Bot.instance.room.upload(file_path)
0
\ No newline at end of file