Ejemplo n.º 1
0
    IEnumerator WaitForController()
    {
        tankController = target.GetComponent <RTCTankController>();
        yield return(new WaitWhile(() => !tankController));

        tankGunController = tankController.GetComponentInChildren <RTCTankGunController>();
    }
Ejemplo n.º 2
0
    void Start()
    {
        nc           = GameObject.FindObjectOfType <NetworkController>();
        errorlevel   = GetComponent <Text>();
        CurrentScene = SceneManager.GetActiveScene();

        if (EmptyFuelArrow)
        {
            EmptyFuelArrow.SetActive(false);
        }

        if (APP.PlayerTankManager == null || APP.PlayerTankManager.player == null) // if the player doesn't have a player tank manager, then wait and spawn one
        {
            StartCoroutine(WaitForPTMToSpawn());
            return;
        }


        // Setting UI elements inactive or active
        HideScopeFade();
        win.GetComponent <Canvas>().enabled  = false;
        lose.GetComponent <Canvas>().enabled = false;
        scoresCanvas.enabled = false;
        skipButton.SetActive(false);
        edgeFade.SetActive(false);
        damageFade.SetActive(true);
        blackFade.SetActive(false);
        viewSlit.SetActive(false);

        // Assigning/Finding data from objects present in the scene
        levelManagerRef     = FindObjectOfType <LevelManager>();
        mapCanvasController = miniMap.GetComponent <MapCanvasController>();
        tankController      = APP.PlayerTankManager.player.GetComponent <RTCTankController>();
        tankGunController   = tankController.GetComponentInChildren <RTCTankGunController>();

        if (!tankController)
        {
            StartCoroutine("WaitForController");
        }

        // Cursor Related
        Cursor.visible   = false;
        Cursor.lockState = CursorLockMode.Locked;

        if (levelManagerRef.errorInStack)
        {
            errors.SetActive(true);
            errorlevel.text = levelManagerRef.checkpointsCount +
                              levelManagerRef.destroyTargetCount +
                              levelManagerRef.collectCount +
                              levelManagerRef.waveCount +
                              levelManagerRef.destinationsCount +
                              levelManagerRef.deliverCount +
                              levelManagerRef.captureCount +
                              levelManagerRef.cutSceneCount + "Error in Level Manager";
            DEBUG.Log("Errors in LevelManager detected, behaviour may be broken", Warning_Types.Error);
        }
        else
        {
            errors.SetActive(false);
        }

        LoadoutPanel.Initialize();

        // Fuel Arrow only for the grasslands level
        if (CurrentScene.name.Contains("Campaign_Grasslands"))
        {
            EmptyFuelArrow.SetActive(tankController.CurrentFuel <= 0 ? true : false);
        }
        else
        {
            EmptyFuelArrow.SetActive(false);
        }
    }
Ejemplo n.º 3
0
 // Adding a new _target GameObject
 public void SetTarget(GameObject _target)
 {
     target            = _target; // Giving the same information as the target GameObject
     tankController    = _target.GetComponent <RTCTankController>();
     tankGunController = _target.GetComponentInChildren <RTCTankGunController>();
 }