public override bool FireEvent(Event E) { if (E.ID == "MutationAdded") { Body pBody = ParentObject.GetPart("Body") as Body; if (pBody != null) { BodyPart Part = pBody.GetPartByManager(AdditionsManagerID); if (Part != null) { ParentObject.FireEvent(Event.New("CommandForceUnequipObject", "BodyPart", Part)); if (BaseTail == null) { BaseTail = GameObject.create("BaseThickTail"); } Armor armor = BaseTail.GetPart("Armor") as Armor; armor.WornOn = Part.Type; Event @event = Event.New("CommandForceEquipObject"); @event.SetParameter("Object", BaseTail); @event.SetParameter("BodyPart", Part); @event.SetSilent(Silent: true); ParentObject.FireEvent(@event); } } if (ParentObject.HasObjectInInventory("BaseThickTail")) { ParentObject.FindObjectInInventory("BaseThickTail").Destroy(null, true, false); } } return(base.FireEvent(E)); }