From: Michael Andreen Date: Fri, 13 Apr 2007 15:19:20 +0000 (+0000) Subject: pa_xp function X-Git-Url: https://ruin.nu/git/?a=commitdiff_plain;h=1f1d37b478dace4b2c2c8054fe6f7350bfb24ae9;p=ndwebbie.git pa_xp function --- diff --git a/ND/IRC/PA.pm b/ND/IRC/PA.pm index 29bdb77..ca73ea5 100644 --- a/ND/IRC/PA.pm +++ b/ND/IRC/PA.pm @@ -166,7 +166,7 @@ sub calcXp { $ND::server->command("notice $ND::target Doesn't seem to be a planet at $x:$y:$z"); return; } - my $xp = int(max($roids * 10 * (min(2,$tscore/$ascore) + min(2,$tvalue/$avalue) - 1),0)); + my $xp = pa_xp($roids,$ascore,$avalue,$tscore,$tvalue); my $score = 60 * $xp; my $value = $roids*200; my $totscore = prettyValue($score + $value); diff --git a/ND/Include.pm b/ND/Include.pm index 27d0eb1..b5bf757 100644 --- a/ND/Include.pm +++ b/ND/Include.pm @@ -25,7 +25,7 @@ require Exporter; our @ISA = qw/Exporter/; -our @EXPORT = qw/min max parseValue prettyValue log_message intel_log unread_query/; +our @EXPORT = qw/min max parseValue prettyValue log_message intel_log unread_query pa_xp/; sub min { my ($x,$y) = @_; @@ -81,6 +81,14 @@ sub intel_log { $log->execute($uid,$message,$planet) or $ND::ERROR .= p($ND::DBH->errstr); } +sub pa_xp { + my ($roids,$ascore,$avalue,$tscore,$tvalue) = @_; + print "@_"; + my $bravery = (min(2,$tscore/$ascore)-0.6) * (min(2,$tvalue/$avalue)-0.4); + return int(max($roids * 10 * $bravery,0)) + +} + sub unread_query { return $ND::DBH->prepare_cached(q{ SELECT count(*) AS unread, count(NULLIF(fp.time > $2,FALSE)) AS new