mirror of
https://github.com/GTAmodding/re3.git
synced 2025-07-08 12:04:09 +00:00
minor refactoring
This commit is contained in:
parent
0845abf640
commit
db1bdfd62d
12 changed files with 233 additions and 198 deletions
|
@ -85,7 +85,7 @@ uint16 CTheScripts::NumScriptDebugLines;
|
|||
uint16 CTheScripts::NumberOfIntroRectanglesThisFrame;
|
||||
uint16 CTheScripts::NumberOfIntroTextLinesThisFrame;
|
||||
uint8 CTheScripts::UseTextCommands;
|
||||
CMissionCleanup CTheScripts::MissionCleanup;
|
||||
CMissionCleanup CTheScripts::MissionCleanUp;
|
||||
CUpsideDownCarCheck CTheScripts::UpsideDownCars;
|
||||
CStuckCarCheck CTheScripts::StuckCars;
|
||||
uint16 CTheScripts::CommandsExecuted;
|
||||
|
@ -1711,23 +1711,38 @@ void CMissionCleanup::RemoveEntityFromList(int32 id, uint8 type)
|
|||
switch (m_sEntities[i].type) {
|
||||
case CLEANUP_CAR:
|
||||
{
|
||||
CVehicle* v = CPools::GetVehiclePool()->GetAt(m_sEntities[i].id);
|
||||
if (v)
|
||||
PossiblyWakeThisEntity(v);
|
||||
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(m_sEntities[i].id);
|
||||
if (pVehicle) {
|
||||
if (pVehicle->bIsStaticWaitingForCollision) {
|
||||
pVehicle->bIsStaticWaitingForCollision = false;
|
||||
if (!pVehicle->GetIsStatic())
|
||||
pVehicle->AddToMovingList();
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CLEANUP_CHAR:
|
||||
{
|
||||
CPed* p = CPools::GetPedPool()->GetAt(m_sEntities[i].id);
|
||||
if (p)
|
||||
PossiblyWakeThisEntity(p);
|
||||
CPed* pPed = CPools::GetPedPool()->GetAt(m_sEntities[i].id);
|
||||
if (pPed) {
|
||||
if (pPed->bIsStaticWaitingForCollision) {
|
||||
pPed->bIsStaticWaitingForCollision = false;
|
||||
if (!pPed->GetIsStatic())
|
||||
pPed->AddToMovingList();
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CLEANUP_OBJECT:
|
||||
{
|
||||
CObject* o = CPools::GetObjectPool()->GetAt(m_sEntities[i].id);
|
||||
if (o)
|
||||
PossiblyWakeThisEntity(o);
|
||||
CObject* pObject = CPools::GetObjectPool()->GetAt(m_sEntities[i].id);
|
||||
if (pObject) {
|
||||
if (pObject->bIsStaticWaitingForCollision) {
|
||||
pObject->bIsStaticWaitingForCollision = false;
|
||||
if (!pObject->GetIsStatic())
|
||||
pObject->AddToMovingList();
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
@ -1746,23 +1761,44 @@ void CMissionCleanup::CheckIfCollisionHasLoadedForMissionObjects()
|
|||
switch (m_sEntities[i].type) {
|
||||
case CLEANUP_CAR:
|
||||
{
|
||||
CVehicle* v = CPools::GetVehiclePool()->GetAt(m_sEntities[i].id);
|
||||
if (v)
|
||||
PossiblyWakeThisEntity(v, true);
|
||||
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(m_sEntities[i].id);
|
||||
if (pVehicle) {
|
||||
if (pVehicle->bIsStaticWaitingForCollision) {
|
||||
if (CColStore::HasCollisionLoaded(pVehicle->GetPosition())) {
|
||||
pVehicle->bIsStaticWaitingForCollision = false;
|
||||
if (!pVehicle->GetIsStatic())
|
||||
pVehicle->AddToMovingList();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CLEANUP_CHAR:
|
||||
{
|
||||
CPed* p = CPools::GetPedPool()->GetAt(m_sEntities[i].id);
|
||||
if (p)
|
||||
PossiblyWakeThisEntity(p, true);
|
||||
CPed* pPed = CPools::GetPedPool()->GetAt(m_sEntities[i].id);
|
||||
if (pPed) {
|
||||
if (pPed->bIsStaticWaitingForCollision) {
|
||||
if (CColStore::HasCollisionLoaded(pPed->GetPosition())) {
|
||||
pPed->bIsStaticWaitingForCollision = false;
|
||||
if (!pPed->GetIsStatic())
|
||||
pPed->AddToMovingList();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CLEANUP_OBJECT:
|
||||
{
|
||||
CObject* o = CPools::GetObjectPool()->GetAt(m_sEntities[i].id);
|
||||
if (o)
|
||||
PossiblyWakeThisEntity(o, true);
|
||||
CObject* pObject = CPools::GetObjectPool()->GetAt(m_sEntities[i].id);
|
||||
if (pObject) {
|
||||
if (pObject->bIsStaticWaitingForCollision) {
|
||||
if (CColStore::HasCollisionLoaded(pObject->GetPosition())) {
|
||||
pObject->bIsStaticWaitingForCollision = false;
|
||||
if (!pObject->GetIsStatic())
|
||||
pObject->AddToMovingList();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
@ -1771,21 +1807,6 @@ void CMissionCleanup::CheckIfCollisionHasLoadedForMissionObjects()
|
|||
}
|
||||
}
|
||||
|
||||
CPhysical* CMissionCleanup::DoesThisEntityWaitForCollision(int i)
|
||||
{
|
||||
if (m_sEntities[i].type == CLEANUP_CAR) {
|
||||
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(m_sEntities[i].id);
|
||||
if (pVehicle && pVehicle->GetStatus() != STATUS_WRECKED)
|
||||
return pVehicle;
|
||||
}
|
||||
else if (m_sEntities[i].type == CLEANUP_CHAR) {
|
||||
CPed* pPed = CPools::GetPedPool()->GetAt(m_sEntities[i].id);
|
||||
if (pPed && !pPed->DyingOrDead())
|
||||
return pPed;
|
||||
}
|
||||
return nil;
|
||||
}
|
||||
|
||||
void CMissionCleanup::Process()
|
||||
{
|
||||
CPopulation::m_AllRandomPedsThisType = -1;
|
||||
|
@ -1878,10 +1899,16 @@ void CUpsideDownCarCheck::Init()
|
|||
|
||||
bool CUpsideDownCarCheck::IsCarUpsideDown(int32 id)
|
||||
{
|
||||
CVehicle* v = CPools::GetVehiclePool()->GetAt(id);
|
||||
return v->GetUp().z <= -0.97f &&
|
||||
v->GetMoveSpeed().Magnitude() < 0.01f &&
|
||||
v->GetTurnSpeed().Magnitude() < 0.02f;
|
||||
CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(id);
|
||||
return IsCarUpsideDown(pVehicle);
|
||||
}
|
||||
|
||||
bool CUpsideDownCarCheck::IsCarUpsideDown(CVehicle* pVehicle)
|
||||
{
|
||||
assert(pVehicle);
|
||||
return pVehicle->GetUp().z <= UPSIDEDOWN_UP_THRESHOLD &&
|
||||
pVehicle->GetMoveSpeed().Magnitude() < UPSIDEDOWN_MOVE_SPEED_THRESHOLD &&
|
||||
pVehicle->GetTurnSpeed().Magnitude() < UPSIDEDOWN_TURN_SPEED_THRESHOLD;
|
||||
}
|
||||
|
||||
void CUpsideDownCarCheck::UpdateTimers()
|
||||
|
@ -1904,7 +1931,7 @@ void CUpsideDownCarCheck::UpdateTimers()
|
|||
bool CUpsideDownCarCheck::AreAnyCarsUpsideDown()
|
||||
{
|
||||
for (int i = 0; i < MAX_UPSIDEDOWN_CAR_CHECKS; i++){
|
||||
if (m_sCars[i].m_nVehicleIndex >= 0 && m_sCars[i].m_nUpsideDownTimer > 1000)
|
||||
if (m_sCars[i].m_nVehicleIndex >= 0 && m_sCars[i].m_nUpsideDownTimer > UPSIDEDOWN_TIMER_THRESHOLD)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
@ -1915,8 +1942,10 @@ void CUpsideDownCarCheck::AddCarToCheck(int32 id)
|
|||
uint16 index = 0;
|
||||
while (index < MAX_UPSIDEDOWN_CAR_CHECKS && m_sCars[index].m_nVehicleIndex >= 0)
|
||||
index++;
|
||||
#ifdef FIX_BUGS
|
||||
if (index >= MAX_UPSIDEDOWN_CAR_CHECKS)
|
||||
return;
|
||||
#endif
|
||||
m_sCars[index].m_nVehicleIndex = id;
|
||||
m_sCars[index].m_nUpsideDownTimer = 0;
|
||||
}
|
||||
|
@ -1935,7 +1964,7 @@ bool CUpsideDownCarCheck::HasCarBeenUpsideDownForAWhile(int32 id)
|
|||
{
|
||||
for (int i = 0; i < MAX_UPSIDEDOWN_CAR_CHECKS; i++){
|
||||
if (m_sCars[i].m_nVehicleIndex == id)
|
||||
return m_sCars[i].m_nUpsideDownTimer > 1000;
|
||||
return m_sCars[i].m_nUpsideDownTimer > UPSIDEDOWN_TIMER_THRESHOLD;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@ -1985,7 +2014,10 @@ void CStuckCarCheck::AddCarToCheck(int32 id, float radius, uint32 time)
|
|||
int index = 0;
|
||||
while (index < MAX_STUCK_CAR_CHECKS && m_sCars[index].m_nVehicleIndex >= 0)
|
||||
index++;
|
||||
/* Would be nice to return if index >= MAX_STUCK_CAR_CHECKS... */
|
||||
#ifdef FIX_BUGS
|
||||
if (index >= MAX_STUCK_CAR_CHECKS)
|
||||
return;
|
||||
#endif
|
||||
m_sCars[index].m_nVehicleIndex = id;
|
||||
m_sCars[index].m_vecPos = pv->GetPosition();
|
||||
m_sCars[index].m_nLastCheck = CTimer::GetTimeInMilliseconds();
|
||||
|
@ -2217,7 +2249,7 @@ void CTheScripts::Init()
|
|||
ScriptsArray[i].Init();
|
||||
ScriptsArray[i].AddScriptToList(&pIdleScripts);
|
||||
}
|
||||
MissionCleanup.Init();
|
||||
MissionCleanUp.Init();
|
||||
UpsideDownCars.Init();
|
||||
StuckCars.Init();
|
||||
CFileMgr::SetDir("data");
|
||||
|
@ -2345,7 +2377,7 @@ void CTheScripts::Process()
|
|||
float timeStep = CTimer::GetTimeStepInMilliseconds();
|
||||
UpsideDownCars.UpdateTimers();
|
||||
StuckCars.Process();
|
||||
MissionCleanup.CheckIfCollisionHasLoadedForMissionObjects();
|
||||
MissionCleanUp.CheckIfCollisionHasLoadedForMissionObjects();
|
||||
DrawScriptSpheres();
|
||||
if (FailCurrentMission)
|
||||
--FailCurrentMission;
|
||||
|
@ -3669,7 +3701,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||
ScriptParams[0] = CPools::GetPedPool()->GetIndex(ped);
|
||||
StoreParameters(&m_nIp, 1);
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.AddEntityToList(ScriptParams[0], CLEANUP_CHAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(ScriptParams[0], CLEANUP_CHAR);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_DELETE_CHAR:
|
||||
|
@ -3678,7 +3710,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||
CPed* ped = CPools::GetPedPool()->GetAt(ScriptParams[0]);
|
||||
CTheScripts::RemoveThisPed(ped);
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.RemoveEntityFromList(ScriptParams[0], CLEANUP_CHAR);
|
||||
CTheScripts::MissionCleanUp.RemoveEntityFromList(ScriptParams[0], CLEANUP_CHAR);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_CHAR_WANDER_DIR:
|
||||
|
@ -3899,7 +3931,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||
ScriptParams[0] = handle;
|
||||
StoreParameters(&m_nIp, 1);
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.AddEntityToList(handle, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(handle, CLEANUP_CAR);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_DELETE_CAR:
|
||||
|
@ -3912,7 +3944,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
|
|||
delete car;
|
||||
}
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.RemoveEntityFromList(ScriptParams[0], CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.RemoveEntityFromList(ScriptParams[0], CLEANUP_CAR);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_CAR_GOTO_COORDINATES:
|
||||
|
@ -4227,7 +4259,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
{
|
||||
if (!m_bIsMissionScript)
|
||||
return 0;
|
||||
CTheScripts::MissionCleanup.Process();
|
||||
CTheScripts::MissionCleanUp.Process();
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_STORE_CAR_CHAR_IS_IN:
|
||||
|
@ -4250,7 +4282,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
pOld->bIsLocked = false;
|
||||
CCarCtrl::NumRandomCars++;
|
||||
CCarCtrl::NumMissionCars--;
|
||||
CTheScripts::MissionCleanup.RemoveEntityFromList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.RemoveEntityFromList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4261,14 +4293,14 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
CCarCtrl::NumMissionCars++;
|
||||
CCarCtrl::NumRandomCars--;
|
||||
CTheScripts::StoreVehicleWasRandom = true;
|
||||
CTheScripts::MissionCleanup.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
break;
|
||||
case PARKED_VEHICLE:
|
||||
pCurrent->VehicleCreatedBy = MISSION_VEHICLE;
|
||||
CCarCtrl::NumMissionCars++;
|
||||
CCarCtrl::NumParkedCars--;
|
||||
CTheScripts::StoreVehicleWasRandom = true;
|
||||
CTheScripts::MissionCleanup.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
break;
|
||||
case MISSION_VEHICLE:
|
||||
case PERMANENT_VEHICLE:
|
||||
|
@ -4301,7 +4333,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
pOld->bIsLocked = false;
|
||||
CCarCtrl::NumRandomCars++;
|
||||
CCarCtrl::NumMissionCars--;
|
||||
CTheScripts::MissionCleanup.RemoveEntityFromList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.RemoveEntityFromList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4312,14 +4344,14 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
CCarCtrl::NumMissionCars++;
|
||||
CCarCtrl::NumRandomCars--;
|
||||
CTheScripts::StoreVehicleWasRandom = true;
|
||||
CTheScripts::MissionCleanup.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
break;
|
||||
case PARKED_VEHICLE:
|
||||
pCurrent->VehicleCreatedBy = MISSION_VEHICLE;
|
||||
CCarCtrl::NumMissionCars++;
|
||||
CCarCtrl::NumParkedCars--;
|
||||
CTheScripts::StoreVehicleWasRandom = true;
|
||||
CTheScripts::MissionCleanup.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(CTheScripts::StoreVehicleIndex, CLEANUP_CAR);
|
||||
break;
|
||||
case MISSION_VEHICLE:
|
||||
case PERMANENT_VEHICLE:
|
||||
|
@ -4468,7 +4500,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
ScriptParams[0] = CPools::GetObjectPool()->GetIndex(pObj);
|
||||
StoreParameters(&m_nIp, 1);
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.AddEntityToList(ScriptParams[0], CLEANUP_OBJECT);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(ScriptParams[0], CLEANUP_OBJECT);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_DELETE_OBJECT:
|
||||
|
@ -4481,7 +4513,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
delete pObj;
|
||||
}
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.RemoveEntityFromList(ScriptParams[0], CLEANUP_OBJECT);
|
||||
CTheScripts::MissionCleanUp.RemoveEntityFromList(ScriptParams[0], CLEANUP_OBJECT);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_ADD_SCORE:
|
||||
|
@ -4697,7 +4729,7 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
ScriptParams[0] = CPools::GetPedPool()->GetIndex(pPed);
|
||||
StoreParameters(&m_nIp, 1);
|
||||
if (m_bIsMissionScript)
|
||||
CTheScripts::MissionCleanup.AddEntityToList(ScriptParams[0], CLEANUP_CHAR);
|
||||
CTheScripts::MissionCleanUp.AddEntityToList(ScriptParams[0], CLEANUP_CHAR);
|
||||
return 0;
|
||||
}
|
||||
case COMMAND_WARP_PLAYER_FROM_CAR_TO_COORD:
|
||||
|
@ -4747,81 +4779,6 @@ int8 CRunningScript::ProcessCommands200To299(int32 command)
|
|||
return -1;
|
||||
}
|
||||
|
||||
|
||||
void CRunningScript::Save(uint8*& buf)
|
||||
{
|
||||
#ifdef COMPATIBLE_SAVES
|
||||
SkipSaveBuf(buf, 8);
|
||||
for (int i = 0; i < 8; i++)
|
||||
WriteSaveBuf<char>(buf, m_abScriptName[i]);
|
||||
WriteSaveBuf<uint32>(buf, m_nIp);
|
||||
#ifdef CHECK_STRUCT_SIZES
|
||||
static_assert(MAX_STACK_DEPTH == 6, "Compatibility loss: MAX_STACK_DEPTH != 6");
|
||||
#endif
|
||||
for (int i = 0; i < MAX_STACK_DEPTH; i++)
|
||||
WriteSaveBuf<uint32>(buf, m_anStack[i]);
|
||||
WriteSaveBuf<uint16>(buf, m_nStackPointer);
|
||||
SkipSaveBuf(buf, 2);
|
||||
#ifdef CHECK_STRUCT_SIZES
|
||||
static_assert(NUM_LOCAL_VARS + NUM_TIMERS == 18, "Compatibility loss: NUM_LOCAL_VARS + NUM_TIMERS != 18");
|
||||
#endif
|
||||
for (int i = 0; i < NUM_LOCAL_VARS + NUM_TIMERS; i++)
|
||||
WriteSaveBuf<int32>(buf, m_anLocalVariables[i]);
|
||||
WriteSaveBuf<bool>(buf, m_bIsActive);
|
||||
WriteSaveBuf<bool>(buf, m_bCondResult);
|
||||
WriteSaveBuf<bool>(buf, m_bIsMissionScript);
|
||||
WriteSaveBuf<bool>(buf, m_bSkipWakeTime);
|
||||
WriteSaveBuf<uint32>(buf, m_nWakeTime);
|
||||
WriteSaveBuf<uint16>(buf, m_nAndOrState);
|
||||
WriteSaveBuf<bool>(buf, m_bNotFlag);
|
||||
WriteSaveBuf<bool>(buf, m_bDeatharrestEnabled);
|
||||
WriteSaveBuf<bool>(buf, m_bDeatharrestExecuted);
|
||||
WriteSaveBuf<bool>(buf, m_bMissionFlag);
|
||||
SkipSaveBuf(buf, 2);
|
||||
#else
|
||||
WriteSaveBuf(buf, *this);
|
||||
#endif
|
||||
}
|
||||
|
||||
void CRunningScript::Load(uint8*& buf)
|
||||
{
|
||||
#ifdef COMPATIBLE_SAVES
|
||||
SkipSaveBuf(buf, 8);
|
||||
for (int i = 0; i < 8; i++)
|
||||
m_abScriptName[i] = ReadSaveBuf<char>(buf);
|
||||
m_nIp = ReadSaveBuf<uint32>(buf);
|
||||
#ifdef CHECK_STRUCT_SIZES
|
||||
static_assert(MAX_STACK_DEPTH == 6, "Compatibility loss: MAX_STACK_DEPTH != 6");
|
||||
#endif
|
||||
for (int i = 0; i < MAX_STACK_DEPTH; i++)
|
||||
m_anStack[i] = ReadSaveBuf<uint32>(buf);
|
||||
m_nStackPointer = ReadSaveBuf<uint16>(buf);
|
||||
SkipSaveBuf(buf, 2);
|
||||
#ifdef CHECK_STRUCT_SIZES
|
||||
static_assert(NUM_LOCAL_VARS + NUM_TIMERS == 18, "Compatibility loss: NUM_LOCAL_VARS + NUM_TIMERS != 18");
|
||||
#endif
|
||||
for (int i = 0; i < NUM_LOCAL_VARS + NUM_TIMERS; i++)
|
||||
m_anLocalVariables[i] = ReadSaveBuf<int32>(buf);
|
||||
m_bIsActive = ReadSaveBuf<bool>(buf);
|
||||
m_bCondResult = ReadSaveBuf<bool>(buf);
|
||||
m_bIsMissionScript = ReadSaveBuf<bool>(buf);
|
||||
m_bSkipWakeTime = ReadSaveBuf<bool>(buf);
|
||||
m_nWakeTime = ReadSaveBuf<uint32>(buf);
|
||||
m_nAndOrState = ReadSaveBuf<uint16>(buf);
|
||||
m_bNotFlag = ReadSaveBuf<bool>(buf);
|
||||
m_bDeatharrestEnabled = ReadSaveBuf<bool>(buf);
|
||||
m_bDeatharrestExecuted = ReadSaveBuf<bool>(buf);
|
||||
m_bMissionFlag = ReadSaveBuf<bool>(buf);
|
||||
SkipSaveBuf(buf, 2);
|
||||
#else
|
||||
CRunningScript* n = next;
|
||||
CRunningScript* p = prev;
|
||||
*this = ReadSaveBuf<CRunningScript>(buf);
|
||||
next = n;
|
||||
prev = p;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef MISSION_REPLAY
|
||||
|
||||
bool CRunningScript::CanAllowMissionReplay()
|
||||
|
@ -4856,7 +4813,7 @@ void RetryMission(int type, int unk)
|
|||
else if (type == 2) {
|
||||
doingMissionRetry = false;
|
||||
AllowMissionReplay = 6;
|
||||
CTheScripts::MissionCleanup.Process();
|
||||
CTheScripts::MissionCleanUp.Process();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue