diff --git a/src/Common/Game/IW5/IW5_Assets.h b/src/Common/Game/IW5/IW5_Assets.h index 013735cb..7f33e5b1 100644 --- a/src/Common/Game/IW5/IW5_Assets.h +++ b/src/Common/Game/IW5/IW5_Assets.h @@ -660,10 +660,16 @@ namespace IW5 float floatTime; }; + struct complex_s + { + float real; + float imag; + }; + struct water_t { WaterWritable writable; - float* H0; + complex_s* H0; float* wTerm; int M; int N; @@ -3370,6 +3376,8 @@ namespace IW5 SndAliasCustom projIgnitionSound; }; + typedef tdef_align(4) AttSight AttSight4; + struct WeaponAttachment { const char* szInternalName; @@ -3381,7 +3389,7 @@ namespace IW5 XModel** viewModels; XModel** reticleViewModels; AttAmmoGeneral* ammogeneral; - AttSight* sight; + AttSight4* sight; AttReload* reload; AttAddOns* addOns; AttGeneral* general; diff --git a/src/ZoneCode/Game/IW5/XAssets/AddonMapEnts.txt b/src/ZoneCode/Game/IW5/XAssets/AddonMapEnts.txt index 0b4132ef..2a8cc2d8 100644 --- a/src/ZoneCode/Game/IW5/XAssets/AddonMapEnts.txt +++ b/src/ZoneCode/Game/IW5/XAssets/AddonMapEnts.txt @@ -6,6 +6,9 @@ set block XFILE_BLOCK_TEMP; set string name; set name name; set count entityString numEntityChars; +set reusable info; +set count cmodels numSubModels; +set count models numSubModels; // MapTriggers // see MapEnts @@ -14,5 +17,4 @@ set count entityString numEntityChars; // see clipMap_t // cmodel2_t -use cmodel2_t; -set reusable info; \ No newline at end of file +set reusable cmodel2_t::info; \ No newline at end of file diff --git a/src/ZoneCode/Game/IW5/XAssets/GfxWorld.txt b/src/ZoneCode/Game/IW5/XAssets/GfxWorld.txt index 3c173be4..ee043c2e 100644 --- a/src/ZoneCode/Game/IW5/XAssets/GfxWorld.txt +++ b/src/ZoneCode/Game/IW5/XAssets/GfxWorld.txt @@ -70,6 +70,7 @@ set count reflectionProbes reflectionProbeCount; set count reflectionProbeOrigins reflectionProbeCount; set block reflectionProbeTextures XFILE_BLOCK_RUNTIME; set count reflectionProbeTextures reflectionProbeCount; +set count reflectionProbeReferenceOrigins reflectionProbeReferenceCount; set count reflectionProbeReferences reflectionProbeReferenceCount; set count lightmaps lightmapCount; set block lightmapPrimaryTextures XFILE_BLOCK_RUNTIME; diff --git a/src/ZoneCode/Game/IW5/XAssets/MapEnts.txt b/src/ZoneCode/Game/IW5/XAssets/MapEnts.txt index fd9229fa..bfce39b2 100644 --- a/src/ZoneCode/Game/IW5/XAssets/MapEnts.txt +++ b/src/ZoneCode/Game/IW5/XAssets/MapEnts.txt @@ -9,12 +9,16 @@ set count entityString numEntityChars; // MapTriggers use MapTriggers; +set reusable models; set count models count; +set reusable hulls; set count hulls hullCount; +set reusable slabs; set count slabs slabCount; // ClientTriggers use ClientTriggers; +set count clientTriggerAabbTree numClientTriggerNodes; set count triggerString triggerStringLength; set count triggerStringOffsets trigger::count; set count triggerType trigger::count; diff --git a/src/ZoneCode/Game/IW5/XAssets/menuDef_t.txt b/src/ZoneCode/Game/IW5/XAssets/menuDef_t.txt index 311c3312..412c3281 100644 --- a/src/ZoneCode/Game/IW5/XAssets/menuDef_t.txt +++ b/src/ZoneCode/Game/IW5/XAssets/menuDef_t.txt @@ -88,6 +88,7 @@ set reusable visibleExp; set reusable disabledExp; set reusable textExp; set reusable materialExp; +set reusable textAlignYExp; // itemDefData_t use itemDefData_t; diff --git a/src/ZoneLoading/Game/IW5/ContentLoaderIW5.cpp b/src/ZoneLoading/Game/IW5/ContentLoaderIW5.cpp index 80abdc40..bffb5ec8 100644 --- a/src/ZoneLoading/Game/IW5/ContentLoaderIW5.cpp +++ b/src/ZoneLoading/Game/IW5/ContentLoaderIW5.cpp @@ -161,7 +161,7 @@ void ContentLoader::LoadXAsset(const bool atStreamStart) void ContentLoader::LoadXAssetArray(const bool atStreamStart, const size_t count) { - assert(varXAsset != nullptr); + assert(count == 0 || varXAsset != nullptr); if (atStreamStart) m_stream->Load(varXAsset, count);