Use original animation names from VCS
This commit is contained in:
@@ -29,30 +29,30 @@ RpClump *flyingClumpTemp;
|
||||
|
||||
// This is beta fistfite.dat array. Not used anymore since they're being fetched from fistfite.dat.
|
||||
FightMove tFightMoves[NUM_FIGHTMOVES] = {
|
||||
{NUM_ANIMS, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_PUNCH_R, 0.2f, 8.0f / 30.0f, 0.0f, 0.3f, HITLEVEL_HIGH, 1, 0},
|
||||
{ANIM_FIGHT_IDLE, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_FIGHT_SH_F, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_FIGHT_KNEE, 4.0f / 30.0f, 0.2f, 0.0f, 0.6f, HITLEVEL_LOW, 2, 0},
|
||||
{ANIM_FIGHT_HEAD, 4.0f / 30.0f, 0.2f, 0.0f, 0.7f, HITLEVEL_HIGH, 3, 0},
|
||||
{ANIM_FIGHT_PUNCH, 4.0f / 30.0f, 7.0f / 30.0f, 10.0f / 30.0f, 0.4f, HITLEVEL_HIGH, 1, 0},
|
||||
{ANIM_FIGHT_LHOOK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.4f, HITLEVEL_HIGH, 3, 0},
|
||||
{ANIM_FIGHT_KICK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.5, HITLEVEL_MEDIUM, 2, 0},
|
||||
{ANIM_FIGHT_LONGKICK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.5, HITLEVEL_MEDIUM, 4, 0},
|
||||
{ANIM_FIGHT_ROUNDHOUSE, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.6f, HITLEVEL_MEDIUM, 4, 0},
|
||||
{ANIM_FIGHT_BODYBLOW, 5.0f / 30.0f, 7.0f / 30.0f, 0.0f, 0.35f, HITLEVEL_LOW, 2, 0},
|
||||
{ANIM_KICK_FLOOR, 10.0f / 30.0f, 14.0f / 30.0f, 0.0f, 0.4f, HITLEVEL_GROUND, 1, 0},
|
||||
{ANIM_HIT_FRONT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_BACK, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_RIGHT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_LEFT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_BODYBLOW, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_CHEST, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_HEAD, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_WALK, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_FLOOR_HIT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_HIT_BEHIND, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_FIGHT2_IDLE, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_NUM, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_PUNCH, 0.2f, 8.0f / 30.0f, 0.0f, 0.3f, HITLEVEL_HIGH, 1, 0},
|
||||
{ANIM_STD_FIGHT_IDLE, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_FIGHT_SHUFFLE_F, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_FIGHT_KNEE, 4.0f / 30.0f, 0.2f, 0.0f, 0.6f, HITLEVEL_LOW, 2, 0},
|
||||
{ANIM_STD_FIGHT_HEAD, 4.0f / 30.0f, 0.2f, 0.0f, 0.7f, HITLEVEL_HIGH, 3, 0},
|
||||
{ANIM_STD_FIGHT_PUNCH, 4.0f / 30.0f, 7.0f / 30.0f, 10.0f / 30.0f, 0.4f, HITLEVEL_HIGH, 1, 0},
|
||||
{ANIM_STD_FIGHT_LHOOK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.4f, HITLEVEL_HIGH, 3, 0},
|
||||
{ANIM_STD_FIGHT_KICK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.5, HITLEVEL_MEDIUM, 2, 0},
|
||||
{ANIM_STD_FIGHT_LONGKICK, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.5, HITLEVEL_MEDIUM, 4, 0},
|
||||
{ANIM_STD_FIGHT_ROUNDHOUSE, 8.0f / 30.0f, 10.0f / 30.0f, 0.0f, 0.6f, HITLEVEL_MEDIUM, 4, 0},
|
||||
{ANIM_STD_FIGHT_BODYBLOW, 5.0f / 30.0f, 7.0f / 30.0f, 0.0f, 0.35f, HITLEVEL_LOW, 2, 0},
|
||||
{ANIM_STD_KICKGROUND, 10.0f / 30.0f, 14.0f / 30.0f, 0.0f, 0.4f, HITLEVEL_GROUND, 1, 0},
|
||||
{ANIM_STD_HIT_FRONT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_BACK, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_RIGHT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_LEFT, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_BODYBLOW, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_CHEST, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_HEAD, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_WALK, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_FLOOR, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_HIT_BEHIND, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
{ANIM_STD_FIGHT_2IDLE, 0.0f, 0.0f, 0.0f, 0.0f, HITLEVEL_NULL, 0, 0},
|
||||
};
|
||||
|
||||
static PedOnGroundState
|
||||
@@ -247,7 +247,7 @@ CPed::SetAttack(CEntity *victim)
|
||||
if (victim && victim->IsPed())
|
||||
victimPed = (CPed*)victim;
|
||||
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_ARMED);
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE_BIGGUN);
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -1000.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
@@ -256,12 +256,12 @@ CPed::SetAttack(CEntity *victim)
|
||||
if (m_attackTimer > CTimer::GetTimeInMilliseconds() || m_nWaitState == WAITSTATE_SURPRISE)
|
||||
return;
|
||||
|
||||
if (RpAnimBlendClumpGetAssociation(GetClump(), ANIM_HGUN_RELOAD)) {
|
||||
if (RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_HGUN_RELOAD)) {
|
||||
bIsAttacking = false;
|
||||
return;
|
||||
}
|
||||
|
||||
if (RpAnimBlendClumpGetAssociation(GetClump(), ANIM_AK_RELOAD)) {
|
||||
if (RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_AK_RELOAD)) {
|
||||
if (!IsPlayer() || m_nPedState != PED_ATTACK || ((CPlayerPed*)this)->m_bHaveTargetSelected)
|
||||
bIsAttacking = false;
|
||||
else
|
||||
@@ -351,7 +351,7 @@ CPed::SetAttack(CEntity *victim)
|
||||
SetPedState(PED_ATTACK);
|
||||
SetMoveState(PEDMOVE_NONE);
|
||||
if (bCrouchWhenShooting) {
|
||||
animAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_RBLOCK_CSHOOT, 4.0f);
|
||||
animAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_RBLOCK_SHOOT, 4.0f);
|
||||
} else {
|
||||
float animDelta = 8.0f;
|
||||
if (curWeapon->m_eWeaponFire == WEAPON_FIRE_MELEE)
|
||||
@@ -418,7 +418,7 @@ CPed::ClearAttackByRemovingAnim(void)
|
||||
weaponAssoc = RpAnimBlendClumpGetAssociation(GetClump(), weapon->m_Anim2ToPlay);
|
||||
|
||||
if (!weaponAssoc && weapon->IsFlagSet(WEAPONFLAG_THROW))
|
||||
weaponAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_WEAPON_THROWU);
|
||||
weaponAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_THROW_UNDER);
|
||||
|
||||
if (!weaponAssoc) {
|
||||
ClearAttack();
|
||||
@@ -440,27 +440,27 @@ CPed::FinishedAttackCB(CAnimBlendAssociation *attackAssoc, void *arg)
|
||||
|
||||
if (attackAssoc) {
|
||||
switch (attackAssoc->animId) {
|
||||
case ANIM_WEAPON_START_THROW:
|
||||
case ANIM_STD_START_THROW:
|
||||
// what?!
|
||||
if ((!ped->IsPlayer() || ((CPlayerPed*)ped)->m_bHaveTargetSelected) && ped->IsPlayer()) {
|
||||
attackAssoc->blendDelta = -1000.0f;
|
||||
newAnim = CAnimManager::AddAnimation(ped->GetClump(), ASSOCGRP_STD, ANIM_WEAPON_THROWU);
|
||||
newAnim = CAnimManager::AddAnimation(ped->GetClump(), ASSOCGRP_STD, ANIM_STD_THROW_UNDER);
|
||||
} else {
|
||||
attackAssoc->blendDelta = -1000.0f;
|
||||
newAnim = CAnimManager::AddAnimation(ped->GetClump(), ASSOCGRP_STD, ANIM_WEAPON_THROW);
|
||||
newAnim = CAnimManager::AddAnimation(ped->GetClump(), ASSOCGRP_STD, ANIM_STD_WEAPON_THROW);
|
||||
}
|
||||
|
||||
newAnim->SetFinishCallback(FinishedAttackCB, ped);
|
||||
return;
|
||||
|
||||
case ANIM_FIGHT_PPUNCH:
|
||||
case ANIM_STD_PARTIAL_PUNCH:
|
||||
attackAssoc->blendDelta = -8.0f;
|
||||
attackAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
ped->ClearAttack();
|
||||
return;
|
||||
|
||||
case ANIM_WEAPON_THROW:
|
||||
case ANIM_WEAPON_THROWU:
|
||||
case ANIM_STD_WEAPON_THROW:
|
||||
case ANIM_STD_THROW_UNDER:
|
||||
if (ped->GetWeapon()->m_nAmmoTotal > 0) {
|
||||
currentWeapon = CWeaponInfo::GetWeaponInfo(ped->GetWeapon()->m_eWeaponType);
|
||||
ped->AddWeaponModel(currentWeapon->m_nModelId);
|
||||
@@ -535,16 +535,16 @@ CPed::Attack(void)
|
||||
weaponAnimAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ourWeapon->m_AnimToPlay);
|
||||
attackShouldContinue = bIsAttacking;
|
||||
reloadAnimAssoc = nil;
|
||||
reloadAnim = NUM_ANIMS;
|
||||
reloadAnim = ANIM_STD_NUM;
|
||||
delayBetweenAnimAndFire = ourWeapon->m_fAnimFrameFire;
|
||||
weaponAnim = ourWeapon->m_AnimToPlay;
|
||||
|
||||
if (weaponAnim == ANIM_WEAPON_HGUN_BODY)
|
||||
reloadAnim = ANIM_HGUN_RELOAD;
|
||||
else if (weaponAnim == ANIM_WEAPON_AK_BODY)
|
||||
reloadAnim = ANIM_AK_RELOAD;
|
||||
if (weaponAnim == ANIM_STD_WEAPON_HGUN_BODY)
|
||||
reloadAnim = ANIM_STD_HGUN_RELOAD;
|
||||
else if (weaponAnim == ANIM_STD_WEAPON_AK_BODY)
|
||||
reloadAnim = ANIM_STD_AK_RELOAD;
|
||||
|
||||
if (reloadAnim != NUM_ANIMS)
|
||||
if (reloadAnim != ANIM_STD_NUM)
|
||||
reloadAnimAssoc = RpAnimBlendClumpGetAssociation(GetClump(), reloadAnim);
|
||||
|
||||
if (bIsDucking)
|
||||
@@ -566,7 +566,7 @@ CPed::Attack(void)
|
||||
|
||||
// Long throw granade, molotov
|
||||
if (!weaponAnimAssoc && ourWeapon->IsFlagSet(WEAPONFLAG_THROW)) {
|
||||
weaponAnimAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_WEAPON_THROWU);
|
||||
weaponAnimAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_THROW_UNDER);
|
||||
delayBetweenAnimAndFire = 0.2f;
|
||||
}
|
||||
|
||||
@@ -619,7 +619,7 @@ CPed::Attack(void)
|
||||
|
||||
firePos = GetMatrix() * firePos;
|
||||
} else if (GetWeapon()->m_eWeaponType != WEAPONTYPE_UNARMED) {
|
||||
TransformToNode(firePos, weaponAnimAssoc->animId == ANIM_KICK_FLOOR ? PED_FOOTR : PED_HANDR);
|
||||
TransformToNode(firePos, weaponAnimAssoc->animId == ANIM_STD_KICKGROUND ? PED_FOOTR : PED_HANDR);
|
||||
} else {
|
||||
firePos = GetMatrix() * firePos;
|
||||
}
|
||||
@@ -636,7 +636,7 @@ CPed::Attack(void)
|
||||
if (GetWeapon()->m_eWeaponState != WEAPONSTATE_MELEE_MADECONTACT) {
|
||||
// If reloading just began, start the animation
|
||||
// Last condition will always return true, even IDA hides it
|
||||
if (GetWeapon()->m_eWeaponState == WEAPONSTATE_RELOADING && reloadAnim != NUM_ANIMS /* && !reloadAnimAssoc*/) {
|
||||
if (GetWeapon()->m_eWeaponState == WEAPONSTATE_RELOADING && reloadAnim != ANIM_STD_NUM /* && !reloadAnimAssoc*/) {
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, reloadAnim, 8.0f);
|
||||
ClearLookFlag();
|
||||
ClearAimFlag();
|
||||
@@ -646,9 +646,9 @@ CPed::Attack(void)
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (weaponAnimAssoc->animId == ANIM_WEAPON_BAT_V || weaponAnimAssoc->animId == ANIM_WEAPON_BAT_H) {
|
||||
if (weaponAnimAssoc->animId == ANIM_STD_WEAPON_BAT_V || weaponAnimAssoc->animId == ANIM_STD_WEAPON_BAT_H) {
|
||||
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_BAT_ATTACK, 1.0f);
|
||||
} else if (weaponAnimAssoc->animId == ANIM_FIGHT_PPUNCH) {
|
||||
} else if (weaponAnimAssoc->animId == ANIM_STD_PARTIAL_PUNCH) {
|
||||
DMAudio.PlayOneShot(m_audioEntityId, SOUND_FIGHT_PUNCH_39, 0.0f);
|
||||
}
|
||||
|
||||
@@ -712,7 +712,7 @@ CPed::Attack(void)
|
||||
|
||||
weaponAnim = weaponAnimAssoc->animId;
|
||||
if (ourWeapon->m_eWeaponFire != WEAPON_FIRE_MELEE || CheckForPedsOnGroundToAttack(this, nil) < PED_ON_THE_FLOOR) {
|
||||
if (weaponAnim != ourWeapon->m_Anim2ToPlay || weaponAnim == ANIM_RBLOCK_CSHOOT) {
|
||||
if (weaponAnim != ourWeapon->m_Anim2ToPlay || weaponAnim == ANIM_STD_RBLOCK_SHOOT) {
|
||||
weaponAnimAssoc->Start(ourWeapon->m_fAnimLoopStart);
|
||||
} else {
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ourWeapon->m_AnimToPlay, 8.0f);
|
||||
@@ -785,16 +785,16 @@ CPed::StartFightAttack(uint8 buttonPressure)
|
||||
SetPedState(PED_FIGHT);
|
||||
m_fightButtonPressure = 0;
|
||||
RpAnimBlendClumpRemoveAssociations(GetClump(), ASSOC_REPEAT);
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_WALK_START);
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_STARTWALK);
|
||||
|
||||
if (animAssoc) {
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
animAssoc->blendDelta = -1000.0f;
|
||||
}
|
||||
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_RUN_STOP);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_RUNSTOP1);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_RUN_STOP_R);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_RUNSTOP2);
|
||||
|
||||
if (animAssoc) {
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
@@ -805,7 +805,7 @@ CPed::StartFightAttack(uint8 buttonPressure)
|
||||
SetMoveState(PEDMOVE_NONE);
|
||||
m_nStoredMoveState = PEDMOVE_NONE;
|
||||
|
||||
CAnimManager::AddAnimation(GetClump(), ASSOCGRP_STD, ANIM_FIGHT_IDLE)->blendAmount = 1.0f;
|
||||
CAnimManager::AddAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_FIGHT_IDLE)->blendAmount = 1.0f;
|
||||
|
||||
CPed *pedOnGround = nil;
|
||||
if (IsPlayer() && CheckForPedsOnGroundToAttack(this, &pedOnGround) > PED_IN_FRONT_OF_ATTACKER) {
|
||||
@@ -845,7 +845,7 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
if (hitLevel == HITLEVEL_GROUND) {
|
||||
CAnimBlendAssociation *floorHitAssoc;
|
||||
if (RpAnimBlendClumpGetFirstAssociation(GetClump(), ASSOC_FRONTAL)) {
|
||||
floorHitAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FLOOR_HIT_F, 8.0f);
|
||||
floorHitAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_HIT_FLOOR_FRONT, 8.0f);
|
||||
} else {
|
||||
floorHitAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, tFightMoves[FIGHTMOVE_HITONFLOOR].animId, 8.0f);
|
||||
}
|
||||
@@ -867,8 +867,8 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
} else if (m_nPedState == PED_FALL) {
|
||||
if (hitLevel == HITLEVEL_GROUND && !IsPedHeadAbovePos(-0.3f)) {
|
||||
CAnimBlendAssociation *floorHitAssoc = RpAnimBlendClumpGetFirstAssociation(GetClump(), ASSOC_FRONTAL) ?
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FLOOR_HIT_F, 8.0f) :
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FLOOR_HIT, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_HIT_FLOOR_FRONT, 8.0f) :
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_HIT_FLOOR, 8.0f);
|
||||
if (floorHitAssoc) {
|
||||
floorHitAssoc->flags &= ~ASSOC_FADEOUTWHENDONE;
|
||||
floorHitAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
@@ -887,16 +887,16 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
AnimationId shotAnim;
|
||||
switch (direction) {
|
||||
case 1:
|
||||
shotAnim = ANIM_SHOT_LEFT_PARTIAL;
|
||||
shotAnim = ANIM_STD_HITBYGUN_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
shotAnim = ANIM_SHOT_BACK_PARTIAL;
|
||||
shotAnim = ANIM_STD_HITBYGUN_BACK;
|
||||
break;
|
||||
case 3:
|
||||
shotAnim = ANIM_SHOT_RIGHT_PARTIAL;
|
||||
shotAnim = ANIM_STD_HITBYGUN_RIGHT;
|
||||
break;
|
||||
default:
|
||||
shotAnim = ANIM_SHOT_FRONT_PARTIAL;
|
||||
shotAnim = ANIM_STD_HITBYGUN_FRONT;
|
||||
break;
|
||||
}
|
||||
CAnimBlendAssociation *shotAssoc = RpAnimBlendClumpGetAssociation(GetClump(), shotAnim);
|
||||
@@ -914,16 +914,16 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
#ifndef VC_PED_PORTS
|
||||
switch (direction) {
|
||||
case 1:
|
||||
SetFall(500, ANIM_KO_SPIN_R, false);
|
||||
SetFall(500, ANIM_STD_HIGHIMPACT_LEFT, false);
|
||||
break;
|
||||
case 2:
|
||||
SetFall(500, ANIM_KO_SKID_BACK, false);
|
||||
SetFall(500, ANIM_STD_HIGHIMPACT_BACK, false);
|
||||
break;
|
||||
case 3:
|
||||
SetFall(500, ANIM_KO_SPIN_L, false);
|
||||
SetFall(500, ANIM_STD_HIGHIMPACT_RIGHT, false);
|
||||
break;
|
||||
default:
|
||||
SetFall(500, ANIM_KO_SHOT_STOM, false);
|
||||
SetFall(500, ANIM_STD_KO_SHOT_STOMACH, false);
|
||||
break;
|
||||
}
|
||||
#else
|
||||
@@ -931,30 +931,30 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
AnimationId hitAnim;
|
||||
switch (direction) {
|
||||
case 1:
|
||||
hitAnim = ANIM_KO_SPIN_R;
|
||||
hitAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
if (CGeneral::GetRandomNumber() & 1) {
|
||||
fall = false;
|
||||
hitAnim = ANIM_HIT_BACK;
|
||||
hitAnim = ANIM_STD_HIT_BACK;
|
||||
} else {
|
||||
hitAnim = ANIM_KO_SKID_BACK;
|
||||
hitAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
hitAnim = ANIM_KO_SPIN_L;
|
||||
hitAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
if (hitLevel == HITLEVEL_LOW) {
|
||||
hitAnim = ANIM_KO_SHOT_STOM;
|
||||
hitAnim = ANIM_STD_KO_SHOT_STOMACH;
|
||||
} else if (CGeneral::GetRandomNumber() & 1) {
|
||||
fall = false;
|
||||
hitAnim = ANIM_HIT_WALK;
|
||||
hitAnim = ANIM_STD_HIT_WALK;
|
||||
} else if (CGeneral::GetRandomNumber() & 1) {
|
||||
fall = false;
|
||||
hitAnim = ANIM_HIT_HEAD;
|
||||
hitAnim = ANIM_STD_HIT_HEAD;
|
||||
} else {
|
||||
hitAnim = ANIM_KO_SHOT_FACE;
|
||||
hitAnim = ANIM_STD_KO_SHOT_FACE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -981,15 +981,15 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
case HITLEVEL_LOW:
|
||||
#ifndef VC_PED_PORTS
|
||||
if (direction == 2) {
|
||||
SetFall(1000, ANIM_KO_SKID_BACK, false);
|
||||
SetFall(1000, ANIM_STD_HIGHIMPACT_BACK, false);
|
||||
return;
|
||||
}
|
||||
#else
|
||||
if (direction == 2 && (!IsPlayer() || ((CGeneral::GetRandomNumber() & 1) && m_fHealth < 30.0f))) {
|
||||
SetFall(1000, ANIM_KO_SKID_BACK, false);
|
||||
SetFall(1000, ANIM_STD_HIGHIMPACT_BACK, false);
|
||||
return;
|
||||
} else if (direction != 2 && !IsPlayer() && (CGeneral::GetRandomNumber() & 1) && m_fHealth < 30.0f) {
|
||||
SetFall(1000, ANIM_KO_SHOT_STOM, false);
|
||||
SetFall(1000, ANIM_STD_KO_SHOT_STOMACH, false);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
@@ -1061,14 +1061,14 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
SetPedState(PED_FIGHT);
|
||||
m_fightButtonPressure = 0;
|
||||
RpAnimBlendClumpRemoveAssociations(GetClump(), ASSOC_REPEAT);
|
||||
CAnimBlendAssociation *walkStartAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_WALK_START);
|
||||
CAnimBlendAssociation *walkStartAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_STARTWALK);
|
||||
if (walkStartAssoc) {
|
||||
walkStartAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
walkStartAssoc->blendDelta = -1000.0f;
|
||||
}
|
||||
CAnimBlendAssociation *walkStopAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_RUN_STOP);
|
||||
CAnimBlendAssociation *walkStopAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_RUNSTOP1);
|
||||
if (!walkStopAssoc)
|
||||
walkStopAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_RUN_STOP_R);
|
||||
walkStopAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_RUNSTOP2);
|
||||
if (walkStopAssoc) {
|
||||
walkStopAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
walkStopAssoc->blendDelta = -1000.0f;
|
||||
@@ -1076,7 +1076,7 @@ CPed::StartFightDefend(uint8 direction, uint8 hitLevel, uint8 unk)
|
||||
}
|
||||
SetMoveState(PEDMOVE_NONE);
|
||||
m_nStoredMoveState = PEDMOVE_NONE;
|
||||
CAnimManager::AddAnimation(GetClump(), ASSOCGRP_STD, ANIM_FIGHT_IDLE)->blendAmount = 1.0f;
|
||||
CAnimManager::AddAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_FIGHT_IDLE)->blendAmount = 1.0f;
|
||||
CAnimBlendAssociation *moveAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, tFightMoves[m_curFightMove].animId, 8.0f);
|
||||
moveAssoc->SetFinishCallback(FinishFightMoveCB, this);
|
||||
m_fightState = FIGHTSTATE_NO_MOVE;
|
||||
@@ -1445,22 +1445,22 @@ CPed::EndFight(uint8 endType)
|
||||
|
||||
m_curFightMove = FIGHTMOVE_NULL;
|
||||
RestorePreviousState();
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_FIGHT_IDLE);
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_FIGHT_IDLE);
|
||||
if (animAssoc)
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
|
||||
switch (endType) {
|
||||
case ENDFIGHT_NORMAL:
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_IDLE_STANCE, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FIGHT2_IDLE, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_STD_IDLE, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_FIGHT_2IDLE, 8.0f);
|
||||
break;
|
||||
case ENDFIGHT_WITH_A_STEP:
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_IDLE_STANCE, 1.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_WALK_START, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_STD_IDLE, 1.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_STARTWALK, 8.0f);
|
||||
break;
|
||||
case ENDFIGHT_FAST:
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_IDLE_STANCE, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FIGHT2_IDLE, 8.0f)->speed = 2.0f;
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_STD_IDLE, 8.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_FIGHT_2IDLE, 8.0f)->speed = 2.0f;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -1656,7 +1656,7 @@ CPed::FightStrike(CVector &touchedNodePos)
|
||||
|| GetWeapon()->m_eWeaponType != WEAPONTYPE_UNARMED && IsPlayer()
|
||||
|| nearPed->m_pedStats->m_flags & STAT_ONE_HIT_KNOCKDOWN)) {
|
||||
|
||||
nearPed->SetFall(0, (AnimationId)(direction + ANIM_KO_SKID_FRONT), 0);
|
||||
nearPed->SetFall(0, (AnimationId)(direction + ANIM_STD_HIGHIMPACT_FRONT), 0);
|
||||
if (nearPed->m_nPedState == PED_FALL)
|
||||
nearPed->bIsStanding = false;
|
||||
}
|
||||
@@ -1778,7 +1778,7 @@ CPed::LoadFightData(void)
|
||||
animAssoc = CAnimManager::GetAnimAssociation(ASSOCGRP_STD, animName);
|
||||
tFightMoves[moveId].animId = (AnimationId)animAssoc->animId;
|
||||
} else {
|
||||
tFightMoves[moveId].animId = ANIM_WALK;
|
||||
tFightMoves[moveId].animId = ANIM_STD_WALK;
|
||||
}
|
||||
moveId++;
|
||||
}
|
||||
@@ -1802,7 +1802,7 @@ CPed::SetInvestigateEvent(eEventType event, CVector2D pos, float distanceToCount
|
||||
if (m_eventType >= EVENT_ICECREAM)
|
||||
m_lookTimer = 0;
|
||||
else
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_HANDSCOWER, 4.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_HANDSCOWER, 4.0f);
|
||||
|
||||
}
|
||||
|
||||
@@ -1842,7 +1842,7 @@ CPed::InvestigateEvent(void)
|
||||
case EVENT_HIT_AND_RUN_COP:
|
||||
|
||||
if (CTimer::GetTimeInMilliseconds() > m_lookTimer) {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_ROAD_CROSS);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_ROADCROSS);
|
||||
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
@@ -1854,7 +1854,7 @@ CPed::InvestigateEvent(void)
|
||||
|
||||
} else if (CGeneral::GetRandomNumber() & 3) {
|
||||
ClearLookFlag();
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_ROAD_CROSS, 4.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_ROADCROSS, 4.0f);
|
||||
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(1000, 2500));
|
||||
Say(SOUND_PED_CHAT_EVENT);
|
||||
@@ -1868,16 +1868,16 @@ CPed::InvestigateEvent(void)
|
||||
case EVENT_EXPLOSION:
|
||||
|
||||
if (bHasACamera && CTimer::GetTimeInMilliseconds() > m_lookTimer) {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_CAM);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE_CAM);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_STANCE);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE);
|
||||
|
||||
if (animAssoc && animAssoc->animId == ANIM_IDLE_CAM) {
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_IDLE_STANCE, 4.0f);
|
||||
if (animAssoc && animAssoc->animId == ANIM_STD_IDLE_CAM) {
|
||||
CAnimManager::BlendAnimation(GetClump(), m_animGroup, ANIM_STD_IDLE, 4.0f);
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(1000, 2500));
|
||||
|
||||
} else if (CGeneral::GetRandomNumber() & 3) {
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_IDLE_CAM, 4.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_IDLE_CAM, 4.0f);
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(2500, 5000));
|
||||
Say(SOUND_PED_CHAT_EVENT);
|
||||
|
||||
@@ -1886,30 +1886,30 @@ CPed::InvestigateEvent(void)
|
||||
}
|
||||
|
||||
} else if (CTimer::GetTimeInMilliseconds() > m_lookTimer) {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_STANCE);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_HBHB);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE_HBHB);
|
||||
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_XPRESS_SCRATCH);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_XPRESS_SCRATCH);
|
||||
|
||||
if (animAssoc && animAssoc->animId == ANIM_IDLE_STANCE) {
|
||||
if (animAssoc && animAssoc->animId == ANIM_STD_IDLE) {
|
||||
if (CGeneral::GetRandomNumber() & 1)
|
||||
animToPlay = ANIM_IDLE_HBHB;
|
||||
animToPlay = ANIM_STD_IDLE_HBHB;
|
||||
else
|
||||
animToPlay = ANIM_XPRESS_SCRATCH;
|
||||
animToPlay = ANIM_STD_XPRESS_SCRATCH;
|
||||
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, animToPlay, 4.0f);
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(1500, 4000));
|
||||
|
||||
} else if (animAssoc && animAssoc->animId == ANIM_IDLE_HBHB) {
|
||||
} else if (animAssoc && animAssoc->animId == ANIM_STD_IDLE_HBHB) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
if (CGeneral::GetRandomNumber() & 1) {
|
||||
animToPlay = ANIM_IDLE_STANCE;
|
||||
animToPlay = ANIM_STD_IDLE;
|
||||
animGroup = m_animGroup;
|
||||
} else {
|
||||
animToPlay = ANIM_XPRESS_SCRATCH;
|
||||
animToPlay = ANIM_STD_XPRESS_SCRATCH;
|
||||
animGroup = ASSOCGRP_STD;
|
||||
}
|
||||
|
||||
@@ -1918,10 +1918,10 @@ CPed::InvestigateEvent(void)
|
||||
|
||||
} else {
|
||||
if (CGeneral::GetRandomNumber() & 1) {
|
||||
animToPlay = ANIM_IDLE_STANCE;
|
||||
animToPlay = ANIM_STD_IDLE;
|
||||
animGroup = m_animGroup;
|
||||
} else {
|
||||
animToPlay = ANIM_IDLE_HBHB;
|
||||
animToPlay = ANIM_STD_IDLE_HBHB;
|
||||
animGroup = ASSOCGRP_STD;
|
||||
}
|
||||
|
||||
@@ -1938,26 +1938,26 @@ CPed::InvestigateEvent(void)
|
||||
if (CTimer::GetTimeInMilliseconds() > m_lookTimer) {
|
||||
|
||||
if (m_lookTimer) {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_ROAD_CROSS);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_ROADCROSS);
|
||||
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
if (m_eventType == EVENT_ICECREAM)
|
||||
animToPlay = ANIM_IDLE_CHAT;
|
||||
animToPlay = ANIM_STD_CHAT;
|
||||
else
|
||||
animToPlay = ANIM_XPRESS_SCRATCH;
|
||||
animToPlay = ANIM_STD_XPRESS_SCRATCH;
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, animToPlay,4.0f);
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(2000, 5000));
|
||||
|
||||
} else {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_CHAT);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_CHAT);
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
ClearInvestigateEvent();
|
||||
} else {
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_XPRESS_SCRATCH);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_XPRESS_SCRATCH);
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
@@ -1966,7 +1966,7 @@ CPed::InvestigateEvent(void)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_ROAD_CROSS, 4.0f);
|
||||
CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_ROADCROSS, 4.0f);
|
||||
SetLookTimer(CGeneral::GetRandomNumberInRange(1000, 2500));
|
||||
}
|
||||
}
|
||||
@@ -2009,13 +2009,13 @@ CPed::InvestigateEvent(void)
|
||||
void
|
||||
CPed::ClearInvestigateEvent(void)
|
||||
{
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_ROAD_CROSS);
|
||||
CAnimBlendAssociation *animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_ROADCROSS);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_XPRESS_SCRATCH);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_XPRESS_SCRATCH);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_HBHB);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_IDLE_HBHB);
|
||||
if (!animAssoc)
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_IDLE_CHAT);
|
||||
animAssoc = RpAnimBlendClumpGetAssociation(GetClump(), ANIM_STD_CHAT);
|
||||
if (animAssoc) {
|
||||
animAssoc->blendDelta = -8.0f;
|
||||
animAssoc->flags |= ASSOC_DELETEFADEDOUT;
|
||||
@@ -2037,7 +2037,7 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
CPlayerPed *player = FindPlayerPed();
|
||||
float dieDelta = 4.0f;
|
||||
float dieSpeed = 0.0f;
|
||||
AnimationId dieAnim = ANIM_KO_SHOT_FRONT1;
|
||||
AnimationId dieAnim = ANIM_STD_KO_FRONT;
|
||||
bool headShot = false;
|
||||
bool willLinger = false;
|
||||
int random;
|
||||
@@ -2069,14 +2069,14 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
if (m_nPedState == PED_FALL || m_nPedState == PED_GETUP) {
|
||||
if (!IsPedHeadAbovePos(-0.3f)) {
|
||||
if (RpAnimBlendClumpGetFirstAssociation(GetClump(), ASSOC_FRONTAL))
|
||||
dieAnim = ANIM_FLOOR_HIT_F;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR_FRONT;
|
||||
else
|
||||
dieAnim = ANIM_FLOOR_HIT;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR;
|
||||
dieDelta *= 2.0f;
|
||||
dieSpeed = 0.5f;
|
||||
detectDieAnim = false;
|
||||
} else if (m_nPedState == PED_FALL) {
|
||||
dieAnim = NUM_ANIMS;
|
||||
dieAnim = ANIM_STD_NUM;
|
||||
detectDieAnim = false;
|
||||
}
|
||||
}
|
||||
@@ -2088,28 +2088,28 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
|
||||
if (m_nPedState == PED_FALL) {
|
||||
if (IsPedHeadAbovePos(-0.3f)) {
|
||||
dieAnim = NUM_ANIMS;
|
||||
dieAnim = ANIM_STD_NUM;
|
||||
} else {
|
||||
if (RpAnimBlendClumpGetFirstAssociation(GetClump(), ASSOC_FRONTAL))
|
||||
dieAnim = ANIM_FLOOR_HIT_F;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR_FRONT;
|
||||
else
|
||||
dieAnim = ANIM_FLOOR_HIT;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR;
|
||||
dieDelta = dieDelta * 2.0f;
|
||||
dieSpeed = 0.5f;
|
||||
}
|
||||
} else {
|
||||
switch (direction) {
|
||||
case 0:
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
break;
|
||||
case 1:
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
break;
|
||||
case 3:
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -2122,28 +2122,28 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
|
||||
if (m_nPedState == PED_FALL) {
|
||||
if (IsPedHeadAbovePos(-0.3f)) {
|
||||
dieAnim = NUM_ANIMS;
|
||||
dieAnim = ANIM_STD_NUM;
|
||||
} else {
|
||||
if (RpAnimBlendClumpGetFirstAssociation(GetClump(), ASSOC_FRONTAL))
|
||||
dieAnim = ANIM_FLOOR_HIT_F;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR_FRONT;
|
||||
else
|
||||
dieAnim = ANIM_FLOOR_HIT;
|
||||
dieAnim = ANIM_STD_HIT_FLOOR;
|
||||
dieDelta = dieDelta * 2.0f;
|
||||
dieSpeed = 0.5f;
|
||||
}
|
||||
} else {
|
||||
switch (direction) {
|
||||
case 0:
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
break;
|
||||
case 1:
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
break;
|
||||
case 3:
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -2183,56 +2183,56 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
if (method == WEAPONTYPE_SHOTGUN) {
|
||||
switch (direction) {
|
||||
case 0:
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
break;
|
||||
case 1:
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
break;
|
||||
case 3:
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
} else
|
||||
dieAnim = ANIM_KO_SHOT_FRONT1;
|
||||
dieAnim = ANIM_STD_KO_FRONT;
|
||||
|
||||
willLinger = false;
|
||||
} else {
|
||||
switch (pedPiece) {
|
||||
case PEDPIECE_TORSO:
|
||||
willLinger = false;
|
||||
dieAnim = ANIM_KO_SHOT_FRONT1;
|
||||
dieAnim = ANIM_STD_KO_FRONT;
|
||||
break;
|
||||
case PEDPIECE_MID:
|
||||
willLinger = false;
|
||||
dieAnim = ANIM_KO_SHOT_STOM;
|
||||
dieAnim = ANIM_STD_KO_SHOT_STOMACH;
|
||||
break;
|
||||
case PEDPIECE_LEFTARM:
|
||||
dieAnim = ANIM_KO_SHOT_ARML;
|
||||
dieAnim = ANIM_STD_KO_SHOT_ARM_L;
|
||||
RemoveBodyPart(PED_UPPERARML, direction);
|
||||
willLinger = true;
|
||||
break;
|
||||
case PEDPIECE_RIGHTARM:
|
||||
dieAnim = ANIM_KO_SHOT_ARMR;
|
||||
dieAnim = ANIM_STD_KO_SHOT_ARM_R;
|
||||
RemoveBodyPart(PED_UPPERARMR, direction);
|
||||
willLinger = true;
|
||||
break;
|
||||
case PEDPIECE_LEFTLEG:
|
||||
dieAnim = ANIM_KO_SHOT_LEGL;
|
||||
dieAnim = ANIM_STD_KO_SHOT_LEG_L;
|
||||
RemoveBodyPart(PED_UPPERLEGL, direction);
|
||||
willLinger = true;
|
||||
break;
|
||||
case PEDPIECE_RIGHTLEG:
|
||||
dieAnim = ANIM_KO_SHOT_LEGR;
|
||||
dieAnim = ANIM_STD_KO_SHOT_LEG_R;
|
||||
RemoveBodyPart(PED_UPPERLEGR, direction);
|
||||
willLinger = true;
|
||||
break;
|
||||
case PEDPIECE_HEAD:
|
||||
dieAnim = ANIM_KO_SHOT_FACE;
|
||||
dieAnim = ANIM_STD_KO_SHOT_FACE;
|
||||
RemoveBodyPart(PED_HEAD, direction);
|
||||
headShot = true;
|
||||
willLinger = true;
|
||||
@@ -2272,16 +2272,16 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
|
||||
switch (direction) {
|
||||
case 0:
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
break;
|
||||
case 1:
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
break;
|
||||
case 3:
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -2291,7 +2291,7 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
if (bFireProof)
|
||||
return false;
|
||||
|
||||
dieAnim = ANIM_KO_SHOT_FRONT1;
|
||||
dieAnim = ANIM_STD_KO_FRONT;
|
||||
break;
|
||||
case WEAPONTYPE_RAMMEDBYCAR:
|
||||
case WEAPONTYPE_RUNOVERBYCAR:
|
||||
@@ -2306,36 +2306,36 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
if (pedPiece == PEDPIECE_RIGHTARM && random > 1
|
||||
|| pedPiece == PEDPIECE_MID && random == 2)
|
||||
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
else
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
} else
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
|
||||
break;
|
||||
case 1:
|
||||
if (m_nPedState == PED_DIVE_AWAY)
|
||||
dieAnim = ANIM_KD_LEFT;
|
||||
dieAnim = ANIM_STD_SPINFORWARD_LEFT;
|
||||
else
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
if ((pedPiece != PEDPIECE_LEFTARM || random <= 1)
|
||||
&& (pedPiece != PEDPIECE_MID || random != 1)) {
|
||||
if ((pedPiece != PEDPIECE_RIGHTARM || random <= 1)
|
||||
&& (pedPiece != PEDPIECE_MID || random != 2)) {
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
} else {
|
||||
dieAnim = ANIM_KD_RIGHT;
|
||||
dieAnim = ANIM_STD_SPINFORWARD_RIGHT;
|
||||
}
|
||||
} else
|
||||
dieAnim = ANIM_KD_LEFT;
|
||||
dieAnim = ANIM_STD_SPINFORWARD_LEFT;
|
||||
break;
|
||||
case 3:
|
||||
if (m_nPedState == PED_DIVE_AWAY)
|
||||
dieAnim = ANIM_KD_RIGHT;
|
||||
dieAnim = ANIM_STD_SPINFORWARD_RIGHT;
|
||||
else
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -2353,7 +2353,7 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
}
|
||||
break;
|
||||
case WEAPONTYPE_DROWNING:
|
||||
dieAnim = ANIM_DROWN;
|
||||
dieAnim = ANIM_STD_DROWN;
|
||||
break;
|
||||
case WEAPONTYPE_FALL:
|
||||
if (bCollisionProof)
|
||||
@@ -2361,16 +2361,16 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
|
||||
switch (direction) {
|
||||
case 0:
|
||||
dieAnim = ANIM_KO_SKID_FRONT;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_FRONT;
|
||||
break;
|
||||
case 1:
|
||||
dieAnim = ANIM_KO_SPIN_R;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
break;
|
||||
case 2:
|
||||
dieAnim = ANIM_KO_SKID_BACK;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_BACK;
|
||||
break;
|
||||
case 3:
|
||||
dieAnim = ANIM_KO_SPIN_L;
|
||||
dieAnim = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -2460,7 +2460,7 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
|
||||
if (player == this)
|
||||
m_pMyVehicle->SetStatus(STATUS_PLAYER_DISABLED);
|
||||
|
||||
SetDie(NUM_ANIMS, 4.0f, 0.0f);
|
||||
SetDie(ANIM_STD_NUM, 4.0f, 0.0f);
|
||||
return true;
|
||||
} else {
|
||||
m_fHealth = 0.0f;
|
||||
@@ -2663,7 +2663,7 @@ CPed::ApplyHeadShot(eWeaponType weaponType, CVector pos, bool evenOnPlayer)
|
||||
|
||||
// BUG: This condition will always return true. Even fixing it won't work, because these states are unused.
|
||||
// if (m_nPedState != PED_PASSENGER || m_nPedState != PED_TAXI_PASSENGER) {
|
||||
SetDie(ANIM_KO_SHOT_FRONT1, 4.0f, 0.0f);
|
||||
SetDie(ANIM_STD_KO_FRONT, 4.0f, 0.0f);
|
||||
// }
|
||||
|
||||
bBodyPartJustCameOff = true;
|
||||
@@ -2887,7 +2887,7 @@ CPed::CollideWithPed(CPed *collideWith)
|
||||
} else {
|
||||
SetLookFlag(collideWith, false);
|
||||
TurnBody();
|
||||
animAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_FIGHT_PPUNCH, 8.0f);
|
||||
animAssoc = CAnimManager::BlendAnimation(GetClump(), ASSOCGRP_STD, ANIM_STD_PARTIAL_PUNCH, 8.0f);
|
||||
animAssoc->flags |= ASSOC_FADEOUTWHENDONE;
|
||||
#ifdef VC_PED_PORTS
|
||||
m_nPedStateTimer = CTimer::GetTimeInMilliseconds() + 2000;
|
||||
@@ -2912,22 +2912,22 @@ CPed::CollideWithPed(CPed *collideWith)
|
||||
moveForce.z += 0.1f;
|
||||
ApplyMoveForce(moveForce);
|
||||
if (collideWith->m_nMoveState != PEDMOVE_RUN && collideWith->m_nMoveState != PEDMOVE_SPRINT)
|
||||
animToPlay = ANIM_HIT_LEFT;
|
||||
animToPlay = ANIM_STD_HIT_LEFT;
|
||||
else
|
||||
animToPlay = ANIM_SHOT_LEFT_PARTIAL;
|
||||
animToPlay = ANIM_STD_HITBYGUN_LEFT;
|
||||
} else if (heLooksToUs) {
|
||||
CVector moveForce = GetRight() * -1.0f;
|
||||
moveForce.z += 0.1f;
|
||||
ApplyMoveForce(moveForce);
|
||||
if (collideWith->m_nMoveState != PEDMOVE_RUN && collideWith->m_nMoveState != PEDMOVE_SPRINT)
|
||||
animToPlay = ANIM_HIT_RIGHT;
|
||||
animToPlay = ANIM_STD_HIT_RIGHT;
|
||||
else
|
||||
animToPlay = ANIM_SHOT_RIGHT_PARTIAL;
|
||||
animToPlay = ANIM_STD_HITBYGUN_RIGHT;
|
||||
} else {
|
||||
if (collideWith->m_nMoveState != PEDMOVE_RUN && collideWith->m_nMoveState != PEDMOVE_SPRINT)
|
||||
animToPlay = ANIM_HIT_BACK;
|
||||
animToPlay = ANIM_STD_HIT_BACK;
|
||||
else
|
||||
animToPlay = ANIM_SHOT_BACK_PARTIAL;
|
||||
animToPlay = ANIM_STD_HITBYGUN_BACK;
|
||||
}
|
||||
|
||||
if (collideWith->IsPedInControl() && CTimer::GetTimeInMilliseconds() > collideWith->m_nPedStateTimer) {
|
||||
@@ -2944,17 +2944,17 @@ CPed::CollideWithPed(CPed *collideWith)
|
||||
moveForce.z += 0.1f;
|
||||
ApplyMoveForce(moveForce);
|
||||
if (heLooksToUs)
|
||||
animToPlay = ANIM_KO_SPIN_L;
|
||||
animToPlay = ANIM_STD_HIGHIMPACT_RIGHT;
|
||||
else
|
||||
animToPlay = ANIM_KD_RIGHT;
|
||||
animToPlay = ANIM_STD_SPINFORWARD_RIGHT;
|
||||
} else {
|
||||
CVector moveForce = GetRight();
|
||||
moveForce.z += 0.1f;
|
||||
ApplyMoveForce(moveForce);
|
||||
if (heLooksToUs)
|
||||
animToPlay = ANIM_KO_SPIN_R;
|
||||
animToPlay = ANIM_STD_HIGHIMPACT_LEFT;
|
||||
else
|
||||
animToPlay = ANIM_KD_LEFT;
|
||||
animToPlay = ANIM_STD_SPINFORWARD_LEFT;
|
||||
}
|
||||
|
||||
if (m_nPedState == PED_ATTACK && collideWith->IsPedInControl())
|
||||
@@ -3209,7 +3209,7 @@ CPed::KillPedWithCar(CVehicle *car, float impulse)
|
||||
damage = 30.0f;
|
||||
|
||||
InflictDamage(car, WEAPONTYPE_RAMMEDBYCAR, damage, PEDPIECE_TORSO, fallDirection);
|
||||
SetFall(1000, (AnimationId)(fallDirection + ANIM_KO_SKID_FRONT), true);
|
||||
SetFall(1000, (AnimationId)(fallDirection + ANIM_STD_HIGHIMPACT_FRONT), true);
|
||||
|
||||
if (OnGround() && !m_pCollidingEntity &&
|
||||
(!IsPlayer() || bHasHitWall || car->GetModelIndex() == MI_TRAIN || m_vecDamageNormal.z < -0.8f)) {
|
||||
|
||||
Reference in New Issue
Block a user