Esempio n. 1
0
    void CheckStuck()
    {
        if (rigidbody.velocity.magnitude < stuckTreshold && windBoost.infiniteBoost == false && windBoost.GetAvailableBoost() <= 0)
        {
            stuckProgress -= Time.deltaTime;
        }
        else
        {
            stuckProgress = stuckTimeout;
        }

        if (stuckProgress <= 0)
        {
            stuckProgress = 0;
            GameController.instance.Gameover();
        }
    }
Esempio n. 2
0
    // Update is called once per frame
    void Update()
    {
        if (PlayerInput.Instance.Input.GetButtonDown("Fire") && InGameMenu.enabled)
        {
            if (NextLevelButton.gameObject.activeInHierarchy)
            {
                GameController.instance.NextLevel();
            }
            else if (ContinueButton.gameObject.activeInHierarchy)
            {
                GameController.instance.Continue();
            }
            else if (RetryButton.gameObject.activeInHierarchy)
            {
                GameController.instance.Retry();
            }
        }

        Speed.text    = "Speed " + (player.activeInHierarchy ? (int)(player.rigidbody.velocity.magnitude * 3.6) : 0) + " Km/h";
        Altitude.text = "Altitude " + ((int)player.transform.position.y) + "m";
        Boost.text    = "Wind Boost " + (windBoost.infiniteBoost ? "Infinite" : "" + Mathf.Ceil(windBoost.GetAvailableBoost() * 100) + "%");

        if (GameController.instance.Level.EndWindow != null)
        {
            float targetDistance = GameController.instance.GetTargetDistance();

            if (targetDistance > 5)
            {
                DistanceIndicator.enabled = true;
                DistanceText.enabled      = true;

                DistanceText.text = ((int)targetDistance) + " M";

                Vector2 targetPosition = GameController.instance.GetTargetInScreen();

                //Debug.Log("received " + targetPosition.x + " " + targetPosition.y);

                float padding = 0.1f;
                if (targetPosition.x < padding)
                {
                    targetPosition.x = padding;
                }
                else if (targetPosition.x > 1 - padding)
                {
                    targetPosition.x  = 1 - padding;
                    targetPosition.y *= 1 - padding;
                }

                if (targetPosition.y < padding)
                {
                    targetPosition.y = padding;
                }
                else if (targetPosition.y > 1 - padding)
                {
                    targetPosition.y  = 1 - padding;
                    targetPosition.x *= 1 - padding;
                }

                DistanceIndicator.rectTransform.anchoredPosition = new Vector3(Screen.width * (targetPosition.x - 0.5f), Screen.height * (targetPosition.y - 0.5f), 0);
            }
            else
            {
                DistanceIndicator.enabled = false;
                DistanceText.enabled      = false;
            }
        }
        else
        {
            DistanceIndicator.enabled = false;
            DistanceText.enabled      = false;
        }
    }