override public BT_Status UpdateAction() { if (collider == null) { Debug.Log("No collider there! _Action_MeleeAttack"); return(BT_Status.RUNNING); } //need to know the animation timing timer_to_attack += Time.deltaTime; if (timer_to_attack > time_to_attack) { Collider2D col_temp = Physics2D.OverlapBox(collider.transform.position, collider.size, 0.0f, player_layer); if (col_temp != null) { Debug.Log("Player damaged!"); fader_scr.Fade_image.enabled = true; fader_scr.FadeOut(false, true); Transform parent = col_temp.transform.parent; if (parent != null) { Player_Manager player_manager = parent.GetComponent <Player_Manager>(); player_manager.current_state = Player_Manager.Player_States.PUSHBACK_PLAYER; player_manager.Set_Enemy_Pushback(transform); live_manager_scr = parent.GetComponent <Live_Manager>(); if (live_manager_scr != null) { live_manager_scr.DetectedDamage(); } else { Debug.Log("Live Manager not found _Action_MeleeAttack"); } } else { Debug.Log("Parent not found _Action_MeleeAttack"); } } col_temp = null; timer_to_attack = 0; } return(BT_Status.RUNNING); }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.CompareTag("player_combat_collider")) { if (!Detect_Enemy_Type_And_Action()) { Transform parent = collision.transform.parent; if (parent != null) { live_manager_scr = parent.GetComponent <Live_Manager>(); player_manager_scr = parent.GetComponent <Player_Manager>(); if (live_manager_scr != null && player_manager_scr != null) { player_manager_scr.GetDamage(transform); playerHitted = true; } } } } }