public void _turning_180_degrees_updates_forward_180_degrees() { SteerableDirection steerableDirection = A.SteerableDirection.WithDegreesPerSecond(180f); Assert.AreEqual(Vector3.up, steerableDirection.Forward); TestableTime.AdvanceSeconds(1f - TestableTime.deltaTime); steerableDirection.Tick(); var result = steerableDirection.Forward; var resultX = result.x; var resultY = result.y; Assert.AreEqual(Vector3.down.x, resultX, RotationTolerance); Assert.AreEqual(Vector3.down.y, resultY, RotationTolerance); }
private void UpdateHeading() { if (!(_turnLeft ^ _turnRight)) { _heading.DegreesPerSecond(0f); } if (_turnLeft) { _heading.DegreesPerSecond(-_turnSpeed); } if (_turnRight) { _heading.DegreesPerSecond(_turnSpeed); } _heading.Tick(); }