Browse Source

engine: fix static prop lump version 10 loading

pull/200/head
nillerusr 1 year ago
parent
commit
9919f7ee95
  1. 3
      engine/modelloader.cpp
  2. 6
      engine/staticpropmgr.cpp
  3. 23
      public/gamebspfile.h

3
engine/modelloader.cpp

@ -387,7 +387,8 @@ IModelLoader *modelloader = ( IModelLoader * )&g_ModelLoader; @@ -387,7 +387,8 @@ IModelLoader *modelloader = ( IModelLoader * )&g_ModelLoader;
//-----------------------------------------------------------------------------
// Globals used by the CMapLoadHelper
//-----------------------------------------------------------------------------
static dheader_t s_MapHeader;
dheader_t s_MapHeader;
static FileHandle_t s_MapFileHandle = FILESYSTEM_INVALID_HANDLE;
static char s_szLoadName[128];
static char s_szMapName[128];

6
engine/staticpropmgr.cpp

@ -60,6 +60,7 @@ ConVar r_staticpropinfo( "r_staticpropinfo", "0" ); @@ -60,6 +60,7 @@ ConVar r_staticpropinfo( "r_staticpropinfo", "0" );
ConVar r_drawmodeldecals( "r_drawmodeldecals", "1" );
extern ConVar mat_fullbright;
static bool g_MakingDevShots = false;
extern dheader_t s_MapHeader;
//-----------------------------------------------------------------------------
// Index into the fade list
//-----------------------------------------------------------------------------
@ -1382,7 +1383,10 @@ void CStaticPropMgr::UnserializeModels( CUtlBuffer& buf ) @@ -1382,7 +1383,10 @@ void CStaticPropMgr::UnserializeModels( CUtlBuffer& buf )
break;
case 10:
buf.Get( &lump, sizeof( StaticPropLumpV10_t ) );
if( s_MapHeader.version >= 21 )
buf.Get( &lump, sizeof( StaticPropLumpV10_21_t ) );
else
buf.Get( &lump, sizeof( StaticPropLumpV10_t ) );
break;
case 11:

23
public/gamebspfile.h

@ -271,8 +271,29 @@ struct StaticPropLumpV9_t @@ -271,8 +271,29 @@ struct StaticPropLumpV9_t
bool m_bDisableX360;
};
// version 10
struct StaticPropLumpV10_t
{
Vector m_Origin;
QAngle m_Angles;
unsigned short m_PropType;
unsigned short m_FirstLeaf;
unsigned short m_LeafCount;
unsigned char m_Solid;
int m_Skin;
float m_FadeMinDist;
float m_FadeMaxDist;
Vector m_LightingOrigin;
float m_flForcedFadeScale;
unsigned short m_nMinDXLevel;
unsigned short m_nMaxDXLevel;
// int m_Lighting; // index into the GAMELUMP_STATIC_PROP_LIGHTING lump
unsigned int m_Flags;
unsigned short m_nLightmapResolutionX;
unsigned short m_nLightmapResolutionY;
};
// version 10
struct StaticPropLumpV10_21_t
{
DECLARE_BYTESWAP_DATADESC();
Vector m_Origin;

Loading…
Cancel
Save