home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Inne / Gry / Atomic_Tanks / Atomic-Tanks-5.1.exe / src / text.h < prev    next >
C/C++ Source or Header  |  2010-02-18  |  1KB  |  60 lines

  1. #ifndef TEXT_HEADER_FILE__
  2. #define TEXT_HEADER_FILE__
  3.  
  4. /* This file contains functions for reading text from files and
  5.  * storing it in the game. The entire text file will be kept in memory.
  6.  * Each text object will have the ability to return a line,
  7.  * track its position in the text or return a random line.
  8.  * This should allow for better multi-language handling, faster
  9.  * access to tank speech and remove the need to rely on the lineseq
  10.  * class.
  11.  * -- Jesse
  12. */
  13.  
  14. #ifndef TRUE
  15. #define TRUE 1
  16. #endif
  17. #ifndef FALSE
  18. #define FALSE 0
  19. #endif
  20.  
  21. #define MAX_LINE_LENGTH 512
  22. #define MAX_LINES_IN_FILE 1024
  23.  
  24.  
  25. class TEXTBLOCK
  26. {
  27. public:
  28.    int total_lines, current_line;
  29.    char **complete_text;
  30.  
  31.  
  32.    TEXTBLOCK();
  33.    TEXTBLOCK(char *filename);
  34.    ~TEXTBLOCK();
  35.  
  36.    void Trim_Newline(char *line);     // hack the newline off a string
  37.    int Load_File(char *filename);    // load lines from a file
  38.    char *Get_Random_Line();   // give us a random line
  39.    char *Get_Current_Line();  // return current line
  40.    int Next_Line();           // advance the current line counter one
  41.    int Previous_Line();       // move the current line counter back one
  42.    int Display_All(int line_numbers); // display all text
  43.  
  44. };
  45.  
  46.  
  47.  
  48.  
  49. // Functions we can use anywhere
  50.  
  51. // This function returns a string with
  52. // comma characters between thousands positions
  53. // There is no need to free the returned string.
  54. char *Add_Comma(int number);
  55.  
  56.  
  57.  
  58. #endif
  59.  
  60.