Exemplo n.º 1
0
    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();
        }
    }
Exemplo n.º 2
0
        [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;
            }
        }