コード例 #1
0
    void CheckForEnemiesInRadius()
    {
        Collider[] objectsInRange = Physics.OverlapSphere(transform.position, controller.damageRadius);

        float damage = controller.damage;

        foreach (Collider col in objectsInRange)
        {
            if (col.gameObject.tag == "Structure")
            {
                StructureController structure = col.gameObject.GetComponent <StructureController>();
                Debug.DrawLine(transform.position, col.gameObject.transform.position, Color.red, 2.0f);

                if (structure != null)
                {
                    float proximity = (transform.position - structure.transform.position).magnitude;
                    float effect    = 1 - (proximity / controller.damageRadius);

                    float damageAmount = (damage * effect);
                    damageAmount = Mathf.Clamp(damageAmount, 1.0f, damage);

                    structure.TakeDamage(damageAmount);
                }
            }
            else if (col.gameObject.tag == "Turret")
            {
                TurretBarrelController turret = col.gameObject.GetComponent <TurretBarrelController>();
                Debug.DrawLine(transform.position, col.gameObject.transform.position, Color.red, 2.0f);

                if (turret != null)
                {
                    float proximity = (transform.position - turret.transform.position).magnitude;
                    float effect    = 1 - (proximity / controller.damageRadius);

                    float damageAmount = (damage * effect);
                    damageAmount = Mathf.Clamp(damageAmount, 1.0f, damage);

                    turret.TakeDamage(damageAmount);
                }
            }
        }
    }
コード例 #2
0
    void Start()
    {
        controller = gameObject.GetComponentInChildren<TurretBarrelController>();

        // Particles
        parMySmFire = (GameObject)Instantiate(parSmFire, transform.position, Quaternion.identity);
        parMyFire = (GameObject)Instantiate(parFire, transform.position, Quaternion.identity);
        parMySmSmoke = (GameObject)Instantiate(parSmSmoke, transform.position, Quaternion.identity);
        parMyMdSmoke = (GameObject)Instantiate(parMdSmoke, transform.position, Quaternion.identity);
        parMyLgSmoke = (GameObject)Instantiate(parLgSmoke, transform.position, Quaternion.identity);

        parHealth = (GameObject)Instantiate(parHealthEffect, transform.position, Quaternion.identity);

        parMySmFire.transform.position = new Vector3(parMySmFire.transform.position.x, parMySmFire.transform.position.y, 4);
        parMyFire.transform.position = new Vector3(parMyFire.transform.position.x, parMyFire.transform.position.y, 4);
        parHealth.transform.position = new Vector3(parHealth.transform.position.x, parHealth.transform.position.y, 4);

        parMySmFire.particleEmitter.emit = false;
        parMyFire.particleEmitter.emit = false;
        parMySmSmoke.particleEmitter.emit = false;
        parMyMdSmoke.particleEmitter.emit = false;
        parMyLgSmoke.particleEmitter.emit = false;
        parHealth.particleEmitter.emit = false;
    }
コード例 #3
0
    void Start()
    {
        controller = gameObject.GetComponentInChildren <TurretBarrelController>();

        // Particles
        parMySmFire  = (GameObject)Instantiate(parSmFire, transform.position, Quaternion.identity);
        parMyFire    = (GameObject)Instantiate(parFire, transform.position, Quaternion.identity);
        parMySmSmoke = (GameObject)Instantiate(parSmSmoke, transform.position, Quaternion.identity);
        parMyMdSmoke = (GameObject)Instantiate(parMdSmoke, transform.position, Quaternion.identity);
        parMyLgSmoke = (GameObject)Instantiate(parLgSmoke, transform.position, Quaternion.identity);

        parHealth = (GameObject)Instantiate(parHealthEffect, transform.position, Quaternion.identity);

        parMySmFire.transform.position = new Vector3(parMySmFire.transform.position.x, parMySmFire.transform.position.y, 4);
        parMyFire.transform.position   = new Vector3(parMyFire.transform.position.x, parMyFire.transform.position.y, 4);
        parHealth.transform.position   = new Vector3(parHealth.transform.position.x, parHealth.transform.position.y, 4);

        parMySmFire.particleEmitter.emit  = false;
        parMyFire.particleEmitter.emit    = false;
        parMySmSmoke.particleEmitter.emit = false;
        parMyMdSmoke.particleEmitter.emit = false;
        parMyLgSmoke.particleEmitter.emit = false;
        parHealth.particleEmitter.emit    = false;
    }
コード例 #4
0
 void Start()
 {
     controller = GetComponent <TurretBarrelController>();
 }
コード例 #5
0
 void Start()
 {
     controller = GetComponent<TurretBarrelController>();
 }
コード例 #6
0
    void Start()
    {
        controller = transform.parent.gameObject.GetComponent<TurretBarrelController>();

        sprite = gameObject.GetComponentInChildren<tk2dClippedSpriteSample>();
    }
コード例 #7
0
    void Start()
    {
        controller = transform.parent.gameObject.GetComponent <TurretBarrelController>();

        sprite = gameObject.GetComponentInChildren <tk2dClippedSpriteSample>();
    }