Library/Camera: Implement CameraTargetBase (#151)

This commit is contained in:
MonsterDruide1 2024-09-02 18:26:24 +02:00 committed by GitHub
parent 6056a1be0c
commit 8fb9173e80
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 80 additions and 16 deletions

View File

@ -1137,14 +1137,14 @@ Address,Quality,Size,Name
0x0000007100027108,U,000132,_ZN11BossKnuckle11breakAllIceEv
0x000000710002718c,U,000008,_ZNK12_GLOBAL__N_129BossKnuckleNrvDemoBattleStart7executeEPN2al11NerveKeeperE
0x0000007100027194,U,000008,_ZNK23BossKnuckleCameraTarget15isCollideGroundEv
0x000000710002719c,U,000008,_ZNK2al16CameraTargetBase15isInMoonGravityEv
0x00000071000271a4,U,000008,_ZNK2al16CameraTargetBase11isClimbPoleEv
0x00000071000271ac,U,000008,_ZNK2al16CameraTargetBase10isGrabCeilEv
0x00000071000271b4,U,000008,_ZNK2al16CameraTargetBase11isWallCatchEv
0x00000071000271bc,U,000008,_ZNK2al16CameraTargetBase20isInvalidMoveByInputEv
0x00000071000271c4,U,000008,_ZNK2al16CameraTargetBase25isEnableEndAfterInterpoleEv
0x00000071000271cc,U,000004,_ZN2al16CameraTargetBase6updateEv
0x00000071000271d0,U,000008,_ZNK2al16CameraTargetBase18getRequestDistanceEv
0x000000710002719c,O,000008,_ZNK2al16CameraTargetBase15isInMoonGravityEv
0x00000071000271a4,O,000008,_ZNK2al16CameraTargetBase11isClimbPoleEv
0x00000071000271ac,O,000008,_ZNK2al16CameraTargetBase10isGrabCeilEv
0x00000071000271b4,O,000008,_ZNK2al16CameraTargetBase11isWallCatchEv
0x00000071000271bc,O,000008,_ZNK2al16CameraTargetBase20isInvalidMoveByInputEv
0x00000071000271c4,O,000008,_ZNK2al16CameraTargetBase25isEnableEndAfterInterpoleEv
0x00000071000271cc,O,000004,_ZN2al16CameraTargetBase6updateEv
0x00000071000271d0,O,000008,_ZNK2al16CameraTargetBase18getRequestDistanceEv
0x00000071000271d8,U,000004,_ZNK12_GLOBAL__N_131BossKnuckleNrvBeforeBattleStart7executeEPN2al11NerveKeeperE
0x00000071000271dc,U,000008,_ZNK12_GLOBAL__N_139BossKnuckleNrvBeforeDemoBattleStartWait7executeEPN2al11NerveKeeperE
0x00000071000271e4,U,000008,_ZNK12_GLOBAL__N_128BossKnuckleNrvAfterBattleEnd7executeEPN2al11NerveKeeperE
@ -1650,10 +1650,10 @@ Address,Quality,Size,Name
0x000000710003aff0,U,000128,
0x000000710003b070,U,000016,
0x000000710003b080,U,000016,
0x000000710003b090,U,000016,_ZNK2al16CameraTargetBase11calcGravityEPN4sead7Vector3IfEE
0x000000710003b090,O,000016,_ZNK2al16CameraTargetBase11calcGravityEPN4sead7Vector3IfEE
0x000000710003b0a0,U,000052,
0x000000710003b0d4,U,000008,_ZNK2al16CameraTargetBase15isCollideGroundEv
0x000000710003b0dc,U,000008,_ZNK2al16CameraTargetBase9isInWaterEv
0x000000710003b0d4,O,000008,_ZNK2al16CameraTargetBase15isCollideGroundEv
0x000000710003b0dc,O,000008,_ZNK2al16CameraTargetBase9isInWaterEv
0x000000710003b0e4,U,000012,
0x000000710003b0f0,U,000008,
0x000000710003b0f8,U,000012,
@ -51727,11 +51727,11 @@ Address,Quality,Size,Name
0x000000710083a5f4,U,000092,_ZN2al23CameraSwitchRequestInfo28addRequestWithNextCameraPoseEPNS_12CameraTicketEPKNS_14CameraPoseInfoEi
0x000000710083a650,U,000124,_ZN2al23CameraSwitchRequestInfo23tryRemoveRequestIfExistEPNS_12CameraTicketE
0x000000710083a6cc,U,000056,_ZN2al23CameraSwitchRequestInfo5resetEv
0x000000710083a704,U,000024,_ZN2al16CameraTargetBaseC2Ev
0x000000710083a71c,U,000004,_ZNK2al16CameraTargetBase8calcSideEPN4sead7Vector3IfEE
0x000000710083a720,U,000004,_ZNK2al16CameraTargetBase6calcUpEPN4sead7Vector3IfEE
0x000000710083a724,U,000004,_ZNK2al16CameraTargetBase9calcFrontEPN4sead7Vector3IfEE
0x000000710083a728,U,000004,_ZNK2al16CameraTargetBase12calcVelocityEPN4sead7Vector3IfEE
0x000000710083a704,O,000024,_ZN2al16CameraTargetBaseC2Ev
0x000000710083a71c,O,000004,_ZNK2al16CameraTargetBase8calcSideEPN4sead7Vector3IfEE
0x000000710083a720,O,000004,_ZNK2al16CameraTargetBase6calcUpEPN4sead7Vector3IfEE
0x000000710083a724,O,000004,_ZNK2al16CameraTargetBase9calcFrontEPN4sead7Vector3IfEE
0x000000710083a728,O,000004,_ZNK2al16CameraTargetBase12calcVelocityEPN4sead7Vector3IfEE
0x000000710083a72c,U,000336,_ZN2al24CameraTargetAreaLimitter9tryCreateERKNS_13PlacementInfoE
0x000000710083a87c,U,000008,_ZN2al24CameraTargetAreaLimitterC2EPKNS_9AreaShapeE
0x000000710083a884,U,000104,_ZNK2al24CameraTargetAreaLimitter14applyAreaLimitEPN4sead7Vector3IfEERKS3_

Can't render this file because it is too large.

View File

@ -0,0 +1,15 @@
#include "Library/Camera/CameraTargetBase.h"
namespace al {
CameraTargetBase::CameraTargetBase() {}
void CameraTargetBase::calcSide(sead::Vector3f* side) const {}
void CameraTargetBase::calcUp(sead::Vector3f* up) const {}
void CameraTargetBase::calcFront(sead::Vector3f* front) const {}
void CameraTargetBase::calcVelocity(sead::Vector3f* velocity) const {}
} // namespace al

View File

@ -0,0 +1,49 @@
#pragma once
#include <math/seadVector.h>
#include "Library/HostIO/HioNode.h"
namespace al {
class CameraTargetBase : public HioNode {
public:
CameraTargetBase();
virtual const char* getTargetName() const = 0;
virtual void calcTrans(sead::Vector3f* trans) const = 0;
virtual void calcSide(sead::Vector3f* side) const;
virtual void calcUp(sead::Vector3f* up) const;
virtual void calcFront(sead::Vector3f* front) const;
virtual void calcGravity(sead::Vector3f* gravity) const { *gravity = {0.0f, -1.0f, 0.0f}; }
virtual void calcVelocity(sead::Vector3f* velocity) const;
virtual bool isCollideGround() const { return false; }
virtual bool isInWater() const { return false; }
virtual bool isInMoonGravity() const { return false; }
virtual bool isClimbPole() const { return false; }
virtual bool isGrabCeil() const { return false; }
virtual bool isWallCatch() const { return false; }
virtual bool isInvalidMoveByInput() const { return false; }
virtual bool isEnableEndAfterInterpole() const { return false; }
virtual void update() {}
virtual f32 getRequestDistance() const { return -1.0f; }
private:
bool mIsActiveTarget = false;
};
static_assert(sizeof(CameraTargetBase) == 0x10);
} // namespace al