metaforce/Runtime/MP1/World/CSpacePirate.hpp

83 lines
1.7 KiB
C++
Raw Normal View History

2018-10-07 03:42:33 +00:00
#pragma once
2016-06-21 07:11:49 +00:00
#include "World/CPatterned.hpp"
#include "Weapon/CProjectileInfo.hpp"
2016-06-21 07:11:49 +00:00
2017-12-29 08:08:12 +00:00
namespace urde::MP1
2016-06-21 07:11:49 +00:00
{
2016-06-21 07:11:49 +00:00
class CSpacePirate : public CPatterned
{
2018-09-14 00:49:34 +00:00
public:
DEFINE_PATTERNED(SpacePirate)
private:
class CSpacePirateData
{
float x0_;
float x4_;
float x8_;
float xc_;
float x10_;
float x14_;
u32 x18_;
bool x1c_;
CProjectileInfo x20_;
u16 x48_;
CDamageInfo x4c_;
float x68_;
CProjectileInfo x6c_;
float x94_;
u16 x98_;
float x9c_;
float xa0_;
u16 xa4_;
float xa8_;
u32 xac_;
float xb0_;
float xb4_;
float xb8_;
float xbc_;
u16 xc0_;
u16 xc2_;
float xc4_;
float xc8_;
public:
CSpacePirateData(CInputStream&, u32);
};
CSpacePirateData x568_;
union
{
struct
{
bool x634_24_ : 1;
bool x634_25_ : 1;
bool x634_26_ : 1;
bool x634_27_ : 1;
bool x634_28_ : 1;
bool x634_29_ : 1;
bool x634_30_ : 1;
bool x634_31_ : 1;
bool x635_24_ : 1;
bool x635_25_ : 1;
bool x635_26_ : 1;
bool x635_27_ : 1;
bool x635_28_ : 1;
bool x635_29_ : 1;
bool x635_30_ : 1;
bool x635_31_ : 1;
};
u32 _dummy = 0;
};
2016-06-21 07:11:49 +00:00
public:
2017-11-13 06:19:18 +00:00
CSpacePirate(TUniqueId, std::string_view, const CEntityInfo&, const zeus::CTransform&, CModelData&&,
2016-06-21 07:11:49 +00:00
const CActorParameters&, const CPatternedInfo&, CInputStream&, u32);
2017-01-18 22:30:02 +00:00
void Accept(IVisitor &visitor);
2018-11-17 05:05:57 +00:00
void Think(float dt, CStateManager&);
2016-06-21 07:11:49 +00:00
};
}