# strings_type.h

Go to the documentation of this file.

    00001 /* $Id: strings_type.h 14480 2008-10-17 17:42:51Z rubidium $ */
    00002
    00005 #ifndef STRINGS_TYPE_H
    00006 #define STRINGS_TYPE_H
    00007
    00011 typedef uint16 StringID;
    00012 static const StringID INVALID_STRING_ID = 0xFFFF;
    00013
    00014 enum {
    00015   MAX_LANG = 64,
    00016 };
    00017
    00019 enum TextDirection {
    00020   TD_LTR,
    00021   TD_RTL,
    00022 };
    00023
    00025 struct Language {
    00026   char *name;
    00027   char *file;
    00028 };
    00029
    00031 struct DynamicLanguages {
    00032   int num;
    00033   int curr;
    00034   char curr_file[MAX_PATH];
    00035   TextDirection text_dir;
    00036   Language ent[MAX_LANG];
    00037 };
    00038
    00040 enum SpecialStrings {
    00041
    00042   // special strings for town names. the town name is generated dynamically on request.
    00043   SPECSTR_TOWNNAME_START     = 0x20C0,
    00044   SPECSTR_TOWNNAME_ENGLISH   = SPECSTR_TOWNNAME_START,
    00045   SPECSTR_TOWNNAME_FRENCH,
    00046   SPECSTR_TOWNNAME_GERMAN,
    00047   SPECSTR_TOWNNAME_AMERICAN,
    00048   SPECSTR_TOWNNAME_LATIN,
    00049   SPECSTR_TOWNNAME_SILLY,
    00050   SPECSTR_TOWNNAME_SWEDISH,
    00051   SPECSTR_TOWNNAME_DUTCH,
    00052   SPECSTR_TOWNNAME_FINNISH,
    00053   SPECSTR_TOWNNAME_POLISH,
    00054   SPECSTR_TOWNNAME_SLOVAKISH,
    00055   SPECSTR_TOWNNAME_NORWEGIAN,
    00056   SPECSTR_TOWNNAME_HUNGARIAN,
    00057   SPECSTR_TOWNNAME_AUSTRIAN,
    00058   SPECSTR_TOWNNAME_ROMANIAN,
    00059   SPECSTR_TOWNNAME_CZECH,
    00060   SPECSTR_TOWNNAME_SWISS,
    00061   SPECSTR_TOWNNAME_DANISH,
    00062   SPECSTR_TOWNNAME_TURKISH,
    00063   SPECSTR_TOWNNAME_ITALIAN,
    00064   SPECSTR_TOWNNAME_CATALAN,
    00065   SPECSTR_TOWNNAME_LAST      = SPECSTR_TOWNNAME_CATALAN,
    00066
    00067   // special strings for player names on the form "TownName transport".
    00068   SPECSTR_PLAYERNAME_START   = 0x70EA,
    00069   SPECSTR_PLAYERNAME_ENGLISH = SPECSTR_PLAYERNAME_START,
    00070   SPECSTR_PLAYERNAME_FRENCH,
    00071   SPECSTR_PLAYERNAME_GERMAN,
    00072   SPECSTR_PLAYERNAME_AMERICAN,
    00073   SPECSTR_PLAYERNAME_LATIN,
    00074   SPECSTR_PLAYERNAME_SILLY,
    00075   SPECSTR_PLAYERNAME_LAST    = SPECSTR_PLAYERNAME_SILLY,
    00076
    00077   SPECSTR_ANDCO_NAME         = 0x70E6,
    00078   SPECSTR_PRESIDENT_NAME     = 0x70E7,
    00079   SPECSTR_SONGNAME           = 0x70E8,
    00080
    00081   // reserve MAX_LANG strings for the *.lng files
    00082   SPECSTR_LANGUAGE_START     = 0x7100,
    00083   SPECSTR_LANGUAGE_END       = SPECSTR_LANGUAGE_START + MAX_LANG - 1,
    00084
    00085   // reserve 32 strings for various screen resolutions
    00086   SPECSTR_RESOLUTION_START   = SPECSTR_LANGUAGE_END + 1,
    00087   SPECSTR_RESOLUTION_END     = SPECSTR_RESOLUTION_START + 0x1F,
    00088
    00089   // reserve 32 strings for screenshot formats
    00090   SPECSTR_SCREENSHOT_START   = SPECSTR_RESOLUTION_END + 1,
    00091   SPECSTR_SCREENSHOT_END     = SPECSTR_SCREENSHOT_START + 0x1F,
    00092 };
    00093
    00094 #endif /* STRINGS_TYPE_H */