newgrf_townname.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00014 #ifndef NEWGRF_TOWNNAME_H
00015 #define NEWGRF_TOWNNAME_H
00016
00017 #include "strings_type.h"
00018
00019 struct NamePart {
00020 byte prob;
00021 union {
00022 char *text;
00023 byte id;
00024 } data;
00025 };
00026
00027 struct NamePartList {
00028 byte partcount;
00029 byte bitstart;
00030 byte bitcount;
00031 uint16 maxprob;
00032 NamePart *parts;
00033 };
00034
00035 struct GRFTownName {
00036 uint32 grfid;
00037 byte nb_gen;
00038 byte id[128];
00039 StringID name[128];
00040 byte nbparts[128];
00041 NamePartList *partlist[128];
00042 GRFTownName *next;
00043 };
00044
00045 GRFTownName *AddGRFTownName(uint32 grfid);
00046 GRFTownName *GetGRFTownName(uint32 grfid);
00047 void DelGRFTownName(uint32 grfid);
00048 void CleanUpGRFTownNames();
00049 StringID *GetGRFTownNameList();
00050 char *GRFTownNameGenerate(char *buf, uint32 grfid, uint16 gen, uint32 seed, const char *last);
00051 uint32 GetGRFTownNameId(int gen);
00052 uint16 GetGRFTownNameType(int gen);
00053
00054 #endif