123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- #!/usr/bin/perl
-
- # infobot -- copyright kevin lenzo (c) 1997-infinity
-
- # no warrantee expressed or implied. terms as the
- # license for X11R6 when needed.
-
- BEGIN {
- $VER_MAJ = 0;
- $VER_MIN = 45;
- $VER_MOD = 3;
-
- $version = "infobot $VER_MAJ\.$VER_MIN\.$VER_MOD [Wurm]";
- }
-
- BEGIN {
- $filesep = '/';
-
- # set this to the absolute path if you need it; especially
- # if . is not in your path
-
- $param{'basedir'} = ($0 =~ /(.*)$filesep/) ? $1 : '.';
- # $infobot_base_dir = '/usr/local/lib/infobot';
-
- # change this next line if you run a local instance of
- # an infobot and use the code from the main location.
- # the 'files' directory contains infobot.config and
- # infobot.users, among other things.
-
- $param{'confdir'} = "$param{basedir}${filesep}conf";
-
- # everything is loaded, then the variables that
- # you want to set will override the defaults; this
- # is why all these requires are here.
-
- $param{'srcdir'} = $param{'basedir'}.$filesep."src";
-
- opendir DIR, $param{'srcdir'}
- or die "can't open source directory $param{srcdir}: $!";
-
- while ($file = readdir DIR) {
- next unless $file =~ /\.pl$/;
- require "$param{srcdir}$filesep$file";
- }
- closedir DIR;
-
- $param{'extradir'} = $param{'basedir'}.$filesep."extras";
-
- opendir DIR, $param{'extradir'}
- or die "can't open extras directory $param{extradir}: $!";
-
- while ($file = readdir DIR) {
- next unless $file =~ /\.pl$/;
- require "$param{extradir}$filesep$file";
- }
- closedir DIR;
- }
-
- # get the command line arguments
- &getArgs();
-
- # initialize everything
- &setup();
-
- # launch the irc event loop
- &irc();
-
- exit 0; # just so you don't look farther down in this file :)
-
-
- # --- support routines
-
- sub usage {
- print "\n";
- print " usage: $0 [-h] [<paramfile1> [<pf2> ...]]\n";
- print "\n";
- print " -h this message\n";
- print "\n";
- }
-
- sub getArgs {
- if (@ARGV) {
- while (@ARGV) {
- my $arg = shift @ARGV;
- if ($arg =~ s/^-//) {
- # switchies
- if ($arg eq 'i') {
- # go into irc mode despite db setting
- $overrideMode = 'IRC';
- } else {
- # -h is in here by default
- &usage;
- exit(1);
- }
- } else {
- # no switchie. currently assumed to be
- # a paramfile by default
- push @paramfiles, $arg;
- }
- }
- } else {
- @paramfiles = ();
- }
- }
-
- 1;
-
|