private void ClientLocalDeath() { Transform transforms; bool flag; Ragdoll ragdoll = this.DeathRagdoll(); if (base.localControlled) { if (!actor.forceThirdPerson) { CameraMount componentInChildren = base.GetComponentInChildren <CameraMount>(); if (!componentInChildren || !componentInChildren.open) { Debug.Log("No camera?"); } else { RagdollTransferInfoProvider ragdollTransferInfoProvider = base.controller as RagdollTransferInfoProvider; if (ragdollTransferInfoProvider == null) { transforms = null; flag = false; } else { try { RagdollTransferInfo ragdollTransferInfo = ragdollTransferInfoProvider.RagdollTransferInfo; flag = ragdollTransferInfo.FindHead(ragdoll.transform, out transforms); } catch (Exception exception) { Debug.LogException(exception, this); transforms = null; flag = false; } } if (flag) { Vector3 vector3 = transforms.InverseTransformPoint(componentInChildren.transform.position); vector3.y = vector3.y + 0.08f; Vector3 vector31 = transforms.TransformPoint(vector3); Ragdoll ragdoll1 = ragdoll; ragdoll1.origin = ragdoll1.origin + (vector31 - transforms.position); CameraMount.CreateTemporaryCameraMount(componentInChildren, transforms).camera.nearClipPlane = 0.02f; } ArmorModelRenderer local = ragdoll.GetLocal <ArmorModelRenderer>(); if (local) { local.enabled = false; } } } UnityEngine.Object.Destroy(base.GetComponent <LocalDamageDisplay>()); } }
private void ClientLocalDeath() { Ragdoll ragdoll = this.DeathRagdoll(); if (base.localControlled) { if (!actor.forceThirdPerson) { CameraMount componentInChildren = base.GetComponentInChildren <CameraMount>(); if ((componentInChildren != null) && componentInChildren.open) { Transform transform; bool flag; RagdollTransferInfoProvider controller = base.controller as RagdollTransferInfoProvider; if (controller != null) { try { flag = controller.RagdollTransferInfo.FindHead(ragdoll.transform, out transform); } catch (Exception exception) { Debug.LogException(exception, this); transform = null; flag = false; } } else { transform = null; flag = false; } if (flag) { Vector3 position = transform.InverseTransformPoint(componentInChildren.transform.position); position.y += 0.08f; Vector3 vector2 = transform.TransformPoint(position); ragdoll.origin += vector2 - transform.position; CameraMount.CreateTemporaryCameraMount(componentInChildren, transform).camera.nearClipPlane = 0.02f; } ArmorModelRenderer local = ragdoll.GetLocal <ArmorModelRenderer>(); if (local != null) { local.enabled = false; } } else { Debug.Log("No camera?"); } } Object.Destroy(base.GetComponent <LocalDamageDisplay>()); } }