Almost match CScriptSpiderBallAttractionSurface

This commit is contained in:
Henrique Gemignani Passos Lima
2022-10-21 18:13:34 +03:00
parent e1d392927c
commit 18ebd4146e
5 changed files with 68 additions and 7 deletions

View File

@@ -0,0 +1,36 @@
#include "MetroidPrime/ScriptObjects/CScriptSpiderBallAttractionSurface.hpp"
#include "MetroidPrime/CActorParameters.hpp"
CScriptSpiderBallAttractionSurface::CScriptSpiderBallAttractionSurface(
TUniqueId uid, const rstl::string& name, const CEntityInfo& info, const CTransform4f& xf,
const CVector3f& scale, bool active)
: CActor(uid, active, name, info, xf, CModelData::CModelDataNull(), CMaterialList(kMT_NoStepLogic),
CActorParameters::None(), kInvalidUniqueId)
, xe8_scale(scale)
, xf4_aabb(CAABox(-(scale * 0.5f), scale * 0.5f).GetTransformedAABox(xf.GetRotation())) {}
CScriptSpiderBallAttractionSurface::~CScriptSpiderBallAttractionSurface() {}
void CScriptSpiderBallAttractionSurface::Touch(CActor& actor, CStateManager& mgr) {
// Empty
}
rstl::optional_object< CAABox > CScriptSpiderBallAttractionSurface::GetTouchBounds() const {
if (GetActive()) {
return CAABox(xf4_aabb.GetMinPoint() + GetTranslation(),
xf4_aabb.GetMaxPoint() + GetTranslation());
}
return rstl::optional_object_null();
}
void CScriptSpiderBallAttractionSurface::AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId sender,
CStateManager& mgr) {
CActor::AcceptScriptMsg(msg, sender, mgr);
}
void CScriptSpiderBallAttractionSurface::Think(float dt, CStateManager& mgr) {
// Empty
}
void CScriptSpiderBallAttractionSurface::Accept(IVisitor& visitor) { visitor.Visit(*this); }