From: Michael Andreen Date: Tue, 18 Nov 2008 20:04:33 +0000 (+0100) Subject: Added time command X-Git-Url: https://ruin.nu/git/?p=NDIRC.git;a=commitdiff_plain;h=ea158d30abf874821b98aa388dd9dcc71b4322dc Added time command --- diff --git a/PA.pm b/PA.pm index 7a4a4b8..6c39098 100644 --- 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) = @_; @@ -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;