MCPcopy Create free account
hub / github.com/demoth/jake2 / PM_ClampAngles

Method PM_ClampAngles

qcommon/src/main/java/jake2/qcommon/PMove.java:983–1007  ·  view source on GitHub ↗

PM_ClampAngles.

()

Source from the content-addressed store, hash-verified

981 * PM_ClampAngles.
982 */
983 public static void PM_ClampAngles() {
984 short temp;
985 int i;
986
987 if ((pm.s.pm_flags & Defines.PMF_TIME_TELEPORT) != 0) {
988 pm.viewangles[Defines.YAW] = Math3D
989 .SHORT2ANGLE(pm.cmd.angles[Defines.YAW]
990 + pm.s.delta_angles[Defines.YAW]);
991 pm.viewangles[Defines.PITCH] = 0;
992 pm.viewangles[Defines.ROLL] = 0;
993 } else {
994 // circularly clamp the angles with deltas
995 for (i = 0; i < 3; i++) {
996 temp = (short) (pm.cmd.angles[i] + pm.s.delta_angles[i]);
997 pm.viewangles[i] = Math3D.SHORT2ANGLE(temp);
998 }
999
1000 // don't let the player look up or down more than 90 degrees
1001 if (pm.viewangles[Defines.PITCH] > 89 && pm.viewangles[Defines.PITCH] < 180)
1002 pm.viewangles[Defines.PITCH] = 89;
1003 else if (pm.viewangles[Defines.PITCH] < 271 && pm.viewangles[Defines.PITCH] >= 180)
1004 pm.viewangles[Defines.PITCH] = 271;
1005 }
1006 Math3D.AngleVectors(pm.viewangles, pml.forward, pml.right, pml.up);
1007 }
1008
1009 /**
1010 * Can be called by either the server or the client.

Callers 1

PmoveMethod · 0.95

Calls 2

SHORT2ANGLEMethod · 0.95
AngleVectorsMethod · 0.95

Tested by

no test coverage detected