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); }
// 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); } }