World of Might and Magic
0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
|
#include <Engine.h>
|
| Engine () |
|
virtual | ~Engine () |
|
bool | Configure (std::shared_ptr< const EngineConfig > config) |
|
void | Initialize () |
|
bool | PickMouse (float fPickDepth, unsigned int uMouseX, unsigned int uMouseY, bool bOutline, struct Vis_SelectionFilter *sprite_filter, struct Vis_SelectionFilter *face_filter) |
|
bool | PickKeyboard (bool bOutline, struct Vis_SelectionFilter *sprite_filter, struct Vis_SelectionFilter *face_filter) |
|
void | OnGameViewportClick () |
|
void | OutlineSelection () |
|
int | _44EC23_saturate_face_odm (struct Polygon *a2, int *a3, signed int a4) |
|
int | _44ED0A_saturate_face_blv (struct BLVFace *a2, int *a3, signed int a4) |
|
bool | AlterGamma_BLV (struct BLVFace *pFace, unsigned int *pColor) |
|
bool | AlterGamma_ODM (struct ODMFace *pFace, unsigned int *pColor) |
|
bool | draw_debug_outlines () |
|
bool | _44EEA7 () |
|
bool | _44F07B () |
|
void | PushStationaryLights (int a2) |
|
void | Deinitialize () |
|
void | DrawParticles () |
|
void | Draw () |
|
void | DrawGUI () |
|
void | ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows () |
|
void | SecondaryInitialization () |
|
void | _461103_load_level_sub () |
|
void | DropHeldItem () |
|
bool | MM7_Initialize (const std::string &mm7_path) |
|
bool | IsUnderwater () const |
|
bool | CanSaturateFaces () const |
|
bool | AllowSnow () const |
|
void | SetUnderwater (bool is_underwater) |
|
void | SetSaturateFaces (bool saturate) |
|
void | SetForceRedraw (bool redraw) |
|
void | SetTargetingMode (bool is_targeting) |
|
void | SetDebugWizardEye (bool wizard_eye) |
|
void | SetDebugAllMagic (bool all_magic) |
|
void | SetDebugShowFps (bool show_fps) |
|
void | SetDebugShowPickedFace (bool show_picked_face) |
|
void | SetDebugPortalOutlines (bool portal_outlines) |
|
void | SetDebugTurboSpeed (bool turbo_speed) |
|
void | SetSeasonsChange (bool seasons_change) |
|
void | SetAllowSnow (bool allow_snow) |
|
void | SetExtendedDrawDistance (bool extended_draw_distance) |
|
void | SetNoActors (bool no_actors) |
|
void | SetAllowLightmaps (bool allow_lightmaps) |
|
void | SetDebugLightmapsDecals (bool debug_lightmaps_decals) |
|
void | SetDebugTerrain (bool debug_terrain) |
|
void | ToggleAlwaysRun () |
|
void | ToggleFlipOnExit () |
|
void | ToggleWalkSound () |
|
void | ToggleShowDamage () |
|
void | ToggleBloodsplats () |
|
void | ToggleDebugTownPortal () |
|
void | ToggleDebugWizardEye () |
|
void | ToggleDebugAllMagic () |
|
void | ToggleDebugTerrain () |
|
void | ToggleDebugLightmap () |
|
void | ToggleDebugTurboSpeed () |
|
void | ToggleDebugNoActors () |
|
void | ToggleDebugDrawDist () |
|
void | ToggleDebugSnow () |
|
void | ToggleDebugNoDamage () |
|
void | ToggleDebugPortalLines () |
|
void | ToggleDebugPickedFace () |
|
void | ToggleDebugShowFPS () |
|
void | ToggleDebugSeasonsChange () |
|
void | SetMusicLevel (int level) |
|
void | SetSoundLevel (int level) |
|
void | SetVoiceLevel (int level) |
|
void | SetTurnSpeed (int turn_speed) |
|
void | MutateConfig (std::function< void(std::shared_ptr< EngineConfig > &)> mutator) |
|
См. определение в файле Engine.h строка 94
◆ Engine()
См. определение в файле Engine.cpp строка 610
Перекрестные ссылки bloodsplat_container, decal_builder, keyboard, lightmap_builder, log, mouse, particle_engine, pIndoorCameraD3D, pStru10Instance, pStru9Instance, Engine_::IocContainer::ResolveBloodsplatContainer(), Engine_::IocContainer::ResolveDecalBuilder(), Engine_::IocContainer::ResolveKeyboard(), Engine_::IocContainer::ResolveLightmapBuilder(), Engine_::IocContainer::ResolveLogger(), Engine_::IocContainer::ResolveMouse(), Engine_::IocContainer::ResolveParticleEngine(), Engine_::IocContainer::ResolveSpellFxRenderer(), Engine_::IocContainer::ResolveVis(), spell_fx_renedrer, uNumStationaryLights, uNumStationaryLights_in_pStationaryLightsStack и vis.
◆ ~Engine()
◆ Configure()
bool Engine::Configure |
( |
std::shared_ptr< const EngineConfig > |
config | ) |
|
|
inline |
◆ Initialize()
void Engine::Initialize |
( |
| ) |
|
◆ PickMouse()
См. определение в файле Engine.cpp строка 662
680 vis->
PickMouse(fPickDepth, uMouseX, uMouseY, sprite_filter, face_filter);
Перекрестные ссылки OutlineSelection(), Vis::PickMouse(), pViewport, Viewport::uScreen_BR_X, Viewport::uScreen_BR_Y, Viewport::uScreen_TL_X, Viewport::uScreen_TL_Y и vis.
Используется в _44EEA7().
◆ PickKeyboard()
◆ OnGameViewportClick()
void Engine::OnGameViewportClick |
( |
| ) |
|
См. определение в файле Viewport.cpp строка 315
319 int clickable_distance = 512;
327 bool in_range =
distance < clickable_distance;
332 int item_id = PID_ID(
v0);
335 item_id >= 1000 || !
pSpriteObjects[item_id].uObjectDescID || !in_range) {
343 int mon_id = PID_ID(
v0);
391 if (!
pOutdoor->
pBModels[(
signed int)(
v0 & 0xFFFF) >> 9].pFaces[PID_ID(
v0) & 0x3F].Clickable()) {
401 .pFaces[PID_ID(
v0) & 0x3F]
Перекрестные ссылки ActorInteraction(), Party::bTurnBasedModeOn, current_screen_type, Dead, DecorationInteraction(), DropHeldItem(), EventProcessor(), stru262_TurnBased::field_18, GameUI_StatusBar_NothingHere(), Vis::get_picked_object_zbuf_val(), DecorationList::GetDecoration(), ItemInteraction(), LEVEL_Indoor, LEVEL_Outdoor, OBJECT_Actor, OBJECT_BModel, OBJECT_Decoration, OBJECT_Item, OS_IfShiftPressed(), pActors, PARTY_FLAGS_1_FALLING, OutdoorLocation::pBModels, pDecorationList, IndoorLocation::pFaceExtras, IndoorLocation::pFaces, pIndoor, pLevelDecorations, pMessageQueue_50CBD0, pOutdoor, pParty, Party::pPickedItem, pPlayers, pSpriteObjects, pTurnEngine, SCREEN_NPC_DIALOGUE, sub_427769_isSpellQuickCastableOnShiftClick(), TE_FLAG_8, TE_MOVEMENT, stru262_TurnBased::turn_stage, uActiveCharacter, uCurrentlyLoadedLevelType, BLVFaceExtra::uEventID, BLVFace::uFaceExtraID, Party::uFlags, UIMSG_Attack, UIMSG_CastQuickSpell, ItemGen::uItemID, DecorationDesc_mm6::uRadius и vis.
◆ OutlineSelection()
void Engine::OutlineSelection |
( |
| ) |
|
См. определение в файле Engine.cpp строка 718
726 log->
Warning(L
"Sprite outline currently unsupported");
733 if (
face->uAttributes & FACE_OUTLINED)
734 face->uAttributes &= ~FACE_OUTLINED;
736 face->uAttributes |= FACE_OUTLINED;
739 if (
face->uAttributes & FACE_OUTLINED)
740 face->uAttributes &= ~FACE_OUTLINED;
742 face->uAttributes |= FACE_OUTLINED;
750 "Undefined CObjectInfo type requested in "
751 "CGame::outline_selection()");
Перекрестные ссылки Vis::default_list, Engine_DeinitializeAndTerminate(), LEVEL_Indoor, LEVEL_Outdoor, log, Vis_ObjectInfo::object, Vis_SelectionList::object_pointers, Vis_ObjectInfo::object_type, uCurrentlyLoadedLevelType, Vis_SelectionList::uNumPointers, vis, VisObjectType_Face, VisObjectType_Sprite и Log::Warning().
Используется в PickKeyboard() и PickMouse().
◆ _44EC23_saturate_face_odm()
int Engine::_44EC23_saturate_face_odm |
( |
struct Polygon * |
a2, |
|
|
int * |
a3, |
|
|
signed int |
a4 |
|
) |
| |
◆ _44ED0A_saturate_face_blv()
int Engine::_44ED0A_saturate_face_blv |
( |
struct BLVFace * |
a2, |
|
|
int * |
a3, |
|
|
signed int |
a4 |
|
) |
| |
◆ AlterGamma_BLV()
bool Engine::AlterGamma_BLV |
( |
struct BLVFace * |
pFace, |
|
|
unsigned int * |
pColor |
|
) |
| |
◆ AlterGamma_ODM()
bool Engine::AlterGamma_ODM |
( |
struct ODMFace * |
pFace, |
|
|
unsigned int * |
pColor |
|
) |
| |
◆ draw_debug_outlines()
bool Engine::draw_debug_outlines |
( |
| ) |
|
◆ _44EEA7()
См. определение в файле Engine.cpp строка 399
416 if (
config->IsTargetingMode()) {
435 if (
engine->config->DrawBlvDebugs())
449 engine->SetForceRedraw(
true);
452 engine->SetForceRedraw(
true);
Перекрестные ссылки _44F07B(), stru10::bDoNotDrawPortalFrustum, DecalBuilder::curent_decal_id, decal_builder, DecalBuilder::DecalsCount, engine, Mouse::GetCursorPos(), GetLevelFogColor(), IndoorCameraD3D::GetPickDepth(), LEVEL_Outdoor, lightmap_builder, LightmapBuilder::MobileLightsCount, mouse, particle_engine, PickMouse(), pIndoorCameraD3D, pStationaryLightsStack, pStru10Instance, qword_5C6DF0, render, LightmapBuilder::StationaryLightsCount, sub_4637E0_is_there_popup_onscreen(), uCurrentlyLoadedLevelType, LightsStack_StationaryLight_::uNumLightsActive, uNumStationaryLights_in_pStationaryLightsStack, ParticleEngine::UpdateParticles(), vis_face_filter, vis_sprite_filter_1, vis_sprite_filter_2, vis_sprite_filter_4, Point::x и Point::y.
◆ _44F07B()
◆ PushStationaryLights()
void Engine::PushStationaryLights |
( |
int |
a2 | ) |
|
◆ Deinitialize()
void Engine::Deinitialize |
( |
| ) |
|
◆ DrawParticles()
void Engine::DrawParticles |
( |
| ) |
|
◆ Draw()
См. определение в файле Engine.cpp строка 166
215 render->hd_water_current_frame = floorf(
v2 + 0.5
f);
228 render->DrawBillboards_And_MaybeRenderSpecialEffects_And_EndScene();
Перекрестные ссылки IndoorCameraD3D::_4374E8_ProllyBuildFrustrum(), Party::_497FC5_check_party_perception_against_level(), _unused_5B5924_is_travel_ui_drawn, Mouse::Activate(), Mouse::bRedraw, ViewingParams::bRedrawGameUI, IndoorCameraD3D::CalculateRotations(), IndoorCameraD3D::CreateWorldMatrixAndSomeStuff(), decal_builder, OutdoorLocation::Draw(), IndoorLocation::Draw(), DecalBuilder::DrawBloodsplats(), Mouse::DrawCursor(), DrawGUI(), LightmapBuilder::DrawLightmapsType(), ViewingParams::field_48, GUI_UpdateWindows(), LEVEL_Indoor, LEVEL_Outdoor, lightmap_builder, mouse, PauseGameDrawing(), pIndoor, pIndoorCameraD3D, pMiscTimer, pMovie_Track, pOutdoor, pParty, Mouse::ReadCursorWithItem(), render, SetSaturateFaces(), Party::sEyelevel, Party::sPrevEyelevel, Party::sPrevRotationX, Party::sPrevRotationY, IndoorCameraD3D::sRotationX, Party::sRotationX, IndoorCameraD3D::sRotationY, Party::sRotationY, uCurrentlyLoadedLevelType, Party::uFlags, Party::UpdatePlayersAndHirelingsEmotions(), Timer::uTotalGameTimeElapsed, viewparams, IndoorCameraD3D::vPartyPos, Party::vPosition, Party::vPrevPosition, Vec2< T >::x, Vec2< T >::y, Party::y_rotation_granularity и Vec3< T >::z.
◆ DrawGUI()
См. определение в файле Engine.cpp строка 252
253 render->ResetUIClipRect();
278 if (!(
config->renderer_name ==
"OpenGL")) {
306 static bool render_framerate =
false;
307 static float framerate = 0.0f;
308 static uint frames_this_second = 0;
310 static uint framerate_time_elapsed = 0;
319 framerate_time_elapsed += frame_dt;
320 if (framerate_time_elapsed >= 1000) {
321 framerate = frames_this_second * (1000.0f / framerate_time_elapsed);
323 framerate_time_elapsed = 0;
324 frames_this_second = 0;
325 render_framerate =
true;
328 ++frames_this_second;
330 if (
engine->config->show_fps) {
331 if (render_framerate) {
337 int debug_info_offset = 0;
363 "BLV_GetFloorLevel: %d face_id %d\n", floor_level, uFaceID);
365 bool on_water =
false;
369 0, &on_water, &_a6,
false);
371 "ODM_GetFloorLevel: %d on_water: %s a6 = %d\n",
372 floor_level, on_water ?
"true" :
"false", _a6);
375 Color16(255, 255, 255), floor_level_str, 0, 0,
Перекрестные ссылки _44100D_should_alter_right_panel(), BLV_GetFloorLevel(), OtherOverlayList::bRedraw, ViewingParams::bRedrawGameUI, Color16(), current_screen_type, Weather::Draw(), Mouse::DrawCursorToTarget(), SpellFxRenderer::DrawPlayerBuffAnims(), GUIWindow::DrawText(), OtherOverlayList::DrawTurnBasedIcon(), engine, ViewingParams::field_48, GameUI_DrawCharacterSelectionFrame(), GameUI_DrawHiredNPCs(), GameUI_DrawLifeManaBars(), GameUI_DrawMinimap(), GameUI_DrawPartySpells(), GameUI_DrawPortraits(), GameUI_DrawRightPanel(), GameUI_DrawRightPanelFrames(), GameUI_DrawRightPanelItems(), GameUI_DrawTorchlightAndWizardEye(), GameUI_StatusBar_Draw(), GameUI_StatusBar_DrawForced(), IndoorLocation::GetSector(), LEVEL_Indoor, LEVEL_Outdoor, mouse, ODM_GetFloorLevel(), OS_GetTime(), PauseGameDrawing(), pFontArrus, Party::pHirelings, pIndoor, pMovie_Track, pOtherOverlayList, pParty, pPrimaryWindow, pViewport, pWeather, render, SCREEN_GAME, spell_fx_renedrer, StringPrintf(), uCurrentlyLoadedLevelType, ViewingParams::uMinimapZoom, IndoorLocation::uNumSectors, Viewport::uViewportBR_X, Viewport::uViewportBR_Y, Viewport::uViewportTL_X, Viewport::uViewportTL_Y, viewparams и Party::vPosition.
Используется в Draw().
◆ ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows()
void Engine::ResetCursor_Palettes_LODs_Level_Audio_SFT_Windows |
( |
| ) |
|
См. определение в файле Engine.cpp строка 1342
Перекрестные ссылки Party::armageddon_timer, WindowManager::DeleteAllVisibleWindows(), LODFile_Sprites::DeleteSomeOtherSprites(), LEVEL_Indoor, LEVEL_null, LEVEL_Outdoor, mouse, pAudioPlayer, pBitmaps_LOD, pIcons_LOD, pIndoor, pOutdoor, pPaletteManager, pParty, pSpriteFrameTable, pSprites_LOD, OutdoorLocation::Release(), IndoorLocation::Release(), LODFile_IconsBitmaps::ReleaseAll2(), PaletteManager::ResetNonLocked(), SpriteFrameTable::ResetSomeSpriteFlags(), Mouse::SetCursorImage(), AudioPlayer::StopChannels(), uCurrentlyLoadedLevelType и windowManager.
◆ SecondaryInitialization()
void Engine::SecondaryInitialization |
( |
| ) |
|
См. определение в файле Engine.cpp строка 1082
1105 if (!
engine->config->NoSound())
1108 for (
uint i = 0; i < 4; ++i) {
1109 static const char *pUIAnimNames[4] = {
"glow03",
"glow05",
"torchA",
1111 static unsigned short _4E98D0[4][4] = {
1112 {479, 0, 329, 0}, {585, 0, 332, 0}, {468, 0, 0, 0}, {606, 0, 0, 0}};
1130 for (
uint i = 0; i < 7; ++i) {
1131 char container_name[64];
1132 sprintf(container_name,
"HDWTR%03u", i);
1133 render->pHDWaterBitmapIDs[i] =
Перекрестные ссылки _576E2C_current_minimap_zoom, LODFile_IconsBitmaps::_inlined_sub0(), LODFile_Sprites::_inlined_sub0(), assets, dword_576E28, engine, AssetsManager::GetBitmap(), IconFrameTable::GetIcon(), NPCStats::Initialize(), SoundList::Initialize(), Mouse::Initialize(), ItemsTable::Initialize(), Initialize_GamesLOD_NewLOD(), Initialize_GlobalEVT(), IconFrameTable::InitializeAnimation(), ObjectList::InitializeColors(), ObjectList::InitializeSprites(), OverlayList::InitializeSprites(), SpellFxRenderer::LoadAnimations(), LODFile_IconsBitmaps::LoadTexture(), PaletteManager::LockAll(), mouse, pBitmaps_LOD, pIcons_LOD, pIconsFrameTable, pItemsTable, NPCStats::pNPCData, pNPCStats, pObjectList, pOverlayList, pPaletteManager, pSoundList, pSprites_LOD, pUIAnims, PaletteManager::RecalculateAll(), render, PaletteManager::SetColorChannelInfo(), PaletteManager::SetMistColor(), LODFile_IconsBitmaps::SetupPalettes(), spell_fx_renedrer и UI_Create().
◆ _461103_load_level_sub()
void Engine::_461103_load_level_sub |
( |
| ) |
|
См. определение в файле Engine.cpp строка 1365
1378 if (
engine->config->no_actors)
1397 if (
pActors[i].pMonsterInfo.uID >= 115 &&
1398 pActors[i].pMonsterInfo.uID <= 186 ||
1399 pActors[i].pMonsterInfo.uID >= 232 &&
1400 pActors[i].pMonsterInfo.uID <= 249)
1403 v4 = (
pActors[i].pMonsterInfo.uID - 1) % 3;
1412 if (
pActors[i].sNPC_ID > 0 &&
pActors[i].sNPC_ID < 5000)
continue;
1416 pActors[i].pMonsterInfo.uID, 0, v19);
1440 for (v8 = 0; v8 < v6; ++v8) {
1441 if (v21[v8] ==
pActors[i].pMonsterInfo.uID - 1)
break;
1445 v21[v6++] =
pActors[i].pMonsterInfo.uID - 1;
1447 if (v6 == 16)
break;
1457 if (
engine->config->NoActors())
1459 if (
engine->config->NoDecorations())
Перекрестные ссылки LODFile_Sprites::_461397(), ViewingParams::bRedrawGameUI, dword_5C6DF8, engine, Party::field_7B5_in_arena_quest, GenerateItemsInChest(), MapStats::GetMapInfo(), init_event_triggers(), NPCStats::InitializeAdditionalNPCs(), PaletteManager::LockTestAll(), MapStartPoint_Party, mouse, pActors, NPCStats::pAdditionalNPC, pCurrentMapName, pGameLoadingUI_ProgressBar, pIndoorCameraD3D, pMapStats, pNPCStats, pPaletteManager, pParty, Party::pPickedItem, GUIProgressBar::Progress(), pSprites_LOD, Mouse::SetCursorBitmapFromItemID(), IndoorCameraD3D::sRotationX, IndoorCameraD3D::sRotationY, Party::uFlags, ItemGen::uItemID, uLevel_StartingPointType, NPCStats::uNewlNPCBufPos, uNumActors, uNumLevelDecorations, viewparams, IndoorCameraD3D::vPartyPos, Vec2< T >::x, Vec2< T >::y и Vec3< T >::z.
◆ DropHeldItem()
void Engine::DropHeldItem |
( |
| ) |
|
См. определение в файле Viewport.cpp строка 289
Перекрестные ссылки SpriteObject::containing_item, SpriteObject::Create(), IndoorLocation::GetSector(), mouse, OBJECT_Player, ObjectList::ObjectIDByItemID(), pIndoor, ItemsTable::pItems, pItemsTable, pObjectList, pParty, Party::pPickedItem, Mouse::RemoveHoldingItem(), Party::sEyelevel, SpriteObject::spell_caster_pid, Party::sRotationY, SpriteObject::uAttributes, SpriteObject::uFacing, ItemGen::uItemID, SpriteObject::uObjectDescID, SpriteObject::uSectorID, SpriteObject::uSoundID, SpriteObject::uSpriteFrameID, SpriteObject::uType, SpriteObject::vPosition и Party::vPosition.
Используется в OnGameViewportClick().
◆ MM7_Initialize()
bool Engine::MM7_Initialize |
( |
const std::string & |
mm7_path | ) |
|
См. определение в файле Engine.cpp строка 903
919 "Might and Magic® Trilogy",
920 render->config->render_width,
921 render->config->render_height);
975 *tiles_mm8 =
nullptr;
1006 *decs_mm8 =
nullptr;
1017 *objs_mm8 =
nullptr;
1028 *mons_mm8 =
nullptr;
1039 *chests_mm8 =
nullptr;
1050 *overlays_mm8 =
nullptr;
1061 *sounds_mm8 =
nullptr;
Перекрестные ссылки OSWindowFactory::Create(), Graphics::IRenderFactory::Create(), Timer::Create(), dword_6BE364_game_settings_1, PlayerFrameTable::FromFile(), ChestList::FromFile(), ObjectList::FromFile(), IconFrameTable::FromFile(), OverlayList::FromFile(), DecorationList::FromFile(), SpriteFrameTable::FromFile(), TileTable::FromFile(), TextureFrameTable::FromFile(), SoundList::FromFile(), MonsterList::FromFile(), game_starting_year, GameUI_StatusBar_Update(), Localization::Initialize(), MPlayer::Initialize(), Timer::Initialize(), AudioPlayer::Initialize(), LOD::File::LoadCompressedTexture(), localization, log, MM6_Initialize(), MM7_LoadLods(), OnTimer(), OS_GetTime(), pAudioPlayer, pChestList, pDecorationList, pEvents_LOD, pEventTimer, Party::pHirelings, pIcons_LOD_mm6, pIconsFrameTable, pKeyActionMap, pMediaPlayer, pMonsterList, pObjectList, pOverlayList, pParty, pPlayerFrameTable, pSoundList, pSpriteFrameTable, pTextureFrameTable, pTileTable, render, Party::sEyelevel, Party::uDefaultEyelevel, Party::uDefaultPartyHeight, Party::uPartyHeight, Party::uWalkSpeed и Log::Warning().
Используется в Initialize().
◆ IsUnderwater()
bool Engine::IsUnderwater |
( |
| ) |
const |
|
inline |
◆ CanSaturateFaces()
bool Engine::CanSaturateFaces |
( |
| ) |
const |
|
inline |
◆ AllowSnow()
bool Engine::AllowSnow |
( |
| ) |
const |
|
inline |
◆ SetUnderwater()
void Engine::SetUnderwater |
( |
bool |
is_underwater | ) |
|
|
inline |
◆ SetSaturateFaces()
void Engine::SetSaturateFaces |
( |
bool |
saturate | ) |
|
|
inline |
◆ SetForceRedraw()
void Engine::SetForceRedraw |
( |
bool |
redraw | ) |
|
|
inline |
◆ SetTargetingMode()
void Engine::SetTargetingMode |
( |
bool |
is_targeting | ) |
|
|
inline |
См. определение в файле Engine.h строка 157
159 [is_targeting](std::shared_ptr<EngineConfig> &cfg) {
160 cfg->SetTargetingMode(is_targeting);
Перекрестные ссылки MutateConfig().
◆ SetDebugWizardEye()
void Engine::SetDebugWizardEye |
( |
bool |
wizard_eye | ) |
|
|
inline |
См. определение в файле Engine.h строка 163
165 [wizard_eye](std::shared_ptr<EngineConfig> &cfg) {
166 cfg->debug_wizard_eye = wizard_eye;
Перекрестные ссылки MutateConfig().
◆ SetDebugAllMagic()
void Engine::SetDebugAllMagic |
( |
bool |
all_magic | ) |
|
|
inline |
См. определение в файле Engine.h строка 169
171 [all_magic](std::shared_ptr<EngineConfig> &cfg) {
172 cfg->debug_all_magic = all_magic;
Перекрестные ссылки MutateConfig().
◆ SetDebugShowFps()
void Engine::SetDebugShowFps |
( |
bool |
show_fps | ) |
|
|
inline |
См. определение в файле Engine.h строка 175
177 [show_fps](std::shared_ptr<EngineConfig> &cfg) {
178 cfg->show_fps = show_fps;
Перекрестные ссылки MutateConfig().
◆ SetDebugShowPickedFace()
void Engine::SetDebugShowPickedFace |
( |
bool |
show_picked_face | ) |
|
|
inline |
См. определение в файле Engine.h строка 181
183 [show_picked_face](std::shared_ptr<EngineConfig> &cfg) {
184 cfg->show_picked_face = show_picked_face;
Перекрестные ссылки MutateConfig().
◆ SetDebugPortalOutlines()
void Engine::SetDebugPortalOutlines |
( |
bool |
portal_outlines | ) |
|
|
inline |
См. определение в файле Engine.h строка 187
189 [portal_outlines](std::shared_ptr<EngineConfig> &cfg) {
190 cfg->debug_portal_outlines = portal_outlines;
Перекрестные ссылки MutateConfig().
◆ SetDebugTurboSpeed()
void Engine::SetDebugTurboSpeed |
( |
bool |
turbo_speed | ) |
|
|
inline |
См. определение в файле Engine.h строка 193
195 [turbo_speed](std::shared_ptr<EngineConfig> &cfg) {
196 cfg->debug_turbo_speed = turbo_speed;
Перекрестные ссылки MutateConfig().
◆ SetSeasonsChange()
void Engine::SetSeasonsChange |
( |
bool |
seasons_change | ) |
|
|
inline |
См. определение в файле Engine.h строка 199
201 [seasons_change](std::shared_ptr<EngineConfig> &cfg) {
202 cfg->seasons_change = seasons_change;
Перекрестные ссылки MutateConfig().
◆ SetAllowSnow()
void Engine::SetAllowSnow |
( |
bool |
allow_snow | ) |
|
|
inline |
См. определение в файле Engine.h строка 205
207 [allow_snow](std::shared_ptr<EngineConfig> &cfg) {
208 cfg->allow_snow = allow_snow;
Перекрестные ссылки MutateConfig().
◆ SetExtendedDrawDistance()
void Engine::SetExtendedDrawDistance |
( |
bool |
extended_draw_distance | ) |
|
|
inline |
См. определение в файле Engine.h строка 211
213 [extended_draw_distance](std::shared_ptr<EngineConfig> &cfg) {
214 cfg->extended_draw_distance = extended_draw_distance;
Перекрестные ссылки MutateConfig().
◆ SetNoActors()
void Engine::SetNoActors |
( |
bool |
no_actors | ) |
|
|
inline |
См. определение в файле Engine.h строка 217
219 [no_actors](std::shared_ptr<EngineConfig> &cfg) {
220 cfg->no_actors = no_actors;
Перекрестные ссылки MutateConfig().
◆ SetAllowLightmaps()
void Engine::SetAllowLightmaps |
( |
bool |
allow_lightmaps | ) |
|
|
inline |
См. определение в файле Engine.h строка 223
225 [allow_lightmaps](std::shared_ptr<EngineConfig> &cfg) {
226 cfg->allow_lightmaps = allow_lightmaps;
Перекрестные ссылки MutateConfig().
◆ SetDebugLightmapsDecals()
void Engine::SetDebugLightmapsDecals |
( |
bool |
debug_lightmaps_decals | ) |
|
|
inline |
См. определение в файле Engine.h строка 229
231 [debug_lightmaps_decals](std::shared_ptr<EngineConfig> &cfg) {
232 cfg->debug_lightmaps_decals = debug_lightmaps_decals;
Перекрестные ссылки MutateConfig().
◆ SetDebugTerrain()
void Engine::SetDebugTerrain |
( |
bool |
debug_terrain | ) |
|
|
inline |
См. определение в файле Engine.h строка 235
237 [debug_terrain](std::shared_ptr<EngineConfig> &cfg) {
238 cfg->debug_terrain = debug_terrain;
Перекрестные ссылки MutateConfig().
◆ ToggleAlwaysRun()
void Engine::ToggleAlwaysRun |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 241
243 [](std::shared_ptr<EngineConfig> &cfg) {
244 cfg->ToggleAlwaysRun();
Перекрестные ссылки MutateConfig().
◆ ToggleFlipOnExit()
void Engine::ToggleFlipOnExit |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 247
249 [](std::shared_ptr<EngineConfig> &cfg) {
250 cfg->ToggleFlipOnExit();
Перекрестные ссылки MutateConfig().
◆ ToggleWalkSound()
void Engine::ToggleWalkSound |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 253
255 [](std::shared_ptr<EngineConfig> &cfg) {
256 cfg->ToggleWalkSound();
Перекрестные ссылки MutateConfig().
◆ ToggleShowDamage()
void Engine::ToggleShowDamage |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 259
261 [](std::shared_ptr<EngineConfig> &cfg) {
262 cfg->ToggleShowDamage();
Перекрестные ссылки MutateConfig().
◆ ToggleBloodsplats()
void Engine::ToggleBloodsplats |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 265
267 [](std::shared_ptr<EngineConfig> &cfg) {
268 cfg->ToggleBloodsplats();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugTownPortal()
void Engine::ToggleDebugTownPortal |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 272
274 [](std::shared_ptr<EngineConfig> &cfg) {
275 cfg->ToggleDebugTownPortal();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugWizardEye()
void Engine::ToggleDebugWizardEye |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 279
281 [](std::shared_ptr<EngineConfig> &cfg) {
282 cfg->ToggleDebugWizardEye();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugAllMagic()
void Engine::ToggleDebugAllMagic |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 286
288 [](std::shared_ptr<EngineConfig> &cfg) {
289 cfg->ToggleDebugAllMagic();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugTerrain()
void Engine::ToggleDebugTerrain |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 293
295 [](std::shared_ptr<EngineConfig> &cfg) {
296 cfg->ToggleDebugTerrain();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugLightmap()
void Engine::ToggleDebugLightmap |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 300
302 [](std::shared_ptr<EngineConfig> &cfg) {
303 cfg->ToggleDebugLightmap();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugTurboSpeed()
void Engine::ToggleDebugTurboSpeed |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 307
309 [](std::shared_ptr<EngineConfig> &cfg) {
310 cfg->ToggleDebugTurboSpeed();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugNoActors()
void Engine::ToggleDebugNoActors |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 314
316 [](std::shared_ptr<EngineConfig> &cfg) {
317 cfg->ToggleDebugNoActors();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugDrawDist()
void Engine::ToggleDebugDrawDist |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 321
323 [](std::shared_ptr<EngineConfig> &cfg) {
324 cfg->ToggleDebugDrawDist();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugSnow()
void Engine::ToggleDebugSnow |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 328
330 [](std::shared_ptr<EngineConfig> &cfg) {
331 cfg->ToggleDebugSnow();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugNoDamage()
void Engine::ToggleDebugNoDamage |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 335
337 [](std::shared_ptr<EngineConfig> &cfg) {
338 cfg->ToggleDebugNoDamage();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugPortalLines()
void Engine::ToggleDebugPortalLines |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 342
344 [](std::shared_ptr<EngineConfig> &cfg) {
345 cfg->ToggleDebugPortalLines();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugPickedFace()
void Engine::ToggleDebugPickedFace |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 349
351 [](std::shared_ptr<EngineConfig> &cfg) {
352 cfg->ToggleDebugPickedFace();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugShowFPS()
void Engine::ToggleDebugShowFPS |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 356
358 [](std::shared_ptr<EngineConfig> &cfg) {
359 cfg->ToggleDebugShowFPS();
Перекрестные ссылки MutateConfig().
◆ ToggleDebugSeasonsChange()
void Engine::ToggleDebugSeasonsChange |
( |
| ) |
|
|
inline |
См. определение в файле Engine.h строка 363
365 [](std::shared_ptr<EngineConfig> &cfg) {
366 cfg->ToggleDebugSeasonsChange();
Перекрестные ссылки MutateConfig().
◆ SetMusicLevel()
void Engine::SetMusicLevel |
( |
int |
level | ) |
|
|
inline |
См. определение в файле Engine.h строка 370
372 [
level](std::shared_ptr<EngineConfig> &cfg) {
379 cfg->music_level = lvl;
Перекрестные ссылки MutateConfig().
◆ SetSoundLevel()
void Engine::SetSoundLevel |
( |
int |
level | ) |
|
|
inline |
См. определение в файле Engine.h строка 382
384 [
level](std::shared_ptr<EngineConfig> &cfg) {
391 cfg->sound_level = lvl;
Перекрестные ссылки MutateConfig().
◆ SetVoiceLevel()
void Engine::SetVoiceLevel |
( |
int |
level | ) |
|
|
inline |
См. определение в файле Engine.h строка 394
396 [
level](std::shared_ptr<EngineConfig> &cfg) {
403 cfg->voice_level = lvl;
Перекрестные ссылки MutateConfig().
◆ SetTurnSpeed()
void Engine::SetTurnSpeed |
( |
int |
turn_speed | ) |
|
|
inline |
См. определение в файле Engine.h строка 406
408 [turn_speed](std::shared_ptr<EngineConfig> &cfg) {
409 cfg->turn_speed = turn_speed;
Перекрестные ссылки MutateConfig().
◆ MutateConfig()
См. определение в файле Engine.h строка 412
Перекрестные ссылки Configure() и Engine_::EngineConfigFactory::Mutate().
Используется в SetAllowLightmaps(), SetAllowSnow(), SetDebugAllMagic(), SetDebugLightmapsDecals(), SetDebugPortalOutlines(), SetDebugShowFps(), SetDebugShowPickedFace(), SetDebugTerrain(), SetDebugTurboSpeed(), SetDebugWizardEye(), SetExtendedDrawDistance(), SetMusicLevel(), SetNoActors(), SetSeasonsChange(), SetSoundLevel(), SetTargetingMode(), SetTurnSpeed(), SetVoiceLevel(), ToggleAlwaysRun(), ToggleBloodsplats(), ToggleDebugAllMagic(), ToggleDebugDrawDist(), ToggleDebugLightmap(), ToggleDebugNoActors(), ToggleDebugNoDamage(), ToggleDebugPickedFace(), ToggleDebugPortalLines(), ToggleDebugSeasonsChange(), ToggleDebugShowFPS(), ToggleDebugSnow(), ToggleDebugTerrain(), ToggleDebugTownPortal(), ToggleDebugTurboSpeed(), ToggleDebugWizardEye(), ToggleFlipOnExit(), ToggleShowDamage() и ToggleWalkSound().
◆ config
◆ pStationaryLights
◆ field_2C0
char Engine::field_2C0[1092] |
◆ uNumStationaryLights
unsigned int Engine::uNumStationaryLights |
◆ pBloodsplats
◆ field_938
◆ field_93C
◆ field_940
◆ field_944
◆ field_948
◆ field_94C
◆ field_950
◆ field_954
◆ field_958
◆ field_95C
◆ field_960
◆ field_964
◆ field_968
◆ field_96C
◆ field_970
◆ field_978
◆ stru_97C
◆ field_98C
char Engine::field_98C[1148] |
◆ uNumStationaryLights_in_pStationaryLightsStack
int Engine::uNumStationaryLights_in_pStationaryLightsStack |
◆ fSaturation
float Engine::fSaturation |
◆ pStru9Instance
stru9* Engine::pStru9Instance |
◆ pStru10Instance
stru10* Engine::pStru10Instance |
◆ log
Log* Engine::log = nullptr |
◆ bloodsplat_container
◆ decal_builder
◆ spell_fx_renedrer
◆ lightmap_builder
◆ mouse
Mouse* Engine::mouse = nullptr |
◆ keyboard
◆ particle_engine
◆ vis
Vis* Engine::vis = nullptr |
Объявления и описания членов структур находятся в файлах:
unsigned int uNumLightsActive
void GameUI_DrawRightPanel()
void DrawText(GUIFont *font, int x, int y, unsigned short uFontColor, const char *str, bool present_time_transparency=false, int max_text_height=0, int uFontShadowColor=0)
GLenum GLuint GLint GLenum face
LOD::WriteableFile * pNew_LOD
void GameUI_DrawRightPanelItems()
bool Configure(std::shared_ptr< const EngineConfig > config)
std::array< LevelDecoration, 3000 > pLevelDecorations
int y_rotation_granularity
void SetDataPath(const char *data_path)
void GameUI_DrawLifeManaBars()
DecorationDesc * GetDecoration(unsigned int index)
void GenerateItemsInChest()
struct TextureFrameTable * pTextureFrameTable
void InitializeAnimation(unsigned int uIconID)
struct SpriteFrameTable * pSpriteFrameTable
void SetColorChannelInfo(int uNumRBits, int uNumGBits, int uNumBBits)
std::array< SpriteObject, MAX_SPRITE_OBJECTS > pSpriteObjects
LODFile_Sprites * pSprites_LOD
Vis_SelectionFilter vis_sprite_filter_1
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
void InitializeAdditionalNPCs(NPCData *pNPCDataBuff, int npc_uid, int uLocation2D, int uMapId)
bool _44100D_should_alter_right_panel()
static BloodsplatContainer * ResolveBloodsplatContainer()
void GameUI_DrawMinimap(unsigned int uX, unsigned int uY, unsigned int uZ, unsigned int uW, unsigned int uZoom, unsigned int bRedrawOdmMinimap)
static Log * ResolveLogger()
void * LoadCompressedTexture(const String &pContainer, size_t *data_size=nullptr)
struct IconFrameTable * pIconsFrameTable
void DrawLightmapsType(int type)
MAP_TYPE GetMapInfo(const String &Str2)
void GameUI_StatusBar_NothingHere()
char field_7B5_in_arena_quest
std::shared_ptr< Engine > engine
struct BLVFaceExtra * pFaceExtras
void init_event_triggers()
Vis_SelectionFilter vis_face_filter
std::shared_ptr< IRender > Create(const std::string &renderer_name, bool is_fullscreen)
void DecorationInteraction(unsigned int id, unsigned int pid)
LightmapBuilder * lightmap_builder
WindowManager windowManager
unsigned int uDefaultPartyHeight
Localization * localization
void GameUI_DrawTorchlightAndWizardEye()
unsigned int ObjectIDByItemID(unsigned int uItemID)
void GameUI_DrawHiredNPCs()
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
void UpdatePlayersAndHirelingsEmotions()
int _576E2C_current_minimap_zoom
unsigned int uDefaultEyelevel
void DrawCursorToTarget()
DecalBuilder * decal_builder
unsigned int MobileLightsCount
NZIArray< struct Player *, 5 > pPlayers
void Initialize_GlobalEVT()
unsigned __int16 uSpriteFrameID
int get_picked_object_zbuf_val()
enum CURRENT_SCREEN current_screen_type
void DrawDebugOutlines(char bit_one_for_list1__bit_two_for_list2)
struct stru262_TurnBased * pTurnEngine
struct MapStats * pMapStats
unsigned __int16 uObjectDescID
bool MM7_Initialize(const std::string &mm7_path)
unsigned int uPartyHeight
void DeleteAllVisibleWindows()
std::shared_ptr< const EngineConfig > config
struct ItemsTable * pItemsTable
void CalculateRotations(int camera_rot_x, int camera_rot_y)
void GameUI_StatusBar_Update(bool force_hide)
Icon * GetIcon(unsigned int idx)
void DrawDecalDebugOutlines()
Game__StationaryLight pStationaryLights[25]
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
struct Vec3_int_ vPosition
void Initialize(OSWindow *window)
static Vis * ResolveVis()
static ParticleEngine * ResolveParticleEngine()
bool _497FC5_check_party_perception_against_level()
std::array< class UIAnimation *, 4 > pUIAnims
void GameUI_DrawRightPanelFrames()
LODFile_IconsBitmaps * pIcons_LOD_mm6
unsigned int uMinimapZoom
bool WasKeyPressed(int vKey)
Vis_SelectionFilter vis_sprite_filter_2
GUIProgressBar * pGameLoadingUI_ProgressBar
struct ViewingParams * viewparams
Vis_SelectionFilter vis_sprite_filter_4
unsigned int OS_GetTime()
BloodsplatContainer * bloodsplat_container
void SetupPalettes(unsigned int uTargetRBits, unsigned int uTargetGBits, unsigned int uTargetBBits)
void ResetSomeSpriteFlags()
static DecalBuilder * ResolveDecalBuilder()
void DrawTurnBasedIcon(int a2)
unsigned int uNewlNPCBufPos
std::shared_ptr< EngineConfig > Clone(std::shared_ptr< const EngineConfig > other)
bool Initialize_GamesLOD_NewLOD()
char sub_4637E0_is_there_popup_onscreen()
void GameUI_StatusBar_DrawForced()
void GameUI_StatusBar_Draw()
static Mouse * ResolveMouse()
void Warning(const wchar_t *pFormat,...)
LODFile_IconsBitmaps * pIcons_LOD
unsigned int LoadTexture(const char *pContainer, enum TEXTURE_TYPE uTextureType=TEXTURE_DEFAULT)
unsigned int uNumStationaryLights
void StopChannels(int uStartChannel, int uEndChannel)
void CreateWorldMatrixAndSomeStuff()
std::array< Actor, 500 > pActors
struct PlayerFrameTable * pPlayerFrameTable
const char * FindMm7Directory(char *mm7_path)
size_t uNumLevelDecorations
EGLSurface EGLNativeWindowType * window
void DrawPlayerBuffAnims()
SpellFxRenderer * spell_fx_renedrer
struct TileTable * pTileTable
NPCData pAdditionalNPC[100]
OSWindow * Create(const char *title, int window_width, int window_height)
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
Texture * GetBitmap(const String &name)
GLint GLint GLsizei GLsizei GLsizei depth
int uNumStationaryLights_in_pStationaryLightsStack
PaletteManager * pPaletteManager
LODFile_IconsBitmaps * pEvents_LOD
void Engine_DeinitializeAndTerminate(int exitCode)
void SetSaturateFaces(bool saturate)
int Create(int yaw, int pitch, int a4, int a5)
struct ItemGen containing_item
GLsizei GLsizei GLfloat distance
std::array< NPCData, 2 > pHirelings
struct Viewport * pViewport
unsigned __int16 uSoundID
unsigned int GetLevelFogColor()
ParticleEngine * particle_engine
struct OtherOverlayList * pOtherOverlayList
GLdouble GLdouble GLdouble r
int ReplaceHSV(unsigned int uColor, float h_replace, float s_replace, float v_replace)
void SetMistColor(unsigned char r, unsigned char g, unsigned char b)
struct MonsterList * pMonsterList
struct KeyboardActionMapping * pKeyActionMap
GLfloat GLfloat GLfloat v2
bool PickMouse(float fDepth, float fMouseX, float fMouseY, Vis_SelectionFilter *sprite_filter, Vis_SelectionFilter *face_filter)
unsigned int uActiveCharacter
LightsStack_StationaryLight_ * pStationaryLightsStack
int bDoNotDrawPortalFrustum
void DeleteSomeOtherSprites()
struct NPCStats * pNPCStats
struct OverlayList * pOverlayList
LODFile_IconsBitmaps * pBitmaps_LOD
void SetCursorBitmapFromItemID(unsigned int uItemID)
int ODM_GetFloorLevel(int X, signed int Y, int Z, int __unused, bool *pIsOnWater, int *bmodel_pid, int bWaterWalk)
bool ActorInteraction(unsigned int id)
int dword_6BE364_game_settings_1
bool CanSaturateFaces() const
void GameUI_DrawCharacterSelectionFrame()
void EventProcessor(int uEventID, int targetObj, int canShowMessages, int entry_line)
bool PickKeyboard(Vis_SelectionList *list, Vis_SelectionFilter *sprite_filter, Vis_SelectionFilter *face_filter)
void SetCursorImage(const String &name)
LEVEL_TYPE uCurrentlyLoadedLevelType
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
void OS_SetAppInt(const char *pKey, int val)
GUIWindow * pPrimaryWindow
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
int GetSector(int sX, int sY, int sZ)
unsigned int uNumPointers
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
MapStartPoint uLevel_StartingPointType
void GameUI_DrawPartySpells()
bool AddLight(int16_t x, int16_t y, int16_t z, int16_t a5, unsigned char r, unsigned char g, unsigned char b, char uLightType)
AudioPlayer * pAudioPlayer
static bool IsKeyBeingHeld(int vKey)
GLsizei const GLchar *const * string
void GameUI_DrawPortraits(unsigned int _this)
bool MM7_LoadLods(const char *mm7_path)
struct GUIMessageQueue * pMessageQueue_50CBD0
VisObjectType object_type
static SpellFxRenderer * ResolveSpellFxRenderer()
uint16_t Color16(uint32_t r, uint32_t g, uint32_t b)
unsigned int StationaryLightsCount
OutdoorLocation * pOutdoor
void MutateConfig(std::function< void(std::shared_ptr< EngineConfig > &)> mutator)
static LightmapBuilder * ResolveLightmapBuilder()
unsigned __int16 uAttributes
void _4374E8_ProllyBuildFrustrum()
IndoorCameraD3D * pIndoorCameraD3D
String StringPrintf(const char *fmt,...)
void ItemInteraction(unsigned int item_id)
int BLV_GetFloorLevel(int x, int y, int z, unsigned int uSectorID, unsigned int *pFaceID)
unsigned int uTotalGameTimeElapsed
Vis_ObjectInfo * object_pointers[512]
bool sub_427769_isSpellQuickCastableOnShiftClick(unsigned int uSpellID)
static Keyboard * ResolveKeyboard()
int _unused_5B5924_is_travel_ui_drawn
std::shared_ptr< EngineConfig > Mutate(std::shared_ptr< const EngineConfig > config, std::function< void(std::shared_ptr< EngineConfig > &)> mutator)
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
struct ObjectList * pObjectList
void ReadCursorWithItem()
NZIArray< ItemDesc, 800 > pItems
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
struct DecorationList * pDecorationList
void FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
bool PickMouse(float fPickDepth, unsigned int uMouseX, unsigned int uMouseY, bool bOutline, struct Vis_SelectionFilter *sprite_filter, struct Vis_SelectionFilter *face_filter)
static void InitializeGUI()
Vis_SelectionList default_list
std::shared_ptr< IRender > render