{
entity e;
vector org, ang, nearclip, corner0, corner1, corner2, corner3, o;
- float f;
warpzone_save_view_origin = org = getpropertyvec(VF_ORIGIN);
warpzone_save_view_angles = ang = getpropertyvec(VF_ANGLES);
WarpZone_View_Outside();
#ifndef KEEP_ROLL
- float rick;
- if(autocvar_cl_rollkillspeed)
- f = max(0, (1 - frametime * autocvar_cl_rollkillspeed));
- else
- f = 0;
-
- rick = getproperty(VF_CL_VIEWANGLES_Z);
- rick *= f;
- setproperty(VF_CL_VIEWANGLES_Z, rick);
- ang.z *= f;
+ static float rollkill;
+ if (STAT(HEALTH) <= 0 && STAT(HEALTH) != -666 && STAT(HEALTH) != -2342)
+ {
+ if(autocvar_cl_rollkillspeed)
+ {
+ rollkill += frametime * autocvar_cl_rollkillspeed;
+ rollkill = min(1, rollkill);
+ }
+ float rick;
+ rick = getproperty(VF_CL_VIEWANGLES_Z) * rollkill;
+ setproperty(VF_CL_VIEWANGLES_Z, rick);
+ ang.z *= rollkill;
+ }
+ else if(rollkill)
+ rollkill = 0;
#endif
setproperty(VF_ORIGIN, org);