diff --git a/src/client/entry.c b/src/client/entry.c index da0d4295..1ebced5c 100644 --- a/src/client/entry.c +++ b/src/client/entry.c @@ -259,7 +259,7 @@ CSQC_UpdateView(float w, float h, float focus) addentities(MASK_ENGINE); - if (pSeat->m_flCameraTime > time) { + if (pSeat->m_flCameraTime > time || pSeat->m_flCameraTime == -1) { view_angles = pSeat->m_vecCameraAngle; setproperty(VF_ORIGIN, pSeat->m_vecCameraOrigin); setproperty(VF_CL_VIEWANGLES, view_angles); diff --git a/src/gs-entbase/shared/trigger_camera.cpp b/src/gs-entbase/shared/trigger_camera.cpp index c51ffcfd..d4c5d9e1 100644 --- a/src/gs-entbase/shared/trigger_camera.cpp +++ b/src/gs-entbase/shared/trigger_camera.cpp @@ -82,7 +82,13 @@ trigger_camera::ReceiveEntity(float flFlags) pSeat->m_vecCameraAngle = angles; if (flFlags & OCAMFL_CHANGED_WAIT) { - pSeat->m_flCameraTime = time + readfloat(); + float flWait = readfloat(); + + if (flWait == -1) + pSeat->m_flCameraTime = -1; + else + pSeat->m_flCameraTime = time + flWait; + setproperty(VF_CL_VIEWANGLES, angles); setproperty(VF_ANGLES, angles); }