2018-10-07 03:42:33 +00:00
|
|
|
#pragma once
|
2016-12-13 02:56:43 +00:00
|
|
|
|
|
|
|
#include "CActor.hpp"
|
|
|
|
#include "zeus/COBBox.hpp"
|
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
namespace urde {
|
|
|
|
class CScriptCameraHintTrigger : public CActor {
|
|
|
|
zeus::COBBox xe8_obb;
|
|
|
|
zeus::CVector3f x124_scale;
|
|
|
|
union {
|
|
|
|
struct {
|
2019-06-15 00:39:20 +00:00
|
|
|
bool x130_24_deactivateOnEnter : 1;
|
|
|
|
bool x130_25_deactivateOnExit : 1;
|
|
|
|
bool x130_26_playerInside : 1;
|
|
|
|
bool x130_27_playerWasInside : 1;
|
2016-12-13 02:56:43 +00:00
|
|
|
};
|
2019-06-15 00:39:20 +00:00
|
|
|
u32 _dummy = 0;
|
2018-12-08 05:30:43 +00:00
|
|
|
};
|
2016-12-19 18:27:58 +00:00
|
|
|
|
2016-12-13 02:56:43 +00:00
|
|
|
public:
|
2019-06-15 00:39:20 +00:00
|
|
|
CScriptCameraHintTrigger(TUniqueId uid, bool active, std::string_view name,
|
|
|
|
const CEntityInfo& info, const zeus::CVector3f& scale,
|
|
|
|
const zeus::CTransform& xf, bool deactivateOnEnter,
|
|
|
|
bool deactivateOnExit);
|
2017-01-15 03:07:01 +00:00
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
void Accept(IVisitor& visitor);
|
2019-06-15 00:39:20 +00:00
|
|
|
void Think(float dt, CStateManager& mgr);
|
|
|
|
void Touch(CActor& other, CStateManager& mgr);
|
|
|
|
std::optional<zeus::CAABox> GetTouchBounds() const;
|
2016-12-13 02:56:43 +00:00
|
|
|
};
|
2018-12-08 05:30:43 +00:00
|
|
|
} // namespace urde
|