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

View file

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

View file

@ -7768,7 +7768,13 @@ void
CPed::LookForSexyPeds(void) CPed::LookForSexyPeds(void)
{ {
if ((!IsPedInControl() && m_nPedState != PED_DRIVING) 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; return;
for (int i = 0; i < m_numNearPeds; i++) { for (int i = 0; i < m_numNearPeds; i++) {
@ -7776,11 +7782,19 @@ CPed::LookForSexyPeds(void)
if ((GetPosition() - m_nearPeds[i]->GetPosition()).Magnitude() < 10.0f) { if ((GetPosition() - m_nearPeds[i]->GetPosition()).Magnitude() < 10.0f) {
CPed *nearPed = m_nearPeds[i]; CPed *nearPed = m_nearPeds[i];
if((nearPed->m_pedStats->m_sexiness > m_pedStats->m_sexiness) 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) { && nearPed->m_nPedType == PEDTYPE_CIVFEMALE) {
#endif
SetLookFlag(nearPed, true); SetLookFlag(nearPed, true);
m_lookTimer = CTimer::GetTimeInMilliseconds() + 4000; 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; return;
} }
} }
@ -8734,7 +8748,7 @@ CPed::Wait(void)
if ((GetPosition() - nearPed->GetPosition()).MagnitudeSqr() < sq(10.f)) { if ((GetPosition() - nearPed->GetPosition()).MagnitudeSqr() < sq(10.f)) {
for (int anim = ANIM_STRIP_A; anim <= ANIM_STRIP_G; anim++) { for (int anim = ANIM_STRIP_A; anim <= ANIM_STRIP_G; anim++) {
if (RpAnimBlendClumpGetAssociation(nearPed->GetClump(), 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); SetMoveState(PEDMOVE_STILL);
if (m_objective == OBJECTIVE_HASSLE_CHAR) { if (m_objective == OBJECTIVE_HASSLE_CHAR) {
Say(SOUND_PED_COP_REACTION); Say(SOUND_PED_COP_ASK_FOR_ID);
m_pedInObjective->Say(SOUND_PED_UNK_126); m_pedInObjective->Say(SOUND_PED_INNOCENT);
m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000; m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000;
m_pedInObjective->m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000; m_pedInObjective->m_leaveCarTimer = CTimer::GetTimeInMilliseconds() + 3000;
SetObjective(OBJECTIVE_WANDER); SetObjective(OBJECTIVE_WANDER);

View file

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

View file

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