public void OnAttacked(AttackManager.Attack attack) { animator.SetTrigger("IsDead"); isDead = true; attackManager.Unsubscribe(this); Destroy(GetComponent <NavMeshObstacle>()); }
public void Setup(AttackManager.Attack attack) { this.attack = attack; button.onClick.AddListener(delegate { AttackManager.Instance.StartAttack(attack); }); inputText.text = attack.input.ToString(); nameText.text = attack.name; image.sprite = attack.sprite; }
protected override void DoOtherEffects(AttackManager.Attack attack) { GameObject leftSubProjectile = Instantiate( subProjectilePrefab, transform.position, transform.rotation * Quaternion.Euler(0, 90, 0)); leftSubProjectile.GetComponent <SplittingRaySubProjectileScript>().setOriginTarget(attack.GetTarget()); GameObject rightSubProjectile = Instantiate( subProjectilePrefab, transform.position, transform.rotation * Quaternion.Euler(0, 270, 0)); rightSubProjectile.GetComponent <SplittingRaySubProjectileScript>().setOriginTarget(attack.GetTarget()); }
public void OnAttacked(AttackManager.Attack attack) { if (attack.GetTarget() == gameObject) { if (healthBar.TakeDamage(attack.GetDamage())) { if (attack.GetAbility() != null) { attack.GetAbility().DoAbilityEffect(attack.GetOwner(), gameObject); } } else { isDead = true; attackManager.Unsubscribe(this); animator.enabled = true; animator.SetTrigger("Die"); } } }
protected override void DoOtherEffects(AttackManager.Attack attack) { // None }