home *** CD-ROM | disk | FTP | other *** search
/ Game Killer / Game_Killer.bin / 290.CORPREC.INC < prev    next >
Text File  |  1991-07-08  |  3KB  |  108 lines

  1. { Corp record operations }
  2.  
  3. procedure ReadFromString( s : string; var index : byte; var result : integer );
  4. { convert starting at position index an integer, storing in result.  Advance
  5. index past integer. }
  6. begin
  7. end; {readFromString}
  8.  
  9. procedure GetName( s : string; var index : byte; var n : string40 );
  10. { read the name.  It will consist of at least 30 characters, starting at
  11. index, and may consist of more -- it will continue up until we hit "Class".
  12. Advance index past name. }
  13. begin
  14. end; {get name}
  15.  
  16. procedure GetCitadel( s : string; index : byte; var f : text;
  17.                       var citadel : citadelType );
  18. { read starting at index, looking for the citadel level.  Its possible it 
  19. isn't in the string, in which case we get it from the first line of the
  20. file.  In any case, return that in citadel. }
  21. begin
  22. end; {GetCitadel}
  23.  
  24. procedure GetPop( var f : text; var old, current : NonNegInt;
  25.                                 var change : integer );
  26. { set old to current, and read current from t.  Set change to difference. }
  27. begin
  28. end; {get pop}
  29.  
  30. procedure GetGoods( var f : text; var stock : stores );
  31. { read three values, and store them in stock }
  32. begin
  33. end; {GetGoods}
  34.  
  35. procedure SearchCorpQueue( var c : corp; var p : planet; name : string40 );
  36. { Search the records to find planet with given name.  If not found,
  37.   create new planet at end of queue. }
  38. begin
  39.   p.note := '';
  40. end; {SearchCorpQueue}
  41.  
  42. procedure ReadReport( var f : text;  var line : string;
  43.                       var Report : corp );
  44. { This will read the report starting with "line" and pulling additional
  45. information from the file.  It will load it into report. }
  46. var
  47.   CurrPlanet : planet;
  48.   LinePtr : byte;
  49.   s : integer;
  50.   n : string40;
  51. begin
  52.   LinePtr := 1;
  53.   ReadFromString( line, lineptr, s );
  54.   GetName( line, lineptr, n );
  55.   SearchCorpQueue( Report, CurrPlanet, n );
  56.   CurrPlanet.location := s;
  57.   GetCitadel( line, lineptr, f, CurrPlanet.citadel );
  58.   skip( f, 9 );
  59.   GetPop( f, CurrPlanet.LastPop, CurrPlanet.CurrPop, CurrPlanet.ChangePop );
  60.   GetGoods( f, CurrPlanet.GoodsProd );
  61.   GetGoods( f, CurrPlanet.GoodsOH );
  62.   CurrPlanet.fighters := ReadNumber( f );
  63. end; {Read Report}
  64.  
  65. procedure FindStart( var f : text );
  66. {Find the start of the corporate reports }
  67. const 
  68.   SizeHeader = 4;
  69. var
  70.   line : string;
  71.   Found: boolean;
  72.   i    : integer;
  73. begin
  74.   while not (found or eof( f ) ) do
  75.     begin
  76.       readln( f, line );
  77.       found := pos( 'Corporate Planet Scan', line ) > 0;
  78.     end; {while}
  79.   if found then
  80.     for i := 1 to SizeHeader do
  81.       readln( f );
  82. end;
  83.  
  84. procedure AddCorpReport( var Exxon : corp; var PleaseUpdate : boolean );
  85. var 
  86.   f : text;
  87.   filename : string;
  88.   line : string;
  89.   CurrReport : planet;
  90. begin
  91.   reset( f, GetNewFilename( 'Name of downloaded corporate log file?',
  92.                             'corp.log'));
  93.   FindStart( f );
  94.   line := '';
  95.   while (pos( 'Total Credits', line ) = 0) and (not eof( f )) do
  96.     begin
  97.       readln( f, line );
  98.       ReadReport( f, line, Exxon );
  99.     end; {while}
  100. end;
  101.  
  102. procedure AddNote( var ATT : corp; var PleaseUpdate : boolean );
  103. begin
  104. end;
  105.  
  106. procedure DisplayInfo( var Beatrice : corp );
  107. begin
  108. end;