Files
BMagnu fcaa9dd998 Allow trail particles to be parented to their spawner (#7528)
* Adapt particle at runtime

* Refactor EffectHosts

* fix issues

* cleanup

* Remove live transitive particles

* paticle hosts now do local correctly

* Fix effecthostparticle local mode

* again

* Set particle host orientation

* I don't like mixed local and global vectors

* agaiiin

* Fix validity check

* parent foo

* Fix bugs, hopefully finally

* refactor

* Flip new table option for intuitiveness

* Fix support for GCC9 due to issues with LWG3052

* Address feedback
2026-07-15 15:10:15 +09:00

24 lines
727 B
C++

#pragma once
#include "particle/EffectHost.h"
#include "object/object.h"
class EffectHostSubmodel : public EffectHost {
vec3d m_offset;
int m_objnum, m_objsig, m_submodel, m_modelnum;
public:
EffectHostSubmodel(const object* objp, int submodel, vec3d offset, matrix orientationOverride = vmd_identity_matrix, bool orientationOverrideRelative = true);
std::pair<vec3d, matrix> getPositionAndOrientation(bool relativeToParent, float interp, const std::optional<vec3d>& tabled_offset) const override;
vec3d getVelocity() const override;
effects::EffectAttachment getParentAttachment() const override;
int getParentSubmodel() const override;
float getHostRadius() const override;
bool isValid() const override;
};