home *** CD-ROM | disk | FTP | other *** search
/ Game Killer / Game_Killer.bin / 278.EXAMINE.PAS < prev    next >
Pascal/Delphi Source File  |  1991-07-09  |  2KB  |  105 lines

  1. program InfoViewer;
  2. { written mid december 1990 to date by woody }
  3. { dos version }
  4.  
  5. uses
  6.   DOS, CRT, graph;
  7.  
  8. {$I headers.inc}
  9.  
  10. const
  11.   Version  = 'dos 0.88a';
  12.  
  13. var {globals}
  14.   space     : TheVoid;
  15.   BBSname   : string;
  16.   g         : text;
  17.   BaseChanged,
  18.   quit      : boolean;
  19.   distances : distanceArray;
  20.  
  21. {$I QUEUE.INC }
  22. {$I status.inc }
  23. {$I misc.inc }
  24. {$I distance.inc }
  25. {$I viewdos.inc }
  26. {$I textdisp.inc }
  27. {$I portdisp.inc }
  28. {$I notestuf.inc }
  29. {$I basepath.inc }
  30. {$I pathstuf.inc }
  31. {$I teleport.inc }
  32. {$I GSDATA.INC }
  33. {$I busy.inc }
  34.  
  35. procedure menu;
  36. begin
  37.   writeln('Choose one of ');
  38.   writeln('<A>dd note');
  39.   writeln('<B>usiest ports');
  40.   writeln('<D>elete note');
  41.   writeln('Closest place to buy <F>ighters, shields, and holds');
  42.   writeln('Note <I>nformation');
  43.   writeln('<L>ength of path between two sectors');
  44.   writeln('<N>earest port');
  45.   writeln('<P>aired ports');
  46.   writeln('<Q>uit');
  47.   writeln('Nearest <S>ectors');
  48.   writeln('<T>ranswarp menu');
  49.   writeln('Nearest <U>nexplored sectors');
  50.   writeln('<V>iew space in graphic format');
  51.   writeln;
  52. end; {menu}
  53.  
  54. function choice : char;
  55. var
  56.   ch : char;
  57. begin
  58.   write('(', BBSName, ') [A, B, D, F, I, L, N, P, Q, S, T, U, V]',
  59.         ' Your choice? ');
  60.   readln( ch );
  61.   choice := upcase( ch );
  62. end;
  63.  
  64. begin
  65.   writeln('Tradewars Data Base Viewer: version ', version);
  66.   writeln( author );
  67.   writeln( source );
  68.   writeln;
  69.   Quit := false;
  70.   BaseChanged := false;
  71.   InitSpace( Space );
  72.   if paramcount > 0 then
  73.     BBSName := paramstr( 1 )
  74.   else
  75.     BBSName := '';
  76.   GetData( Space, BBSName );
  77.   menu;
  78.   repeat
  79.     case choice of
  80.     'A' : AddNote( BaseChanged );
  81.     'B' : BusyPorts;
  82.     'D', 'X' : RemoveNote( BaseChanged );
  83.     'F' : NearestFighters;
  84.     'I' : NearestStuff( NoteOnly );
  85.     'L' : PathLength;
  86.     'N' : NearestStuff( PortOnly );
  87.     'P' : pairPort;
  88.     'Q' : quit := true;
  89.     'S' : NearestStuff( any );
  90.     'T' : TransWarpMenu( BaseChanged );
  91.     'U' : NearestStuff( UnExpOnly );
  92.     'V' : view;
  93.     else
  94.       menu;
  95.     end; {case}
  96.   until quit;
  97.   if BaseChanged then
  98.     begin
  99.       assign( g, GetNewFileName('File name for new data base? ',
  100.                                   bbsname+'.dat') );
  101.       rewrite( g );
  102.       saveData( g, space );
  103.     end;
  104. end.
  105.