diff options
Diffstat (limited to 'rbot/plugins/weather.rb')
-rw-r--r-- | rbot/plugins/weather.rb | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/rbot/plugins/weather.rb b/rbot/plugins/weather.rb deleted file mode 100644 index 3e4134e4..00000000 --- a/rbot/plugins/weather.rb +++ /dev/null @@ -1,55 +0,0 @@ -class WeatherPlugin < Plugin - - def help(plugin, topic="") - "weather <ICAO> => display the current weather at the location specified by the ICAO code [Lookup your ICAO code at http://www.nws.noaa.gov/oso/siteloc.shtml] - this will also store the ICAO against your nick, so you can later just say \"weather\", weather => display the current weather at the location you last asked for" - end - - def initialize - super - # this plugin only wants to store strings - class << @registry - def store(val) - val - end - def restore(val) - val - end - end - @metar_cache = Hash.new - end - - def describe(m, where) - if @metar_cache.has_key?(where) && - Time.now - @metar_cache[where].date < 3600 - met = @metar_cache[where] - else - met = Utils.get_metar(where) - end - - if met - m.reply met.pretty_print - @metar_cache[where] = met - else - m.reply "couldn't find weather data for #{where}" - end - end - - def privmsg(m) - case m.params - when nil - if @registry.has_key?(m.sourcenick) - where = @registry[m.sourcenick] - describe(m,where) - else - m.reply "I don't know where #{m.sourcenick} is!" - end - when (/^(\S{4})$/) - where = $1 - @registry[m.sourcenick] = where - describe(m,where) - end - end - -end -plugin = WeatherPlugin.new -plugin.register("weather") |