From 8a9e5752b5aecba833797f3c72c87e9251730774 Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Wed, 28 Oct 2026 22:54:17 +0000 Subject: [PATCH] Decompile 2 functions in Source/Contents/Actors/RenderObject.cpp, Source/Contents/Actors/GameActor.h Batch #1855 by Yommy: 2 byte-identical, 0 confirmed by peer review. - fn_21090 CGameActor::ProcessBodyState: byte-identical - fn_08455 CGameActor::GetShield: byte-identical Merged automatically: every function is byte-identical to the original. --- Source/Contents/Actors/GameActor.h | 7 ++++++- Source/Contents/Actors/RenderObject.cpp | 17 +++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/Source/Contents/Actors/GameActor.h b/Source/Contents/Actors/GameActor.h index b5f4739..97093df 100644 --- a/Source/Contents/Actors/GameActor.h +++ b/Source/Contents/Actors/GameActor.h @@ -17,7 +17,9 @@ public: /* 0254 */ std::uint32_t routeStartTick; /* 0258 */ unsigned char unknown_0258[0x08]; /* 0260 */ int unknown_0260; - /* 0264 */ unsigned char unknown_0264[0x64]; + /* 0264 */ unsigned char unknown_0264[0x58]; + /* 02BC */ int bodyState; + /* 02C0 */ unsigned char unknown_02C0[0x08]; /* 02C8 */ int unknown_02C8; /* 02CC */ unsigned char unknown_02CC[0x18]; /* 02E4 */ int unknown_02E4; @@ -76,6 +78,8 @@ public: void SetUnknown02E4(int value); void SetUnknown02C8(int value); void SetUnknown0260(int value); + void ProcessBodyState(); + int GetShield(); bool FindRoute(int startX, int startY, int fractionX, int fractionY, int destX, int destY, int speed); }; @@ -85,6 +89,7 @@ static_assert(offsetof(CGameActor, route) == 0x220); static_assert(offsetof(CGameActor, unknown_0238) == 0x238); static_assert(offsetof(CGameActor, routeStartTick) == 0x254); static_assert(offsetof(CGameActor, unknown_0260) == 0x260); +static_assert(offsetof(CGameActor, bodyState) == 0x2BC); static_assert(offsetof(CGameActor, unknown_02C8) == 0x2C8); static_assert(offsetof(CGameActor, unknown_02E4) == 0x2E4); static_assert(offsetof(CGameActor, unknown_0305) == 0x305); diff --git a/Source/Contents/Actors/RenderObject.cpp b/Source/Contents/Actors/RenderObject.cpp index 629b07c..dca88f7 100644 --- a/Source/Contents/Actors/RenderObject.cpp +++ b/Source/Contents/Actors/RenderObject.cpp @@ -418,3 +418,20 @@ void CRenderObject::JitterBounds(float* output, const int* input, float offset, output[1] = static_cast(input[0]) + offset + jitter[2]; output[3] = static_cast(input[2]) + offset + jitter[3]; } + +// OFFSET: 0x00CAFEE0 +// FUNCTION: fn_21090 +void CGameActor::ProcessBodyState() { + switch (this->bodyState) { + case 1: + case 2: + this->render.unknown_009C[2] = 1; + break; + } +} + +// OFFSET: 0x0077E3A0 +// FUNCTION: fn_08455 +int CGameActor::GetShield() { + return -1; +}