Merge branch 'miami' into lcs

# Conflicts:
#	src/audio/AudioLogic.cpp
This commit is contained in:
Sergeanur 2021-05-12 03:29:36 +03:00
commit fdb6428c6b
9 changed files with 10767 additions and 1367 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -54,8 +54,8 @@ enum eSound
SOUND_49,
SOUND_WEAPON_BAT_ATTACK,
SOUND_WEAPON_KNIFE_ATTACK,
SOUND_WEAPON_CHAINSAW_ATTACK,
SOUND_WEAPON_CHAINSAW_IDLE,
SOUND_WEAPON_CHAINSAW_ATTACK,
SOUND_WEAPON_CHAINSAW_MADECONTACT,
SOUND_WEAPON_SHOT_FIRED,
SOUND_WEAPON_RELOAD,
@ -116,8 +116,8 @@ enum eSound
SOUND_PED_MIAMIVICE_EXITING_CAR,
SOUND_PED_COP_HELIPILOTPHRASE,
SOUND_PED_PULLOUTWEAPON,
SOUND_PED_HELI_PLAYER_FOUND = 114,
SOUND_PED_VCPA_PLAYER_FOUND = 115,
SOUND_PED_HELI_PLAYER_FOUND,
SOUND_PED_VCPA_PLAYER_FOUND,
SOUND_PED_ON_FIRE,
SOUND_PED_AIMING,
SOUND_PED_HANDS_UP,
@ -128,15 +128,15 @@ enum eSound
SOUND_PED_CAR_JACKED,
SOUND_PED_ROBBED,
SOUND_PED_ACCIDENTREACTION1,
SOUND_PED_UNK_126,
SOUND_PED_INNOCENT,
SOUND_PED_PLAYER_AFTERSEX,
SOUND_PED_PLAYER_BEFORESEX,
SOUND_PED_COP_UNK_129, // also used for medics
SOUND_PED_COP_TARGETING, // also used for medics
SOUND_PED_COP_MANYCOPSAROUND, // also used for medics
SOUND_PED_GUNAIMEDAT2,
SOUND_PED_COP_ALONE, // also used for medics
SOUND_PED_GUNAIMEDAT3,
SOUND_PED_COP_REACTION,
SOUND_PED_COP_ASK_FOR_ID,
SOUND_PED_COP_LITTLECOPSAROUND, // also used for medics
SOUND_PED_PLAYER_FARFROMCOPS, // also used for medics
SOUND_PED_TAXI_WAIT,
@ -151,12 +151,12 @@ enum eSound
SOUND_PED_ANNOYED_DRIVER,
SOUND_PED_147,
SOUND_PED_SOLICIT,
SOUND_PED_149,
SOUND_PED_JEER,
SOUND_PED_150,
SOUND_PED_EXTINGUISHING_FIRE,
SOUND_PED_WAIT_DOUBLEBACK,
SOUND_153,
SOUND_PED_CHAT_SEXY,
SOUND_PED_CHAT_SEXY_FEMALE,
SOUND_PED_CHAT_SEXY_MALE,
SOUND_PED_CHAT_EVENT,
SOUND_PED_PED_COLLISION,
SOUND_PED_CHAT,

View File

@ -555,7 +555,7 @@ CCopPed::CopAI(void)
if (CWorld::GetIsLineOfSightClear(GetPosition(), nearPed->GetPosition(),
true, false, false, false, false, false, false)) {
Say(SOUND_PED_COP_REACTION);
Say(SOUND_PED_COP_ASK_FOR_ID);
SetObjective(OBJECTIVE_HASSLE_CHAR, nearPed);
nearPed->SetObjective(OBJECTIVE_WAIT_ON_FOOT_FOR_COP, this);
m_nHassleTimer = CTimer::GetTimeInMilliseconds() + 100000;
@ -747,7 +747,7 @@ CCopPed::ProcessControl(void)
}
if (m_pPointGunAt)
Say(SOUND_PED_COP_UNK_129);
Say(SOUND_PED_COP_TARGETING);
if (m_bStopAndShootDisabledZone) {
bool dontShoot = false;

View File

@ -7768,19 +7768,33 @@ void
CPed::LookForSexyPeds(void)
{
if ((!IsPedInControl() && m_nPedState != PED_DRIVING)
|| m_lookTimer >= CTimer::GetTimeInMilliseconds() || m_nPedType != PEDTYPE_CIVMALE)
|| m_lookTimer >= CTimer::GetTimeInMilliseconds() ||
#ifdef FIX_BUGS
(m_nPedType != PEDTYPE_CIVMALE) && !IsFemale() && (m_nPedType != PEDTYPE_CRIMINAL) && !IsGangMember()
#else
m_nPedType != PEDTYPE_CIVMALE
#endif
)
return;
for (int i = 0; i < m_numNearPeds; i++) {
if (CanSeeEntity(m_nearPeds[i])) {
if ((GetPosition() - m_nearPeds[i]->GetPosition()).Magnitude() < 10.0f) {
CPed *nearPed = m_nearPeds[i];
if ((nearPed->m_pedStats->m_sexiness > m_pedStats->m_sexiness)
&& nearPed->m_nPedType == PEDTYPE_CIVFEMALE) {
if((nearPed->m_pedStats->m_sexiness > m_pedStats->m_sexiness)
#ifdef FIX_BUGS
&& ((IsFemale() && !nearPed->IsFemale()) || (!IsFemale() && nearPed->IsFemale()))) {
#else
&& nearPed->m_nPedType == PEDTYPE_CIVFEMALE) {
#endif
SetLookFlag(nearPed, true);
m_lookTimer = CTimer::GetTimeInMilliseconds() + 4000;
Say(SOUND_PED_CHAT_SEXY);
#ifdef FIX_BUGS
Say(IsFemale() ? SOUND_PED_CHAT_SEXY_FEMALE : SOUND_PED_CHAT_SEXY_MALE);
#else
Say(SOUND_PED_CHAT_SEXY_MALE);
#endif
return;
}
}
@ -8734,7 +8748,7 @@ CPed::Wait(void)
if ((GetPosition() - nearPed->GetPosition()).MagnitudeSqr() < sq(10.f)) {
for (int anim = ANIM_STRIP_A; anim <= ANIM_STRIP_G; anim++) {
if (RpAnimBlendClumpGetAssociation(nearPed->GetClump(), anim))
Say(SOUND_PED_149);
Say(SOUND_PED_JEER);
}
}
}

View File

@ -1121,8 +1121,8 @@ CPed::ProcessObjective(void)
SetMoveState(PEDMOVE_STILL);
if (m_objective == OBJECTIVE_HASSLE_CHAR) {
Say(SOUND_PED_COP_REACTION);
m_pedInObjective->Say(SOUND_PED_UNK_126);
Say(SOUND_PED_COP_ASK_FOR_ID);
m_pedInObjective->Say(SOUND_PED_INNOCENT);
m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000;
m_pedInObjective->m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000;
SetObjective(OBJECTIVE_WANDER);

View File

@ -157,6 +157,9 @@ static char PersonalityTypeText[][18] = {
"Old Girl",
"Tough Girl",
"Tramp",
#ifdef FIX_BUGS // there's male and female ones
"Tramp",
#endif
"Tourist",
"Prostitute",
"Criminal",

View File

@ -823,7 +823,7 @@ CPed::Attack(void)
|| weaponAnimAssoc->currentTime - weaponAnimAssoc->timeStep > delayBetweenAnimAndFire) {
if (GetWeapon()->m_eWeaponType == WEAPONTYPE_CHAINSAW) {
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_ATTACK, 0.0f);
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_IDLE, 0.0f);
} else if (weaponAnimTime <= delayBetweenAnimAndFire || weaponAnimTime - weaponAnimAssoc->timeStep > delayBetweenAnimAndFire || !weaponAnimAssoc->IsRunning()) {
if (weaponAnimAssoc->speed < 1.0f)
weaponAnimAssoc->speed = 1.0f;
@ -899,7 +899,7 @@ CPed::Attack(void)
CPad::GetPad(0)->StartShake(240, 180);
}
} else {
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_IDLE, 0.0f);
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_ATTACK, 0.0f);
if (IsPlayer()) {
CPad::GetPad(0)->StartShake(240, 90);
}

View File

@ -1680,7 +1680,7 @@ CPlayerPed::ProcessControl(void)
}
}
if (GetWeapon()->m_eWeaponType == WEAPONTYPE_CHAINSAW && m_nPedState != PED_ATTACK && !bInVehicle) {
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_ATTACK, 0.0f);
DMAudio.PlayOneShot(m_audioEntityId, SOUND_WEAPON_CHAINSAW_IDLE, 0.0f);
}
if (m_nMoveState != PEDMOVE_RUN && m_nMoveState != PEDMOVE_SPRINT)