mirror of
https://github.com/halpz/re3.git
synced 2025-06-30 04:26:20 +00:00
Struct cleanup, various fixes, enable PS2 rand
This commit is contained in:
@ -63,7 +63,7 @@ CCopPed::CCopPed(eCopType copType) : CPed(PEDTYPE_COP)
|
||||
m_bIsInPursuit = false;
|
||||
field_1350 = 1;
|
||||
m_bIsDisabledCop = false;
|
||||
field_1356 = 0;
|
||||
m_fAbseilPos = 0.0f;
|
||||
m_attackTimer = 0;
|
||||
m_bBeatingSuspect = false;
|
||||
m_bStopAndShootDisabledZone = false;
|
||||
@ -668,11 +668,13 @@ CCopPed::ProcessControl(void)
|
||||
}
|
||||
|
||||
if (bDuckAndCover) {
|
||||
#if !defined(GTA3_1_1_PATCH) && !defined(VC_PED_PORTS)
|
||||
if (!bNotAllowedToDuck && Seek()) {
|
||||
SetMoveState(PEDMOVE_STILL);
|
||||
SetMoveAnim();
|
||||
SetPointGunAt(m_pedInObjective);
|
||||
}
|
||||
#endif
|
||||
} else if (Seek()) {
|
||||
CVehicle *playerVeh = FindPlayerVehicle();
|
||||
if (!playerVeh && player && player->EnteringCar()) {
|
||||
|
@ -20,12 +20,9 @@ public:
|
||||
bool m_bBeatingSuspect;
|
||||
bool m_bStopAndShootDisabledZone;
|
||||
bool m_bZoneDisabled;
|
||||
int32 field_1356;
|
||||
float m_fAbseilPos; // VC leftover, unused
|
||||
eCopType m_nCopType;
|
||||
int8 field_1364;
|
||||
int8 field_1365;
|
||||
int8 field_1366;
|
||||
int8 field_1367;
|
||||
|
||||
CCopPed(eCopType);
|
||||
~CCopPed();
|
||||
|
@ -22,13 +22,12 @@ enum EmergencyPedState
|
||||
class CEmergencyPed : public CPed
|
||||
{
|
||||
public:
|
||||
// 0x53C
|
||||
CPed *m_pRevivedPed;
|
||||
EmergencyPedState m_nEmergencyPedState;
|
||||
CAccident *m_pAttendedAccident;
|
||||
CFire *m_pAttendedFire;
|
||||
bool m_bStartedToCPR; // set but unused(?)
|
||||
int32 field_1360; // also something for medics, unused(?)
|
||||
bool m_bStartedToCPR; // set but unused
|
||||
int32 field_1360; // set to 0 but unused
|
||||
|
||||
CEmergencyPed(uint32);
|
||||
~CEmergencyPed() { }
|
||||
|
@ -9191,8 +9191,11 @@ CPed::PedAnimAlignCB(CAnimBlendAssociation *animAssoc, void *arg)
|
||||
ped->QuitEnteringCar();
|
||||
return;
|
||||
}
|
||||
bool itsVan = veh->bIsVan;
|
||||
bool itsBus = veh->bIsBus;
|
||||
bool itsVan = !!veh->bIsVan;
|
||||
bool itsBus = !!veh->bIsBus;
|
||||
#ifdef FIX_BUGS
|
||||
bool itsLow = !!veh->bLowVehicle;
|
||||
#endif
|
||||
eDoors enterDoor;
|
||||
AnimationId enterAnim;
|
||||
|
||||
@ -9227,6 +9230,10 @@ CPed::PedAnimAlignCB(CAnimBlendAssociation *animAssoc, void *arg)
|
||||
enterAnim = ANIM_VAN_GETIN;
|
||||
} else if (itsBus) {
|
||||
enterAnim = ANIM_COACH_IN_R;
|
||||
#ifdef FIX_BUGS
|
||||
} else if (itsLow) {
|
||||
enterAnim = ANIM_CAR_GETIN_LOW_RHS;
|
||||
#endif
|
||||
} else {
|
||||
enterAnim = ANIM_CAR_GETIN_RHS;
|
||||
}
|
||||
@ -9234,6 +9241,10 @@ CPed::PedAnimAlignCB(CAnimBlendAssociation *animAssoc, void *arg)
|
||||
enterAnim = ANIM_VAN_GETIN_L;
|
||||
} else if (itsBus) {
|
||||
enterAnim = ANIM_COACH_IN_L;
|
||||
#ifdef FIX_BUGS
|
||||
} else if (itsLow) {
|
||||
enterAnim = ANIM_CAR_GETIN_LOW_LHS;
|
||||
#endif
|
||||
} else {
|
||||
enterAnim = ANIM_CAR_GETIN_LHS;
|
||||
}
|
||||
@ -10806,6 +10817,11 @@ CPed::PedAnimDoorOpenCB(CAnimBlendAssociation* animAssoc, void* arg)
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifdef CANCELLABLE_CAR_ENTER
|
||||
if (!veh->IsDoorMissing(door) && veh->CanPedOpenLocks(ped) && veh->IsCar()) {
|
||||
((CAutomobile*)veh)->Damage.SetDoorStatus(door, DOOR_STATUS_SWINGING);
|
||||
}
|
||||
#endif
|
||||
ped->QuitEnteringCar();
|
||||
ped->RestorePreviousObjective();
|
||||
ped->bCancelEnteringCar = false;
|
||||
@ -14492,7 +14508,8 @@ CPed::ProcessEntityCollision(CEntity *collidingEnt, CColPoint *collidingPoints)
|
||||
if (collidingEnt->IsVehicle() && ((CVehicle*)collidingEnt)->IsBoat())
|
||||
collidedWithBoat = true;
|
||||
|
||||
if (!field_EF && !m_phy_flagA80
|
||||
// ofc we're not vehicle
|
||||
if (!m_bIsVehicleBeingShifted && !m_phy_flagA80
|
||||
#ifdef VC_PED_PORTS
|
||||
&& !collidingEnt->IsPed()
|
||||
#endif
|
||||
@ -15259,7 +15276,7 @@ CPed::SetExitCar(CVehicle *veh, uint32 wantedDoorNode)
|
||||
{
|
||||
uint32 optedDoorNode = wantedDoorNode;
|
||||
bool teleportNeeded = false;
|
||||
bool isLow = veh->bLowVehicle;
|
||||
bool isLow = !!veh->bLowVehicle;
|
||||
if (!veh->CanPedExitCar()) {
|
||||
if (veh->pDriver && !veh->pDriver->IsPlayer()) {
|
||||
veh->AutoPilot.m_nCruiseSpeed = 0;
|
||||
|
@ -435,7 +435,7 @@ public:
|
||||
float m_fRotationCur;
|
||||
float m_fRotationDest;
|
||||
float m_headingRate;
|
||||
uint16 m_vehEnterType; // TODO: this is more like a door, not a type
|
||||
uint16 m_vehEnterType;
|
||||
int16 m_walkAroundType;
|
||||
CPhysical *m_pCurrentPhysSurface;
|
||||
CVector m_vecOffsetFromPhysSurface;
|
||||
|
Reference in New Issue
Block a user