diff --git a/Runtime/Weapon/CPlasmaProjectile.cpp b/Runtime/Weapon/CPlasmaProjectile.cpp index dfb559bec..b6475aad3 100644 --- a/Runtime/Weapon/CPlasmaProjectile.cpp +++ b/Runtime/Weapon/CPlasmaProjectile.cpp @@ -53,12 +53,14 @@ CPlasmaProjectile::CPlasmaProjectile(const TToken& wDesc, st x51c_pulseGen = std::make_unique(x50c_pulseFxDesc, CElementGen::EModelOrientationType::Normal); x524_freezeSteamTxtr = res[0]; x528_freezeIceTxtr = res[1]; - if (res[2] != UINT64_MAX) + if (res[2].IsValid()) { x52c_visorElectric = g_SimplePool->GetObj(SObjectTag{FOURCC('ELSC'), res[2]}); - if (res[3] != UINT64_MAX) + } + if (res[3].IsValid()) { x538_visorParticle = g_SimplePool->GetObj(SObjectTag{FOURCC('PART'), res[3]}); - x544_freezeSfx = CSfxManager::TranslateSFXID(res[4]); - x546_electricSfx = CSfxManager::TranslateSFXID(res[5]); + } + x544_freezeSfx = CSfxManager::TranslateSFXID(u16(res[4].Value())); + x546_electricSfx = CSfxManager::TranslateSFXID(u16(res[5].Value())); x518_contactGen->SetGlobalScale(zeus::CVector3f(bInfo.GetContactFxScale())); x51c_pulseGen->SetGlobalScale(zeus::CVector3f(bInfo.GetPulseFxScale())); x518_contactGen->SetParticleEmission(false); diff --git a/Runtime/Weapon/CPlasmaProjectile.hpp b/Runtime/Weapon/CPlasmaProjectile.hpp index a0a0747ee..048b78fc0 100644 --- a/Runtime/Weapon/CPlasmaProjectile.hpp +++ b/Runtime/Weapon/CPlasmaProjectile.hpp @@ -18,10 +18,10 @@ namespace urde { class CPlasmaProjectile : public CBeamProjectile { public: - struct PlayerEffectResoures : rstl::reserved_vector { - PlayerEffectResoures(u64 a = UINT64_MAX, u64 b = UINT64_MAX, u64 c = UINT64_MAX, u64 d = UINT64_MAX, - u64 e = UINT64_MAX, u64 f = UINT64_MAX, u64 g = UINT64_MAX, u64 h = UINT64_MAX) - : rstl::reserved_vector({a, b, c, d, e, f, g, h}) {} + struct PlayerEffectResoures : rstl::reserved_vector { + PlayerEffectResoures(CAssetId a = {}, CAssetId b = {}, CAssetId c = {}, CAssetId d = {}, + CAssetId e = {}, CAssetId f = {}, CAssetId g = {}, CAssetId h = {}) + : rstl::reserved_vector({a, b, c, d, e, f, g, h}) {} }; private: std::vector x468_lights;