X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=scripts%2Fstats.pl;h=d69d42cb6189c534c3c1844b1e4ef0b97538899a;hb=1689097ceb03ab05fdc04baf4b51b8c8b4d7dba7;hp=fb30c24717ed622bf6897f419c263c6f101fb3e4;hpb=b14e0fb561f9c6cfdf06e76ff45c36c99c133545;p=ndwebbie.git diff --git a/scripts/stats.pl b/scripts/stats.pl index fb30c24..d69d42c 100755 --- a/scripts/stats.pl +++ b/scripts/stats.pl @@ -40,16 +40,17 @@ my %classes = (Fighter => 'Fi', Corvette => 'Co', Frigate => 'Fr', Destroyer => my $file = get("http://game.planetarion.com/manual.pl?page=stats"); $dbh->begin_work; my $st = $dbh->prepare(q{INSERT INTO ship_stats (ship,"class",t1,t2,t3,"type",init,guns,armor,damage,eres,metal,crystal,eonium,race) VALUES(?,?,NULLIF(?,'-'),NULLIF(?,'-'),NULLIF(?,'-'),?,?,?,?,?,?,?,?,?,?)}); -while ($file =~ /class="(\w+)">((?:\w| )+)<\/td>(\w+)<\/td>(\w+|-)<\/td>(\w+|-)<\/td>(\w+)\D+(\d+)\D+(\d+)\D+(\d+)\D+?(\d+|-)\D+(\d+)\D+(\d+)\D+(\d+)\D+(\d+)\D+\d+\D+\d+.+?(\w+)<\/td>/g){ - my $dmg = $10; +while ($file =~ /class="(\w+)">((?:\w| )+)<\/td>(\w+)<\/td>(\w+|-)<\/td>(\w+|-)<\/td>(\w+|-)<\/td>(\w+)\D+(\d+)\D+(\d+)\D+(\d+)\D+?(\d+|-)\D+(\d+)\D+(\d+)\D+(\d+)\D+(\d+)\D+\d+\D+\d+.+?(\w+)<\/td>/g){ + my $dmg = $11; $dmg = 0 if $dmg eq '-'; my $class = $classes{$3}; - my $type = $6; + my $type = $7; $type = 'Emp' if $type eq 'EMP'; - $st->execute($2,$class,$4,$5,'-',$6,$7,$8,$9,$dmg,$11,$12,$13,$14,$1) or die $dbh->errstr; - print "$2,$class,$4,$5,'-',$6,$7,$dmg,$9,$10,$11,$12,$13,$14,$1\n"; + $st->execute($2,$class,$4,$5,$6,$7,$8,$9,$10,$dmg,$12,$13,$14,$15,$1) or die $dbh->errstr; + print "$2,$class,$4,$5,$6,$7,$8,$9,$10,$dmg,$12,$13,$14,$15,$1\n"; } + $dbh->commit; $dbh->disconnect;