diff --git a/src/audio/AudioManager.cpp b/src/audio/AudioManager.cpp index 89abee8d..ff7babc4 100644 --- a/src/audio/AudioManager.cpp +++ b/src/audio/AudioManager.cpp @@ -4676,7 +4676,7 @@ cAudioManager::ProcessMissionAudio() --nCheckPlayingDelay; } else if(GetMissionScriptPoliceAudioPlayingStatus() == 2 || - --m_sMissionAudio.field_24) { + m_sMissionAudio.field_24-- == 0) { m_sMissionAudio.m_bPlayStatus = 2; m_sMissionAudio.m_nSampleIndex = 3033; SampleManager.StopStreamedFile(1); diff --git a/src/control/Script.cpp b/src/control/Script.cpp index 8b765c8c..3e4c7e8f 100644 --- a/src/control/Script.cpp +++ b/src/control/Script.cpp @@ -8496,7 +8496,7 @@ int8 CRunningScript::ProcessCommands1000To1099(int32 command) CTimer::Stop(); CGame::currLevel = (eLevelName)ScriptParams[0]; CStreaming::RemoveUnusedBigBuildings(CGame::currLevel); - CStreaming::RemoveIslandsNotUsed(CGame::currLevel); + CStreaming::RemoveUnusedBuildings(CGame::currLevel); CCollision::SortOutCollisionAfterLoad(); CStreaming::RequestIslands(CGame::currLevel); CStreaming::LoadAllRequestedModels(true); @@ -8965,7 +8965,7 @@ int8 CRunningScript::ProcessCommands1000To1099(int32 command) } case COMMAND_SET_MUSIC_DOES_FADE: CollectParameters(&m_nIp, 1); - TheCamera.m_bMusicFading = (ScriptParams[0] == 0); + TheCamera.m_bIgnoreFadingStuffForMusic = (ScriptParams[0] == 0); return 0; case COMMAND_SET_INTRO_IS_PLAYING: CollectParameters(&m_nIp, 1); @@ -9114,7 +9114,7 @@ int8 CRunningScript::ProcessCommands1100To1199(int32 command) DMAudio.Service(); CPopulation::DealWithZoneChange(CCollision::ms_collisionInMemory, CGame::currLevel, false); CStreaming::RemoveUnusedBigBuildings(CGame::currLevel); - CStreaming::RemoveIslandsNotUsed(CGame::currLevel); + CStreaming::RemoveUnusedBuildings(CGame::currLevel); CCollision::SortOutCollisionAfterLoad(); CStreaming::RequestIslands(CGame::currLevel); CStreaming::RequestBigBuildings(CGame::currLevel); diff --git a/src/core/Pad.h b/src/core/Pad.h index f4a07cae..09e6b39d 100644 --- a/src/core/Pad.h +++ b/src/core/Pad.h @@ -9,7 +9,7 @@ enum { PLAYERCONTROL_DISABLED_10 = 16, PLAYERCONTROL_DISABLED_20 = 32, // used on CPlayerInfo::MakePlayerSafe PLAYERCONTROL_DISABLED_40 = 64, // used on phone calls - PLAYERCONTROL_DISABLED_80 = 128, + PLAYERCONTROL_DISABLED_80 = 128,// used on cutscenes }; class CControllerState diff --git a/src/vehicles/Automobile.cpp b/src/vehicles/Automobile.cpp index a79f619c..64f756ad 100644 --- a/src/vehicles/Automobile.cpp +++ b/src/vehicles/Automobile.cpp @@ -2177,7 +2177,7 @@ CAutomobile::ProcessEntityCollision(CEntity *ent, CColPoint *colpoints) if(phys->bIsStatic){ phys->bIsStatic = false; phys->m_nStaticFrames = 0; - phys->ApplyMoveForce(m_vecMoveSpeed / speed); + phys->ApplyMoveForce(m_vecMoveSpeed / Sqrt(speed)); phys->AddToMovingList(); } } @@ -2318,7 +2318,7 @@ CAutomobile::ProcessControlInputs(uint8 pad) // Brake if player isn't in control // BUG: game always uses pad 0 here - if(CPad::GetPad(pad)->DisablePlayerControls){ + if(CPad::GetPad(pad)->ArePlayerControlsDisabled()){ m_fBrakePedal = 1.0f; bIsHandbrakeOn = true; m_fGasPedal = 0.0f; diff --git a/src/vehicles/DamageManager.cpp b/src/vehicles/DamageManager.cpp index 3a7bd9e9..9a697b6b 100644 --- a/src/vehicles/DamageManager.cpp +++ b/src/vehicles/DamageManager.cpp @@ -119,7 +119,7 @@ CDamageManager::GetComponentGroup(tComponent component, tComponentGroup *compone return true; }else if(component >= COMPONENT_DEFAULT){ *componentGroup = COMPGROUP_DEFAULT; - *subComp = component - COMPONENT_DEFAULT; + *subComp = COMPONENT_DEFAULT; return true; }else return false; @@ -141,7 +141,7 @@ bool CDamageManager::ProgressDoorDamage(uint8 door) { int status = GetDoorStatus(door); - if(status == 3) + if(status == PANEL_STATUS_MISSING) return false; SetDoorStatus(door, status+1); return true; @@ -163,7 +163,7 @@ bool CDamageManager::ProgressPanelDamage(uint8 panel) { int status = GetPanelStatus(panel); - if(status == 3) + if(status == DOOR_STATUS_MISSING) return false; SetPanelStatus(panel, status+1); return true; @@ -197,7 +197,7 @@ bool CDamageManager::ProgressWheelDamage(uint8 wheel) { int status = GetWheelStatus(wheel); - if(status == 3) + if(status == WHEEL_STATUS_MISSING) return false; SetWheelStatus(wheel, status+1); return true; diff --git a/src/vehicles/Door.cpp b/src/vehicles/Door.cpp index 2d47b3e9..c569be59 100644 --- a/src/vehicles/Door.cpp +++ b/src/vehicles/Door.cpp @@ -47,9 +47,9 @@ CDoor::Process(CVehicle *vehicle) case 2: // z-axis if(m_nDirn) - fSpeedDiff = -(vecSpeedDiff.x + vecSpeedDiff.y); + fSpeedDiff = -(vecSpeedDiff.y + vecSpeedDiff.x); else - fSpeedDiff = vecSpeedDiff.x + vecSpeedDiff.y; + fSpeedDiff = vecSpeedDiff.y - vecSpeedDiff.x; break; } fSpeedDiff = clamp(fSpeedDiff, -0.2f, 0.2f);