comparison mm7_unsorted_subs.h @ 2152:d44b7775fc06

Removed DirectDraw2 compatibility. 3D Sound enabled (change 3DSoundProvider registry entry to activate it). Moved all forward declarations to mm7_unsorted_subs.h (many cpp files do not need them anyweay).
author Nomad
date Thu, 09 Jan 2014 01:37:34 +0200
parents
children d28d3c006077
comparison
equal deleted inserted replaced
2151:92511cd8fcdb 2152:d44b7775fc06
1 #pragma once
2
3
4
5 //-------------------------------------------------------------------------
6 // Function declarations
7 void constructors();
8
9 void init_event_triggers();
10 void check_event_triggers();
11
12
13
14
15 void ShowIntroVideo_and_LoadingScreen();
16 unsigned int GameOverMenu(void *ecx0);
17 int __fastcall SpawnRandomTreasure(struct MapInfo *a1, struct SpawnPointMM7 *a2);
18 void DamageMonsterFromParty(signed int a1, unsigned int uActorID_Monster, struct Vec3_int_ *pVelocity);
19
20 void MakeActorAIList_ODM();
21 int MakeActorAIList_BLV();
22 void UpdateActorAI();
23 bool __fastcall sub_4070EF_prolly_detect_player(unsigned int uObjID, unsigned int uObj2ID);
24 bool __fastcall sub_4075DB(int a1, int a2, int a3, struct BLVFace *face);
25 bool __fastcall sub_4077F1(int a1, int a2, int a3, struct ODMFace *face, struct BSPVertexBuffer *a5);
26 bool __fastcall sub_407A1C(int x, int z, int y, struct Vec3_int_ v); // idb
27 void InitializeActors();
28 void InitializeSpriteObjects();
29 int __fastcall sub_4088E9(int a1, int a2, int a3, int a4, int a5, int a6);
30 unsigned int SearchAliveActors(unsigned int *pTotalActors);
31 unsigned int SearchActorByMonsterID(unsigned int *pTotalActors, int uMonsterID);
32 unsigned int SearchActorByGroup(unsigned int *pTotalActors, unsigned int uGroup);
33 unsigned int SearchActorByID(unsigned int *pTotalActors, unsigned int a2);
34 void PrepareArcomage();
35 void DoBlt_Copy(unsigned __int16 *pPixels); // idb
36 void __fastcall ZBuffer_Fill(int *pZBuffer, int uTextureId, int iZValue);
37 void __fastcall ZBuffer_DoFill(int *pZBuffer, struct Texture *pTex, int uZValue);
38 void __fastcall ZBuffer_DoFill2(int *pZBuffer, struct Texture *a2, int a3); // idb
39 void SetMoonPhaseNames();
40 int __fastcall sub_410D99_get_map_index(int a1);
41 void __fastcall LoadThumbnailLloydTexture(unsigned int uSlot, unsigned int uPlayer);
42 void SetAttributeNames();
43 void uGameUIFontMain_initialize();
44 void uGameUIFontShadow_initialize();
45 void Inventory_ItemPopupAndAlchemy();
46 void UI_OnMouseRightClick(struct Vec2_int_ *_this);
47 void UI_OnMouseLeftClick(int *pXY); // idb
48 unsigned int UI_GetHealthManaAndOtherQualitiesStringColor(signed int current_pos, signed int base_pos);
49 unsigned int __fastcall GetSizeInInventorySlots(unsigned int uNumPixels);
50 struct GUIButton *__fastcall GUI_HandleHotkey(unsigned __int8 uHotkey); // idb
51 int __fastcall GUI_ReplaceHotkey(unsigned __int8 uOldHotkey, unsigned __int8 uNewHotkey, char bFirstCall);
52 void DrawBuff_remaining_time_string(int uY, struct GUIWindow *window, __int64 remaining_time, struct GUIFont *Font);
53 bool UI_OnKeyDown(unsigned int vkKey);
54 void GameUI_DrawItemInfo(struct ItemGen* inspect_item); // idb
55 void MonsterPopup_Draw(unsigned int uActorID, struct GUIWindow *window);
56 void LoadActualSkyFrame();
57 void Sleep6Hours();
58 void ChestUI_WritePointedObjectStatusString();
59 void OnChestLeftClick();
60 void GameUI_WritePointedObjectStatusString();
61 void __fastcall GameUI_OnPlayerPortraitLeftClick(unsigned int uPlayerID); // idb
62 void OnGameViewportClick();
63 bool PauseGameDrawing();
64 void SetUserInterface(enum PartyAlignment alignment, bool bReplace);
65 void reset_some_strus_flt_2Cs();
66 int __fastcall GetPortalScreenCoord(unsigned int uFaceID);
67 bool PortalFrustrum(int pNumVertices, struct BspRenderer_PortalViewportData *a2, struct BspRenderer_PortalViewportData *near_portal, int uFaceID);
68 int ODM_NearClip(unsigned int uVertexID); // idb
69 int ODM_FarClip(unsigned int uNumVertices);
70 bool sub_427769_isSpellQuickCastableOnShiftClick(unsigned int uSpellID);
71 void _42777D_CastSpell_UseWand_ShootArrow(int a1, unsigned int uPlayerID, unsigned int a4, __int16 a5, int a6);
72 void _42ECB5_PlayerAttacksActor();
73 void InitializeTurnBasedAnimations(void *);
74 bool __fastcall sub_42F7EB_DropItemAt(unsigned int uSpriteID, int x, int y, int z, int a4, int count, int a7, unsigned __int16 attributes, ItemGen *a9);
75 void __fastcall sub_42F960_create_object(int x, int y, int z); // idb
76 void CompactLayingItemsList();
77 void _42FA66_do_explosive_impact(int a1, int a2, int a3, int a4, __int16 a5, signed int a6);
78 bool _42FB5C_check_spell(signed int spell_id);
79 void sub_42FBDD();
80 void CloseWindowBackground();
81 void ProcessInputActions();
82 void GameUI_MsgProc();
83 void back_to_game();
84 void GUI_MainMenuMessageProc();
85 double get_shading_dist_mist();
86 void area_of_effect__damage_evaluate();
87 void __fastcall DamagePlayerFromMonster(unsigned int uObjID, int a2, struct Vec3_int_ *pPos, signed int a4);
88 void __fastcall sub_43A97E(unsigned int uLayingItemID, signed int a2); // idb
89 double __fastcall sub_43AE12(signed int a1);
90 int __fastcall _43AFE3_calc_spell_damage(int a1, int a2, signed int a3, int a4);
91 void ItemDamageFromActor(unsigned int uObjID, unsigned int uActorID, struct Vec3_int_ *pVelocity);
92 void ActorDamageFromMonster(signed int attacker_id, unsigned int actor_id, struct Vec3_int_ *pVelocity, signed int a4);
93 void CharacterUI_LoadPaperdollTextures();
94 int __fastcall GetItemTextureFilename(char *pOut, signed int item_id, int index, int shoulder);
95 bool IsDwarfPresentInParty(bool b);
96 bool ShouldLoadTexturesForRaceAndGender(unsigned int _this);
97 void WetsuitOn(unsigned int uPlayerID); // idb
98 void WetsuitOff(unsigned int uPlayerID);
99 void __fastcall PrepareDrawLists_BLV();
100 void FindBillboardsLightLevels_BLV();
101 int __fastcall _43F55F_get_billboard_light_level(struct RenderBillboard *a1, int uBaseLightLevel);
102 int __fastcall _43F5C8_get_point_light_level_with_respect_to_lights(unsigned int uBaseLightLevel, int uSectorID, float x, float y, float z);
103 void PrepareBspRenderList_BLV();
104 void PrepareDecorationsRenderList_BLV(unsigned int uDecorationID, unsigned int uSectorID);
105 void PrepareActorRenderList_BLV();
106 void PrepareItemsRenderList_BLV();
107 void AddBspNodeToRenderList(unsigned int node_id);
108 void __fastcall sub_4406BC(unsigned int node_id, unsigned int uFirstNode); // idb
109 bool sub_44100D();
110 __int16 __fastcall sub_441A4E(int a1);
111 void DrawBook_Map_sub(unsigned int tl_x, unsigned int tl_y, unsigned int br_x, int br_y, int _48074); // idb
112 void Initialize2DA();
113 void LoadLevel_InitializeLevelStr();
114 void OnMapLeave();
115 void OnMapLoad();
116 void Level_LoadEvtAndStr(const char *pLevelName);
117 const char *GetMapBookHintText();//sub_444564
118 char *GetEventHintString(unsigned int uEventID); // idb
119 int GetTravelTime();
120 void __fastcall sub_4451A8_press_any_key(int a1, int a2, int a4);
121 unsigned int SkillToMastery(unsigned int skill_value);
122 unsigned int __fastcall GetSpellColor(signed int a1);
123 unsigned short * MakeScreenshot(signed int width, signed int height);
124 void SaveScreenshot(const char *pFilename);
125 void __fastcall LoadGame(unsigned int uSlot); // idb
126 void SaveGame(bool IsAutoSAve, bool NotSaveWorld);
127 void __fastcall DoSavegame(unsigned int uSlot); // idb
128 bool Initialize_GamesLOD_NewLOD();
129 void SaveNewGame();
130 void PrepareToLoadBLV(unsigned int bLoading);
131 void __fastcall PrepareToLoadODM(unsigned int bLoading, struct ODMRenderParams *a2);
132 void _461103_load_level_sub();
133 void MainMenu_Loop();
134 char sub_4637E0_is_there_popup_onscreen();
135 void ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows();
136 void PrepareWorld(unsigned int _0_box_loading_1_fullscreen);
137 void Game_DeinitializeAndTerminate(int exitCode); // idb
138 void FinalInitialization();
139 char Is_out15odm_underwater();
140 void SetUnderwaterFog();
141 void DoPrepareWorld(unsigned int bLoading, int _1_fullscreen_loading_2_box);
142 int __fastcall ReadWindowsRegistryInt(const char *pKey, int uDefValue); // idb
143 void __fastcall WriteWindowsRegistryString(const char *pKey, const char *pString);
144 void __fastcall ReadWindowsRegistryString(const char *pKeyName, char *pOutString, int uBufLen, const char *pDefaultValue);
145 void __fastcall WriteWindowsRegistryInt(const char *pKey, int val);
146 bool __fastcall CheckMM7CD(char c);
147 void SecondaryInitialization();
148 void CreateAsyncMouse();
149 void CreateAsyncKeyboard();
150 void MM6_Initialize(const wchar_t *pIniFilename);
151 void MM7Initialization();
152 void SetCurrentMenuID(enum MENU_STATE); // idb
153 enum MENU_STATE GetCurrentMenuID();
154 void CreateMsgScrollWindow(signed int mscroll_id);
155 void free_book_subwindow();
156 void CreateScrollWindow();
157 void OnPaperdollLeftClick();
158 void OnPressSpace();
159 char __fastcall DoInteractionWithTopmostZObject(int a1, int a2);
160 void OracleDialogue();
161 void __fastcall ClickNPCTopic(signed int uMessageParam);
162 char * _4B254D_SkillMasteryTeacher(int _this);
163 const char *ContractSelectText(int pEventCode);
164 void SimpleHouseDialog();
165 void CreateButtonInColumn(int a1, unsigned int a2);
166 void FillAviableSkillsToTeach(int _this);
167 void sub_4B3E1E();
168 void DrawJoinGuildWindow(int pEventCode);
169 void __fastcall _4B3FE5_training_dialogue(int a4);
170 void NPCHireableDialogPrepare();
171 void _4B4224_UpdateNPCTopics(int _this);
172 void __fastcall DrawTextAtStatusBar(const char *Str, int a5);
173 __int64 GetExperienceRequiredForLevel(int a1);
174 void CheckBountyRespawnAndAward();
175 void Arena_SelectionFightLevel();
176 void ArenaFight();
177 void SpellBookGenerator();
178 void UI_CreateEndConversationButton();
179 void __fastcall OnSelectShopDialogueOption(signed int uMessageParam);
180 int HouseDialogPressCloseBtn();
181 bool MerchandiseTest(ItemGen *item, int _2da_idx);
182 void UIShop_Buy_Identify_Repair();
183 bool __fastcall IsBModelVisible(unsigned int uModelID, int *unused);
184 void ODM_LoadAndInitialize(const char *pLevelFilename, struct ODMRenderParams *thisa);
185 unsigned int GetLevelFogColor();
186 int __fastcall sub_47C3D7_get_fog_related_stuff(int a1, int a2, float a3);
187 int __fastcall GetActorTintColor(int max_dim, int min_dim, float distance, int a4, struct RenderBillboard *a5);
188 unsigned int WorldPosToGridCellX(int); // weak
189 unsigned int WorldPosToGridCellZ(int); // weak
190 int GridCellToWorldPosX(int); // weak
191 int GridCellToWorldPosZ(int); // weak
192 void sub_481ED9_MessWithODMRenderParams();
193 bool IsTerrainSlopeTooHigh(int pos_x, int pos_y);
194 int __fastcall GetTerrainHeightsAroundParty2(int a1, int a2, int *a3, int a4);
195 void sub_487DA9();
196 double GetFogDensityByTime(struct OutdoorLocation *_this);
197 bool __fastcall HSV2RGB(float *a1, float *a2, float *a3, float a4, float a5, float a6);
198 void __fastcall RGB2HSV(float *a1, float *a2, float a3, float a4, float a5, float *a6);
199 signed int ReplaceHSV(unsigned int uColor, float a2, float gamma, float a4);
200 bool PlayerCreation_Choose4Skills();
201 int PlayerCreation_GetUnspentAttributePointCount();
202 void LoadPlayerPortraintsAndVoices();
203 void ReloadPlayerPortraits(int player_id, int face_id);
204 void sub_491E3A();
205 int CycleCharacter(bool backwards);
206 void __fastcall Rest(unsigned int uHoursToSleep);
207 void _493938_regenerate();
208 void init_summoned_item(struct stru351_summoned_item *_this, __int64 duration);
209 void _494035_timed_effects__water_walking_damage__etc();
210 unsigned int __fastcall _494820_training_time(unsigned int a1);
211 char *__fastcall sub_495366(unsigned __int8 a1, unsigned __int8 a2);
212 const char *GetReputationString(signed int a1);
213 char *BuildDialogueString(const char *lpsz, unsigned __int8 uPlayerID, struct ItemGen *a3, char *a4, int a5, __int64 *a6);
214 void PlayerCreationUI_Draw();
215 void PlayerCreationUI_Initialize();
216 void DeleteCCharFont();
217 bool PlayerCreationUI_Loop();
218 unsigned int __fastcall GetMaxMipLevels(unsigned int uDim);
219 bool CheckTextureStages();
220 bool AreRenderSurfacesOk();
221 void DoRenderBillboards_D3D();
222 struct SoundHeader *FindSound_BinSearch(unsigned int uStart, unsigned int uEnd, const char *pName);
223 struct SoundData *LoadSound(const char *pSoundName, struct SoundData *pOutBuff, unsigned int uID);
224 int __fastcall sub_4AAEA6_transform(struct RenderVertexSoft *a1);
225 int __fastcall sub_4AB66C(int, int); // weak
226 int GetSoundStrengthByDistanceFromParty(int x, int y, int z);
227 struct _DIG_DRIVER *Audio_GetFirstHardwareDigitalDriver(void);
228 void PlayLevelMusic();
229 unsigned int __fastcall sub_4B0E07(unsigned int uFaceID); // idb
230 void sub_4B1447_party_fine(int a1, int a2, int a3);
231 void sub_4B1523(int *_this);
232 void ShowPopupShopItem();
233 void RestAndHeal(__int64 uNumMinutes); // idb
234 void GetHouseGoodbyeSpeech();
235 int __fastcall _46A6AC_spell_render(int a1, int a2, int a3);
236 int __fastcall _46A6AC_spell_render_d3d(int a1, int a2, int a3);
237 int __fastcall _46A89E_immolation_effect(int a1, int a2, int a3);
238 int sub_46A99B();
239 unsigned int GetGravityStrength();
240 void UpdateUserInput_and_MapSpecificStuff();
241 void BLV_UpdateUserInputAndOther();
242 void ODM_UpdateUserInputAndOther();
243 bool __fastcall _46BFFA_check_object_intercept(unsigned int uLayingItemID, signed int a2);
244 int BLV_GetFloorLevel(int x, int y, int z, unsigned int uSectorID, unsigned int *pFaceID);
245 int ODM_GetFloorLevel(int X, signed int Y, int Z, int, int *pOnWater, int *bmodel_pid, int bWaterWalk);
246 int GetCeilingHeight(int Party_X, signed int Party_Y, int Party_ZHeight, int pFaceID);
247 void ODM_GetTerrainNormalAt(int pos_x, int pos_z, Vec3_int_ *out);
248 unsigned int __fastcall sub_46DEF2(signed int a2, unsigned int uLayingItemID);
249 void _46E0B2_collide_against_decorations();
250 void __fastcall _46E26D_collide_against_sprites(signed int a1, signed int a2);
251 int _46E44E_collide_against_faces_and_portals(unsigned int b1); // idb
252 int __fastcall _46E889_collide_against_bmodels(unsigned int ecx0);
253 int collide_against_floor(int x, int y, int z, unsigned int *pSectorID, unsigned int *pFaceID); // idb
254 void __fastcall _46ED8A_collide_against_sprite_objects(unsigned int _this);
255 int _46EF01_collision_chech_player(int a1); // idb
256 int _46F04E_collide_against_portals();
257 void BLV_UpdateDoors();
258 void UpdateActors_BLV();
259 void UpdateActors_ODM();
260 void UpdateObjects();
261 int collide_against_floor_approximate(int x, int y, int z, unsigned int *pSectorID, unsigned int *pFaceID); // idb
262 void BLV_ProcessPartyActions();
263 void ODM_ProcessPartyActions();
264 bool sub_47531C(int a1, int *a2, int pos_x, int pos_y, int pos_z, int dir_x, int dir_y, int dir_z, struct BLVFace *face, int a10);
265 bool sub_4754BF(int a1, int *a2, int X, int Y, int Z, int dir_x, int dir_y, int dir_z, struct BLVFace *face, int a10, int a11);
266 int sub_475665(struct BLVFace *face, int a2, __int16 a3);
267 bool __fastcall sub_4759C9(struct BLVFace *face, int a2, int a3, __int16 a4);
268 bool __fastcall sub_475D85(Vec3_int_ *a1, Vec3_int_ *a2, int *a3, struct BLVFace *a4);
269 bool __fastcall sub_475F30(int *a1, struct BLVFace *a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9);
270 void sub_4452BB();
271 const char *GetProfessionActionText(int a1);
272 struct NPCData *__fastcall GetNPCData(signed int npcid);
273 struct NPCData * GetNewNPCData(signed int npcid, int* npc_indx);
274 int __fastcall GetGreetType(signed int SpeakingNPC_ID);
275 void DialogueEnding();
276 void PrepareHouse(enum HOUSE_ID house); // idb
277 bool EnterHouse(enum HOUSE_ID uHouseID);
278 bool sub_4465DF_check_season(int a1);
279 int __fastcall IsActorAlive(unsigned int uType, unsigned int uParam, unsigned int uNumAlive); // idb
280 int NPC_EventProcessor(int npc_event_id, int entry_line = 0);
281 void __fastcall sub_448518_npc_set_item(int npc, unsigned int item, int a3);
282 void __fastcall sub_44861E_set_texture(unsigned int uFaceCog, const char *pFilename);
283 void __fastcall SetDecorationSprite(uint16_t uCog, bool bHide, const char *pFileName); // idb
284 void __fastcall sub_44892E_set_faces_bit(int sCogNumber, int bit, int on);
285 void __fastcall ToggleActorGroupFlag(unsigned int uGroupID, unsigned int uFlag, unsigned int bToggle);
286 void GameUI_StatusBar_UpdateTimedString(unsigned int bForceHide); // idb
287 void OnTimer(int);
288 void __fastcall sub_448CF4_spawn_monsters(__int16 typeindex, __int16 level, int count, int x, int y, int z, int group, unsigned int uUniqueName);
289 void __fastcall EventCastSpell(int uSpellID, int uSkillLevel, int uSkill, int fromx, int fromy, int fromz, int tox, int toy, int toz);//sub_448DF8
290 void Door_switch_animation(unsigned int uDoorID, int a2); // idb: sub_449A49
291 bool _449B57_test_bit(unsigned __int8 *a1, __int16 a2);
292 void _449B7E_toggle_bit(unsigned char *pArray, __int16 a2, unsigned __int16 bToggle); // idb
293 void ShowStatusBarString(const char *pString, unsigned int uNumSeconds);
294 void ShowNothingHereStatus();
295 int const_2();
296 bool TeleportToNWCDungeon();
297 void SpawnEncounter(struct MapInfo *pMapInfo, struct SpawnPointMM7 *spawn, int a3, int a4, int a5);
298 int __fastcall sub_44FA4C_spawn_light_elemental(int a1, int a2, int a3);
299 int __fastcall sub_450521_ProllyDropItemAt(int ecx0, signed int a2, int a3, int a4, int a5, unsigned __int16 a6);
300 int __fastcall _45063B_spawn_some_monster(struct MapInfo *a1, int a2);
301 void RespawnGlobalDecorations();
302 bool __fastcall SpawnActor(unsigned int uMonsterID);
303 int GetAlertStatus();
304 int integer_sqrt(int val);
305 int __fastcall GetDiceResult(unsigned int uNumDice, unsigned int uDiceSides); // idb
306 inline int round_to_int(float x) { return (int)floor(x + 0.5f); }
307 inline void __fastcall memset32(void *ptr, unsigned __int32 value, int count)
308 {
309 unsigned __int32* p = (unsigned __int32 *)ptr;
310 for ( int i=0; i < count; i++ )
311 *p++ = value;
312 }
313
314
315 namespace zlib
316 {
317 int MemZip(void *dest, unsigned int *destLen, void *source, unsigned int sourceLen);
318 int MemUnzip(void *dest, unsigned int *destLen, const void *source, unsigned int sourceLen);
319 };