#if _WIN32 #include #endif #include "CGameArea.hpp" #include "GameGlobalObjects.hpp" #include "Graphics/CBooRenderer.hpp" namespace urde { void CGameArea::CAreaFog::SetCurrent() const { } void CGameArea::CAreaFog::Update(float dt) { } void CGameArea::CAreaFog::RollFogOut(float, float, const zeus::CColor& color) { } void CGameArea::CAreaFog::FadeFog(ERglFogMode, const zeus::CColor& color, const zeus::CVector2f& vec1, float, const zeus::CVector2f& vec2) { } void CGameArea::CAreaFog::SetFogExplicit(ERglFogMode, const zeus::CColor& color, const zeus::CVector2f& vec) { } bool CGameArea::CAreaFog::IsFogDisabled() const { return true; } void CGameArea::CAreaFog::DisableFog() { } CDummyGameArea::CDummyGameArea(CInputStream& in, int idx, int mlvlVersion) { x8_nameSTRG = in.readUint32Big(); x14_transform.read34RowMajor(in); zeus::CAABox aabb; aabb.readBoundingBoxBig(in); xc_mrea = in.readUint32Big(); if (mlvlVersion > 15) x10_areaId = in.readUint32Big(); u32 attachAreaCount = in.readUint32Big(); x44_attachedAreaIndices.reserve(attachAreaCount); for (u32 i=0 ; i ReadDependencyList(CInputStream& in) { std::vector ret; u32 count = in.readUint32Big(); ret.reserve(count); for (u32 i=0 ; i 15) x88_areaId = in.readUint32Big(); else x88_areaId = -1; u32 attachedCount = in.readUint32Big(); x8c_attachedAreaIndices.reserve(attachedCount); for (u32 i=0 ; ix1120_thermalSpeed == 0.f) return; float influence = x12c_postConstructed->x111c_thermalCurrent; float delta = x12c_postConstructed->x1120_thermalSpeed * dt; if (std::fabs(x12c_postConstructed->x1124_thermalTarget - x12c_postConstructed->x111c_thermalCurrent) < delta) { influence = x12c_postConstructed->x1124_thermalTarget; x12c_postConstructed->x1120_thermalSpeed = 0.f; } else if (x12c_postConstructed->x1124_thermalTarget < influence) influence -= delta; else influence += delta; x12c_postConstructed->x111c_thermalCurrent = influence; } void CGameArea::AliveUpdate(float dt) { if (!x12c_postConstructed->x10dc_) x12c_postConstructed->x10e4_ += dt; else x12c_postConstructed->x10e4_ = 0.f; UpdateFog(dt); UpdateThermalVisor(dt); } void CGameArea::SetOcclusionState(EOcclusionState state) { } void CGameArea::RemoveStaticGeometry() { if (!xf0_24_postConstructed || !x12c_postConstructed || !x12c_postConstructed->x10dc_) return; x12c_postConstructed->x10e0_ = 0; x12c_postConstructed->x10dc_ = 0; g_Renderer->RemoveStaticGeometry(&x12c_postConstructed->x4c_insts); } void CGameArea::AddStaticGeometry() { if (x12c_postConstructed->x10dc_ != 1) { x12c_postConstructed->x10e0_ = 0; x12c_postConstructed->x10dc_ = 1; if (!x12c_postConstructed->x1108_25_) FillInStaticGeometry(); g_Renderer->AddStaticGeometry(&x12c_postConstructed->x4c_insts, x12c_postConstructed->xc_octTree ? &*x12c_postConstructed->xc_octTree : nullptr, x4_selfIdx); } } void CGameArea::SetChain(CGameArea* other, int) { } void CGameArea::StartStreamingMainArea() { } u32 CGameArea::GetNumPartSizes() const { return 0; } void CGameArea::AllocNewAreaData(int, int) { } void CGameArea::Invalidate(CStateManager& mgr) { } void CGameArea::CullDeadAreaRequests() { } void CGameArea::StartStreamIn(CStateManager& mgr) { } bool CGameArea::Validate(CStateManager& mgr) { return false; } void CGameArea::PostConstructArea() { } void CGameArea::FillInStaticGeometry() { } void CGameArea::VerifyTokenList() { } void CGameArea::ClearTokenList() { } u32 CGameArea::GetPreConstructedSize() const { return 0; } bool CGameArea::VerifyHeader() const { return false; } }