Decompile fn_21041 (CGameObject::GetDir)
Batch #2105 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review. - fn_21041 CGameObject::GetDir: logic confirmed by peer review Reviewed-by: ragnarok-clanker
This commit is contained in:
parent
cae73af75b
commit
d15190c45f
2 changed files with 23 additions and 0 deletions
|
|
@ -2,6 +2,7 @@
|
|||
#include "Contents/Actors/GameActor.h"
|
||||
#include "Client/Mode/ActiveGameMode.h"
|
||||
#include "Client/Mode/CGameMode.h"
|
||||
#include "Contents/Camera/Camera.h"
|
||||
#include "Client/Replay.h"
|
||||
#include "Contents/Jobs/JobInheritance.h"
|
||||
#include "Contents/World/WorldScene.h"
|
||||
|
|
@ -57,6 +58,27 @@ void CGameObject::SendObjectMessage(CGameObject*, int, int, int, int, int, int,
|
|||
void CGameObject::Draw(int) {
|
||||
}
|
||||
|
||||
// OFFSET: 0x00CABF10
|
||||
// FUNCTION: fn_21041
|
||||
int CGameObject::GetDir(float rot) {
|
||||
CGameMode* gameMode = static_cast<CGameMode*>(g_world.ActiveGameMode());
|
||||
int longitude = 0;
|
||||
|
||||
if (gameMode) {
|
||||
longitude = static_cast<int>(-gameMode->camera->camera.yaw - rot);
|
||||
|
||||
while (longitude < 0) {
|
||||
longitude += 360;
|
||||
}
|
||||
|
||||
while (longitude >= 360) {
|
||||
longitude -= 360;
|
||||
}
|
||||
}
|
||||
|
||||
return longitude;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00CAB920
|
||||
// FUNCTION: fn_21031
|
||||
int CGameObject::Direction(float angle, const CameraDirectionContext& camera) {
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ public:
|
|||
virtual void SendObjectMessage(CGameObject* sender, int message, int a, int b, int c, int d, int e, int f, int g, int h, int i, int j, int k, int l, int m);
|
||||
virtual void Draw(int argument);
|
||||
virtual int Direction(float angle, const CameraDirectionContext& camera);
|
||||
int GetDir(float rot);
|
||||
|
||||
/* 0008 */ std::uint64_t identity;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue