using UnityEngine;

public class NPCCombat : MonoBehaviour
{
    public int vida = 100;
    public bool enPelea = false;
    public Animator anim;

    private Rigidbody[] ragdollBodies;
    private Collider[] ragdollColliders;
    private Collider mainCollider;
    private Rigidbody mainRigidbody;

    void Start()
    {
        ragdollBodies = GetComponentsInChildren<Rigidbody>();
        ragdollColliders = GetComponentsInChildren<Collider>();
        mainCollider = GetComponent<Collider>();
        mainRigidbody = GetComponent<Rigidbody>();

        foreach (var rb in ragdollBodies)
        {
            if (rb != mainRigidbody)
                rb.isKinematic = true;
        }

        foreach (var col in ragdollColliders)
        {
            if (col != mainCollider)
                col.enabled = false;
        }
    }

    public void RecibirDaño(int daño)
    {
        if (vida <= 0) return;

        vida -= daño;
        if (vida <= 0)
        {
            Matar();
        }
        else
        {
            anim.SetTrigger("hit");
        }
    }

    void Matar()
    {
        enPelea = false;
        anim.enabled = false;

        GetComponent<NPCController>().enabled = false;
        GetComponent<Collider>().enabled = false;
        GetComponent<Rigidbody>().isKinematic = true;
        GetComponent<UnityEngine.AI.NavMeshAgent>().enabled = false;

        
        foreach (var rb in ragdollBodies)
        {
            if (rb != mainRigidbody)
                rb.isKinematic = false;
        }

        foreach (var col in ragdollColliders)
        {
            if (col != mainCollider)
                col.enabled = true;
        }
    }
}