void OnTriggerEnter(Collider collider) { if (collider.gameObject.GetComponent <WalkingUnit>() && collider.GetComponent <WalkingUnit>().faction.Equals(Sender.faction) && TargetablesFriendlies.Contains(Sender.UnitType)) { collider.gameObject.GetComponent <WalkingUnit>().Heal(HealAmount(SkillLevel)); } }
void OnTriggerEnter(Collider collider) { if (collider.GetComponent <Unit>()) // Ignore terrain { // If it's a targetted skill //if (target) //{ // try // { // if (collider.gameObject.Equals(target.gameObject)) // { // collider.gameObject.GetComponent<Unit>().GetDamage(Sender, damage); // AudioSource.PlayClipAtPoint(audioSource.clip, transform.position, 10f); // Destroy(this.gameObject); // } // } // catch // { // print("Target dead"); // } //} // If an other thing //else //{ if (collider.GetComponent <Unit>().faction.Equals(Faction)) { if (TargetFriendlies) { if (collider.GetComponent <CreationBuilding>()) { if (TargetablesFriendlies.Contains(UnitType.Building)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <HerosUnit>()) { if (TargetablesFriendlies.Contains(UnitType.HerosUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>() && !collider.GetComponent <HerosUnit>() && !collider.GetComponent <CreationBuilding>()) { if (TargetablesFriendlies.Contains(UnitType.BasicUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <WalkingUnit>()) { if (TargetablesFriendlies.Contains(UnitType.WalkingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>()) { if (TargetablesFriendlies.Contains(UnitType.AttackingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else { throw new NotImplementedException(); } } } else { if (TargetEnemies) { if (collider.GetComponent <CreationBuilding>()) { if (TargetablesEnemies.Contains(UnitType.Building)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <HerosUnit>()) { if (TargetablesEnemies.Contains(UnitType.HerosUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>() && !collider.GetComponent <HerosUnit>() && !collider.GetComponent <CreationBuilding>()) { if (TargetablesEnemies.Contains(UnitType.BasicUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <WalkingUnit>()) { if (TargetablesEnemies.Contains(UnitType.WalkingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>()) { if (TargetablesEnemies.Contains(UnitType.AttackingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else { throw new NotImplementedException(); } } } } }
void OnTriggerEnter(Collider collider) { if (collider.GetComponent <Unit>()) { if (collider.GetComponent <Unit>().faction.Equals(Faction)) { if (TargetFriendlies) { if (collider.GetComponent <CreationBuilding>()) { if (TargetablesFriendlies.Contains(UnitType.Building)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <HerosUnit>()) { if (TargetablesFriendlies.Contains(UnitType.HerosUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>() && !collider.GetComponent <HerosUnit>() && !collider.GetComponent <CreationBuilding>()) { if (TargetablesFriendlies.Contains(UnitType.BasicUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <WalkingUnit>()) { if (TargetablesFriendlies.Contains(UnitType.WalkingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>()) { if (TargetablesFriendlies.Contains(UnitType.AttackingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else { throw new NotImplementedException(); } } } else { if (TargetEnemies) { if (collider.GetComponent <CreationBuilding>()) { if (TargetablesEnemies.Contains(UnitType.Building)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <HerosUnit>()) { if (TargetablesEnemies.Contains(UnitType.HerosUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>() && !collider.GetComponent <HerosUnit>() && !collider.GetComponent <CreationBuilding>()) { if (TargetablesEnemies.Contains(UnitType.BasicUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <WalkingUnit>()) { if (TargetablesEnemies.Contains(UnitType.WalkingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else if (collider.GetComponent <AttackingUnit>()) { if (TargetablesEnemies.Contains(UnitType.AttackingUnit)) { DealDamage(collider.GetComponent <Unit>()); } } else { throw new NotImplementedException(); } } } } }