0
|
1 #pragma once
|
|
2
|
|
3
|
|
4
|
|
5 /* 327 */
|
|
6 enum TILE_DESC_FLAGS
|
|
7 {
|
|
8 TILE_DESC_BURNS = 0x1,
|
|
9 TILE_DESC_WATER = 0x2,
|
|
10 TILE_DESC_BLOCK = 0x4,
|
|
11 TILE_DESC_REPULSE = 0x8,
|
|
12 TILE_DESC_FLAT = 0x10,
|
|
13 TILE_DESC_WAVY = 0x20,
|
|
14 TILE_DESC_DONT_DRAW = 0x40,
|
|
15 TILE_DESC_WATER_2 = 0x100,
|
|
16 TILE_DESC_TRANSITION = 0x200,
|
|
17 TILE_DESC_SCROLL_DOWN = 0x400,
|
|
18 TILE_DESC_SCROLL_UP = 0x800,
|
|
19 TILE_DESC_SCROLL_LEFT = 0x1000,
|
|
20 TILE_DESC_SCROLL_RIGHT = 0x2000,
|
|
21 };
|
|
22
|
|
23
|
760
|
24 enum Tileset: signed __int16
|
630
|
25 {
|
|
26 Tileset_Grass = 0,
|
|
27 Tileset_Snow = 1,
|
|
28 Tileset_2 = 2,
|
|
29 Tileset_3 = 3,
|
|
30 Tileset_Dirt = 4,
|
|
31 Tileset_Water = 5,
|
|
32 Tileset_6 = 6,
|
|
33 Tileset_Swamp = 7,
|
|
34 Tileset_8 = 8,
|
|
35 Tileset_9 = 9,
|
760
|
36 Tileset_RoadGrassCobble = 10,
|
|
37 Tileset_NULL =-1
|
630
|
38 };
|
0
|
39
|
|
40 /* 48 */
|
|
41 #pragma pack(push, 1)
|
760
|
42 struct TileDesc //26
|
0
|
43 {
|
|
44 char pTileName[16];
|
|
45 unsigned __int16 uTileID;
|
|
46 unsigned __int16 uBitmapID;
|
630
|
47 Tileset tileset;
|
0
|
48 unsigned __int16 uSection;
|
|
49 unsigned __int16 uAttributes;
|
|
50 };
|
|
51 #pragma pack(pop)
|
|
52
|
|
53 /* 49 */
|
|
54 #pragma pack(push, 1)
|
|
55 struct TileTable
|
|
56 {
|
|
57 //----- (00487E13) --------------------------------------------------------
|
|
58 TileTable()
|
|
59 {
|
|
60 this->pTiles = nullptr;
|
760
|
61 this->sNumTiles = 0;
|
0
|
62 }
|
|
63 ~TileTable();
|
|
64
|
|
65 TileDesc *GetTileById(unsigned int uTileID);
|
630
|
66 void InitializeTileset(Tileset tileset);
|
760
|
67 int GetTileForTerrainType(signed int a1, bool a2);
|
0
|
68 unsigned int GetTileId(unsigned int uTerrainType, unsigned int uSection);
|
|
69 void ToFile();
|
|
70 void FromFile(void *pSerialized);
|
|
71 int FromFileTxt(const char *pFilename);
|
|
72
|
760
|
73 signed int sNumTiles;
|
0
|
74 struct TileDesc *pTiles;
|
|
75 };
|
|
76 #pragma pack(pop)
|