metaforce/Runtime/Character/CEffectComponent.hpp

34 lines
914 B
C++
Raw Normal View History

2016-04-13 06:07:23 +00:00
#ifndef __URDE_CEFFECTCOMPONENT_HPP__
#define __URDE_CEFFECTCOMPONENT_HPP__
2016-04-10 21:22:59 +00:00
#include "IOStreams.hpp"
2016-04-11 07:10:28 +00:00
#include "RetroTypes.hpp"
2017-06-03 06:03:07 +00:00
#include "CParticleData.hpp"
2016-04-10 21:22:59 +00:00
namespace urde
{
class CEffectComponent
{
std::string x0_name;
SObjectTag x10_tag;
std::string x18_boneName;
2016-05-03 08:27:28 +00:00
float x28_scale;
2017-06-03 06:03:07 +00:00
CParticleData::EParentedMode x2c_parentedMode;
2016-09-10 04:50:00 +00:00
u32 x30_flags;
2016-04-10 21:22:59 +00:00
static SObjectTag GetSObjectTagFromStream(CInputStream& in);
public:
CEffectComponent(CInputStream& in);
2016-05-03 08:27:28 +00:00
2017-11-13 06:19:18 +00:00
std::string_view GetComponentName() const { return x0_name; }
2017-06-03 06:03:07 +00:00
const SObjectTag& GetParticleTag() const { return x10_tag; }
2017-11-13 06:19:18 +00:00
std::string_view GetSegmentName() const { return x18_boneName; }
2017-06-03 06:03:07 +00:00
float GetScale() const { return x28_scale; }
CParticleData::EParentedMode GetParentedMode() const { return x2c_parentedMode; }
u32 GetFlags() const { return x30_flags; }
2016-04-10 21:22:59 +00:00
};
}
2016-04-13 06:07:23 +00:00
#endif // __URDE_CEFFECTCOMPONENT_HPP__