Show
Ignore:
Timestamp:
08/11/08 23:26:36 (5 years ago)
Author:
daisuke
Message:

skeleton

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/Acme-Mahjong/trunk/lib/Acme/Mahjong/Rule/JP.pm

    r17449 r17455  
    88no Moose; 
    99 
    10 sub calculate { } 
     10sub calculate { 
     11    my ($self, %args) = @_; 
     12 
     13    my $hand = $args{hand}; 
     14    # pre-analyze the suits/kinds for easier calculation 
     15 
     16    my @tiles = $hand->tiles; 
     17    my %meta; 
     18 
     19    my %kinds; 
     20    foreach my $tile (@tiles) { 
     21        if ($tile->isa('Acme::Mahjong::Tile::Suited')) { 
     22            $kinds{ $tile->suit }++; 
     23        } elsif ($tile->isa('Acme::Mahjong::Tile::Wind')) { 
     24            $kinds{ wind }++; 
     25        } elsif ($tile->isa('Acme::Mahjong::Tile::Dragon')) { 
     26            $kinds{ dragon }++; 
     27        } 
     28    } 
     29    $meta{ kinds } = \%kinds; 
     30 
     31    $self->fu2score( 
     32        $self->hand2fu( hand => $hand, %args, meta => \%meta ) 
     33    ); 
     34} 
     35 
     36sub hand2fu { 
     37     
     38} 
    1139 
    1240sub fu2score {