chiark / gitweb /
move ZZ HS comment knowledge to misc-data.pl
[pandemic-rising-tide.git] / generate-board
index 645d54c04878fc33601fa311c6befc512b1409c4..a801ff1c8b664219095651439b10bba80af29260 100755 (executable)
@@ -583,14 +583,15 @@ sub some_edge_faces (@) {
   }
 }
 
-sub afsluitdijk() {
-  my ($adj) = grep { $_->{Name} eq 'NZ' } @{ $region{'ZZ'}{Adj} };
+sub afsluitdijk ($$) {
+  my ($inner, $comment) = @_;
+  my ($adj) = grep { $_->{Name} eq $c{Sea} } @{ $region{$inner}{Adj} };
   my $dash = 20;
   my (@pos) = adj_ends($adj);
   my $mid = 0.5 * ($pos[0] + $pos[1]);
   my $r = 0.5 * ($pos[1] - $pos[0])->norm();
-  o(sprintf <<'END', facepscolour('sea'), psvec($mid), $r);
-  %% Afsluitdijk
+  o(sprintf <<'END', $comment, facepscolour('sea'), psvec($mid), $r);
+  %% %s
   %s %s %s 0 360 arc closepath fill
 END
   some_edge_faces(()); # just sets the colour
@@ -603,9 +604,13 @@ END
   one_hs('purple', $mid);
 }
 
+sub afsluitdijken() {
+  afsluitdijk($_->{Region}, $_->{Comment}) foreach @{ $c{DashedHsInners} };
+}
+
 sub edge_faces() {
-  some_edge_faces($region{'NZ'});
-  afsluitdijk();
+  some_edge_faces($region{$c{Sea}});
+  afsluitdijken();
   some_edge_faces(grep {
     $_->{Name} !~ m{^(?:L2?|NZ|ZZ)$}
   } values %region);
@@ -662,7 +667,7 @@ END
     next if $rr->{Name} =~ m/^L\d?$/;
     my $words = $rr->{DisplayName};
     my $pos;
-    if ($rr->{Name} eq 'NZ') {
+    if ($rr->{Name} eq $c{Sea}) {
       $pos = mkvec(90, 1280);
     } else {
       $pos = $rr->{Centre} + mkvec( 0, 0.5 * $sz * @$words );
@@ -680,13 +685,13 @@ END
       $pos += $sz * &mkvec(@$adjust);
     }
     my $w = $rr->{Water};
-    $w = 2 if $rr->{Special} || $rr->{Name} eq 'ZZ';
+    $w = 2 if $rr->{Name} eq $c{Sea};
     if ($w) {
       #print STDERR " water $w in $rr->{Name}\n";
       my $down = water_cubes_sz(2) - water_cubes_sz(1) + $cube_gap;
       $pos -= mkvec(0, -0.5 * $down);
       my $cube_y = -($sz * @$words);
-      if ($rr->{Name} eq 'Wieringermeer') {
+      if (grep { $_ eq $rr->{Name} } @{ $c{CubeAbove} }) {
        $pos -= mkvec(0,+$sz);
        $cube_y = 0;
        $down = 0;