2499
|
1 #pragma once
|
|
2
|
|
3
|
|
4 enum MAP_TYPE: unsigned __int32
|
|
5 {
|
|
6 MAP_INVALID = 0,
|
|
7 MAP_EMERALD_ISLE = 1,
|
|
8 MAP_HARMONDALE = 2,
|
|
9 MAP_STEADWICK = 3,
|
|
10 MAP_PIERPONT = 4,
|
|
11 MAP_DEYJA = 5,
|
|
12 MAP_BRAKADA_DESERT = 6,
|
|
13 MAP_CELESTIA = 7,
|
|
14 MAP_THE_PIT = 8,
|
|
15 MAP_EVENMORN_ISLE = 9,
|
|
16 MAP_MOUNT_NIGHON = 10,
|
|
17 MAP_BARROW_DOWNS = 11,
|
|
18 MAP_LAND_OF_GIANTS = 12,
|
|
19 MAP_TATALIA = 13,
|
|
20 MAP_AVLEE = 14,
|
|
21 MAP_SHOALS = 15,
|
|
22 //...
|
|
23 MAP_ARENA = 76,
|
|
24 //...
|
|
25 };
|
|
26
|
|
27 enum MapStartPoint: unsigned __int32
|
|
28 {
|
|
29 MapStartPoint_Party = 0,
|
|
30 MapStartPoint_North = 1,
|
|
31 MapStartPoint_South = 2,
|
|
32 MapStartPoint_East = 3,
|
|
33 MapStartPoint_West = 4
|
|
34 };
|
|
35
|
|
36
|
|
37 /* 192 */
|
|
38 #pragma pack(push, 1)
|
|
39 struct MapInfo
|
|
40 {
|
|
41 int SpawnRandomTreasure(struct SpawnPointMM7 *a2);
|
|
42
|
|
43 char *pName;
|
|
44 char *pFilename;
|
|
45 char *pEncounterMonster1Texture;
|
|
46 char *pEncounterMonster2Texture;
|
|
47 char *pEncounterMonster3Texture;
|
|
48 unsigned int uNumResets;
|
|
49 unsigned int uFirstVisitedAt;
|
|
50 unsigned int uRespawnIntervalDays;
|
|
51 int _alert_days;
|
|
52 int _steal_perm;
|
|
53 int _per;
|
|
54 char field_2C;
|
|
55 char LockX5;
|
|
56 char Trap_D20;
|
|
57 char Treasure_prob;
|
|
58 char Encounter_percent;
|
|
59 char EncM1percent;
|
|
60 char EncM2percent;
|
|
61 char EncM3percent;
|
|
62 char Dif_M1;
|
|
63 unsigned __int8 uEncounterMonster1AtLeast;
|
|
64 unsigned __int8 uEncounterMonster1AtMost;
|
|
65 char Dif_M2;
|
|
66 unsigned __int8 uEncounterMonster2AtLeast;
|
|
67 unsigned __int8 uEncounterMonster2AtMost;
|
|
68 char Dif_M3;
|
|
69 unsigned __int8 uEncounterMonster3AtLeast;
|
|
70 unsigned __int8 uEncounterMonster3AtMost;
|
|
71 char field_3D;
|
|
72 char field_3E;
|
|
73 char field_3F;
|
|
74 unsigned __int8 uRedbookTrackID;
|
|
75 unsigned __int8 uEAXEnv;
|
|
76 char field_42;
|
|
77 char field_43;
|
|
78 };
|
|
79 #pragma pack(pop)
|
|
80
|
|
81
|
|
82
|
|
83 /* 193 */
|
|
84 #pragma pack(push, 1)
|
|
85 struct MapStats
|
|
86 {
|
|
87 void Initialize();
|
|
88 MAP_TYPE GetMapInfo(const char *Str2);
|
|
89 int sub_410D99_get_map_index(int a1);
|
|
90 MapInfo pInfos[77];
|
|
91 unsigned int uNumMaps;
|
|
92
|
|
93
|
|
94 };
|
|
95 #pragma pack(pop)
|
|
96
|
|
97
|
|
98
|
|
99
|
|
100 extern struct MapStats *pMapStats;
|
|
101
|
|
102
|
|
103 extern MapStartPoint uLevel_StartingPointType; // weak
|
|
104
|
|
105
|
|
106 void TeleportToStartingPoint(MapStartPoint point); // idb
|