comparison mm7_data.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 92511cd8fcdb
children 9bd7522cdbbb
comparison
equal deleted inserted replaced
2151:92511cd8fcdb 2152:d44b7775fc06
447 extern std::array<unsigned __int8, 14> pPartySpellbuffsUI_smthns; 447 extern std::array<unsigned __int8, 14> pPartySpellbuffsUI_smthns;
448 extern std::array< std::array<int, 6>, 6> pNPCPortraits_x; // 004E5E50 448 extern std::array< std::array<int, 6>, 6> pNPCPortraits_x; // 004E5E50
449 extern std::array< std::array<int, 6>, 6> pNPCPortraits_y; // 004E5EE0 449 extern std::array< std::array<int, 6>, 6> pNPCPortraits_y; // 004E5EE0
450 extern std::array<const char *, 11> pHouse_ExitPictures; 450 extern std::array<const char *, 11> pHouse_ExitPictures;
451 extern std::array<const char *, 11> _4E6BDC_loc_names; 451 extern std::array<const char *, 11> _4E6BDC_loc_names;
452 extern int bWinNT4_0; // weak
453 extern std::array<__int16, 11> word_4E8152; 452 extern std::array<__int16, 11> word_4E8152;
454 extern std::array< std::array<char, 14>, 7> byte_4E8168; 453 extern std::array< std::array<char, 14>, 7> byte_4E8168;
455 //extern stru355 stru_4E82A4;// = {0x20, 0x41, 0, 0x20, 0xFF0000, 0xFF00, 0xFF, 0xFF000000}; moved to texture.h 454 //extern stru355 stru_4E82A4;// = {0x20, 0x41, 0, 0x20, 0xFF0000, 0xFF00, 0xFF, 0xFF000000}; moved to texture.h
456 //extern stru355 stru_4EFCBC;// = {0x20, 0x41, 0, 0x10, 0x7C00, 0x3E0, 0x1F, 0x8000}; moved to texture.h 455 //extern stru355 stru_4EFCBC;// = {0x20, 0x41, 0, 0x10, 0x7C00, 0x3E0, 0x1F, 0x8000}; moved to texture.h
457 extern char byte_4E94D0; // weak 456 extern char byte_4E94D0; // weak
788 extern int pSaveListPosition; // weak 787 extern int pSaveListPosition; // weak
789 extern unsigned int uLoadGameUI_SelectedSlot; 788 extern unsigned int uLoadGameUI_SelectedSlot;
790 extern HWND hInsertCDWindow; // idb 789 extern HWND hInsertCDWindow; // idb
791 extern int uCPUSpeed; // weak 790 extern int uCPUSpeed; // weak
792 extern char cMM7GameCDDriveLetter; // idb 791 extern char cMM7GameCDDriveLetter; // idb
793 extern void *ptr_6A0D08;
794 extern int _6A0D0C_txt_lod_loading; // weak
795 extern int _6A0D10_txt_lod_loading__unused; // weak
796 extern enum MENU_STATE sCurrentMenuID; 792 extern enum MENU_STATE sCurrentMenuID;
797 extern unsigned int uGameState; 793 extern unsigned int uGameState;
798 extern int uDefaultTravelTime_ByFoot; // weak 794 extern int uDefaultTravelTime_ByFoot; // weak
799 extern int day_attrib; // weak 795 extern int day_attrib; // weak
800 extern int day_fogrange_1; // weak 796 extern int day_fogrange_1; // weak
801 extern int day_fogrange_2; // weak 797 extern int day_fogrange_2; // weak
802 extern struct TileTable *pTileTable; // idb 798 extern struct TileTable *pTileTable; // idb
803 extern int texmapping_terrain_subdivsize; // weak
804 extern int texmapping_terrain_subdivpow2; // weak
805 extern int texmapping_building_subdivsize; // weak
806 extern int texmapping_building_subdivpow2; // weak
807 extern int mipmapping_building_mm1; // weak
808 extern int mipmapping_building_mm2; // weak
809 extern int mipmapping_building_mm3; // weak
810 extern int mipmapping_terrain_mm1; // weak
811 extern int mipmapping_terrain_mm2; // weak
812 extern int mipmapping_terrain_mm3; // weak
813 extern int outdoor_grid_band_1; // idb 799 extern int outdoor_grid_band_1; // idb
814 extern int outdoor_grid_band_2; // idb 800 extern int outdoor_grid_band_2; // idb
815 extern int outdoor_grid_band_3; // idb 801 extern int outdoor_grid_band_3; // idb
816 extern char outdoor_day_top_r; // weak
817 extern char outdoor_day_top_g; // weak
818 extern char outdoor_day_top_b; // weak
819 extern char outdoor_day_bottom_r; // weak
820 extern char outdoor_day_bottom_g; // weak
821 extern char outdoor_day_bottom_b; // weak
822 extern char outdoor_night_top_r; // weak
823 extern char outdoor_night_top_g; // weak
824 extern char outdoor_night_top_b; // weak
825 extern char outdoor_night_bottom_r; // weak
826 extern char outdoor_night_bottom_g; // weak
827 extern char outdoor_night_bottom_b; // weak
828 extern std::array<char, 777> pDefaultSkyTexture; // idb 802 extern std::array<char, 777> pDefaultSkyTexture; // idb
829 extern std::array<char, 16> byte_6BE124_cfg_textures_DefaultGroundTexture; // idb 803 extern std::array<char, 16> byte_6BE124_cfg_textures_DefaultGroundTexture; // idb
830 extern int _6BE134_odm_main_tile_group; // weak 804 extern int _6BE134_odm_main_tile_group; // weak
831 extern int dword_6BE138; // weak 805 extern int dword_6BE138; // weak
832 extern int dword_6BE13C_uCurrentlyLoadedLocationID; // weak 806 extern int dword_6BE13C_uCurrentlyLoadedLocationID; // weak
952 extern int contract_approved; // weak 926 extern int contract_approved; // weak
953 extern int dword_F8B1AC_award_bit_number; // idb 927 extern int dword_F8B1AC_award_bit_number; // idb
954 extern int dword_F8B1B0; // weak 928 extern int dword_F8B1B0; // weak
955 extern int gold_transaction_amount; // F8B1B4 929 extern int gold_transaction_amount; // F8B1B4
956 extern std::array<char *, 4> pShopOptions; 930 extern std::array<char *, 4> pShopOptions;
957 extern _UNKNOWN unk_F8B1C8; // weak
958 extern int dword_F8B1D8; // weak 931 extern int dword_F8B1D8; // weak
959 extern int dword_F8B1DC; // weak 932 extern int dword_F8B1DC; // weak
960 extern int dword_F8B1E0; // weak 933 extern int dword_F8B1E0; // weak
961 extern int dword_F8B1E4; // weak 934 extern int dword_F8B1E4; // weak
962 extern const char *current_npc_text; // 0xF8B1E8 935 extern const char *current_npc_text; // 0xF8B1E8
963 extern char dialogue_show_profession_details; // weak 936 extern char dialogue_show_profession_details; // weak
964 extern std::array<char, 777> byte_F8B1EF; // weak 937 extern std::array<char, 777> byte_F8B1EF; // weak
965 extern std::array<char, 4> byte_F8B1F0; 938 extern std::array<char, 4> byte_F8B1F0;
966 extern int dword_F8B1F4; // weak 939
967
968
969
970
971 //extern _UNKNOWN unk_F8BA50; // weak
972 extern char byte_F8BC0C; // weak
973 extern int bGameoverLoop; // weak 940 extern int bGameoverLoop; // weak
974 extern std::array<__int16, 104> intersect_face_vertex_coords_list_a; // word_F8BC48 941 extern std::array<__int16, 104> intersect_face_vertex_coords_list_a; // word_F8BC48
975 extern std::array<__int16, 104> intersect_face_vertex_coords_list_b; // word_F8BD18 942 extern std::array<__int16, 104> intersect_face_vertex_coords_list_b; // word_F8BD18
976 //extern _UNKNOWN unk_F8EA04; // weak 943
977 //extern _UNKNOWN unk_F8F8F8; // weak
978 extern int dword_F93F20; // weak
979 extern int dword_F93F70; // weak
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995 //-------------------------------------------------------------------------
996 // Function declarations
997 void constructors();
998
999 void init_event_triggers();
1000 void check_event_triggers();
1001
1002
1003
1004
1005 void ShowIntroVideo_and_LoadingScreen();
1006 unsigned int GameOverMenu(void *ecx0);
1007 int __fastcall SpawnRandomTreasure(struct MapInfo *a1, struct SpawnPointMM7 *a2);
1008 void DamageMonsterFromParty(signed int a1, unsigned int uActorID_Monster, struct Vec3_int_ *pVelocity);
1009
1010 void MakeActorAIList_ODM();
1011 int MakeActorAIList_BLV();
1012 void UpdateActorAI();
1013 bool __fastcall sub_4070EF_prolly_detect_player(unsigned int uObjID, unsigned int uObj2ID);
1014 bool __fastcall sub_4075DB(int a1, int a2, int a3, struct BLVFace *face);
1015 bool __fastcall sub_4077F1(int a1, int a2, int a3, struct ODMFace *face, struct BSPVertexBuffer *a5);
1016 bool __fastcall sub_407A1C(int x, int z, int y, struct Vec3_int_ v); // idb
1017 void InitializeActors();
1018 void InitializeSpriteObjects();
1019 int __fastcall sub_4088E9(int a1, int a2, int a3, int a4, int a5, int a6);
1020 unsigned int SearchAliveActors(unsigned int *pTotalActors);
1021 unsigned int SearchActorByMonsterID(unsigned int *pTotalActors, int uMonsterID);
1022 unsigned int SearchActorByGroup(unsigned int *pTotalActors, unsigned int uGroup);
1023 unsigned int SearchActorByID(unsigned int *pTotalActors, unsigned int a2);
1024 void PrepareArcomage();
1025 void DoBlt_Copy(unsigned __int16 *pPixels); // idb
1026 void __fastcall ZBuffer_Fill(int *pZBuffer, int uTextureId, int iZValue);
1027 void __fastcall ZBuffer_DoFill(int *pZBuffer, struct Texture *pTex, int uZValue);
1028 void __fastcall ZBuffer_DoFill2(int *pZBuffer, struct Texture *a2, int a3); // idb
1029 void SetMoonPhaseNames();
1030 int __fastcall sub_410D99_get_map_index(int a1);
1031 void __fastcall LoadThumbnailLloydTexture(unsigned int uSlot, unsigned int uPlayer);
1032 void SetAttributeNames();
1033 void uGameUIFontMain_initialize();
1034 void uGameUIFontShadow_initialize();
1035 void Inventory_ItemPopupAndAlchemy();
1036 void UI_OnMouseRightClick(struct Vec2_int_ *_this);
1037 void UI_OnMouseLeftClick(int *pXY); // idb
1038 unsigned int UI_GetHealthManaAndOtherQualitiesStringColor(signed int current_pos, signed int base_pos);
1039 unsigned int __fastcall GetSizeInInventorySlots(unsigned int uNumPixels);
1040 struct GUIButton *__fastcall GUI_HandleHotkey(unsigned __int8 uHotkey); // idb
1041 int __fastcall GUI_ReplaceHotkey(unsigned __int8 uOldHotkey, unsigned __int8 uNewHotkey, char bFirstCall);
1042 void DrawBuff_remaining_time_string(int uY, struct GUIWindow *window, __int64 remaining_time, struct GUIFont *Font);
1043 bool UI_OnKeyDown(unsigned int vkKey);
1044 void GameUI_DrawItemInfo(struct ItemGen* inspect_item); // idb
1045 void MonsterPopup_Draw(unsigned int uActorID, struct GUIWindow *window);
1046 void LoadActualSkyFrame();
1047 void Sleep6Hours();
1048 void ChestUI_WritePointedObjectStatusString();
1049 void OnChestLeftClick();
1050 void GameUI_WritePointedObjectStatusString();
1051 void __fastcall GameUI_OnPlayerPortraitLeftClick(unsigned int uPlayerID); // idb
1052 void OnGameViewportClick();
1053 bool PauseGameDrawing();
1054 void SetUserInterface(enum PartyAlignment alignment, bool bReplace);
1055 void reset_some_strus_flt_2Cs();
1056 int __fastcall GetPortalScreenCoord(unsigned int uFaceID);
1057 bool PortalFrustrum(int pNumVertices, struct BspRenderer_PortalViewportData *a2, struct BspRenderer_PortalViewportData *near_portal, int uFaceID);
1058 int ODM_NearClip(unsigned int uVertexID); // idb
1059 int ODM_FarClip(unsigned int uNumVertices);
1060 bool sub_427769_isSpellQuickCastableOnShiftClick(unsigned int uSpellID);
1061 void _42777D_CastSpell_UseWand_ShootArrow(int a1, unsigned int uPlayerID, unsigned int a4, __int16 a5, int a6);
1062 void _42ECB5_PlayerAttacksActor();
1063 void InitializeTurnBasedAnimations(void *);
1064 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);
1065 void __fastcall sub_42F960_create_object(int x, int y, int z); // idb
1066 void CompactLayingItemsList();
1067 void _42FA66_do_explosive_impact(int a1, int a2, int a3, int a4, __int16 a5, signed int a6);
1068 bool _42FB5C_check_spell(signed int spell_id);
1069 void sub_42FBDD();
1070 void CloseWindowBackground();
1071 void ProcessInputActions();
1072 void GameUI_MsgProc();
1073 void back_to_game();
1074 void GUI_MainMenuMessageProc();
1075 double get_shading_dist_mist();
1076 void Vec3_short__to_RenderVertexSoft(struct RenderVertexSoft *_this, struct Vec3_short_ *a2);
1077 void area_of_effect__damage_evaluate();
1078 void __fastcall DamagePlayerFromMonster(unsigned int uObjID, int a2, struct Vec3_int_ *pPos, signed int a4);
1079 void __fastcall sub_43A97E(unsigned int uLayingItemID, signed int a2); // idb
1080 double __fastcall sub_43AE12(signed int a1);
1081 int __fastcall _43AFE3_calc_spell_damage(int a1, int a2, signed int a3, int a4);
1082 void ItemDamageFromActor(unsigned int uObjID, unsigned int uActorID, struct Vec3_int_ *pVelocity);
1083 void ActorDamageFromMonster(signed int attacker_id, unsigned int actor_id, struct Vec3_int_ *pVelocity, signed int a4);
1084 void CharacterUI_LoadPaperdollTextures();
1085 int __fastcall GetItemTextureFilename(char *pOut, signed int item_id, int index, int shoulder);
1086 bool IsDwarfPresentInParty(bool b);
1087 bool ShouldLoadTexturesForRaceAndGender(unsigned int _this);
1088 void WetsuitOn(unsigned int uPlayerID); // idb
1089 void WetsuitOff(unsigned int uPlayerID);
1090 void __fastcall PrepareDrawLists_BLV();
1091 void FindBillboardsLightLevels_BLV();
1092 int __fastcall _43F55F_get_billboard_light_level(struct RenderBillboard *a1, int uBaseLightLevel);
1093 int __fastcall _43F5C8_get_point_light_level_with_respect_to_lights(unsigned int uBaseLightLevel, int uSectorID, float x, float y, float z);
1094 void PrepareBspRenderList_BLV();
1095 void PrepareDecorationsRenderList_BLV(unsigned int uDecorationID, unsigned int uSectorID);
1096 void PrepareActorRenderList_BLV();
1097 void PrepareItemsRenderList_BLV();
1098 void AddBspNodeToRenderList(unsigned int node_id);
1099 void __fastcall sub_4406BC(unsigned int node_id, unsigned int uFirstNode); // idb
1100 bool sub_44100D();
1101 __int16 __fastcall sub_441A4E(int a1);
1102 void DrawBook_Map_sub(unsigned int tl_x, unsigned int tl_y, unsigned int br_x, int br_y, int _48074); // idb
1103 void Initialize2DA();
1104 void LoadLevel_InitializeLevelStr();
1105 void OnMapLeave();
1106 void OnMapLoad();
1107 void Level_LoadEvtAndStr(const char *pLevelName);
1108 const char *GetMapBookHintText();//sub_444564
1109 char *GetEventHintString(unsigned int uEventID); // idb
1110 int GetTravelTime();
1111 void __fastcall sub_4451A8_press_any_key(int a1, int a2, int a4);
1112 unsigned int SkillToMastery(unsigned int skill_value);
1113 unsigned int __fastcall GetSpellColor(signed int a1);
1114 unsigned short * MakeScreenshot(signed int width, signed int height);
1115 void SaveScreenshot(const char *pFilename);
1116 void __fastcall LoadGame(unsigned int uSlot); // idb
1117 void SaveGame(bool IsAutoSAve, bool NotSaveWorld);
1118 void __fastcall DoSavegame(unsigned int uSlot); // idb
1119 void TryLoadLevelFromLOD();
1120 void sub_46080D();
1121 bool Initialize_GamesLOD_NewLOD();
1122 void SaveNewGame();
1123 void PrepareToLoadBLV(unsigned int bLoading);
1124 void __fastcall PrepareToLoadODM(unsigned int bLoading, struct ODMRenderParams *a2);
1125 void _461103_load_level_sub();
1126 void MainMenu_Loop();
1127 char sub_4637E0_is_there_popup_onscreen();
1128 void ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows();
1129 void PrepareWorld(unsigned int _0_box_loading_1_fullscreen);
1130 void Game_DeinitializeAndTerminate(int exitCode); // idb
1131 void FinalInitialization();
1132 char Is_out15odm_underwater();
1133 void SetUnderwaterFog();
1134 void DoPrepareWorld(unsigned int bLoading, int _1_fullscreen_loading_2_box);
1135 int __fastcall ReadWindowsRegistryInt(const char *pKey, int uDefValue); // idb
1136 void __fastcall WriteWindowsRegistryString(const char *pKey, const char *pString);
1137 void __fastcall ReadWindowsRegistryString(const char *pKeyName, char *pOutString, int uBufLen, const char *pDefaultValue);
1138 void __fastcall WriteWindowsRegistryInt(const char *pKey, int val);
1139 bool __fastcall CheckMM7CD(char c);
1140 void SecondaryInitialization();
1141 void CreateAsyncMouse();
1142 void CreateAsyncKeyboard();
1143 void MM6_Initialize(const wchar_t *pIniFilename);
1144 void MM7Initialization();
1145 void SetCurrentMenuID(enum MENU_STATE); // idb
1146 enum MENU_STATE GetCurrentMenuID();
1147 void CreateMsgScrollWindow(signed int mscroll_id);
1148 void free_book_subwindow();
1149 void CreateScrollWindow();
1150 void OnPaperdollLeftClick();
1151 void OnPressSpace();
1152 char __fastcall DoInteractionWithTopmostZObject(int a1, int a2);
1153 void OracleDialogue();
1154 void __fastcall ClickNPCTopic(signed int uMessageParam);
1155 char * _4B254D_SkillMasteryTeacher(int _this);
1156 const char *ContractSelectText(int pEventCode);
1157 void SimpleHouseDialog();
1158 void CreateButtonInColumn(int a1, unsigned int a2);
1159 void FillAviableSkillsToTeach(int _this);
1160 void sub_4B3E1E();
1161 void DrawJoinGuildWindow(int pEventCode);
1162 void __fastcall _4B3FE5_training_dialogue(int a4);
1163 void NPCHireableDialogPrepare();
1164 void _4B4224_UpdateNPCTopics(int _this);
1165 void __fastcall DrawTextAtStatusBar(const char *Str, int a5);
1166 __int64 GetExperienceRequiredForLevel(int a1);
1167 void CheckBountyRespawnAndAward();
1168 void Arena_SelectionFightLevel();
1169 void ArenaFight();
1170 void SpellBookGenerator();
1171 void UI_CreateEndConversationButton();
1172 void __fastcall OnSelectShopDialogueOption(signed int uMessageParam);
1173 int HouseDialogPressCloseBtn();
1174 bool MerchandiseTest(ItemGen *item, int _2da_idx);
1175 void UIShop_Buy_Identify_Repair();
1176 bool __fastcall IsBModelVisible(unsigned int uModelID, int *unused);
1177 void ODM_LoadAndInitialize(const char *pLevelFilename, struct ODMRenderParams *thisa);
1178 unsigned int GetLevelFogColor();
1179 int __fastcall sub_47C3D7_get_fog_related_stuff(int a1, int a2, float a3);
1180 int __fastcall GetActorTintColor(int max_dim, int min_dim, float distance, int a4, struct RenderBillboard *a5);
1181 unsigned int WorldPosToGridCellX(int); // weak
1182 unsigned int WorldPosToGridCellZ(int); // weak
1183 int GridCellToWorldPosX(int); // weak
1184 int GridCellToWorldPosZ(int); // weak
1185 void sub_481ED9_MessWithODMRenderParams();
1186 bool IsTerrainSlopeTooHigh(int pos_x, int pos_y);
1187 int __fastcall GetTerrainHeightsAroundParty2(int a1, int a2, int *a3, int a4);
1188 void sub_487DA9();
1189 double GetFogDensityByTime(struct OutdoorLocation *_this);
1190 bool __fastcall HSV2RGB(float *a1, float *a2, float *a3, float a4, float a5, float a6);
1191 void __fastcall RGB2HSV(float *a1, float *a2, float a3, float a4, float a5, float *a6);
1192 signed int ReplaceHSV(unsigned int uColor, float a2, float gamma, float a4);
1193 bool PlayerCreation_Choose4Skills();
1194 int PlayerCreation_GetUnspentAttributePointCount();
1195 void LoadPlayerPortraintsAndVoices();
1196 void ReloadPlayerPortraits(int player_id, int face_id);
1197 void sub_491E3A();
1198 int CycleCharacter(bool backwards);
1199 void __fastcall Rest(unsigned int uHoursToSleep);
1200 void _493938_regenerate();
1201 void init_summoned_item(struct stru351_summoned_item *_this, __int64 duration);
1202 void _494035_timed_effects__water_walking_damage__etc();
1203 unsigned int __fastcall _494820_training_time(unsigned int a1);
1204 char *__fastcall sub_495366(unsigned __int8 a1, unsigned __int8 a2);
1205 const char *GetReputationString(signed int a1);
1206 char *BuildDialogueString(const char *lpsz, unsigned __int8 uPlayerID, struct ItemGen *a3, char *a4, int a5, __int64 *a6);
1207 void PlayerCreationUI_Draw();
1208 void PlayerCreationUI_Initialize();
1209 void DeleteCCharFont();
1210 bool PlayerCreationUI_Loop();
1211 unsigned int __fastcall GetMaxMipLevels(unsigned int uDim);
1212 bool CheckTextureStages();
1213 bool AreRenderSurfacesOk();
1214 unsigned int BlendColors(unsigned int c1, unsigned int c2); // weak
1215 void DoRenderBillboards_D3D();
1216 void Present_NoColorKey();
1217 unsigned int ModulateColor(unsigned int diffuse, float multiplier); // idb
1218 struct SoundHeader *FindSound_BinSearch(unsigned int uStart, unsigned int uEnd, const char *pName);
1219 struct SoundData *LoadSound(const char *pSoundName, struct SoundData *pOutBuff, unsigned int uID);
1220 int __fastcall sub_4AAEA6_transform(struct RenderVertexSoft *a1);
1221 int __fastcall sub_4AB66C(int, int); // weak
1222 int GetSoundStrengthByDistanceFromParty(int x, int y, int z);
1223 struct _DIG_DRIVER *Audio_GetFirstHardwareDigitalDriver(void);
1224 void PlayLevelMusic();
1225 unsigned int __fastcall sub_4B0E07(unsigned int uFaceID); // idb
1226 void sub_4B1447_party_fine(int a1, int a2, int a3);
1227 void sub_4B1523(int *_this);
1228 void ShowPopupShopItem();
1229 void RestAndHeal(__int64 uNumMinutes); // idb
1230 void GetHouseGoodbyeSpeech();
1231 int __fastcall _46A6AC_spell_render(int a1, int a2, int a3);
1232 int __fastcall _46A6AC_spell_render_d3d(int a1, int a2, int a3);
1233 int __fastcall _46A89E_immolation_effect(int a1, int a2, int a3);
1234 int sub_46A99B();
1235 unsigned int GetGravityStrength();
1236 void UpdateUserInput_and_MapSpecificStuff();
1237 void BLV_UpdateUserInputAndOther();
1238 void ODM_UpdateUserInputAndOther();
1239 bool __fastcall _46BFFA_check_object_intercept(unsigned int uLayingItemID, signed int a2);
1240 int BLV_GetFloorLevel(int x, int y, int z, unsigned int uSectorID, unsigned int *pFaceID);
1241 int ODM_GetFloorLevel(int X, signed int Y, int Z, int, int *pOnWater, int *bmodel_pid, int bWaterWalk);
1242 int GetCeilingHeight(int Party_X, signed int Party_Y, int Party_ZHeight, int pFaceID);
1243 void ODM_GetTerrainNormalAt(int pos_x, int pos_z, Vec3_int_ *out);
1244 unsigned int __fastcall sub_46DEF2(signed int a2, unsigned int uLayingItemID);
1245 void _46E0B2_collide_against_decorations();
1246 void __fastcall _46E26D_collide_against_sprites(signed int a1, signed int a2);
1247 int _46E44E_collide_against_faces_and_portals(unsigned int b1); // idb
1248 int __fastcall _46E889_collide_against_bmodels(unsigned int ecx0);
1249 int collide_against_floor(int x, int y, int z, unsigned int *pSectorID, unsigned int *pFaceID); // idb
1250 void __fastcall _46ED8A_collide_against_sprite_objects(unsigned int _this);
1251 int _46EF01_collision_chech_player(int a1); // idb
1252 int _46F04E_collide_against_portals();
1253 void BLV_UpdateDoors();
1254 void UpdateActors_BLV();
1255 void UpdateActors_ODM();
1256 void UpdateObjects();
1257 int collide_against_floor_approximate(int x, int y, int z, unsigned int *pSectorID, unsigned int *pFaceID); // idb
1258 void BLV_ProcessPartyActions();
1259 void ODM_ProcessPartyActions();
1260 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);
1261 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);
1262 int sub_475665(struct BLVFace *face, int a2, __int16 a3);
1263 bool __fastcall sub_4759C9(struct BLVFace *face, int a2, int a3, __int16 a4);
1264 bool __fastcall sub_475D85(Vec3_int_ *a1, Vec3_int_ *a2, int *a3, struct BLVFace *a4);
1265 bool __fastcall sub_475F30(int *a1, struct BLVFace *a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9);
1266 void sub_4452BB();
1267 const char *GetProfessionActionText(int a1);
1268 struct NPCData *__fastcall GetNPCData(signed int npcid);
1269 struct NPCData * GetNewNPCData(signed int npcid, int* npc_indx);
1270 int __fastcall GetGreetType(signed int SpeakingNPC_ID);
1271 void DialogueEnding();
1272 void PrepareHouse(enum HOUSE_ID house); // idb
1273 bool EnterHouse(enum HOUSE_ID uHouseID);
1274 bool sub_4465DF_check_season(int a1);
1275 int __fastcall IsActorAlive(unsigned int uType, unsigned int uParam, unsigned int uNumAlive); // idb
1276 int NPC_EventProcessor(int npc_event_id, int entry_line = 0);
1277 void __fastcall sub_448518_npc_set_item(int npc, unsigned int item, int a3);
1278 void __fastcall sub_44861E_set_texture(unsigned int uFaceCog, const char *pFilename);
1279 void __fastcall SetDecorationSprite(uint16_t uCog, bool bHide, const char *pFileName); // idb
1280 void __fastcall sub_44892E_set_faces_bit(int sCogNumber, int bit, int on);
1281 void __fastcall ToggleActorGroupFlag(unsigned int uGroupID, unsigned int uFlag, unsigned int bToggle);
1282 void GameUI_StatusBar_UpdateTimedString(unsigned int bForceHide); // idb
1283 void OnTimer(int);
1284 void __fastcall sub_448CF4_spawn_monsters(__int16 typeindex, __int16 level, int count, int x, int y, int z, int group, unsigned int uUniqueName);
1285 void __fastcall EventCastSpell(int uSpellID, int uSkillLevel, int uSkill, int fromx, int fromy, int fromz, int tox, int toy, int toz);//sub_448DF8
1286 void Door_switch_animation(unsigned int uDoorID, int a2); // idb: sub_449A49
1287 bool _449B57_test_bit(unsigned __int8 *a1, __int16 a2);
1288 void _449B7E_toggle_bit(unsigned char *pArray, __int16 a2, unsigned __int16 bToggle); // idb
1289 void ShowStatusBarString(const char *pString, unsigned int uNumSeconds);
1290 void ShowNothingHereStatus();
1291 int const_2();
1292 bool TeleportToNWCDungeon();
1293 void SpawnEncounter(struct MapInfo *pMapInfo, struct SpawnPointMM7 *spawn, int a3, int a4, int a5);
1294 int __fastcall sub_44FA4C_spawn_light_elemental(int a1, int a2, int a3);
1295 int __fastcall sub_450521_ProllyDropItemAt(int ecx0, signed int a2, int a3, int a4, int a5, unsigned __int16 a6);
1296 int __fastcall _45063B_spawn_some_monster(struct MapInfo *a1, int a2);
1297 void RespawnGlobalDecorations();
1298 bool __fastcall SpawnActor(unsigned int uMonsterID);
1299 int GetAlertStatus();
1300 int integer_sqrt(int val);
1301 int __fastcall MakeColorMaskFromBitDepth(int a1);
1302 void __fastcall fill_pixels_fast(unsigned int a1, unsigned __int16 *pPixels, unsigned int uNumPixels);
1303 int __fastcall GetDiceResult(unsigned int uNumDice, unsigned int uDiceSides); // idb
1304 inline int round_to_int(float x) { return (int)floor(x + 0.5f); }
1305 inline void __fastcall memset32(void *ptr, unsigned __int32 value, int count)
1306 {
1307 unsigned __int32* p = (unsigned __int32 *)ptr;
1308 for ( int i=0; i < count; i++ )
1309 *p++ = value;
1310 }
1311 #define ErrD3D(hr) do {extern void ErrHR(HRESULT, const char *, const char *, const char *, int); ErrHR(hr, "Direct3D", __FUNCTION__, __FILE__, __LINE__);} while(0)
1312
1313
1314 namespace zlib
1315 {
1316 int MemZip(void *dest, unsigned int *destLen, void *source, unsigned int sourceLen);
1317 int MemUnzip(void *dest, unsigned int *destLen, const void *source, unsigned int sourceLen);
1318 };