mirror of
https://github.com/MonsterDruide1/OdysseyDecomp
synced 2026-04-30 04:24:17 +00:00
43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
#include "Library/Obj/CameraWatchPoint.h"
|
|
|
|
#include "Library/Camera/ActorCameraSubTarget.h"
|
|
#include "Library/Camera/CameraUtil.h"
|
|
#include "Library/LiveActor/ActorClippingFunction.h"
|
|
#include "Library/LiveActor/ActorInitFunction.h"
|
|
#include "Library/LiveActor/ActorInitUtil.h"
|
|
#include "Project/Camera/CameraSubTargetTurnParam.h"
|
|
|
|
namespace al {
|
|
CameraWatchPoint::CameraWatchPoint(const char* name) : LiveActor(name) {}
|
|
|
|
void CameraWatchPoint::init(const ActorInitInfo& info) {
|
|
initActorSceneInfo(this, info);
|
|
initActorPoseTRSV(this);
|
|
initActorSRT(this, info);
|
|
initActorClipping(this, info);
|
|
invalidateClipping(this);
|
|
initExecutorWatchObj(this, info);
|
|
initStageSwitch(this, info);
|
|
|
|
mCameraSubTarget = createActorCameraSubTarget(this, nullptr);
|
|
|
|
CameraSubTargetTurnParam* params = new CameraSubTargetTurnParam();
|
|
params->init(info);
|
|
|
|
initCameraSubTargetTurnParam(mCameraSubTarget, params);
|
|
trySyncStageSwitchAppearAndKill(this);
|
|
}
|
|
|
|
void CameraWatchPoint::makeActorAlive() {
|
|
LiveActor::makeActorAlive();
|
|
|
|
setCameraPlacementSubTarget(this, mCameraSubTarget);
|
|
}
|
|
|
|
void CameraWatchPoint::kill() {
|
|
LiveActor::kill();
|
|
|
|
resetCameraPlacementSubTarget(this, mCameraSubTarget);
|
|
}
|
|
} // namespace al
|