annotate Engine/Events.h @ 2542:bacf9809126a

.
author a.parshin
date Sun, 10 May 2015 02:04:52 +0200
parents 68cdef6879a0
children
rev   line source
2499
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
1 #pragma once
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
2 #include <array>
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
4
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
5
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
6 /* 167 */
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
7 #pragma pack(push, 1)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
8 struct EventIndex
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
9 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
10 int uEventID;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
11 int event_sequence_num;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
12 unsigned int uEventOffsetInEVT;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
13 };
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
14 #pragma pack(pop)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
16 // raw event struct
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
17 // header
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
18 // size_event 1 header+data
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
19 // event id 2 3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
20 // event_sequence_num
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
21 // event data
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
22 #pragma pack(push, 1)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
23 struct _evt_raw
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
24 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
25 unsigned char _e_size;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
26 unsigned char v1;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
27 unsigned char v2;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
28 unsigned char v3;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
29
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
30 unsigned char _e_type;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
31 unsigned char v5;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
32 unsigned char v6;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
33 unsigned char v7;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
34 unsigned char v8;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
35 unsigned char v9;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
36 unsigned char v10;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
37 unsigned char v11;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
38 unsigned char v12;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
39 unsigned char v13;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
40 unsigned char v14;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
41 unsigned char v15;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
42 unsigned char v16;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
43 unsigned char v17;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
44 unsigned char v18;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
45 unsigned char v19;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
46 unsigned char v20;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
47 unsigned char v21;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
48 unsigned char v22;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
49 unsigned char v23;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
50 unsigned char v24;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
51 unsigned char v25;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
52 unsigned char v26;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
53 unsigned char v27;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
54 unsigned char v28;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
55 unsigned char v29;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
56 unsigned char v30;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
57 unsigned char v31;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
58 unsigned char v32;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
59 unsigned char tail[128];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
60 };
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
61 #pragma pack(pop)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
62
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
63
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
64
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
65 /* 310 */
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
66 enum EventType
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
67 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
68 EVENT_Exit = 0x1,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
69 EVENT_SpeakInHouse = 0x2,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
70 EVENT_PlaySound = 0x3,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
71 EVENT_MouseOver = 0x4,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
72 EVENT_LocationName = 0x5,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
73 EVENT_MoveToMap = 0x6,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
74 EVENT_OpenChest = 0x7,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
75 EVENT_ShowFace = 0x8,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
76 EVENT_ReceiveDamage = 0x9,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
77 EVENT_SetSnow = 0xA,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
78 EVENT_SetTexture = 0xB,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
79 EVENT_ShowMovie = 0xC,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
80 EVENT_SetSprite = 0xD,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
81 EVENT_Compare = 0xE,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
82 EVENT_ChangeDoorState = 0xF,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
83 EVENT_Add = 0x10,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
84 EVENT_Substract = 0x11,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
85 EVENT_Set = 0x12,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
86 EVENT_SummonMonsters = 0x13,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
87 EVENT_CastSpell = 0x15,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
88 EVENT_SpeakNPC = 0x16,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
89 EVENT_SetFacesBit = 0x17,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
90 EVENT_ToggleActorFlag = 0x18,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
91 EVENT_RandomGoTo = 0x19,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
92 EVENT_InputString = 0x1A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
93 EVENT_StatusText = 0x1D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
94 EVENT_ShowMessage = 0x1E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
95 EVENT_OnTimer = 0x1F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
96 EVENT_ToggleIndoorLight = 0x20,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
97 EVENT_PressAnyKey = 0x21,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
98 EVENT_SummonItem = 0x22,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
99 EVENT_ForPartyMember = 0x23,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
100 EVENT_Jmp = 0x24,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
101 EVENT_OnMapReload = 0x25,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
102 EVENT_Initialize = 0x26,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
103 EVENT_SetNPCTopic = 0x27,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
104 EVENT_MoveNPC = 0x28,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
105 EVENT_GiveItem = 0x29,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
106 EVENT_ChangeEvent = 0x2A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
107 EVENT_CheckSkill = 0x2B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
108 EVENT_OnCanShowDialogItemCmp = 44,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
109 EVENT_EndCanShowDialogItem = 45,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
110 EVENT_SetCanShowDialogItem = 46,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
111 EVENT_SetNPCGroupNews = 0x2F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
112 EVENT_SetActorGroup = 0x30,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
113 EVENT_NPCSetItem = 0x31,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
114 EVENT_SetNPCGreeting = 0x32,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
115 EVENT_IsActorAlive = 0x33,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
116 EVENT_IsActorAssasinated =52,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
117 EVENT_OnMapLeave = 0x35,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
118 EVENT_ChangeGroup = 0x36,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
119 EVENT_ChangeGroupAlly = 0x37,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
120 EVENT_CheckSeason = 0x38,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
121 EVENT_ToggleActorGroupFlag = 0x39,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
122 EVENT_ToggleChestFlag = 0x3A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
123 EVENT_CharacterAnimation = 0x3B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
124 EVENT_SetActorItem = 0x3C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
125 EVENT_OnDateTimer = 0x3D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
126 EVENT_EnableDateTimer = 0x3E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
127 EVENT_StopAnimation = 0x3F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
128 EVENT_CheckItemsCount = 0x40,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
129 EVENT_RemoveItems = 0x41,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
130 EVENT_SpecialJump = 0x42,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
131 EVENT_IsTotalBountyHuntingAwardInRange = 0x43,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
132 EVENT_IsNPCInParty = 0x44,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
133 };
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
134
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
135 /* 311 */
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
136 enum VariableType
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
137 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
138 VAR_Sex = 0x1,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
139 VAR_Class = 0x2,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
140 VAR_CurrentHP = 0x3,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
141 VAR_MaxHP = 0x4,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
142 VAR_CurrentSP = 0x5,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
143 VAR_MaxSP = 0x6,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
144 VAR_ActualAC = 0x7,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
145 VAR_ACModifier = 0x8,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
146 VAR_BaseLevel = 0x9,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
147 VAR_LevelModifier = 0xA,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
148 VAR_Age = 0xB,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
149 VAR_Award = 0xC,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
150 VAR_Experience = 0xD,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
151 VAR_Race = 0xE,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
152 VAR_QBits_QuestsDone = 0x10,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
153 VAR_PlayerItemInHands = 0x11,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
154 VAR_Hour = 0x12,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
155 VAR_DayOfYear = 0x13,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
156 VAR_DayOfWeek = 0x14,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
157 VAR_FixedGold = 0x15,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
158 VAR_RandomGold = 0x16,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
159 VAR_FixedFood = 0x17,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
160 VAR_RandomFood = 0x18,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
161 VAR_MightBonus = 0x19,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
162 VAR_IntellectBonus = 0x1A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
163 VAR_PersonalityBonus = 0x1B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
164 VAR_EnduranceBonus = 0x1C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
165 VAR_SpeedBonus = 0x1D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
166 VAR_AccuracyBonus = 0x1E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
167 VAR_LuckBonus = 0x1F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
168 VAR_BaseMight = 0x20,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
169 VAR_BaseIntellect = 0x21,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
170 VAR_BasePersonality = 0x22,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
171 VAR_BaseEndurance = 0x23,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
172 VAR_BaseSpeed = 0x24,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
173 VAR_BaseAccuracy = 0x25,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
174 VAR_BaseLuck = 0x26,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
175 VAR_ActualMight = 0x27,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
176 VAR_ActualIntellect = 0x28,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
177 VAR_ActualPersonality = 0x29,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
178 VAR_ActualEndurance = 0x2A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
179 VAR_ActualSpeed = 0x2B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
180 VAR_ActualAccuracy = 0x2C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
181 VAR_ActualLuck = 0x2D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
182 VAR_FireResistance = 0x2E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
183 VAR_AirResistance = 0x2F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
184 VAR_WaterResistance = 0x30,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
185 VAR_EarthResistance = 0x31,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
186 VAR_SpiritResistance = 0x32,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
187 VAR_MindResistance = 0x33,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
188 VAR_BodyResistance = 0x34,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
189 VAR_LightResistance = 0x35,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
190 VAR_DarkResistance = 0x36,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
191 VAR_PhysicalResistance = 0x37,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
192 VAR_MagicResistance = 0x38,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
193 VAR_FireResistanceBonus = 0x39,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
194 VAR_AirResistanceBonus = 0x3A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
195 VAR_WaterResistanceBonus = 0x3B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
196 VAR_EarthResistanceBonus = 0x3C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
197 VAR_SpiritResistanceBonus = 0x3D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
198 VAR_MindResistanceBonus = 0x3E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
199 VAR_BodyResistanceBonus = 0x3F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
200 VAR_LightResistanceBonus = 0x40,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
201 VAR_DarkResistanceBonus = 0x41,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
202 VAR_PhysicalResistanceBonus = 0x42,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
203 VAR_MagicResistanceBonus = 0x43,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
204 VAR_StaffSkill = 0x44,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
205 VAR_SwordSkill = 0x45,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
206 VAR_DaggerSkill = 0x46,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
207 VAR_AxeSkill = 0x47,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
208 VAR_SpearSkill = 0x48,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
209 VAR_BowSkill = 0x49,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
210 VAR_MaceSkill = 0x4A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
211 VAR_BlasterSkill = 0x4B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
212 VAR_ShieldSkill = 0x4C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
213 VAR_LeatherSkill = 0x4D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
214 VAR_SkillChain = 0x4E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
215 VAR_PlateSkill = 0x4F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
216 VAR_FireSkill = 0x50,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
217 VAR_AirSkill = 0x51,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
218 VAR_WaterSkill = 0x52,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
219 VAR_EarthSkill = 0x53,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
220 VAR_SpiritSkill = 0x54,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
221 VAR_MindSkill = 0x55,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
222 VAR_BodySkill = 0x56,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
223 VAR_LightSkill = 0x57,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
224 VAR_DarkSkill = 0x58,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
225 VAR_IdentifyItemSkill = 0x59,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
226 VAR_MerchantSkill = 0x5A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
227 VAR_RepairSkill = 0x5B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
228 VAR_BodybuildingSkill = 0x5C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
229 VAR_MeditationSkill = 0x5D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
230 VAR_PerceptionSkill = 0x5E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
231 VAR_DiplomacySkill = 0x5F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
232 VAR_ThieverySkill = 0x60,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
233 VAR_DisarmTrapSkill = 0x61,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
234 VAR_DodgeSkill = 0x62,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
235 VAR_UnarmedSkill = 0x63,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
236 VAR_IdentifyMonsterSkill = 0x64,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
237 VAR_ArmsmasterSkill = 0x65,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
238 VAR_StealingSkill = 0x66,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
239 VAR_AlchemySkill = 0x67,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
240 VAR_LearningSkill = 0x68,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
241 VAR_Cursed = 0x69,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
242 VAR_Weak = 0x6A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
243 VAR_Asleep = 0x6B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
244 VAR_Afraid = 0x6C,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
245 VAR_Drunk = 0x6D,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
246 VAR_Insane = 0x6E,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
247 VAR_PoisonedGreen = 0x6F,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
248 VAR_DiseasedGreen = 0x70,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
249 VAR_PoisonedYellow = 0x71,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
250 VAR_DiseasedYellow = 0x72,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
251 VAR_PoisonedRed = 0x73,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
252 VAR_DiseasedRed = 0x74,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
253 VAR_Paralyzed = 0x75,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
254 VAR_Unconsious = 0x76,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
255 VAR_Dead = 0x77,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
256 VAR_Stoned = 0x78,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
257 VAR_Eradicated = 0x79,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
258 VAR_MajorCondition = 0x7A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
259 VAR_MapPersistentVariable_0 = 123,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
260 VAR_MapPersistentVariable_74 = 0xC5,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
261 VAR_MapPersistentVariable_75 = 0xC6,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
262 VAR_MapPersistentVariable_99 = 0xDE,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
263 VAR_AutoNotes = 0xDF,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
264 VAR_IsMightMoreThanBase = 0xE0,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
265 VAR_IsIntellectMoreThanBase = 0xE1,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
266 VAR_IsPersonalityMoreThanBase = 0xE2,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
267 VAR_IsEnduranceMoreThanBase = 0xE3,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
268 VAR_IsSpeedMoreThanBase = 0xE4,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
269 VAR_IsAccuracyMoreThanBase = 0xE5,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
270 VAR_IsLuckMoreThanBase = 0xE6,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
271 VAR_PlayerBits = 0xE7,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
272 VAR_NPCs2 = 0xE8,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
273 VAR_IsFlying = 0xF0,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
274 VAR_HiredNPCHasSpeciality = 0xF1,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
275 VAR_CircusPrises = 0xF2,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
276 VAR_NumSkillPoints = 0xF3,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
277 VAR_MonthIs = 0xF4,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
278 VAR_Counter1 = 0xF5,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
279 VAR_Counter2 = 0xF6,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
280 VAR_Counter3 = 0xF7,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
281 VAR_Counter4 = 0xF8,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
282 VAR_Counter5 = 0xF9,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
283 VAR_Counter6 = 0xFa,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
284 VAR_Counter7 = 0xFB,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
285 VAR_Counter8 = 0xFC,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
286 VAR_Counter9 = 0xFD,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
287 VAR_Counter10 = 0xFE,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
288 VAR_UnknownTimeEvent0 = 0xFF,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
289 VAR_UnknownTimeEvent19 = 0x112,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
290 VAR_ReputationInCurrentLocation = 0x113,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
291 VAR_History_0 = 0x114,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
292 VAR_History_28 = 0x130,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
293 VAR_Unknown1 = 0x131,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
294 VAR_GoldInBank = 0x132,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
295 VAR_NumDeaths = 0x133,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
296 VAR_NumBounties = 0x134,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
297 VAR_PrisonTerms = 0x135,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
298 VAR_ArenaWinsPage = 0x136,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
299 VAR_ArenaWinsSquire = 0x137,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
300 VAR_ArenaWinsKnight = 0x138,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
301 VAR_ArenaWinsLord = 0x139,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
302 VAR_Invisible = 0x13A,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
303 VAR_ItemEquipped = 0x13B,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
304 };
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
305
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
306 #define EVT_WORD(x) *(unsigned __int16*)&x
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
307 #define EVT_DWORD(x) *(unsigned int*)&x
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
308 #define EVT_STRING(x) (unsigned char*)&x
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
309 #define EVT_BYTE(x) (unsigned char)x
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
310
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
311 extern std::array<EventIndex, 4400> pSomeOtherEVT_Events;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
312 extern signed int uSomeOtherEVT_NumEvents;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
313 extern char *pSomeOtherEVT;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
314 extern std::array<EventIndex, 4400> pSomeEVT_Events;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
315 extern signed int uSomeEVT_NumEvents;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
316 extern char *pSomeEVT;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
317
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
318 extern unsigned int uGlobalEVT_NumEvents;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
319 extern unsigned int uGlobalEVT_Size;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
320 extern std::array<char, 46080> pGlobalEVT;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
321 extern std::array<EventIndex, 4400> pGlobalEVT_Index;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
322
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
323 extern std::array<unsigned int, 500> pLevelStrOffsets;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
324 extern unsigned int uLevelStrNumStrings;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
325 extern unsigned int uLevelStrFileSize;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
326 extern signed int uLevelEVT_NumEvents;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
327 extern unsigned int uLevelEVT_Size;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
328 extern std::array<char, 9216> pLevelStr;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
329 extern std::array<char, 9216> pLevelEVT;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
330 extern std::array<EventIndex, 4400> pLevelEVT_Index;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
331
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
332
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
333 unsigned int LoadEventsToBuffer(const char *pContainerName, char *pBuffer, unsigned int uBufferSize);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
334 void Initialize_GlobalEVT();
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
335 void LoadLevel_InitializeLevelEvt();
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
336 void EventProcessor(int uEventID, int a2, int a3, int entry_line = 0);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
337 char *GetEventHintString(unsigned int uEventID); // idb
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
338
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
339
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
340
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
341 /* 312 */
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
342 #pragma pack(push, 1)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
343 struct ByteArray
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
344 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
345 char f[65535];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
346 };
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
347 #pragma pack(pop)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
348
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
349 void init_event_triggers();
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
350 void check_event_triggers();
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
351 bool sub_4465DF_check_season(int a1);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
352 void __fastcall sub_448CF4_spawn_monsters(__int16 typeindex, __int16 level, int count, int x, int y, int z, int group, unsigned int uUniqueName);