- if(checkextension("DP_CSQC_V_CALCREFDEF"))
- {
- // set teleport bit
- if(self.csqcmodel_teleported)
- {
- self.pmove_flags |= PMF_TELEPORTED;
- self.csqcmodel_teleported = 0;
- }
- else
- self.pmove_flags &~= PMF_TELEPORTED;
+ self.angles_y = input_angles_y;
+
+ self = oldself;
+ }
+
+ entity view;
+#ifdef COMPAT_XON050_ENGINE
+ view = CSQCModel_server2csqc((spectatee_status > 0) ? spectatee_status : player_localentnum);
+#else
+ view = CSQCModel_server2csqc(player_localentnum);
+#endif
+
+#ifdef COMPAT_XON050_ENGINE
+ if(view && !(checkextension("DP_CSQC_V_CALCREFDEF") || checkextension("DP_CSQC_V_CALCREFDEF_WIP1")))
+ {
+ // legacy code, not totally correct, but good enough for not having V_CalcRefdef
+ setproperty(VF_ORIGIN, view.origin + '0 0 1' * getstati(STAT_VIEWHEIGHT));
+ setproperty(VF_ANGLES, view.angles);
+ }
+ else
+#endif
+ if(view)
+ {
+ var float refdefflags = 0;