2499
|
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 #pragma warning( push )
|
|
24 #pragma warning( disable: 4341 )
|
|
25 enum Tileset: signed __int16
|
|
26 {
|
|
27 Tileset_Grass = 0,
|
|
28 Tileset_Snow = 1,
|
|
29 Tilset_Desert = 2,
|
2534
|
30 Tileset_CooledLava = 3,
|
2499
|
31 Tileset_Dirt = 4,
|
|
32 Tileset_Water = 5,
|
2534
|
33 Tileset_Badlands = 6,
|
2499
|
34 Tileset_Swamp = 7,
|
|
35 Tileset_8 = 8,
|
|
36 Tileset_9 = 9,
|
|
37 Tileset_RoadGrassCobble = 10,
|
|
38 Tileset_NULL =-1
|
|
39 };
|
|
40 #pragma warning( pop )
|
|
41
|
|
42 /* 48 */
|
|
43 #pragma pack(push, 1)
|
|
44 struct TileDesc //26
|
|
45 {
|
|
46 char pTileName[16];
|
|
47 unsigned __int16 uTileID;
|
|
48 unsigned __int16 uBitmapID;
|
|
49 Tileset tileset;
|
|
50 unsigned __int16 uSection;
|
|
51 unsigned __int16 uAttributes;
|
|
52 };
|
|
53 #pragma pack(pop)
|
|
54
|
|
55 /* 49 */
|
|
56 #pragma pack(push, 1)
|
|
57 struct TileTable
|
|
58 {
|
|
59 //----- (00487E13) --------------------------------------------------------
|
|
60 TileTable()
|
|
61 {
|
|
62 this->pTiles = nullptr;
|
|
63 this->sNumTiles = 0;
|
|
64 }
|
|
65 ~TileTable();
|
|
66
|
|
67 TileDesc *GetTileById(unsigned int uTileID);
|
|
68 void InitializeTileset(Tileset tileset);
|
|
69 int GetTileForTerrainType(signed int a1, bool a2);
|
|
70 unsigned int GetTileId(unsigned int uTerrainType, unsigned int uSection);
|
|
71 void ToFile();
|
|
72 void FromFile(void *data_mm6, void *data_mm7, void *data_mm8);
|
|
73 int FromFileTxt(const char *pFilename);
|
|
74
|
|
75 signed int sNumTiles;
|
|
76 struct TileDesc *pTiles;
|
|
77 };
|
|
78 #pragma pack(pop)
|