Beispiel #1
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        DamageDealer damageDealer = other.gameObject.GetComponent <DamageDealer>();
        ScoreKeeper  scoreKeeper  = other.gameObject.GetComponent <ScoreKeeper>();

        // tries below to see if it a red or a blue laser that hit the gem

        try
        {
            LaserGreen laserGreen = other.gameObject.GetComponent <LaserGreen>();
            // green laser on green gem process
            if (laserGreen.laserIdentifier == 1)
            {
                ProcessGreenHit(damageDealer);
            }
        }
        catch
        {
        }

        try
        {
            LaserRed laserRed = other.gameObject.GetComponent <LaserRed>();
            // red laser on green gem process
            if (laserRed.laserIdentifier == 2)
            {
                FindObjectOfType <ScoreKeeper>().ResetMultiplier();
                //Debug.Log("red laser to green gem");
                Debug.Log(FindObjectOfType <ScoreKeeper>().GetMultiplier());
            }
        }
        catch
        {
        }

        try
        {
            HealthBottomShredder bottomShredder = other.gameObject.GetComponent <HealthBottomShredder>();
            // process for when the gem hits the shredder
            if (bottomShredder.shredderidentifier == 3)
            {
                FindObjectOfType <ScoreKeeper>().ResetMultiplier();
                Destroy(gameObject);
                Debug.Log(FindObjectOfType <ScoreKeeper>().GetMultiplier());
            }
        }
        catch
        {
        }
    }
Beispiel #2
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        DamageDealer damageDealer = other.gameObject.GetComponent <DamageDealer>();
        ScoreKeeper  scoreKeeper  = other.gameObject.GetComponent <ScoreKeeper>();

        try
        {
            LaserGreen laserGreen = other.gameObject.GetComponent <LaserGreen>();
            // process for when green laser hits red
            if (laserGreen.laserIdentifier == 1)
            {
                FindObjectOfType <ScoreKeeper>().ResetMultiplier();
                //Debug.Log("green laser to red gem");
                Debug.Log(FindObjectOfType <ScoreKeeper>().GetMultiplier());
            }
        }
        catch
        {
        }

        try
        {
            LaserRed laserRed = other.gameObject.GetComponent <LaserRed>();
            if (laserRed.laserIdentifier == 2)
            {
                ProcessRedHit(damageDealer);
            }
        }
        catch
        {
        }

        try
        {
            HealthBottomShredder bottomShredder = other.gameObject.GetComponent <HealthBottomShredder>();

            if (bottomShredder.shredderidentifier == 3)
            {
                FindObjectOfType <ScoreKeeper>().ResetMultiplier();
                Destroy(gameObject);
                Debug.Log(FindObjectOfType <ScoreKeeper>().GetMultiplier());
            }
        }
        catch
        {
        }
    }
Beispiel #3
0
    public void SpawnLaser()
    {
        BattleExit      BE = TextBox.GetComponent <BattleExit> ();
        SpriteRenderer  LG = LaserGreen.GetComponent <SpriteRenderer> ();
        HealthBar_Enemy HB = EnemyH.GetComponent <HealthBar_Enemy> ();

        if (BE.InBattle)
        {
            if (LaserSpawn)
            {
                LG.enabled = true;
                Vector3 LaserPosition = new Vector3(Random.Range(spawnLU.position.x, spawnRU.position.x), spawnLU.position.y, 0);
                LaserSpawn = false;
                GameObject LaserClone = (GameObject)Instantiate(LaserGreen, LaserPosition, Quaternion.identity);
                //Rigidbody2D LCRB = LaserClone.AddComponent <Rigidbody2D>()as Rigidbody2D;
                //LCRB.AddForce (LaserForce);
                LaserClone.transform.SetParent(Attack1Parent);
                Lasers.Add(LaserClone);
                for (int i = 0; i < Lasers.Count; i++)
                {
                    LaserGreen L = Lasers [i].GetComponent <LaserGreen> ();
                    //LaserClone.transform.SetParent (LaserGreenParent);
                    LaserClone.name = "Laser " + Lasers.IndexOf(LaserClone);
                    LaserClone.tag  = "LaserClone";
                    L.Tm            = 0;
                }

//			GameObject LaserC=GameObject.f
            }
        }
        int n = Lasers.Count;

        for (int i = 0; i < n; i++)
        {
            if (Lasers.Count != 0)
            {
                Vector3        LaserPosition = new Vector3(Random.Range(spawnLU.position.x, spawnRU.position.x), Random.Range(spawnLU.position.y, spawnRU.position.y), 0);
                SpriteRenderer S             = Lasers[i].GetComponent <SpriteRenderer> ();
                LaserGreen     L             = Lasers [i].GetComponent <LaserGreen> ();
                if (HB.CurrentHealth != 0)
                {
                    speed = (1 / (HB.CurrentHealth + 1));
                }
                Lasers [i].transform.position += LaserForce * speed * Time.deltaTime;
                if (Lasers [i].transform.position.y < spawnLD.position.y)
                {
                    Lasers [i].transform.position = LaserPosition;
                    S.enabled = false;
                }
                else if (Lasers [i].transform.position.y >= spawnLU.position.y)
                {
                    S.enabled = false;
                }
                else if (Lasers [i].transform.position.y < spawnLU.position.y)
                {
                    S.enabled = true;
                }

                if (CancelSpawn)
                {
                    CancelSpawn = false;
                    CancelSpawn = true;
                    Destroy(Lasers [0]);
                    Lasers.Remove(Lasers [0]);
                    Debug.Log(Lasers.Count);
                }
            }
        }
    }