// Start is called before the first frame update void Start() { navMeshAgent = transform.GetComponent <NavMeshAgent>(); esScript = transform.GetComponent <EnemySpine>(); animator = transform.GetComponent <Animator>(); capsuleCollider = transform.GetComponent <CapsuleCollider>(); SearchPlayer = transform.GetChild(2).gameObject; }
private void OnTriggerEnter2D(Collider2D collision) { GameObject collistionObject = collision.gameObject; switch (collistionObject.tag) { case "Hero": if (currentTarget == TargetType.Hero) { HeroSpine heroSpine = collistionObject.GetComponent <HeroSpine>(); heroSpine.GetHit(AttackBlood); Destroy(gameObject); } break; case "Enemy": if (currentTarget == TargetType.Enemy) { if (isAttacked) { return; } EnemySpine enemySpine = collistionObject.GetComponent <EnemySpine>(); enemySpine.GetHit(AttackBlood); switch (arrowType) { case ArrowType.rain: if (!isAttacked) { isAttacked = true; } break; default: Destroy(gameObject); break; } } break; case "Arrow": ArrowController otherArrow = collistionObject.GetComponent <ArrowController>(); if (otherArrow.Target != currentTarget) { Destroy(gameObject); } break; case "Down": if (arrowType == ArrowType.rain) { EventManager.Send("ArrowRainRecord"); EventManager.Send <Vector3>("HeroRainPlay", transform.localPosition); } Destroy(gameObject); break; } }