Пример #1
0
 private void UpdateHPCounter(RunTimeTowerData towerAttacked)
 {
     if (towerData.GameObject.Equals(towerAttacked.GameObject))
     {
         SetCounterValue(towerData.valHp);
     }
 }
Пример #2
0
    private void Awake()
    {
        towerData = GetComponent <RunTimeTowerData>();

        wasDestroyed = false;
        Health       = towerData.valHp;
    }
Пример #3
0
    private void Awake()
    {
        textCounterHP = GetComponent <TextMeshProUGUI>();
        towerData     = GetComponentInParent <RunTimeTowerData>();

        startHp = towerData.valHp;
    }
Пример #4
0
    private void OnTowerDestruction(RunTimeTowerData tower)
    {
        Transform towerTransform = tower.GameObject.transform;

        HandleEnemyLeavedAttackRadio(towerTransform);

        construcionsList.Remove(towerTransform);
    }
Пример #5
0
    private void HandleTowerDestruction(RunTimeTowerData tower)
    {
        if (tower.isEnemy)
        {
            TowersDestroyedScore += tower.valScore;
        }

        TotalScore = CalculeTotalScore();
    }
Пример #6
0
    private void HandleTowerDestroyedEvent(RunTimeTowerData tower)
    {
        GameObject towerGameObject = tower.GameObject;

        if (!tower.isEnemy)
        {
            Vector2 newBuildSlot = towerGameObject.GetComponentInChildren <AISlotUnlocker>().transform.position;
            buildingPositions.Add(newBuildSlot);
        }

        constructionsList.Remove(towerGameObject.transform);
    }
Пример #7
0
    private void HandleTowerDestroyed(RunTimeTowerData towerDestroyed)
    {
        Transform tower = gameObject.transform.parent;

        if (tower == towerDestroyed.GameObject.transform)
        {
            if (unlockSlot)
            {
                Instantiate(prefabAIBuildSlot, transform.position, Quaternion.identity);
            }
            towerDestroyedEvent.UnregisterListener(HandleTowerDestroyed);
        }
    }
Пример #8
0
    private int CountTowersDefendedScore()
    {
        int score = 0;

        GameObject[] towersInGame = GameObject.FindGameObjectsWithTag("Tower");

        foreach (GameObject tower in towersInGame)
        {
            RunTimeTowerData towerData = tower.GetComponent <RunTimeTowerData>();
            score += towerData.valScore;
        }

        return(score);
    }
    void Start()
    {
        switch (transform.parent.tag)
        {
        case ("Troop"):

            RunTimeTroopData troopData = GetComponentInParent <RunTimeTroopData>();
            isEnemy = troopData.isEnemy;
            break;

        case ("Tower"):

            RunTimeTowerData towerData = GetComponentInParent <RunTimeTowerData>();
            isEnemy = towerData.isEnemy;
            break;

        case ("Hero"):

            RunTimeHeroData heroData = GetComponentInParent <RunTimeHeroData>();
            isEnemy = heroData.isEnemy;
            break;

        case ("Core"):

            RunTimeCoreData coreData = GetComponentInParent <RunTimeCoreData>();
            isEnemy = coreData.isEnemy;
            break;
        }

        if (isEnemy)
        {
            gameObject.layer = 11;
        }
        else
        {
            gameObject.layer = 12;
        }
    }
Пример #10
0
 private void HandleTowerDestroyed(RunTimeTowerData tower)
 {
     CompleteWave();
 }