diff options
author | Fire-Head <Fire-Head@users.noreply.github.com> | 2021-01-13 21:15:33 +0100 |
---|---|---|
committer | Fire-Head <Fire-Head@users.noreply.github.com> | 2021-01-13 21:15:33 +0100 |
commit | 97c9a4a02c9f801d35fbcf47658756a89a33f6d9 (patch) | |
tree | 232709023f42a318c0588b61f4de2c91b724a5b1 /src/control | |
parent | Merge branch 'lcs' of https://github.com/GTAmodding/re3 into lcs (diff) | |
download | re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar.gz re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar.bz2 re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar.lz re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar.xz re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.tar.zst re3-97c9a4a02c9f801d35fbcf47658756a89a33f6d9.zip |
Diffstat (limited to '')
-rw-r--r-- | src/control/Replay.cpp | 20 | ||||
-rw-r--r-- | src/control/Replay.h | 6 | ||||
-rw-r--r-- | src/control/Script4.cpp | 16 |
3 files changed, 23 insertions, 19 deletions
diff --git a/src/control/Replay.cpp b/src/control/Replay.cpp index aef48217..7adb4999 100644 --- a/src/control/Replay.cpp +++ b/src/control/Replay.cpp @@ -1729,7 +1729,7 @@ void CReplay::SaveReplayToHD(void) CFileMgr::SetDir(""); } -void CReplay::PlayReplayFromHD(void) +void PlayReplayFromHD(void) { CFileMgr::SetDirMyDocuments(); int fr = CFileMgr::OpenFile("replay.rep", "rb"); @@ -1748,17 +1748,17 @@ void CReplay::PlayReplayFromHD(void) return; } int slot; - for (slot = 0; CFileMgr::Read(fr, (char*)Buffers[slot], sizeof(Buffers[slot])); slot++) - BufferStatus[slot] = REPLAYBUFFER_PLAYBACK; - BufferStatus[slot - 1] = REPLAYBUFFER_RECORD; - while (slot < NUM_REPLAYBUFFERS) - BufferStatus[slot++] = REPLAYBUFFER_UNUSED; + for (slot = 0; CFileMgr::Read(fr, (char*)CReplay::Buffers[slot], sizeof(CReplay::Buffers[slot])); slot++) + CReplay::BufferStatus[slot] = CReplay::REPLAYBUFFER_PLAYBACK; + CReplay::BufferStatus[slot - 1] = CReplay::REPLAYBUFFER_RECORD; + while (slot < CReplay::NUM_REPLAYBUFFERS) + CReplay::BufferStatus[slot++] = CReplay::REPLAYBUFFER_UNUSED; CFileMgr::CloseFile(fr); CFileMgr::SetDir(""); - TriggerPlayback(REPLAYCAMMODE_ASSTORED, 0.0f, 0.0f, 0.0f, false); - bPlayingBackFromFile = true; - bAllowLookAroundCam = true; - StreamAllNecessaryCarsAndPeds(); + CReplay::TriggerPlayback(CReplay::REPLAYCAMMODE_ASSTORED, 0.0f, 0.0f, 0.0f, false); + CReplay::bPlayingBackFromFile = true; + CReplay::bAllowLookAroundCam = true; + CReplay::StreamAllNecessaryCarsAndPeds(); } void CReplay::StreamAllNecessaryCarsAndPeds(void) diff --git a/src/control/Replay.h b/src/control/Replay.h index 5dd8b651..84a6bef0 100644 --- a/src/control/Replay.h +++ b/src/control/Replay.h @@ -64,6 +64,8 @@ struct CStoredDetailedAnimationState uint8 aGroupId2[NUM_PARTIAL_ANIMS_IN_REPLAY]; }; +void PlayReplayFromHD(void); + #ifdef GTA_REPLAY #define REPLAY_STUB #else @@ -408,10 +410,12 @@ private: static void EmptyAllPools(void); static void MarkEverythingAsNew(void); static void SaveReplayToHD(void); - static void PlayReplayFromHD(void); // out of class in III PC and later because of SecuROM static void FindFirstFocusCoordinate(CVector *coord); static void ProcessLookAroundCam(void); static size_t FindSizeOfPacket(uint8); static void GoToNextBlock(void); + + /* Absolute nonsense, but how could this function end up being outside of class? */ + friend void PlayReplayFromHD(void); #endif }; diff --git a/src/control/Script4.cpp b/src/control/Script4.cpp index 12eb179c..d7e1d083 100644 --- a/src/control/Script4.cpp +++ b/src/control/Script4.cpp @@ -785,20 +785,20 @@ int8 CRunningScript::ProcessCommands800To899(int32 command) }else{ pPed->m_pMyVehicle->RemovePassenger(pPed); } - if (pPed->m_vehDoor) { + if (pPed->m_vehEnterType) { if (pPed->GetPedState() == PED_EXIT_CAR || pPed->GetPedState() == PED_DRAG_FROM_CAR) { uint8 flags = 0; if (pPed->m_pMyVehicle->IsBike()) { - if (pPed->m_vehDoor == CAR_DOOR_LF || - pPed->m_vehDoor == CAR_DOOR_RF || - pPed->m_vehDoor == CAR_WINDSCREEN) + if (pPed->m_vehEnterType == CAR_DOOR_LF || + pPed->m_vehEnterType == CAR_DOOR_RF || + pPed->m_vehEnterType == CAR_WINDSCREEN) flags = CAR_DOOR_FLAG_LF | CAR_DOOR_FLAG_RF; - else if (pPed->m_vehDoor == CAR_DOOR_LR || - pPed->m_vehDoor == CAR_DOOR_RR) + else if (pPed->m_vehEnterType == CAR_DOOR_LR || + pPed->m_vehEnterType == CAR_DOOR_RR) flags = CAR_DOOR_FLAG_LR | CAR_DOOR_FLAG_RR; } else { - switch (pPed->m_vehDoor) { + switch (pPed->m_vehEnterType) { case CAR_DOOR_LF: flags = pPed->m_pMyVehicle->m_nNumMaxPassengers != 0 ? CAR_DOOR_FLAG_LF : CAR_DOOR_FLAG_LF | CAR_DOOR_FLAG_LR; break; @@ -814,7 +814,7 @@ int8 CRunningScript::ProcessCommands800To899(int32 command) } } pPed->m_pMyVehicle->m_nGettingOutFlags &= ~flags; - pPed->m_pMyVehicle->ProcessOpenDoor(pPed->m_vehDoor, NUM_STD_ANIMS, 0.0f); + pPed->m_pMyVehicle->ProcessOpenDoor(pPed->m_vehEnterType, NUM_STD_ANIMS, 0.0f); } } } |