home *** CD-ROM | disk | FTP | other *** search
/ Game Killer / Game_Killer.bin / 098.BUSY.INC < prev    next >
Text File  |  1992-06-07  |  1KB  |  48 lines

  1. procedure BusyPorts;
  2. var
  3.   p : 0..MaxPorts;
  4.   Number,
  5.   i,
  6.   s, n : SectorIndex;
  7.   log  : boolean;
  8.   f    : text;
  9. begin
  10.   for i := 1 to MaxSector do
  11.     distances[i].s := i;
  12.   EliminateUnwanted( distances, PortOnly, Number, 0 );
  13.   for i := 1 to Number do
  14.     begin
  15.       p := portNumber(distances[i].s);
  16.       if p <> 0 then
  17.         with space.ports.data[p] do
  18.           distances[i].d := round((usage[fuel] / 100) *
  19.                         (usage[organics] / 100) * usage[equipment])
  20.       else
  21.         distances[i].d := -maxint;
  22.     end; {for}
  23.   log := prompt( 'Log to disk? ');
  24.   if log then
  25.     begin
  26.       assign( f, GetNewFileName('File name for report?  ', 'busiest.txt') );
  27.       rewrite( f );
  28.     end;
  29.   if Number <> 0 then
  30.     begin
  31.       for n := 1 to Number do
  32.         begin
  33.           FindSmallest( distances, n, Number );
  34.           DisplaySector( distances[ n ].s, ' Left:',distances[n].d,
  35.                         log, f );
  36.           if n mod 20 = 0 then
  37.             if not prompt( 'more? ') then
  38.               begin
  39.                 if log then
  40.                   close( f );
  41.                   exit;
  42.               end;
  43.         end; {for}
  44.     end; {if}
  45.   if log then
  46.     close( f );
  47. end; {busiest ports}
  48.