- $x = $y = $z = 0;
- while (my($nx,$ny,$nz,$tick) = $query->fetchrow){
- if ($nx != $x || $ny != $y || $nz != $z){
- $x = $nx;
- $y = $ny;
- $z = $nz;
- $scan .= qq{<tr><td>$tick</td><td>$x:$y:$z</td></tr>};
- }
- }
- $scan .= q{</table>};
- $scan .= $scans{'Ship Classes'}->[2] if $scans{'Ship Classes'};
- push @scans, {Scan => $scan};
-
- for my $type ('Planet','Jumpgate','Unit','Advanced Unit','Surface Analysis','Technology Analysis','Fleet Analysis','News'){
- next unless exists $scans{$type};
- my $scan_id = $scans{$type}->[0];
- my $tick = $scans{$type}->[1];
- my $scan = $scans{$type}->[2];
- if ($self->{TICK} - $tick > 10){
- $scan =~ s{<table( cellpadding="\d+")?>}{<table$1 class="old">};
+ my @coords;
+ my $c = {x => 0, y => 0, z => 0};
+ while (my $c2 = $query->fetchrow_hashref){
+ if ($c->{x} != $c2->{x} || $c->{y} != $c2->{y} || $c->{z} != $c2->{z}){
+ $c = $c2;
+ push @coords,$c;