mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-05-09 14:04:57 +00:00
Add IW4 ImpactFx loading code
This commit is contained in:
parent
ceeb1832cd
commit
b4756c3688
@ -30,7 +30,7 @@ ZoneCode.Assets = {
|
||||
-- "WeaponCompleteDef",
|
||||
-- "SndDriverGlobals",
|
||||
"FxEffectDef",
|
||||
-- "FxImpactTable",
|
||||
"FxImpactTable",
|
||||
"RawFile",
|
||||
"StringTable",
|
||||
-- "LeaderboardDef",
|
||||
|
@ -30,7 +30,7 @@ asset LocalizeEntry ASSET_TYPE_LOCALIZE_ENTRY;
|
||||
// asset WeaponCompleteDef ASSET_TYPE_WEAPON;
|
||||
// asset SndDriverGlobals ASSET_TYPE_SNDDRIVER_GLOBALS;
|
||||
asset FxEffectDef ASSET_TYPE_FX;
|
||||
// asset FxImpactTable ASSET_TYPE_IMPACT_FX;
|
||||
asset FxImpactTable ASSET_TYPE_IMPACT_FX;
|
||||
asset RawFile ASSET_TYPE_RAWFILE;
|
||||
asset StringTable ASSET_TYPE_STRINGTABLE;
|
||||
// asset LeaderboardDef ASSET_TYPE_LEADERBOARD;
|
||||
@ -616,6 +616,14 @@ use FxTrailDef;
|
||||
set count verts vertCount;
|
||||
set count inds indCount;
|
||||
|
||||
// =========================================
|
||||
// FxImpactTable
|
||||
// =========================================
|
||||
use FxImpactTable;
|
||||
set string name;
|
||||
set name name;
|
||||
set count table 15;
|
||||
|
||||
// =========================================
|
||||
// GfxLightDef
|
||||
// =========================================
|
||||
|
@ -131,7 +131,7 @@ GameAssetPoolIW4::GameAssetPoolIW4(const int priority)
|
||||
// m_weapon = nullptr;
|
||||
// m_snd_driver_globals = nullptr;
|
||||
m_fx = nullptr;
|
||||
// m_fx_impact_table = nullptr;
|
||||
m_fx_impact_table = nullptr;
|
||||
m_raw_file = nullptr;
|
||||
m_string_table = nullptr;
|
||||
// m_leaderboard = nullptr;
|
||||
@ -184,7 +184,7 @@ void GameAssetPoolIW4::InitPoolStatic(const asset_type_t type, const size_t capa
|
||||
// CASE_INIT_POOL_STATIC(ASSET_TYPE_WEAPON, m_weapon, WeaponCompleteDef);
|
||||
// CASE_INIT_POOL_STATIC(ASSET_TYPE_SNDDRIVER_GLOBALS, m_snd_driver_globals, SndDriverGlobals);
|
||||
CASE_INIT_POOL_STATIC(ASSET_TYPE_FX, m_fx, FxEffectDef);
|
||||
// CASE_INIT_POOL_STATIC(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, FxImpactTable);
|
||||
CASE_INIT_POOL_STATIC(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, FxImpactTable);
|
||||
CASE_INIT_POOL_STATIC(ASSET_TYPE_RAWFILE, m_raw_file, RawFile);
|
||||
CASE_INIT_POOL_STATIC(ASSET_TYPE_STRINGTABLE, m_string_table, StringTable);
|
||||
// CASE_INIT_POOL_STATIC(ASSET_TYPE_LEADERBOARD, m_leaderboard, LeaderboardDef);
|
||||
@ -244,7 +244,7 @@ void GameAssetPoolIW4::InitPoolDynamic(const asset_type_t type)
|
||||
// CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_WEAPON, m_weapon, WeaponCompleteDef);
|
||||
// CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_SNDDRIVER_GLOBALS, m_snd_driver_globals, SndDriverGlobals);
|
||||
CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_FX, m_fx, FxEffectDef);
|
||||
// CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, FxImpactTable);
|
||||
CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, FxImpactTable);
|
||||
CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_RAWFILE, m_raw_file, RawFile);
|
||||
CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_STRINGTABLE, m_string_table, StringTable);
|
||||
// CASE_INIT_POOL_DYNAMIC(ASSET_TYPE_LEADERBOARD, m_leaderboard, LeaderboardDef);
|
||||
@ -313,7 +313,7 @@ XAssetInfoGeneric* GameAssetPoolIW4::AddAsset(asset_type_t type, std::string nam
|
||||
// CASE_ADD_TO_POOL(ASSET_TYPE_WEAPON, m_weapon, weapon);
|
||||
// CASE_ADD_TO_POOL(ASSET_TYPE_SNDDRIVER_GLOBALS, m_snd_driver_globals, sndDriverGlobals);
|
||||
CASE_ADD_TO_POOL(ASSET_TYPE_FX, m_fx, fx);
|
||||
// CASE_ADD_TO_POOL(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, impactFx);
|
||||
CASE_ADD_TO_POOL(ASSET_TYPE_IMPACT_FX, m_fx_impact_table, impactFx);
|
||||
CASE_ADD_TO_POOL(ASSET_TYPE_RAWFILE, m_raw_file, rawfile);
|
||||
CASE_ADD_TO_POOL(ASSET_TYPE_STRINGTABLE, m_string_table, stringTable);
|
||||
// CASE_ADD_TO_POOL(ASSET_TYPE_LEADERBOARD, m_leaderboard, leaderboardDef);
|
||||
@ -373,7 +373,7 @@ XAssetInfoGeneric* GameAssetPoolIW4::GetAsset(const asset_type_t type, std::stri
|
||||
// CASE_GET_ASSET(ASSET_TYPE_WEAPON, m_weapon);
|
||||
// CASE_GET_ASSET(ASSET_TYPE_SNDDRIVER_GLOBALS, m_snd_driver_globals);
|
||||
CASE_GET_ASSET(ASSET_TYPE_FX, m_fx);
|
||||
// CASE_GET_ASSET(ASSET_TYPE_IMPACT_FX, m_fx_impact_table);
|
||||
CASE_GET_ASSET(ASSET_TYPE_IMPACT_FX, m_fx_impact_table);
|
||||
CASE_GET_ASSET(ASSET_TYPE_RAWFILE, m_raw_file);
|
||||
CASE_GET_ASSET(ASSET_TYPE_STRINGTABLE, m_string_table);
|
||||
// CASE_GET_ASSET(ASSET_TYPE_LEADERBOARD, m_leaderboard);
|
||||
|
@ -43,7 +43,7 @@ public:
|
||||
// std::unique_ptr<AssetPool<IW4::WeaponCompleteDef>> m_weapon;
|
||||
// std::unique_ptr<AssetPool<IW4::SndDriverGlobals>> m_snd_driver_globals;
|
||||
std::unique_ptr<AssetPool<IW4::FxEffectDef>> m_fx;
|
||||
// std::unique_ptr<AssetPool<IW4::FxImpactTable>> m_fx_impact_table;
|
||||
std::unique_ptr<AssetPool<IW4::FxImpactTable>> m_fx_impact_table;
|
||||
std::unique_ptr<AssetPool<IW4::RawFile>> m_raw_file;
|
||||
std::unique_ptr<AssetPool<IW4::StringTable>> m_string_table;
|
||||
// std::unique_ptr<AssetPool<IW4::LeaderboardDef>> m_leaderboard;
|
||||
|
@ -102,7 +102,7 @@ namespace IW4
|
||||
// struct WeaponCompleteDef;
|
||||
// struct SndDriverGlobals;
|
||||
struct FxEffectDef;
|
||||
// struct FxImpactTable;
|
||||
struct FxImpactTable;
|
||||
struct RawFile;
|
||||
struct StringTable;
|
||||
|
||||
@ -143,7 +143,7 @@ namespace IW4
|
||||
// WeaponCompleteDef* weapon;
|
||||
// SndDriverGlobals* sndDriverGlobals;
|
||||
FxEffectDef* fx;
|
||||
// FxImpactTable* impactFx;
|
||||
FxImpactTable* impactFx;
|
||||
RawFile* rawfile;
|
||||
StringTable* stringTable;
|
||||
// LeaderboardDef* leaderboardDef;
|
||||
@ -1627,6 +1627,18 @@ namespace IW4
|
||||
int lmapLookupStart;
|
||||
};
|
||||
|
||||
struct FxImpactEntry
|
||||
{
|
||||
FxEffectDef* nonflesh[31];
|
||||
FxEffectDef* flesh[4];
|
||||
};
|
||||
|
||||
struct FxImpactTable
|
||||
{
|
||||
const char* name;
|
||||
FxImpactEntry* table;
|
||||
};
|
||||
|
||||
#ifndef __zonecodegenerator
|
||||
}
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@
|
||||
//#include "Game/IW4/XAssets/comworld/comworld_load_db.h"
|
||||
//#include "Game/IW4/XAssets/font_s/font_s_load_db.h"
|
||||
#include "Game/IW4/XAssets/fxeffectdef/fxeffectdef_load_db.h"
|
||||
//#include "Game/IW4/XAssets/fximpacttable/fximpacttable_load_db.h"
|
||||
#include "Game/IW4/XAssets/fximpacttable/fximpacttable_load_db.h"
|
||||
//#include "Game/IW4/XAssets/fxworld/fxworld_load_db.h"
|
||||
//#include "Game/IW4/XAssets/gameworldmp/gameworldmp_load_db.h"
|
||||
//#include "Game/IW4/XAssets/gameworldsp/gameworldsp_load_db.h"
|
||||
@ -132,7 +132,7 @@ void ContentLoaderIW4::LoadXAsset(const bool atStreamStart)
|
||||
// LOAD_ASSET(ASSET_TYPE_WEAPON, WeaponCompleteDef, weapon);
|
||||
SKIP_ASSET(ASSET_TYPE_SNDDRIVER_GLOBALS, SndDriverGlobals, sndDriverGlobals);
|
||||
LOAD_ASSET(ASSET_TYPE_FX, FxEffectDef, fx);
|
||||
// LOAD_ASSET(ASSET_TYPE_IMPACT_FX, FxImpactTable, impactFx);
|
||||
LOAD_ASSET(ASSET_TYPE_IMPACT_FX, FxImpactTable, impactFx);
|
||||
LOAD_ASSET(ASSET_TYPE_RAWFILE, RawFile, rawfile);
|
||||
LOAD_ASSET(ASSET_TYPE_STRINGTABLE, StringTable, stringTable);
|
||||
// LOAD_ASSET(ASSET_TYPE_LEADERBOARD, LeaderboardDef, leaderboardDef);
|
||||
|
Loading…
x
Reference in New Issue
Block a user