void UpdateTargetFromInput(PlayerInput input) { MovementState new_target_movement_state = new MovementState(); new_target_movement_state.movement = GetMovementVector(input.movement); /* * new_target_movement_state.rotationX = Mathf.Clamp( * CURRENT_STATE.rotationX + 360f - input.UDRotation, * ConfigurableConstants.PLAYER_LOOK_ANGLE_MIN + 360f, ConfigurableConstants.PLAYER_LOOK_ANGLE_MAX + 360f); */ new_target_movement_state.rotationX = Lib.AngleClamp180( CURRENT_STATE.rotationX - input.UDRotation, ConfigurableConstants.PLAYER_LOOK_ANGLE_MIN, ConfigurableConstants.PLAYER_LOOK_ANGLE_MAX); new_target_movement_state.rotationY = CURRENT_STATE.rotationY + input.LRRotation; _target_state = new_target_movement_state; }
public void AngleClamp180_0() { Assert.AreEqual( 0f, Lib.AngleClamp180(0f, -30f, 30f)); }
public void AngleClamp180_325() { Assert.AreEqual( 330f, Lib.AngleClamp180(325f, -30f, 30f)); }
public void AngleClamp180_220() { Assert.AreEqual( 210f, Lib.AngleClamp180(220f, -30f, 30f)); }
public void AngleClamp180_55() { Assert.AreEqual( 60f, Lib.AngleClamp180(55f, -30f, 30f)); }
public void AngleClamp180_N15() { Assert.AreEqual( -15f, Lib.AngleClamp180(-15f, -30f, 30f)); }