Exemplo n.º 1
0
    public override void OnCollisionEnter(Collision bang)
    {
        if (bang.collider.tag == "Drone")
        {
            DroneController ot = bang.gameObject.GetComponent <DroneController>();
            if (ot != null && ot.CanBeTargetted)
            {
                if (IsTargetingFood() || CanTargetFood())
                {
                    targetEnemy = null;
                    //carriedEnemy = ot;
                    if (numCarried < maxCarry)
                    {
                        ot.Attach(this.tran, tran.TransformPoint(nose));
                    }
                    else
                    {
                        Attack(ot);
                    }

                    eaten++;
                    numCarried++;
                    if (numCarried > 3)
                    {
                        ReturnToHome();
                    }
                }
            }
        }

        if (bang.collider.tag == "Pit")
        {
            if (IsCarryingFood())
            {
                for (int i = 0; i < numCarried; i++)
                {
                    if (enemiesCarried[i] != null)
                    {
                        Destroy(enemiesCarried[i]);
                    }
                }
                numCarried      = 0;
                this.bReturning = false;
            }
            if (eaten >= maxEaten || bDay)
            {
                //PitController pc = bang.gameObject.GetComponent<PitController>();
                this.bReturning = false;
                //GameController.Instance.StartTimer();
                this.Death();
            }
        }
    }