public override void OnEvent(SetCorpsePosition evnt) { if (!this.ValidateSender(evnt, SenderTypes.Any)) { return; } if (evnt.Corpse) { if (evnt.Corpse.transform.parent != null) { evnt.Corpse.gameObject.SendMessageUpwards("releaseNooseTrapMP", SendMessageOptions.DontRequireReceiver); } evnt.Corpse.transform.parent = null; evnt.Corpse.Freeze(false); if (evnt.Pickup) { evnt.Corpse.SendMessage("sendResetRagDoll", SendMessageOptions.DontRequireReceiver); evnt.Corpse.transform.position = new Vector3(4096f, 4096f, 4096f); } else if (evnt.Destroy) { BoltNetwork.Destroy(evnt.Corpse); } else { evnt.Corpse.SendMessage("dropFromCarry", false, SendMessageOptions.DontRequireReceiver); evnt.Corpse.SendMessage("setRagDollDrop", SendMessageOptions.DontRequireReceiver); evnt.Corpse.transform.position = evnt.Position; evnt.Corpse.transform.rotation = ((!(evnt.Rotation == default(Quaternion))) ? evnt.Rotation : Quaternion.identity); MultiHolder.GetTriggerChild(evnt.Corpse.transform).gameObject.SetActive(true); } } }
public override void OnEvent(TakeBodyApprove evnt) { LocalPlayer.AnimControl.setMutantPickUp(evnt.Body.gameObject); SetCorpsePosition setCorpsePosition = SetCorpsePosition.Create(GlobalTargets.OnlyServer); setCorpsePosition.Corpse = evnt.Body; setCorpsePosition.Corpse.Freeze(false); setCorpsePosition.Pickup = true; setCorpsePosition.Send(); }
public override void OnEvent(SetCorpsePosition evnt) { if (evnt.Corpse) { if (evnt.Corpse.transform.parent != null) { evnt.Corpse.gameObject.SendMessageUpwards("releaseNooseTrapMP", SendMessageOptions.DontRequireReceiver); } evnt.Corpse.transform.parent = null; evnt.Corpse.Freeze(false); if (evnt.Pickup) { evnt.Corpse.SendMessage("sendResetRagDoll", SendMessageOptions.DontRequireReceiver); evnt.Corpse.transform.position = new Vector3(4096f, 4096f, 4096f); } else if (evnt.Destroy) { BoltNetwork.Destroy(evnt.Corpse); } else { evnt.Corpse.SendMessage("dropFromCarry", SendMessageOptions.DontRequireReceiver); evnt.Corpse.SendMessage("setRagDollDrop", SendMessageOptions.DontRequireReceiver); evnt.Corpse.transform.position = evnt.Position; evnt.Corpse.transform.rotation = ((!(evnt.Rotation == default(Quaternion))) ? evnt.Rotation : Quaternion.identity); MultiHolder.GetTriggerChild(evnt.Corpse.transform).gameObject.SetActive(true); } } }