diff options
-rwxr-xr-x | bin/rbot | 18 | ||||
-rw-r--r-- | lib/rbot/config.rb | 2 | ||||
-rw-r--r-- | lib/rbot/language.rb | 5 | ||||
-rw-r--r-- | lib/rbot/plugins.rb | 2 |
4 files changed, 10 insertions, 17 deletions
@@ -26,6 +26,8 @@ $VERBOSE=true require 'etc' require 'getoptlong' require 'rbot/ircbot' +require 'fileutils' +require 'rbconfig' $debug = true $version="0.9.8" @@ -47,22 +49,12 @@ opts.each {|opt, arg| $opts[opt.sub(/^-+/, "")] = arg } -botclass = ARGV.shift -user = Etc.getlogin -botclass = "/home/#{user}/.rbot" unless(botclass); - -unless FileTest.directory? botclass - # TODO copy in samples/templates from install directory - puts "no #{botclass} directory found, creating from templates.." - # copy DATA/rbot/templates to botclass - -end - -if(bot = Irc::IrcBot.new(botclass)) +if(bot = Irc::IrcBot.new(ARGV.shift)) if($opts["help"]) + # query bot help from the commandline puts bot.help($opts["help"]) else - # run the bot + # just run the bot bot.mainloop end end diff --git a/lib/rbot/config.rb b/lib/rbot/config.rb index 971a413c..f021d827 100644 --- a/lib/rbot/config.rb +++ b/lib/rbot/config.rb @@ -143,7 +143,7 @@ module Irc :prompt => "Language", :key => "core.language", :type => :enum, - :items => Dir.new(File.dirname(__FILE__) + "/languages/").collect {|f| + :items => Dir.new(@bot.datadir + "/languages").collect {|f| f =~ /\.lang$/ ? f.gsub(/\.lang$/, "") : nil }.compact }, diff --git a/lib/rbot/language.rb b/lib/rbot/language.rb index 9788b2bb..75885a51 100644 --- a/lib/rbot/language.rb +++ b/lib/rbot/language.rb @@ -1,10 +1,11 @@ module Irc class Language - def initialize(language, file="") + def initialize(bot, language, file="") + @bot = bot @language = language if file.empty? - file = File.dirname(__FILE__) + "/languages/#{@language}.lang" + file = bot.datadir + "/languages/#{@language}.lang" end unless(FileTest.exist?(file)) raise "no such language: #{@language} (no such file #{file})" diff --git a/lib/rbot/plugins.rb b/lib/rbot/plugins.rb index 5db047fb..d239c5e6 100644 --- a/lib/rbot/plugins.rb +++ b/lib/rbot/plugins.rb @@ -170,7 +170,7 @@ module Irc # load plugins from pre-assigned list of directories def scan dirs = Array.new - dirs << File.dirname(__FILE__) + "/plugins" + dirs << @bot.datadir + "/plugins" dirs += @dirs dirs.each {|dir| if(FileTest.directory?(dir)) |