author | tron |
Sun, 07 May 2006 07:55:05 +0000 | |
changeset 3773 | 0019b5f70ea9 |
parent 3641 | 88699e48a03e |
child 3821 | 57db5bab0f24 |
permissions | -rw-r--r-- |
3601
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
1 |
/* $Id$ */ |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
2 |
#ifndef NEWGRF_TEXT_H |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
3 |
#define NEWGRF_TEXT_H |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
4 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
5 |
/** @file |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
6 |
* Header of Action 04 "universal holder" structure and functions |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
7 |
*/ |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
8 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
9 |
/** |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
10 |
* Element of the linked list. |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
11 |
* Each of those elements represent the string, |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
12 |
* but according to a different lang. |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
13 |
*/ |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
14 |
typedef struct GRFText { |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
15 |
byte langid; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
16 |
char *text; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
17 |
struct GRFText *next; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
18 |
} GRFText; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
19 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
20 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
21 |
/** |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
22 |
* Holder of the above structure. |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
23 |
* Putting both grfid and stringid togueter allow us to avoid duplicates, |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
24 |
* since it is NOT SUPPOSED to happen. |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
25 |
*/ |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
26 |
typedef struct GRFTextEntry { |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
27 |
uint32 grfid; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
28 |
uint16 stringid; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
29 |
GRFText *textholder; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
30 |
} GRFTextEntry; |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
31 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
32 |
|
3641
88699e48a03e
(svn r4550) - NewGRF: update string system to new rules: a grf version of less than 6 uses the old scheme, of 7 or more uses the new scheme. (Moving targets, yay...)
peter1138
parents:
3605
diff
changeset
|
33 |
StringID AddGRFString(uint32 grfid, uint16 stringid, byte langid, bool new_scheme, const char *text_to_add); |
3601
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
34 |
StringID GetGRFStringID(uint32 grfid, uint16 stringid); |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
35 |
char *GetGRFString(char *buff, uint16 stringid); |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
36 |
void CleanUpStrings(void); |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
37 |
void SetCurrentGrfLangID(const char *iso_name); |
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
38 |
|
138bf309cf27
(svn r4493) Newgrf : Action 04. Beginning of implementation.
belugas
parents:
diff
changeset
|
39 |
#endif /* NEWGRF_TEXT_H */ |