2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 04:27:42 +00:00

Adjust runtime directory layout

This commit is contained in:
Jack Andersen
2016-04-16 13:48:29 -10:00
parent 042030934b
commit 7afdc556fd
30 changed files with 68 additions and 16 deletions

View File

@@ -3,21 +3,26 @@
#include "RetroTypes.hpp"
#include "zeus/CVector3f.hpp"
#include "World/CGameArea.hpp"
namespace urde
{
class CFirstPersonCamera;
class CBallCamera;
class CStateManager;
class CGameCamera;
class CCameraShakeData;
class CCameraManager
{
TUniqueId x0_id;
TUniqueId x0_curCameraId;
std::vector<TUniqueId> x4_cineCameras;
std::list<CCameraShakeData> x18_shakers;
zeus::CVector3f x30_;
CFirstPersonCamera* x7c_fpCamera;
CBallCamera* x80_ballCamera;
public:
CCameraManager(TUniqueId id);
CCameraManager(TUniqueId curCameraId);
void SetSpecialCameras(CFirstPersonCamera& fp, CBallCamera& ball)
{
@@ -31,7 +36,15 @@ public:
void AddCinemaCamera(TUniqueId, CStateManager& stateMgr);
void SetInsideFluid(bool, TUniqueId);
void Update(float dt, CStateManager& stateMgr);
CGameCamera* GetCurrentCamera(CStateManager& stateMgr) const;
const CGameCamera* GetCurrentCamera(const CStateManager& stateMgr) const;
void SetCurrentCameraId(TUniqueId id, CStateManager& stateMgr);
TUniqueId GetCurrentCameraId() const
{
if (x4_cineCameras.size())
return x4_cineCameras.back();
return x0_curCameraId;
}
};
}