mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-20 16:15:43 +00:00
chore: dump iw5 weapon reload overrides
This commit is contained in:
parent
c1a4874791
commit
7b23461e2a
@ -3963,7 +3963,8 @@ namespace IW5
|
||||
|
||||
struct ReloadStateTimerEntry
|
||||
{
|
||||
int attachment;
|
||||
WeaponAttachmentCombination attachment;
|
||||
short unused;
|
||||
int reloadAddTime;
|
||||
int reloadStartAddTime;
|
||||
};
|
||||
|
@ -4,7 +4,6 @@
|
||||
namespace IW5
|
||||
{
|
||||
// WeaponCompleteDef:
|
||||
// TODO: reloadOverrides
|
||||
// TODO: notetrackOverrides
|
||||
// TODO: iFireTimeAkimbo
|
||||
// TODO: iAltRaiseTimeAkimbo
|
||||
@ -734,6 +733,7 @@ namespace IW5
|
||||
{"animOverrides", offsetof(WeaponFullDef, weapCompleteDef.animOverrides), WFT_ANIM_OVERRIDES },
|
||||
{"soundOverrides", offsetof(WeaponFullDef, weapCompleteDef.soundOverrides), WFT_SOUND_OVERRIDES },
|
||||
{"fxOverrides", offsetof(WeaponFullDef, weapCompleteDef.fxOverrides), WFT_FX_OVERRIDES },
|
||||
{"reloadOverrides", offsetof(WeaponFullDef, weapCompleteDef.reloadOverrides), WFT_RELOAD_OVERRIDES },
|
||||
};
|
||||
|
||||
inline const char* szWeapTypeNames[]{
|
||||
|
@ -229,6 +229,10 @@ namespace IW5
|
||||
FillFromFxOverrides(std::string(field.szName));
|
||||
break;
|
||||
|
||||
case WFT_RELOAD_OVERRIDES:
|
||||
FillFromReloadOverrides(std::string(field.szName));
|
||||
break;
|
||||
|
||||
case WFT_NUM_FIELD_TYPES:
|
||||
default:
|
||||
assert(false);
|
||||
@ -463,6 +467,31 @@ namespace IW5
|
||||
m_info_string.SetValueForKey(key, ss.str());
|
||||
}
|
||||
|
||||
void FillFromReloadOverrides(const std::string& key)
|
||||
{
|
||||
std::stringstream ss;
|
||||
bool first = true;
|
||||
|
||||
for (auto i = 0u; i < m_weapon->weapCompleteDef.numReloadStateTimerOverrides; i++)
|
||||
{
|
||||
const auto& reloadOverride = m_weapon->weapCompleteDef.reloadOverrides[i];
|
||||
|
||||
if (!first)
|
||||
ss << "\n";
|
||||
else
|
||||
first = false;
|
||||
|
||||
if (reloadOverride.attachment.fields)
|
||||
ss << GetNameForSingleWeaponAttachment(reloadOverride.attachment);
|
||||
else
|
||||
ss << "none";
|
||||
|
||||
ss << ' ' << reloadOverride.reloadAddTime << ' ' << reloadOverride.reloadStartAddTime;
|
||||
}
|
||||
|
||||
m_info_string.SetValueForKey(key, ss.str());
|
||||
}
|
||||
|
||||
const WeaponFullDef* m_weapon;
|
||||
};
|
||||
} // namespace IW5
|
||||
|
Loading…
x
Reference in New Issue
Block a user