chiark / gitweb /
where-vessels shows uncolonised islands differently
[ypp-sc-tools.db-test.git] / yarrg / CommodsScrape.pm
index 2b1d4a9..d6951cf 100644 (file)
@@ -46,7 +46,7 @@ sub yppedia_chart_parse ($$ $$$$ $) {
        $conv_nxy, $on_archlabel, $on_island, $on_league,
        $on_incomprehensible) = @_;
 
-    my ($x,$y, $arch,$island,$solid,$dirn);
+    my ($x,$y, $arch,$island,$sizecol,$solid,$dirn);
     my $nn= sub { return $conv_nxy->($x,$y) };
     
     # We don't even bother with tag soup; instead we do line-oriented parsing.
@@ -68,12 +68,12 @@ sub yppedia_chart_parse ($$ $$$$ $) {
            $on_archlabel->($x,$y,$arch);
        } elsif (m/^\{\{ chart\ label \|\d+\|\d+\|
                 \<big\> \'+ \[\[ .* \b ocean \]\]/xi) {
-       } elsif (($x,$y,$island) =
+       } elsif (($x,$y,$island,$sizecol) =
            m/^\{\{ chart\ island\ icon \|(\d+)\|(\d+)\|
-                   ([^| ][^|]*[^| ]) \| .*\}\}$/xi) {
+                   ([^| ][^|]*[^| ]) \| [^|]* \| (\w+) \| .*\}\}$/xi) {
            my $n= $nn->();
            printf $debugfh "%2d,%-2d island %s\n", $x,$y,$island;
-           $on_island->($n, $island);
+           $on_island->($n, $island, $sizecol);
        } elsif (($solid,$x,$y,$dirn) =
            m/^\{\{ chart\ league((?:\ solid)?) \|(\d+)\|(\d+)\|
                    \.?([-\/\\o])\.? \| .*\}\}$/xi) {