ricardoofnl
|
dfd7768541
|
[saco] Implement/match CPlayerPed::FUNC_100AEC90; the _asm call is what forces the ebp frame here
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
83e944cbea
|
[saco] Implement/match CPlayerPed::FUNC_100AC720; the pool lookup is tested before m_pPed, not after
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
c6d663e825
|
[saco] Implement/match CPlayerPed::FUNC_100AD880; the first store can alias m_pPed, which forces the reload for the second
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
55846225c4
|
[saco] Implement/match CPlayerPed::FUNC_100AD860; dwStateFlags & 3 narrows to a byte test
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
4835be7464
|
[saco] Implement/match CPlayerPed::FUNC_100ACF00; only al is live at the retn 4, so the setter returns void
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
8801e505b2
|
[saco] Implement/match CPlayerPed::FUNC_100ACEF0; the same setnz shape as FUNC_100ACE40, on field_2DE
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
77b4179732
|
[saco] Implement/match CPlayerPed::FUNC_100ACE40; the BOOL return of field_2E2 != 0 normalises through xor/test/setnz
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
72081093cb
|
[saco] Implement/match CPlayerPed::FUNC_100AE260; a bare field_2F2 getter
|
2026-09-05 08:45:37 +07:00 |
|
ricardoofnl
|
7622034e0d
|
[saco] Implement/match CPlayerPed::ProcessDrunkCamera; two sequential && chains, not an if/else
|
2026-09-03 22:25:37 +07:00 |
|
ricardoofnl
|
cfa984713e
|
[saco] Point CPlayerPed at GetTaskTypeFromTask; my file-local GetTaskType alias had no definition
|
2026-09-03 03:46:05 +07:00 |
|
ricardoofnl
|
e8708bf464
|
[saco] Implement/match CPlayerPed::FUNC_100AFFD0; it kills the ped via kill_actor after unwinding the jetpack
|
2026-09-03 03:28:53 +07:00 |
|
ricardoofnl
|
4ee8177703
|
[saco] Implement/match CPlayerPed::FUNC_100AD0F0; it calls 0x5393F0 on the ped and vehicle slots
|
2026-09-03 03:28:53 +07:00 |
|
ricardoofnl
|
802b8aded3
|
[saco] Implement/match CPlayerPed::FUNC_100AC5D0 and FUNC_100AC640; both read the enter/leave-car task type
|
2026-09-03 02:34:40 +07:00 |
|
ricardoofnl
|
fae75bbc87
|
[saco] Implement/match CPlayerPed::SetWeaponAmmo; it writes the slot ammo found by FindWeaponSlot
|
2026-09-03 02:34:40 +07:00 |
|
ricardoofnl
|
6cbbd15928
|
[saco] Implement CPlayerPed::Destroy and match ~CPlayerPed; the destructor body is just Destroy()
|
2026-09-03 02:34:40 +07:00 |
|
ricardoofnl
|
3e0b45b61e
|
[saco] Implement/match CPlayerPed::RemoveAllAttachedObjects and StopCarrying
|
2026-09-03 02:34:40 +07:00 |
|
ricardoofnl
|
e207d37fb4
|
[saco] Implement/match the CPlayerPed attached-object slot accessors; a live slot holds 1, not just nonzero
|
2026-09-03 02:34:40 +07:00 |
|
ricardoofnl
|
d1ada09e0d
|
[saco] Point CPlayerPed::SetSkin at UnFuck and util.h; drop the file-local prototypes
|
2026-09-03 02:32:59 +07:00 |
|
ricardoofnl
|
c0fab98037
|
[saco] Implement/match CPlayerPed::SetInterior; the refresh flag is a BOOL, not a byte
|
2026-09-03 01:56:59 +07:00 |
|
ricardoofnl
|
3825e14367
|
[saco] Implement/match CPlayerPed::SetSkin; it rets out a streamer assert before swapping the model
|
2026-09-03 01:56:59 +07:00 |
|
ricardoofnl
|
f3dac635fc
|
[saco] Match the field_2C9 and field_2C1 accessors at 0x100ADFA0, 0x100ADFB0 and 0x100ADC90
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
d21274463a
|
[saco] Rework CPlayerPed::SetKeys to retail shape; masks the unshifted wKeys and spells both helpers out
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
fd568887be
|
[saco] Match CPlayerPed::GetKeys; retail inlines IsInVehicle, IsInJetpackMode and HasAmmoForCurrentWeapon
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
5709b2c351
|
[saco] Match CPlayerPed::PutDirectlyInVehicle; retail tests the 0xFFFF pool sentinel before MAX_VEHICLES
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
6a287f55f4
|
[saco] Match CPlayerPed::ExitCurrentVehicle; GetCurrentVehicleID is an inline in the header
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
e28d19cd4a
|
[saco] Match CPlayerPed::TogglePlayerControllable; retail writes the IsInVehicle test out inline
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
686bb11b7a
|
[saco] Match CPlayerPed::StartGoggles; retail writes the HasGoggles test out inline
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
4e2dd5ffc5
|
[saco] Match CPlayerPed::StopGoggles; retail writes the HasGoggles test out inline
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
eec72291c4
|
[saco] Match CPlayerPed::ShowMarker; retail writes the HideMarker body inline
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
1387bbcf00
|
[saco] Match CPlayerPed::GetVehicleSeatID; retail reads dwAction instead of calling GetActionTrigger
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
7a2a87b68c
|
[saco] Match CPlayerPed::HasAmmoForCurrentWeapon and GetAmmo; retail indexes WeaponSlots inline
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
52e959142d
|
[saco] Match CPlayerPed::ForceTargetRotation; retail stores fRotation2 before fRotation1
|
2026-09-03 01:33:32 +07:00 |
|
ricardoofnl
|
28ca7ea41c
|
[saco] Fix game/playerped.cpp so it compiles; retail confirms 2-arg SetArmedWeapon and marker opcodes 0x0187/0x018B
|
2026-09-03 01:33:32 +07:00 |
|
RD42
|
cf6eec3a3f
|
[saco] Update CPlayerPed::SetWeaponSkillLevel(...)
|
2024-11-03 17:34:44 +08:00 |
|
RD42
|
802fe277f2
|
[saco] Implement/match CPlayerPed::SetFightingStyle(...)
|
2024-11-02 23:06:07 +08:00 |
|
RD42
|
3bf84844a3
|
[saco] Implement/match CPlayerPed::GetFightingStyle()
|
2024-11-02 23:04:47 +08:00 |
|
RD42
|
25f2999e3f
|
[saco] Implement/match CPlayerPed::IsCellphoneEnabled()
|
2024-11-02 23:03:33 +08:00 |
|
RD42
|
4039572cbc
|
[saco] Implement/match CPlayerPed::ToggleCellphone(...)
|
2024-11-02 23:03:00 +08:00 |
|
RD42
|
1b62a8d3c4
|
[saco] Implement/match CPlayerPed::DestroyFollowPedTask()
|
2024-11-02 22:58:45 +08:00 |
|
RD42
|
42647cce48
|
[saco] Implement/match CPlayerPed::ApplyCommandTask(...)
|
2024-11-02 22:55:17 +08:00 |
|
RD42
|
20c3b9f7da
|
[saco] Implement/match CPlayerPed::ProcessMarkers(...)
|
2024-11-02 22:54:28 +08:00 |
|
RD42
|
f829baf38c
|
[saco] Implement/match CPlayerPed::IsSwimming()
|
2024-11-02 22:52:02 +08:00 |
|
RD42
|
38470a88e1
|
[saco] Implement/match CPlayerPed::IsFalling()
|
2024-11-02 22:50:38 +08:00 |
|
RD42
|
975fdd589e
|
[saco] Implement/match CPlayerPed::IsFighting()
|
2024-11-02 22:48:04 +08:00 |
|
RD42
|
a7ffe33721
|
[saco] Implement/match CPlayerPed::IsJumping()
|
2024-11-02 22:42:58 +08:00 |
|
RD42
|
5aa26948af
|
[saco] Implement/match CPlayerPed::IsDancing()
|
2024-10-31 19:20:37 +08:00 |
|
RD42
|
0de166559e
|
[saco] Implement/match CPlayerPed::StopDancing()
|
2024-10-31 19:20:07 +08:00 |
|
RD42
|
5ef37e76c2
|
[saco] Implement/match CPlayerPed::StartDancing(...)
|
2024-10-31 19:19:32 +08:00 |
|
RD42
|
27b31e604d
|
[saco] Implement/match CPlayerPed::IsPerformingAnimation(...)
|
2024-10-31 19:17:46 +08:00 |
|
RD42
|
4c8333f443
|
[saco] Implement/match CPlayerPed::ApplyAnimation(...)
|
2024-10-31 19:16:49 +08:00 |
|