metaforce/Runtime/MP1/World/CMetroidPrimeProjectile.cpp

32 lines
1.2 KiB
C++
Raw Normal View History

2018-02-11 05:27:00 +00:00
#include "CMetroidPrimeProjectile.hpp"
#include "GameGlobalObjects.hpp"
#include "CSimplePool.hpp"
2018-12-08 05:30:43 +00:00
namespace urde::MP1 {
2018-02-11 05:27:00 +00:00
SPrimeProjectileInfo::SPrimeProjectileInfo(CInputStream& in)
2018-12-08 05:30:43 +00:00
: x0_propertyCount(in.readUint32Big())
, x4_particle(g_SimplePool->GetObj(SObjectTag{FOURCC('PART'), in.readUint32Big()}))
, xc_dInfo(in)
, x28_(in.readFloatBig())
, x2c_(in.readFloatBig())
, x30_(in.readFloatBig())
, x34_texture(in.readUint32Big()) {
x38_24_ = in.readBool();
x38_25_ = in.readBool();
x38_26_ = in.readBool();
x38_27_ = in.readBool();
2018-02-11 05:27:00 +00:00
}
CMetroidPrimeProjectile::CMetroidPrimeProjectile(
2018-12-08 05:30:43 +00:00
bool active, const TToken<CWeaponDescription>& desc, EWeaponType type, const zeus::CTransform& xf,
EMaterialTypes materials, const CDamageInfo& damage, TUniqueId uid, TAreaId aid, TUniqueId owner,
const SPrimeProjectileInfo& auxData, TUniqueId homingTarget, EProjectileAttrib attribs,
2019-01-29 08:28:35 +00:00
const zeus::CVector3f& scale, const rstl::optional<TLockedToken<CGenDescription>>& visorParticle,
2018-02-11 05:27:00 +00:00
u16 visorSfx, bool sendCollideMsg)
2018-12-08 05:30:43 +00:00
: CEnergyProjectile(active, desc, type, xf, materials, damage, uid, aid, owner, homingTarget, attribs, false, scale,
visorParticle, visorSfx, sendCollideMsg)
, x3d8_auxData(auxData) {}
2018-02-11 05:27:00 +00:00
2018-12-08 05:30:43 +00:00
} // namespace urde::MP1