feat: dump iw5 weapons on iw4 level

This commit is contained in:
Jan
2024-04-06 11:46:39 +02:00
parent eaeb1d9385
commit 7be21ebb20
7 changed files with 1379 additions and 1 deletions

View File

@ -78,9 +78,44 @@ namespace IW5
CSPFT_FX,
CSPFT_XMODEL,
CSPFT_MATERIAL,
CSPFT_PHYS_COLLMAP,
CSPFT_SOUND,
CSPFT_TRACER,
CSPFT_NUM_BASE_FIELD_TYPES,
};
enum weapFieldType_t
{
WFT_WEAPONTYPE = CSPFT_NUM_BASE_FIELD_TYPES,
WFT_WEAPONCLASS,
WFT_OVERLAYRETICLE,
WFT_PENETRATE_TYPE,
WFT_IMPACT_TYPE,
WFT_STANCE,
WFT_PROJ_EXPLOSION,
WFT_OFFHAND_CLASS,
WFT_ANIMTYPE,
WFT_ACTIVE_RETICLE_TYPE,
WFT_GUIDED_MISSILE_TYPE,
WFT_BOUNCE_SOUND,
WFT_STICKINESS,
WFT_OVERLAYINTERFACE,
WFT_INVENTORYTYPE,
WFT_FIRETYPE,
WFT_AMMOCOUNTER_CLIPTYPE,
WFT_ICONRATIO_HUD,
WFT_ICONRATIO_PICKUP,
WFT_ICONRATIO_AMMOCOUNTER,
WFT_ICONRATIO_KILL,
WFT_ICONRATIO_DPAD,
WFT_HIDETAGS,
WFT_NOTETRACKSOUNDMAP,
WFT_NOTETRACKRUMBLEMAP,
// Custom
WFT_ANIM_NAME,
WFT_NUM_FIELD_TYPES,
};
} // namespace IW5

View File

@ -3457,6 +3457,43 @@ namespace IW5
HITLOC_NUM
};
enum materialSurfType_t
{
SURF_TYPE_DEFAULT,
SURF_TYPE_BARK,
SURF_TYPE_BRICK,
SURF_TYPE_CARPET,
SURF_TYPE_CLOTH,
SURF_TYPE_CONCRETE,
SURF_TYPE_DIRT,
SURF_TYPE_FLESH,
SURF_TYPE_FOLIAGE,
SURF_TYPE_GLASS,
SURF_TYPE_GRASS,
SURF_TYPE_GRAVEL,
SURF_TYPE_ICE,
SURF_TYPE_METAL,
SURF_TYPE_MUD,
SURF_TYPE_PAPER,
SURF_TYPE_PLASTER,
SURF_TYPE_ROCK,
SURF_TYPE_SAND,
SURF_TYPE_SNOW,
SURF_TYPE_WATER,
SURF_TYPE_WOOD,
SURF_TYPE_ASPHALT,
SURF_TYPE_CERAMIC,
SURF_TYPE_PLASTIC,
SURF_TYPE_RUBBER,
SURF_TYPE_CUSHION,
SURF_TYPE_FRUIT,
SURF_TYPE_PAINTED_METAL,
SURF_TYPE_RIOT_SHIELD,
SURF_TYPE_SLUSH,
SURF_TYPE_NUM
};
struct WeaponDef
{
const char* szOverlayName;
@ -3952,6 +3989,25 @@ namespace IW5
bool dpadIconShowsAmmo;
};
struct WeaponFullDef
{
WeaponCompleteDef weapCompleteDef;
WeaponDef weapDef;
uint16_t hideTags[32];
const char* szXAnims[42];
XModel* gunXModel[16];
const char* szXAnimsRightHanded[42];
const char* szXAnimsLeftHanded[42];
uint16_t notetrackSoundMapKeys[16];
uint16_t notetrackSoundMapValues[16];
uint16_t notetrackRumbleMapKeys[16];
uint16_t notetrackRumbleMapValues[16];
XModel* worldModel[16];
float parallelBounce[31];
float perpendicularBounce[31];
float locationDamageMultipliers[20];
};
struct FxFloatRange
{
float base;