private void Update() { if (!CustomNetworkManager.Instance._isServer) { return; } if (moving && Vector2.Distance(transform.position, destination) < 2) //arrived to dest { moving = false; mm.SetPosition(destination); mm.StopMovement(); mm.SteerTo(Orientation.Up); if (CargoManager.Instance.ShuttleStatus == ShuttleStatus.OnRouteStation) { mm.ChangeFlyingDirection(Orientation.Down); StartCoroutine(ReverseIntoStation()); } } if (CargoManager.Instance.CurrentFlyTime <= 0f && CargoManager.Instance.ShuttleStatus == ShuttleStatus.OnRouteCentcom) { UnloadCargo(); CargoManager.Instance.OnShuttleArrival(); } }
[Server] //Asigns random rotation to each asteroid at startup for variety. public void RandomRotation() { int rand = Random.Range(0, 4); switch (rand) { case 0: mm.SteerTo(Orientation.Up); break; case 1: mm.SteerTo(Orientation.Down); break; case 2: mm.SteerTo(Orientation.Right); break; case 3: mm.SteerTo(Orientation.Left); break; } }