Decompile 9 functions in Source/Utility/Math/Vector3d.h, Source/Utility/Math/AffineMatrix.h, ...

Batch #1843 by ragnarok-clanker: 1 byte-identical, 8 confirmed by peer review.

- fn_02024 ClientRadians: logic confirmed by peer review
- fn_17668 WorldScene::GetGameActorByAID: logic confirmed by peer review
- fn_21057 CRenderObject::GetTargetPos: logic confirmed by peer review
- fn_17667 WorldScene::GetGameActorByAidIncludeMe: logic confirmed by peer review
- fn_21290 CGameMode::NotifyItemBounds: logic confirmed by peer review
- fn_03089 CEffect::Slot25: logic confirmed by peer review
- fn_08405 CellWorldPosition: logic confirmed by peer review
- fn_19762 EffectPrimitiveSlot::EffectPrimitiveSlot: byte-identical (already on main)
- fn_19865 DrawEffectPrimitive15: logic confirmed by peer review

Peer-reviewed-by: Yommy, eAthena, ragnarok-clanker
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-10-28 22:49:51 +00:00
commit d7862ef5c4
19 changed files with 217 additions and 119 deletions

View file

@ -40,7 +40,7 @@ void DrawEffectPrimitive15(EffectPrimitiveState& particle, const RenderObjectSta
const float bottomY = bottom * matrix[4] + zeroY;
const float bottomZ = bottom * matrix[5] + zeroZ;
const EffectVector3 corners[4] = {
const vector3d corners[4] = {
{(rightX + topX) + matrix[9], (rightY + topY) + matrix[10], (rightZ + topZ) + matrix[11]},
{(leftX + topX) + matrix[9], (leftY + topY) + matrix[10], (leftZ + topZ) + matrix[11]},
{(bottomX + rightX) + matrix[9], (bottomY + rightY) + matrix[10], (bottomZ + rightZ) + matrix[11]},
@ -57,7 +57,7 @@ void DrawEffectPrimitive15(EffectPrimitiveState& particle, const RenderObjectSta
RenderTriangle& triangle = particle.triangles[triangleIndex];
for (unsigned vertexIndex = 0; vertexIndex < 3; ++vertexIndex) {
const EffectVector3& corner = corners[indices[triangleIndex][vertexIndex]];
const vector3d& corner = corners[indices[triangleIndex][vertexIndex]];
const float position[3] = {corner.x + render.position[0], corner.y + render.position[1], corner.z + render.position[2]};
RenderVertex projected{0, 0, 0, 0, 0, 0xFF000000u, 0, 0};
context.projection.Project(position, context.cameraMatrix, projected);