2023-10-23 22:49:42 +08:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2024-02-06 21:37:52 +08:00
|
|
|
#include "game.h" // Main runtime interface base structs.
|
|
|
|
|
|
|
|
//-----------------------------------------------------------
|
|
|
|
|
2023-10-23 22:49:42 +08:00
|
|
|
class CCamera // size: 8
|
|
|
|
{
|
|
|
|
public:
|
2024-03-16 23:35:28 +08:00
|
|
|
CEntity *field_0;
|
2024-02-06 21:37:52 +08:00
|
|
|
MATRIX4X4 *m_matPos;
|
|
|
|
public:
|
|
|
|
void SetBehindPlayer();
|
|
|
|
void SetPosition(float fX, float fY, float fZ, float fRotationX, float fRotationY, float fRotationZ); // tested
|
|
|
|
void LookAtPoint(float fX, float fY, float fZ, int iType);
|
|
|
|
void Restore();
|
|
|
|
void Fade(int iInOut);
|
|
|
|
void GetMatrix(PMATRIX4X4 Matrix);
|
|
|
|
void SetMatrix(MATRIX4X4 Matrix);
|
2024-02-10 22:45:20 +08:00
|
|
|
void Attach(int unk1, int unk2, int unk3);
|
|
|
|
void InterpolatePosition(VECTOR *vecFrom, VECTOR *vecTo, int iTime, BYTE byteCut);
|
|
|
|
void InterpolateLookAt(VECTOR *vecFrom, VECTOR *vecTo, int iTime, BYTE byteCut);
|
2024-07-24 17:01:39 +08:00
|
|
|
void FUNC_1009D660(CEntity *pEntity);
|
|
|
|
void FUNC_1009D6B0();
|
2024-03-16 23:35:28 +08:00
|
|
|
float GetDistanceFromPoint(VECTOR *vecPos);
|
2023-10-23 22:49:42 +08:00
|
|
|
|
|
|
|
CCamera() {
|
2024-02-06 21:37:52 +08:00
|
|
|
m_matPos = (MATRIX4X4 *)ADDR_CAMERA;
|
2024-03-16 23:35:28 +08:00
|
|
|
field_0 = NULL;
|
2023-10-23 22:49:42 +08:00
|
|
|
}
|
|
|
|
};
|