Example #1
0
        private void OnTriggerEnter(Collider other)
        {
            var target = other.gameObject.GetComponent <Damageable>();

            if (target == null)
            {
                return;
            }
            if (AffectedTeams.Contains(other.gameObject.GetComponent <Team>().TeamId))
            {
                affected.Add(target);
            }
        }
Example #2
0
        private void OnTriggerEnter(Collider other)
        {
            var team = other.gameObject.GetComponent <Team>();

            if (team == null || !AffectedTeams.Contains(team.TeamId))
            {
                return;
            }
            other.gameObject.GetComponent <Damageable>().Damage(Damage);
            if (exploding)
            {
                return;
            }
            gameObject.GetComponent <SphereCollider>().radius = Radius;
            Destroy(gameObject, 0.1f);
            exploding = true;
        }
Example #3
0
        private void Shoot()
        {
            var hits = PositionUtil.RayAllFromTo(gameObject, Target, Range);

            foreach (var hit in hits)
            {
                var dmg  = hit.transform.gameObject.GetComponent <Damageable>();
                var team = hit.transform.gameObject.GetComponent <Team>();
                if (dmg == null || !AffectedTeams.Contains(team.TeamId))
                {
                    continue;
                }
                dmg.Damage(Damage);
                break;
            }

            Destroy(gameObject);
        }