Check-in Lasker-2.2.3 tar ball from samba.org
[capablanca.git] / lasker-2.2.3 / bots / mamer / bin / rank.pl
1 #!/usr/local/bin/perl
2
3 $PLAYER_DATA_PATH = "/home/mlong/mamer/players";
4 $OUTFILE = "/home/mlong/mamer/data/rank.new";
5
6 # you should not have to change this its just where it belongs
7 @dirList = ("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", 
8             "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "_");
9
10 &main();
11
12 sub main {
13     foreach $a (@dirList) {
14         if(-d "$PLAYER_DATA_PATH/$a") {
15 #           printf("$PLAYER_DATA_PATH/$a\n");
16             opendir(THISDIR, "$PLAYER_DATA_PATH/$a");
17             @tempdir = sort(readdir(THISDIR));
18             close(THISDIR);
19             
20             foreach $file (@tempdir) {
21                 if(!(-d "$PLAYER_DATA_PATH/$a/$file")) {
22 #                   printf ("Converting %s %s\n", $file, $PLAYER_DATA_PATH);
23                     open(IN, "$PLAYER_DATA_PATH/$a/$file") || die "Can't open $file\n";
24                     while($line = <IN>) {
25                         chop($line);
26                         ($n, $abuse, $tourneys, $w, $l, $d, $fsts, $scds, $thds, $rating, 
27                          $placePoints, $managerLevel, $managedTourneys, $last, $tourneyLocation) = split(/ /, $line);
28                         if($tourneys > 4) {
29                             $rank{$n} = "$rating $n $tourneys";
30                         }
31                     }
32                     close(IN);
33                 }
34             }
35         }
36     }
37     $i = 0;
38     $last = 0;
39     foreach $a (reverse (sort (values %rank))) {
40         ($b, $c, $d) = split(/ /, $a);
41         if($b != $last) {
42             $i++;
43             $last = $b;
44         }
45         open(OUT, ">>$OUTFILE") || die "Can't open $OUTFILE\n";
46         printf OUT ("%-18s %d %4.2f\n", $c, $d, $b);
47         close(OUT);
48     }
49 }
50