]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - data/rbot/plugins/chucknorris.rb
chucknorris: fix loading
[user/henk/code/ruby/rbot.git] / data / rbot / plugins / chucknorris.rb
index b4cec84e20630e9e17f8bd508335ef18b7ae1aaf..42385ff303a2b0a109835c5c7f2f002a05abf596 100644 (file)
@@ -10,22 +10,26 @@ class ChuckNorrisPlugin < Plugin
   # Loadez les factes
   def initialize
     if path = find_facts_file('chucknorris.yml.gz')
-      fyml = Zlib::GzipReader.open(path)
-    elsif path = find_facts_File('chucknorris.yml')
-      fyml = open(path)
+      fyml = Zlib::GzipReader.open(path).read
+    elsif path = find_facts_file('chucknorris.yml')
+      fyml = open(path).read
     else
       raise "Error: Couldn't find chucknorris.yml[.gz]"
     end
-    
+
     debug "+ [chucknorris] Loading #{path}..."
-    
+
     @@facts = YAML.load(fyml).map{|fact,(score,votes)| votes >= MIN_VOTES ? [score,fact] : nil}.compact
     debug "+ [chucknorris] #{@@facts.length} Chuck Norris facts loaded..."
     debug "  Random fact: #{@@facts[rand(@@facts.size)].inspect}"
-    
+
     super
   end
-  
+
+  def name
+    "chucknorris"
+  end
+
   # Just a little helper for the initialize method...
   def find_facts_file(name)
     full_path = File.join Config::datadir, "plugins", name
@@ -36,11 +40,11 @@ class ChuckNorrisPlugin < Plugin
       found_files[0]
     end
   end
-  
+
   # HELP!
   def help(plugin, topic="chuck")
-    "fact|chuck|norris|chucknorris [min_rating] => \"fact\" shows a random Chuck Norris fact (optional minimum rating from 1-10, default=6.0)."
-    #\"fact [person]\" shows a fact about someone in the channel. 
+    "chuck|norris|chucknorris [min_rating] => show a random Chuck Norris fact (optional minimum rating from 1-10, default=6.0)."
+    #\"fact [person]\" shows a fact about someone in the channel.
   end
 
   # The meat.
@@ -63,7 +67,7 @@ end
 
 plugin = ChuckNorrisPlugin.new
 
-plugin.map 'fact :minrating', :action => 'fact', :defaults => {:minrating=>MIN_RATING}
+plugin.map 'fact :minrating', :action => 'fact', :defaults => {:minrating=>MIN_RATING}
 plugin.map 'chucknorris :minrating', :action => 'fact', :defaults => {:minrating=>MIN_RATING}
 plugin.map 'chuck :minrating', :action => 'fact', :defaults => {:minrating=>MIN_RATING}
 plugin.map 'norris :minrating', :action => 'fact', :defaults => {:minrating=>MIN_RATING}