Exemple #1
0
 // Use this for initialization
 void OnEnable()
 {
     Instance = this;
     slider   = GetComponent <Image> ();
     maxWidth = 1;
     InitBar();         //2.1.2
 }
Exemple #2
0
    //// Update is called once per frame
    //void Update () {

    //}

    public void SetupUI(DestroyableObject _targetObj)
    {
        if (targetObj != null)
        {
            targetObj.onHPUpdate -= TargetObj_OnHPUpdate;
        }
        targetObj = _targetObj;

        if (progressBar == null)
        {
            GameObject progressBarPrefab = GameUtility.GetProgressBarPrefab();
            GameObject progressBarGo     = Instantiate(progressBarPrefab);
            progressBarGo.transform.SetParent(panel);

            progressBarGo.transform.localPosition = new Vector3(0.0f, 30.0f, 0.0f);
            progressBarGo.transform.localScale    = Vector3.one;

            progressBar = progressBarGo.GetComponent <ProgressBarScript>();
        }

        progressBar.SetupProgressBar(null, null, targetObj.hp, targetObj.hp);

        CreateNumberTextObjectPool();

        targetObj.onHPUpdate += TargetObj_OnHPUpdate;
    }
Exemple #3
0
 // Use this for initialization
 void OnEnable()
 {
     Instance = this;
     slider   = GetComponent <Image>();
     maxWidth = 1;
     ResetBar();
     PrepareStars();
 }
 // Use this for initialization
 void Start()
 {
     Instance = this;
     slider   = GetComponent <Slider>();
     maxWidth = slider.value;
     ResetBar();
     PrepareStars();
 }
Exemple #5
0
 private void ShowProgressBar()
 {
     ProgressBarScript.ResetProgressBar();
     progressBar.alpha              = 1;
     progressBar.interactable       = true;
     progressBar.blocksRaycasts     = true;
     bonusTextCanvas.alpha          = 1;
     bonusTextCanvas.interactable   = true;
     bonusTextCanvas.blocksRaycasts = true;
 }
Exemple #6
0
 // Use this for initialization
 void OnEnable()
 {
     Instance = this;
     slider   = GetComponent <Image>();
     maxWidth = 1;
     LevelManager.OnLevelLoaded += InitBar;
     if (LevelManager.GetGameStatus() > GameState.PrepareGame)
     {
         InitBar();
     }
 }
Exemple #7
0
    void LaserBeam()
    {
        List <GameObject> enemies = FindAllNearEnemy();

        ActivateEffect();

        List <Vector3> lightningPositions = new List <Vector3>();

        //Null means that the turret is reloading.
        if (enemies == null)
        {
            return;
        }

        //If there is not enemy, erase the line.
        if (enemies.Count == 0)
        {
            lineRenderer.positionCount = 0;
            return;
        }


        lightningPositions.Add(transform.position);



        foreach (GameObject enemy in enemies)
        {
            lightningPositions.Add(transform.position);

            lightningPositions.Add(enemy.transform.position);


            ProgressBarScript progressBarScript = enemy.GetComponent <ProgressBarScript>();

            progressBarScript.currentHealth -= attackDamage;
        }


        lineRenderer.positionCount = lightningPositions.Count;
        int i = 0;

        foreach (Vector3 pos in lightningPositions)
        {
            lineRenderer.SetPosition(i, pos);
            i++;
        }
    }
Exemple #8
0
    void BurnEnemy()
    {
        List <GameObject> enemies = FindAllNearEnemy();

        ActivateEffect();

        if (enemies == null || enemies.Count == 0)
        {
            return;
        }

        foreach (GameObject enemy in enemies)
        {
            ProgressBarScript progressBarScript = enemy.GetComponent <ProgressBarScript>();

            progressBarScript.currentHealth -= attackDamage;
        }
    }
Exemple #9
0
    void ThrowLightning()
    {
        List <GameObject> enemies = FindAllNearEnemy();

        ActivateEffect();

        List <Vector3> lightningPositions = new List <Vector3>();

        //Null means that the turret is reloading.
        if (enemies == null)
        {
            return;
        }

        //If there is not enemy, erase the line.
        if (enemies.Count == 0)
        {
            GetComponent <Animator>().SetBool("Attacking", false);
            lineRenderer.positionCount = 0;
            return;
        }

        GetComponent <Animator>().SetBool("Attacking", true);

        GetComponent <Animator>().Play("ElectricTurretAttack", 0);


        lightningPositions.Add(transform.position);

        foreach (GameObject enemy in enemies)
        {
//            lineRenderer.SetPosition(1, enemy.transform.position);w²

            lightningPositions.Add(enemy.transform.position);
            lightningPositions.Add(enemy.transform.position + new Vector3(Random.Range(0f, 2f), Random.Range(0f, 2f), 0));

//            print(enemy.transform.position +new Vector3(Random.Range(0, 2), Random.Range(0, 2), 0));

            ProgressBarScript progressBarScript = enemy.GetComponent <ProgressBarScript>();

            progressBarScript.currentHealth -= attackDamage;
            UIScript.instance.DisplayImpactEffect(UIScript.instance.electricEnemyEffect).transform.position = enemy.transform.position;

            AudioManager.instance.Play("Punch", true);
        }


        lineRenderer.positionCount = lightningPositions.Count;
        foreach (Vector3 pos in lightningPositions)
        {
            lineRenderer.SetPosition(lightningPositions.IndexOf(pos), pos);
        }

        // ITS WORKING , ATTACK ONLY ONE ENEMY AT THE TIME.
//        FindEnemies();
//
//        if (target == null)
//        {
//            lineRenderer.SetPosition(0, shootPos.transform.position);
//            lineRenderer.SetPosition(1, shootPos.transform.position);
//
//            return;
//        }
//        target.GetComponent<ProgressBarScript>().currentHealth -= attackDamage;
//
//        lineRenderer.SetPosition(0, shootPos.transform.position);
//        lineRenderer.SetPosition(1, target.transform.position);
//
//        UIScript.instance.DisplayImpactEffect(UIScript.instance.electricEnemyEffect).transform.position = target.transform.position;
    }