ricardoofnl
|
01fd323e8d
|
[saco] Implement/match CVehiclePool::FUNC_1001ED10; the waiting slots are 100 forty byte entries and the scan must be a do/while(i != n)
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
56909c4418
|
[saco] Implement/match CVehiclePool::FUNC_1001EF30; field-wise point copies keep vecStart enregistered and spill this
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
86edcdf9af
|
[saco] Implement/match CVehiclePool::FUNC_1001EC70; the closest-distance float has to be initialised before the id
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
a6dc7e699d
|
[saco] Implement/match CVehiclePool::FUNC_1001EE20; the 300 unit cutoff is a float literal and the walk is a plain int
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
80b6155fd6
|
[saco] Implement/match CVehiclePool::FUNC_1001EEB0; the sentinel stays 32-bit only while the loop exit assigns it
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
ea6365cdc6
|
[saco] Implement/match CVehiclePool::FUNC_1001ED70; the plate texture is built by a thiscall on the renderer global
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
e23f696955
|
[saco] Implement/match CVehiclePool::FUNC_1001EC00; the int return is what zero-extends the WORD id
|
2026-09-04 22:28:02 +07:00 |
|
ricardoofnl
|
5cdeb8c5fb
|
[saco] Match ResetVehiclePool and ResetTextDrawPool; their teardowns are destructors
|
2026-09-04 19:32:01 +07:00 |
|
ricardoofnl
|
a5f949d91d
|
Match CVehiclePool::FUNC_1001EB30; the widened callee parameter forces the movzx
|
2026-09-04 19:19:16 +07:00 |
|
ricardoofnl
|
a713761542
|
Lock the CVehiclePool layout with compile-time offset and size probes
|
2026-09-04 19:19:16 +07:00 |
|
ricardoofnl
|
bf76562de5
|
Match CVehiclePool::FUNC_1001EA80; CVehicle inherits a virtual dtor so the delete goes through slot 0
|
2026-09-04 19:03:01 +07:00 |
|
ricardoofnl
|
78dbcbac10
|
Match CVehiclePool::FUNC_1001EB00; the single-slot dispatch takes no bounds check
|
2026-09-04 19:03:01 +07:00 |
|
ricardoofnl
|
4c3609e565
|
Match CVehiclePool::FUNC_1001EDE0; the slot loop bound is inclusive and reloads field_0 each pass
|
2026-09-03 21:09:55 +07:00 |
|
ricardoofnl
|
ce1db2e0fc
|
Match CVehiclePool::FUNC_1001F060; it deletes every slot through FUNC_1001EA80
|
2026-09-03 21:09:55 +07:00 |
|
ricardoofnl
|
e6bb260c3c
|
[saco] Match CVehiclePool::FUNC_1001EB90; the search compares a1 on the left, which fixes the cmp operand order
|
2026-09-03 01:34:00 +07:00 |
|
ricardoofnl
|
778990d4ad
|
[saco] Match FUNC_1001EBE0; the free __stdcall twin of FindGtaIDFromID that takes the pointer directly
|
2026-09-03 01:34:00 +07:00 |
|
ricardoofnl
|
7b2acc2d2b
|
[saco] Match CVehiclePool::FUNC_1001E9B0; it rescans field_3074 for the highest live slot into field_0
|
2026-09-03 01:34:00 +07:00 |
|
ricardoofnl
|
f0e80175eb
|
[saco] Match CVehiclePool::FindGtaIDFromID; it tail-jumps into GamePool_Vehicle_GetIndex
|
2026-09-03 01:34:00 +07:00 |
|
RD42
|
125a453d53
|
[saco] Implement CVehiclePool ctor
|
2024-02-06 22:08:24 +08:00 |
|