Example #1
0
    void Update()
    {
        if (MeteorsActive == true)
        {
            if (_meteorConroller != null)
            {
                List <GameObject> meteorList = _meteorConroller.GetObjectList();

                foreach (var meteor in meteorList)
                {
                    if (meteor.gameObject.activeSelf == true)
                    {
                        Vector3 eVec = meteor.transform.position;

                        //cities
                        MeteorSpriteObj meteorScript = meteor.GetComponent <MeteorSpriteObj> ();
                        float           eRad         = meteorScript.CircleCollider.radius;

                        if (meteorScript.ExplodePhase == true)
                        {
                            List <City> cityList = _cityController.GetCityList();
                            foreach (var city in cityList)
                            {
                                City c = city.GetComponent <City> ();

                                if (c.CheckCircleCollision(eVec, eRad))
                                {
                                    Debug.Log("City Hit");

                                    //apply damage
                                    c.ApplyDamage(meteorScript.Power);
                                }
                            }
                        }

                        //bullets

                        List <GameObject> canonList = _canonController.GetObjectList();
                        foreach (var canonBall in canonList)
                        {
                            SpriteCanonObject ball = canonBall.GetComponent <SpriteCanonObject> ();

                            if (ball._State == SpriteCanonObject.eState.Exploding)
                            {
                                if (ball.CheckCircleCollision(eVec, eRad))
                                {
                                    //apply damage to meteor

                                    meteorScript.ApplyDamage(1);
                                }
                            }
                        }
                    }
                }
            }
        }
    }