mirror of
https://git.rip/DMCA_FUCKER/re3.git
synced 2024-11-07 15:44:53 +00:00
finished script and replay
This commit is contained in:
parent
45c09224f7
commit
5edd9e75da
|
@ -53,7 +53,7 @@
|
|||
#include "Fluff.h"
|
||||
#include "WaterCreatures.h"
|
||||
|
||||
//--MIAMI: file done except TODO
|
||||
//--MIAMI: file done
|
||||
|
||||
uint8 CReplay::Mode;
|
||||
CAddressInReplayBuffer CReplay::Record;
|
||||
|
@ -158,7 +158,7 @@ static void(*CBArray[])(CAnimBlendAssociation*, void*) =
|
|||
&CPed::FinishedAttackCB,
|
||||
&CPed::FinishFightMoveCB, &PhonePutDownCB, &PhonePickUpCB, &CPed::PedAnimDoorCloseRollingCB, &CPed::FinishJumpCB,
|
||||
&CPed::PedLandCB, &CPed::RestoreHeadingRateCB, &CPed::PedSetQuickDraggedOutCarPositionCB, &CPed::PedSetDraggedOutCarPositionCB,
|
||||
&CPed::PedSetPreviousStateCB, &CPed::FinishedReloadCB, /*&CPed::PedSetGetInCarPositionCB, TODO(MIAMI)*/
|
||||
&CPed::PedSetPreviousStateCB, &CPed::FinishedReloadCB, &CPed::PedSetGetInCarPositionCB,
|
||||
&CPed::PedAnimShuffleCB, &CPed::DeleteSunbatheIdleAnimCB, &StartTalkingOnMobileCB, &FinishTalkingOnMobileCB
|
||||
};
|
||||
|
||||
|
@ -396,7 +396,8 @@ void CReplay::RecordThisFrame(void)
|
|||
misc->cam_shake_start = TheCamera.m_uiCamShakeStart;
|
||||
misc->cam_shake_strength = TheCamera.m_fCamShakeForce;
|
||||
misc->cur_area = CGame::currArea;
|
||||
//misc->special_fx_flags; // TODO(MIAMI)!!!
|
||||
misc->video_cam = CSpecialFX::bVideoCam;
|
||||
misc->lift_cam = CSpecialFX::bLiftCam;
|
||||
Record.m_nOffset += sizeof(*misc);
|
||||
tEndOfFramePacket* eof = (tEndOfFramePacket*)&Record.m_pBase[Record.m_nOffset];
|
||||
eof->type = REPLAYPACKET_ENDOFFRAME;
|
||||
|
@ -1139,7 +1140,8 @@ bool CReplay::PlayBackThisFrameInterpolation(CAddressInReplayBuffer *buffer, flo
|
|||
tMiscPacket* pm = (tMiscPacket*)&ptr[offset];
|
||||
TheCamera.m_uiCamShakeStart = pm->cam_shake_start;
|
||||
TheCamera.m_fCamShakeForce = pm->cam_shake_strength;
|
||||
// TODO(MIAMI): SpecialFX
|
||||
CSpecialFX::bVideoCam = pm->video_cam;
|
||||
CSpecialFX::bLiftCam = pm->lift_cam;
|
||||
CGame::currArea = pm->cur_area;
|
||||
buffer->m_nOffset += sizeof(tMiscPacket);
|
||||
break;
|
||||
|
|
|
@ -263,7 +263,8 @@ class CReplay
|
|||
uint32 cam_shake_start;
|
||||
float cam_shake_strength;
|
||||
uint8 cur_area;
|
||||
uint8 special_fx_flags;
|
||||
uint8 video_cam : 1;
|
||||
uint8 lift_cam : 1;
|
||||
};
|
||||
|
||||
VALIDATE_SIZE(tMiscPacket, 16);
|
||||
|
|
|
@ -88,6 +88,8 @@
|
|||
#include <stdarg.h>
|
||||
#endif
|
||||
|
||||
//--MIAMI: file done
|
||||
|
||||
#define PICKUP_PLACEMENT_OFFSET 0.5f
|
||||
#define PED_FIND_Z_OFFSET 5.0f
|
||||
#define COP_PED_FIND_Z_OFFSET 10.0f
|
||||
|
@ -15751,7 +15753,7 @@ INITSAVEBUF
|
|||
uint32 script_data_size = SCRIPT_DATA_SIZE;
|
||||
WriteSaveBuf(buf, script_data_size);
|
||||
WriteSaveBuf(buf, OnAMissionFlag);
|
||||
WriteSaveBuf(buf, NextFreeCollectiveIndex);
|
||||
WriteSaveBuf(buf, LastMissionPassedTime);
|
||||
for (uint32 i = 0; i < MAX_NUM_BUILDING_SWAPS; i++) {
|
||||
CBuilding* pBuilding = BuildingSwapArray[i].m_pBuilding;
|
||||
uint32 type, handle;
|
||||
|
@ -15801,12 +15803,12 @@ INITSAVEBUF
|
|||
WriteSaveBuf(buf, handle);
|
||||
}
|
||||
WriteSaveBuf(buf, bUsingAMultiScriptFile);
|
||||
WriteSaveBuf(buf, (uint8)0);
|
||||
WriteSaveBuf(buf, bPlayerHasMetDebbieHarry);
|
||||
WriteSaveBuf(buf, (uint16)0);
|
||||
WriteSaveBuf(buf, MainScriptSize);
|
||||
WriteSaveBuf(buf, LargestMissionScriptSize);
|
||||
WriteSaveBuf(buf, NumberOfMissionScripts);
|
||||
WriteSaveBuf(buf, (uint16)0);
|
||||
WriteSaveBuf(buf, NumberOfExclusiveMissionScripts);
|
||||
WriteSaveBuf(buf, runningScripts);
|
||||
for (CRunningScript* pScript = pActiveScripts; pScript; pScript = pScript->GetNext())
|
||||
pScript->Save(buf);
|
||||
|
@ -15823,7 +15825,7 @@ INITSAVEBUF
|
|||
ScriptSpace[i] = ReadSaveBuf<uint8>(buf);
|
||||
script_assert(ReadSaveBuf<uint32>(buf) == SCRIPT_DATA_SIZE);
|
||||
OnAMissionFlag = ReadSaveBuf<uint32>(buf);
|
||||
NextFreeCollectiveIndex = ReadSaveBuf<uint32>(buf);
|
||||
LastMissionPassedTime = ReadSaveBuf<uint32>(buf);
|
||||
for (uint32 i = 0; i < MAX_NUM_BUILDING_SWAPS; i++) {
|
||||
uint32 type = ReadSaveBuf<uint32>(buf);
|
||||
uint32 handle = ReadSaveBuf<uint32>(buf);
|
||||
|
@ -15871,12 +15873,12 @@ INITSAVEBUF
|
|||
InvisibilitySettingArray[i]->bIsVisible = false;
|
||||
}
|
||||
script_assert(ReadSaveBuf<bool>(buf) == bUsingAMultiScriptFile);
|
||||
ReadSaveBuf<uint8>(buf);
|
||||
bPlayerHasMetDebbieHarry = ReadSaveBuf<uint8>(buf);
|
||||
ReadSaveBuf<uint16>(buf);
|
||||
script_assert(ReadSaveBuf<uint32>(buf) == MainScriptSize);
|
||||
script_assert(ReadSaveBuf<uint32>(buf) == LargestMissionScriptSize);
|
||||
script_assert(ReadSaveBuf<uint16>(buf) == NumberOfMissionScripts);
|
||||
ReadSaveBuf<uint16>(buf);
|
||||
script_assert(ReadSaveBuf<uint16>(buf) == NumberOfExclusiveMissionScripts);
|
||||
uint32 runningScripts = ReadSaveBuf<uint32>(buf);
|
||||
for (uint32 i = 0; i < runningScripts; i++)
|
||||
StartNewScript(0)->Load(buf);
|
||||
|
@ -16103,7 +16105,7 @@ void CTheScripts::CleanUpThisObject(CObject* pObject)
|
|||
if (pObject->ObjectCreatedBy != MISSION_OBJECT)
|
||||
return;
|
||||
pObject->ObjectCreatedBy = TEMP_OBJECT;
|
||||
pObject->m_nEndOfLifeTime = CTimer::GetTimeInMilliseconds() + 20000;
|
||||
pObject->m_nEndOfLifeTime = CTimer::GetTimeInMilliseconds() + 20000000;
|
||||
pObject->m_nRefModelIndex = -1;
|
||||
pObject->bUseVehicleColours = false;
|
||||
++CObject::nNoTempObjects;
|
||||
|
|
|
@ -21440,3 +21440,17 @@ CPed::SetLook(float direction)
|
|||
SetLookFlag(direction, false);
|
||||
}
|
||||
}
|
||||
|
||||
// --MIAMI: Done
|
||||
// Unused
|
||||
void CPed::PedSetGetInCarPositionCB(CAnimBlendAssociation* assoc, void* arg)
|
||||
{
|
||||
CPed* pPed = (CPed*)arg;
|
||||
CMatrix mat(pPed->GetMatrix());
|
||||
CVehicle* pVehicle = pPed->m_pMyVehicle;
|
||||
const CVector& offset = (pVehicle->bIsVan && (pPed->m_vehEnterType == CAR_DOOR_RR || pPed->m_vehEnterType == CAR_DOOR_LR)) ? vecPedVanRearDoorAnimOffset : vecPedCarDoorAnimOffset;
|
||||
CVector position = Multiply3x3(mat, offset) + pPed->GetPosition();
|
||||
CPedPlacement::FindZCoorForPed(&position);
|
||||
pPed->SetMoveSpeed(0.0f, 0.0f, 0.0f);
|
||||
pPed->SetPosition(position);
|
||||
}
|
||||
|
|
|
@ -911,6 +911,7 @@ public:
|
|||
static void DeleteSunbatheIdleAnimCB(CAnimBlendAssociation *assoc, void *arg);
|
||||
static void PedSetPreviousStateCB(CAnimBlendAssociation *assoc, void *arg);
|
||||
static void PedAnimShuffleCB(CAnimBlendAssociation *assoc, void *arg);
|
||||
static void PedSetGetInCarPositionCB(CAnimBlendAssociation* assoc, void* arg);
|
||||
|
||||
bool IsPlayer(void);
|
||||
bool IsFemale(void) { return m_nPedType == PEDTYPE_CIVFEMALE || m_nPedType == PEDTYPE_PROSTITUTE; }
|
||||
|
|
|
@ -418,7 +418,7 @@ void CMovingThings::Init()
|
|||
}
|
||||
|
||||
CEscalators::Init();
|
||||
aScrollBars[0].Init(CVector(-1069.209f, 1320.126f, 18.848f), CVector(-1069.209f, 1342.299f, 22.612), SCROLL_ARENA_STRING, 128, 255, 0, 0.3f);
|
||||
aScrollBars[0].Init(CVector(-1069.209f, 1320.126f, 18.848f), CVector(-1069.209f, 1342.299f, 22.612f), SCROLL_ARENA_STRING, 128, 255, 0, 0.3f);
|
||||
}
|
||||
|
||||
void CMovingThings::Shutdown()
|
||||
|
|
Loading…
Reference in a new issue