public void Unequip(BipedPart part) { if (equipment != null) { foreach (var equipmentObject in equipment) { GameObject.Destroy(equipmentObject); } } // Sets all the body parts on if (!isOverriden) { if (part == BipedPart.Chest) { var chest = parent.Find("Tri Chest"); chest.gameObject.SetActive(true); } else { foreach (Transform transform in parent) { transform.gameObject.SetActive(true); } } } }
// Update this to just take an apparel piece as it already contains the biped part data I think public void Equip(string model, ItemRecord itemData, BipedPart part) { ItemData = itemData; if (equipment != null) { foreach (var equipmentObject in equipment) { GameObject.Destroy(equipmentObject); } } // Hides body parts if (!isOverriden) { if (part == BipedPart.Chest) { var chest = parent.Find("Tri Chest"); chest.gameObject.SetActive(false); } else { foreach (Transform transform in parent) { transform.gameObject.SetActive(false); } } } var reader = BsaFileReader.LoadArchiveFileData($"meshes\\{model}"); var niFile = new NiFile(reader); niFile.CreateGameObject(parent); equipment = niFile.CreatedObjects; }
public ApparelRecordPiece(BipedPart index, string malePart, string femalePart) { Index = index; if (malePart != null) { MalePart = BodyPartRecord.Get(malePart); } if (femalePart != null) { FemalePart = BodyPartRecord.Get(femalePart); } }
public void CreateEquippedPart(Transform child, BipedPart part) { BodyPartPiece bodyPartType; if (bodyPartNames.TryGetValue(part, out bodyPartType)) { BodyPartRecord bodyPart = null; switch (bodyPartType) { case BodyPartPiece.Head: bodyPart = head; break; case BodyPartPiece.Hair: bodyPart = hair; break; case BodyPartPiece.Chest: LoadSkin(); break; case BodyPartPiece.Hand: break; case BodyPartPiece.Foot: if (!race.IsBeastRace) { bodyPart = BodyPartRecord.GetBodyPart(race, bodyPartType, isFemale); } break; case BodyPartPiece.None: break; default: bodyPart = BodyPartRecord.GetBodyPart(race, bodyPartType, isFemale); break; } if (bodyPart != null) { BodyPartRecord.Create(bodyPart, null, child); } } var equippedPart = new EquippedPart(child); bodyPartPairs.Add(part, equippedPart); }