mirror of
https://github.com/halpz/re3.git
synced 2024-12-27 18:25:28 +00:00
Cleanup and one needed function
This commit is contained in:
parent
5357957fe1
commit
c3b41d79a2
|
@ -386,6 +386,8 @@ CPed::~CPed(void)
|
|||
}
|
||||
if (m_pFire)
|
||||
m_pFire->Extinguish();
|
||||
|
||||
ClearWeapons();
|
||||
if (bCarPassenger)
|
||||
CPopulation::ms_nTotalCarPassengerPeds--;
|
||||
if (bMiamiViceCop)
|
||||
|
@ -409,10 +411,11 @@ CPed::FlagToDestroyWhenNextProcessed(void)
|
|||
}
|
||||
bInVehicle = false;
|
||||
m_pMyVehicle = nil;
|
||||
|
||||
if (CharCreatedBy == MISSION_CHAR)
|
||||
m_nPedState = PED_DEAD;
|
||||
SetPedState(PED_DEAD);
|
||||
else
|
||||
m_nPedState = PED_NONE;
|
||||
SetPedState(PED_NONE);
|
||||
m_pVehicleAnim = nil;
|
||||
}
|
||||
|
||||
|
@ -1884,10 +1887,7 @@ CPed::ClearPointGunAt(void)
|
|||
ClearAimFlag();
|
||||
bIsPointingGunAt = false;
|
||||
if (m_nPedState == PED_AIM_GUN || m_nPedState == PED_ATTACK) {
|
||||
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
m_nPedState = PED_IDLE;
|
||||
SetPedState(PED_IDLE);
|
||||
RestorePreviousState();
|
||||
}
|
||||
weaponInfo = CWeaponInfo::GetWeaponInfo(GetWeapon()->m_eWeaponType);
|
||||
|
@ -4650,10 +4650,7 @@ CPed::SetGetUp(void)
|
|||
}
|
||||
if (m_nPedState != PED_GETUP) {
|
||||
SetStoredState();
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_GETUP;
|
||||
SetPedState(PED_GETUP);
|
||||
}
|
||||
|
||||
CVehicle *collidingVeh = (CVehicle*)m_pCollidingEntity;
|
||||
|
@ -4970,10 +4967,7 @@ CPed::SetPointGunAt(CEntity *to)
|
|||
if (m_nPedState != PED_ATTACK)
|
||||
SetStoredState();
|
||||
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_AIM_GUN;
|
||||
SetPedState(PED_AIM_GUN);
|
||||
bIsPointingGunAt = true;
|
||||
SetMoveState(PEDMOVE_NONE);
|
||||
|
||||
|
@ -5267,10 +5261,7 @@ CPed::SetAttack(CEntity *victim)
|
|||
&& !(m_pedStats->m_flags & STAT_SHOPPING_BAGS) && curWeapon->m_bPartialAttack)) {
|
||||
|
||||
if (m_nPedState != PED_ATTACK) {
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_ATTACK;
|
||||
SetPedState(PED_ATTACK);
|
||||
bIsAttacking = false;
|
||||
|
||||
CAnimBlendAssociation *animAssoc = CAnimManager::BlendAnimation(GetClump(), curWeapon->m_AnimToPlay, ANIM_MELEE_ATTACK_START, 8.0f);
|
||||
|
@ -5291,10 +5282,7 @@ CPed::SetAttack(CEntity *victim)
|
|||
m_nMoveState == PEDMOVE_WALK || m_nMoveState == PEDMOVE_RUN)) {
|
||||
|
||||
if (m_nPedState != PED_ATTACK) {
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_ATTACK;
|
||||
SetPedState(PED_ATTACK);
|
||||
bIsAttacking = false;
|
||||
CAnimBlendAssociation* animAssoc = CAnimManager::BlendAnimation(GetClump(), curWeapon->m_AnimToPlay, ANIM_MELEE_ATTACK_START, 8.0f);
|
||||
animAssoc->SetRun();
|
||||
|
@ -5371,10 +5359,7 @@ CPed::SetAttack(CEntity *victim)
|
|||
if (m_nPedState != PED_AIM_GUN)
|
||||
SetStoredState();
|
||||
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_ATTACK;
|
||||
SetPedState(PED_ATTACK);
|
||||
SetMoveState(PEDMOVE_NONE);
|
||||
if (bCrouchWhenShooting && bIsDucking && !!curWeapon->m_bCrouchFire) {
|
||||
CAnimBlendAssociation* curMoveAssoc = RpAnimBlendClumpGetAssociation(GetClump(), GetCrouchFireAnim(curWeapon));
|
||||
|
@ -6657,10 +6642,7 @@ CPed::SetDead(void)
|
|||
if (m_nPedState == PED_DRIVING)
|
||||
bIsVisible = false;
|
||||
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_DEAD;
|
||||
SetPedState(PED_DEAD);
|
||||
m_pVehicleAnim = nil;
|
||||
m_pCollidingEntity = nil;
|
||||
|
||||
|
|
|
@ -47,19 +47,12 @@ CPlayerPed::CPlayerPed(void) : CPed(PEDTYPE_PLAYER1)
|
|||
m_nSpeedTimer = 0;
|
||||
m_bSpeedTimerFlag = false;
|
||||
|
||||
// This should be something inlined
|
||||
// TODO(Miami)
|
||||
|
||||
// if (pPointGunAt)
|
||||
// m_pPointGunAt->CleanUpOldReference(&m_pPointGunAt);
|
||||
|
||||
m_pPointGunAt = nil;
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
// TODO(Miami)
|
||||
// This should be something inlined
|
||||
|
||||
m_nPedState = PED_IDLE;
|
||||
SetPedState(PED_IDLE);
|
||||
m_fMaxStamina = 150.0f;
|
||||
m_fCurrentStamina = m_fMaxStamina;
|
||||
m_fStaminaProgress = 0.0f;
|
||||
|
@ -290,10 +283,7 @@ CPlayerPed::SetInitialState(void)
|
|||
m_pFire->Extinguish();
|
||||
|
||||
RpAnimBlendClumpRemoveAllAssociations(GetClump());
|
||||
if (m_nPedState == PED_FOLLOW_PATH)
|
||||
ClearFollowPath();
|
||||
|
||||
m_nPedState = PED_IDLE;
|
||||
SetPedState(PED_IDLE);
|
||||
SetMoveState(PEDMOVE_STILL);
|
||||
m_nLastPedState = PED_NONE;
|
||||
m_animGroup = ASSOCGRP_PLAYER;
|
||||
|
@ -1626,6 +1616,21 @@ CPlayerPed::ProcessControl(void)
|
|||
#endif
|
||||
}
|
||||
|
||||
bool
|
||||
CPlayerPed::DoesPlayerWantNewWeapon(eWeaponType weapon, bool onlyIfSlotIsEmpty)
|
||||
{
|
||||
uint32 slot = CWeaponInfo::GetWeaponInfo(weapon)->m_nWeaponSlot;
|
||||
|
||||
if (!HasWeaponSlot(slot) || GetWeapon(slot).m_eWeaponType == weapon)
|
||||
return true;
|
||||
|
||||
if (onlyIfSlotIsEmpty)
|
||||
return false;
|
||||
|
||||
// Check if he's using that slot right now.
|
||||
return m_nPedState != PED_ATTACK && m_nPedState != PED_AIM_GUN || slot != m_currentWeapon;
|
||||
}
|
||||
|
||||
#ifdef COMPATIBLE_SAVES
|
||||
#define CopyFromBuf(buf, data) memcpy(&data, buf, sizeof(data)); SkipSaveBuf(buf, sizeof(data));
|
||||
#define CopyToBuf(buf, data) memcpy(buf, &data, sizeof(data)); SkipSaveBuf(buf, sizeof(data));
|
||||
|
|
|
@ -82,6 +82,7 @@ public:
|
|||
void ProcessAnimGroups(void);
|
||||
void ProcessPlayerWeapon(CPad*);
|
||||
void PlayerControlZelda(CPad*);
|
||||
bool DoesPlayerWantNewWeapon(eWeaponType, bool);
|
||||
|
||||
static void SetupPlayerPed(int32);
|
||||
static void DeactivatePlayerPed(int32);
|
||||
|
|
|
@ -1597,7 +1597,7 @@ CWeapon::FireShotgun(CEntity *shooter, CVector *fireSource)
|
|||
if ( CGame::nastyGame )
|
||||
{
|
||||
uint8 bloodAmount = 8;
|
||||
if ( m_eWeaponType == WEAPONTYPE_SHOTGUN || m_eWeaponType == WEAPONTYPE_SPAS12_SHOTGUN || m_eWeaponType == WEAPONTYPE_STUBBY_SHOTGUN)
|
||||
if ( IsShotgun(m_eWeaponType) )
|
||||
bloodAmount = 32;
|
||||
|
||||
CVector dir = (point.point - victim->GetPosition()) * 0.01f;
|
||||
|
|
Loading…
Reference in a new issue