metaforce/Runtime/Particle/CParticleSwoosh.hpp

45 lines
1.3 KiB
C++
Raw Normal View History

2016-04-13 06:07:23 +00:00
#ifndef __URDE_CPARTICLESWOOSH_HPP__
#define __URDE_CPARTICLESWOOSH_HPP__
2015-08-21 00:06:39 +00:00
2016-02-13 05:49:59 +00:00
#include "CParticleGen.hpp"
2016-02-11 22:38:25 +00:00
#include "CToken.hpp"
2015-08-21 00:06:39 +00:00
2016-03-04 23:04:53 +00:00
namespace urde
2015-08-21 00:06:39 +00:00
{
2016-02-11 22:38:25 +00:00
class CSwooshDescription;
2015-08-21 00:06:39 +00:00
2016-02-13 05:49:59 +00:00
class CParticleSwoosh : public CParticleGen
2015-08-21 00:06:39 +00:00
{
2016-02-11 22:38:25 +00:00
public:
CParticleSwoosh(const TToken<CSwooshDescription>& desc, int);
2016-02-13 05:49:59 +00:00
void Update(double);
void Render();
2016-03-04 23:04:53 +00:00
void SetOrientation(const zeus::CTransform&);
void SetTranslation(const zeus::CVector3f&);
void SetGlobalOrientation(const zeus::CTransform&);
void SetGlobalTranslation(const zeus::CVector3f&);
void SetGlobalScale(const zeus::CVector3f&);
void SetLocalScale(const zeus::CVector3f&);
2016-02-13 05:49:59 +00:00
void SetParticleEmission(bool);
2016-03-04 23:04:53 +00:00
void SetModulationColor(const zeus::CColor&);
const zeus::CTransform& GetOrientation() const;
const zeus::CVector3f& GetTranslation() const;
const zeus::CTransform& GetGlobalOrientation() const;
const zeus::CVector3f& GetGlobalTranslation() const;
const zeus::CVector3f& GetGlobalScale() const;
const zeus::CColor& GetModulationColor() const;
2016-02-13 05:49:59 +00:00
bool IsSystemDeletable() const;
2017-01-21 06:03:37 +00:00
rstl::optional_object<zeus::CAABox> GetBounds() const;
2016-02-13 05:49:59 +00:00
u32 GetParticleCount() const;
bool SystemHasLight() const;
CLight GetLight() const;
bool GetParticleEmission() const;
void DestroyParticles();
2016-02-18 04:44:06 +00:00
void Reset() {}
2015-08-21 00:06:39 +00:00
};
}
2016-04-13 06:07:23 +00:00
#endif // __URDE_CPARTICLESWOOSH_HPP__