From 6eacbf94cc13b8b6df3018df1159065fc9a5140e Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Fri, 15 Dec 2006 12:38:23 +0000 Subject: [PATCH] alliance resources --- index.pl | 2 +- resources.pl | 60 ++++++++++++++++++++++++++++++++++++++++ templates/resources.tmpl | 30 ++++++++++++++++++++ templates/skel.tmpl | 2 +- 4 files changed, 92 insertions(+), 2 deletions(-) create mode 100644 resources.pl create mode 100644 templates/resources.tmpl diff --git a/index.pl b/index.pl index fe1572b..31beaf5 100755 --- a/index.pl +++ b/index.pl @@ -64,7 +64,7 @@ while (my ($name,$attack,$gid) = $query->fetchrow()){ our $LOG = $DBH->prepare('INSERT INTO log (uid,text) VALUES(?,?)'); my $page = 'main'; -if (param('page') =~ /^(main|check|motd|points|covop|top100|launchConfirmation|addintel|defrequest|raids|editRaid|calls|intel|users|alliances|memberIntel)$/){ +if (param('page') =~ /^(main|check|motd|points|covop|top100|launchConfirmation|addintel|defrequest|raids|editRaid|calls|intel|users|alliances|memberIntel|resources)$/){ $page = $1; } diff --git a/resources.pl b/resources.pl new file mode 100644 index 0000000..5e63b7a --- /dev/null +++ b/resources.pl @@ -0,0 +1,60 @@ +#************************************************************************** +# Copyright (C) 2006 by Michael Andreen * +# * +# This program is free software; you can redistribute it and/or modify * +# it under the terms of the GNU General Public License as published by * +# the Free Software Foundation; either version 2 of the License, or * +# (at your option) any later version. * +# * +# This program is distributed in the hope that it will be useful, * +# but WITHOUT ANY WARRANTY; without even the implied warranty of * +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +# GNU General Public License for more details. * +# * +# You should have received a copy of the GNU General Public License * +# along with this program; if not, write to the * +# Free Software Foundation, Inc., * +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * +#**************************************************************************/ + +use strict; +use POSIX; +our $BODY; +our $DBH; +our $LOG; +my $error; + +$ND::TEMPLATE->param(TITLE => 'Alliance Resources'); + +die "You don't have access" unless isHC(); + +my $order = "respplanet DESC"; +if (param('order') =~ /^(score|resources|respplanet|nscore|nscore2|nscore3)$/){ + $order = "$1 DESC"; +} + + +my $query = $DBH->prepare(qq{ +SELECT a.id,a.name,a.relationship,s.members,s.score,s.size,r.resources,r.planets, resources/planets AS respplanet, + resources / 300 AS scoregain, score + (resources / 300) AS nscore, + (resources/planets*LEAST(members,60))/300 AS scoregain2, score + (resources/planets*LEAST(members,60))/300 AS nscore2, + (s.size::int8*(1464-tick())*250)/100 + score + (resources/planets*LEAST(members,60))/300 AS nscore3, + (s.size::int8*(1464-tick())*250)/100 AS scoregain3 +FROM (SELECT alliance_id AS id,sum(metal+crystal+eonium) AS resources, count(*) AS planets + FROM planets p join covop_targets c ON p.id = c.planet GROUP by alliance_id) r + NATURAL JOIN alliances a + LEFT OUTER JOIN (SELECT * FROM alliance_stats WHERE tick = (SELECT max(tick) FROM alliance_stats)) s ON a.id = s.id +ORDER BY $order + }); +$query->execute; +my @alliances; +my $i = 0; +while (my $alliance = $query->fetchrow_hashref){ + $alliance->{ODD} = $i % 2; + push @alliances,$alliance; + $i++ +} +$BODY->param(Alliances => \@alliances); + +$BODY->param(Error => $error); +1; diff --git a/templates/resources.tmpl b/templates/resources.tmpl new file mode 100644 index 0000000..5010c65 --- /dev/null +++ b/templates/resources.tmpl @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameRelationshipMembers (in res calc)ScoreSizeResourcesResources / PlanetRes score (gain)[1]Avg res score (gain)[2]Estimated score[3]
() () () ()
+

[1] = New score if resources are spent (gain is just the extra value compared to unspent resources)

+

[2] = Same as [1] but calculated with avg resources and max 60 members

+

[3] = Same as [2] but also includes resources if roids are kept to end of round (gain is just from the roids)

diff --git a/templates/skel.tmpl b/templates/skel.tmpl index 681038b..1100a1c 100644 --- a/templates/skel.tmpl +++ b/templates/skel.tmpl @@ -59,7 +59,7 @@
  • Intel
  • Alliances
  • Member Intel
  • -
  • Alliance resources
  • +
  • Alliance resources
  • -- 2.39.2