Exemple #1
0
    public override void Die()
    {
        // delay here for animation later
        foreach (var fac in factionLimbs)
        {
            Destroy(fac);
        }

        ragdollCtrl.SetRagdoll(true);
        ragdollKiller.EnableKiller();
        Destroy(ragdollCtrl);
        Destroy(this);
    }
Exemple #2
0
    // Start is called before the first frame update
    void Awake()
    {
        _rigidbody         = GetComponent <Rigidbody>();
        _characterAnimator = transform.GetComponent <Animator>();
        bodyCollider       = transform.GetComponent <Collider>();

        GetComponentsInChildren(_ragdollCharacterJointList);

        for (int i = 0; i < _ragdollCharacterJointList.Count; i++)
        {
            _tempRigidbody = _ragdollCharacterJointList[i].GetComponent <Rigidbody>();
            _ragdollRigidbodyList.Add(_tempRigidbody);

            _tempCollider = _ragdollCharacterJointList[i].GetComponent <Collider>();
            _ragdollColliderList.Add(_tempCollider);

            _tempRagdollController = _ragdollCharacterJointList[i].gameObject.AddComponent <RagdollController>();
            _tempRagdollController.SetRagdoll(_ragdollCharacterJointList[i]);
            _ragdollControllerList.Add(_tempRagdollController);
        }
    }