]> ruin.nu Git - NDIRC.git/blobdiff - PA.pm
Get and set calc
[NDIRC.git] / PA.pm
diff --git a/PA.pm b/PA.pm
index afc5b05861801cfec845aeb7060d4027f26c2368..6c39098a874249213da80824b51c70cfd49d5455 100644 (file)
--- a/PA.pm
+++ b/PA.pm
@@ -28,7 +28,7 @@ require Exporter;
 
 our @ISA = qw/Exporter/;
 
-our @EXPORT = qw/checkPlanet checkGal shipEff shipStop parseValue prettyValue calcXp findCovOpper/;
+our @EXPORT = qw/checkPlanet checkGal shipEff shipStop parseValue prettyValue calcXp findCovOpper tick_time/;
 
 sub checkPlanet {
        my ($msg) = @_;
@@ -54,7 +54,7 @@ sub checkPlanet {
                        $planet->{$_} = valuecolor(1,$planet->{$_});
                }
                my $ally = "";
-               if (officer() || ia() || dc() | intel()){
+               if (officer() || ia() || dc() || intel()){
                        $ally = "Alliance=$planet->{alliance} ($planet->{relationship}), Nick=$planet->{nick} ($planet->{planet_status}), Channel: $planet->{channel}, Hostile Count: $planet->{hit_us},";
                }
                $ND::server->command("notice $ND::nick $planet->{coords} $planet->{ruler} OF $planet->{planet},$ally Race=$planet->{race}, Score=$planet->{score} ($planet->{scorerank}), Size=$planet->{size} ($planet->{sizerank}), Value=$planet->{value} ($planet->{valuerank}), XP=$planet->{xp} ($planet->{xprank})");
@@ -285,4 +285,24 @@ sub findCovOpper {
        $ND::server->command("notice $ND::nick The planet that cov opped you is one of: $coords");
 }
 
+sub tick_time {
+       my ($msg,$command) = @_;
+       my $tick = $ND::tick;
+       my $timezone = 'GMT';
+       if ($msg =~ /^(\d+)(?: (\S+))?/){
+               $tick = $1 if defined $1;
+               $timezone = $2 if defined $2;
+       }elsif ($msg =~ /^(\S+)/){
+               $timezone = $1;
+       }elsif ($msg){
+               $ND::server->command("notice $ND::nick syntax: .time [tick] [timezone] | Gives the time at the specied tick. Assumes GMT if no timezone is given and current tick if no tick is given.");
+               return;
+       }
+       my $query = $ND::DBH->prepare(q{SELECT date_trunc('seconds',now() + (($1 - tick()) || ' hr')::interval) AT TIME ZONE $2});
+       $query->execute($tick,$timezone);
+       my $time = $query->fetchrow_array;
+       $ND::server->command("notice $ND::nick Time at tick $ND::B$tick$ND::O, timezone $ND::B$timezone$ND::O: $ND::B$time$ND::O");
+
+}
+
 1;