camerapickup ps2 code

This commit is contained in:
Fire-Head 2020-04-20 08:17:08 +03:00
parent 83810168ee
commit 556a6df401
2 changed files with 29 additions and 0 deletions

View file

@ -623,6 +623,34 @@ CPickups::Update()
if (CReplay::IsPlayingBack())
return;
#endif
#ifdef CAMERA_PICKUP
if ( bPickUpcamActivated ) // taken from PS2
{
float dist = (FindPlayerCoors() - StaticCamCoors).Magnitude2D();
float mult;
if ( dist < 10.0f )
mult = 1.0f - (dist / 10.0f );
else
mult = 0.0f;
CVector pos = StaticCamCoors;
pos.z += (pPlayerVehicle->GetColModel()->boundingBox.GetSize().z + 2.0f) * mult;
if ( (CTimer::GetTimeInMilliseconds() - StaticCamStartTime) > 750 )
{
TheCamera.SetCamPositionForFixedMode(pos, CVector(0.0f, 0.0f, 0.0f));
TheCamera.TakeControl(FindPlayerVehicle(), CCam::MODE_FIXED, JUMP_CUT, CAMCONTROL_SCRIPT);
}
if ( FindPlayerVehicle() != pPlayerVehicle
|| (FindPlayerCoors() - StaticCamCoors).Magnitude() > 40.0f
|| ((CTimer::GetTimeInMilliseconds() - StaticCamStartTime) > 60000) )
{
TheCamera.RestoreWithJumpCut();
bPickUpcamActivated = false;
}
}
#endif
#define PICKUPS_FRAME_SPAN (6)
#ifdef FIX_BUGS
for (uint32 i = NUMGENERALPICKUPS * (CTimer::GetFrameCounter() % PICKUPS_FRAME_SPAN) / PICKUPS_FRAME_SPAN; i < NUMGENERALPICKUPS * (CTimer::GetFrameCounter() % PICKUPS_FRAME_SPAN + 1) / PICKUPS_FRAME_SPAN; i++) {

View file

@ -226,6 +226,7 @@ enum Config {
// Pickups
//#define MONEY_MESSAGES
#define CAMERA_PICKUP
// Peds
#define ANIMATE_PED_COL_MODEL