chiark / gitweb /
Commodity location in deciles
[ypp-sc-tools.db-live.git] / yarrg / Commods.pm
index b7b18a6..9178112 100644 (file)
@@ -102,7 +102,7 @@ my %colours; # eg $colours{'c'}{'black'}= $sources
 my (@rawcm, @nocm); # eg $rawcm[0]='fine rum'; $rawcm[1]='fine %c cloth'
 
 my %colour_ordvals; # $colour_ordvals{'c'}{'green'}= '30';
-my %commodclasses; # $commodclasses{'dye'}= '3';
+our %commodclasses; # $commodclasses{'dye'}= '3';
 
 # IMPORTANT
 #  when extending the format of source-info in a non-backward
@@ -137,7 +137,7 @@ sub parse_info1 ($$$) {
            @ctx= (sub { push @nocm, lc $_; });
        } elsif (m/^commodclasses$/) {
            @ctx= (sub {
-               die unless m/^\*([-a-z]+)$/;
+               die unless m/^\*([_a-z]+)$/;
                $commodclasses{$1}= scalar keys %commodclasses;
            });
        } elsif (m/^ocean (\w+)$/) {
@@ -213,7 +213,7 @@ sub parse_info1 ($$$) {
                    $c->{Mass}= $1 * ($2 ? 1000 : 1);
                } elsif ($prop =~ m/^([1-9]\d*)l$/) {
                    $c->{Volume}= $1 * 1000;
-               } elsif ($prop =~ m/^\*([-a-z]+)$/) {
+               } elsif ($prop =~ m/^\*([_a-z]+)$/) {
                    $c->{Class}= $1;
                    die "$1" unless exists $commodclasses{$1};
                    $ordclassval= 1e7 + $commodclasses{$1} * 1e7;
@@ -224,6 +224,7 @@ sub parse_info1 ($$$) {
                    die "unknown property $prop for $ucname";
                }
            }
+           $c->{ClassOrdval}= $ordclassval;
            if (defined $ordbase && defined $ordval && defined $ordclassval) {
                my $ordvalout= $ordbase + $ordval + $ordclassval;
                $c->{Ordval}= $ordvalout;