Beispiel #1
0
 public static bool IsHead(this ModularBodyPart part)
 {
     if (part == ModularBodyPart.Head)
     {
         return(true);
     }
     return(false);
 }
 public void DeactivatePart(ModularBodyPart bodyPart)
 {
     if (activeParts.ContainsKey(bodyPart))
     {
         GetPartFromID(bodyPart, activeParts[bodyPart]).SetActive(false);
         activeParts.Remove(bodyPart);
     }
 }
Beispiel #3
0
 public static bool IsHeadPart(this ModularBodyPart part)
 {
     if (part == ModularBodyPart.Hair || part == ModularBodyPart.Eyebrow || part == ModularBodyPart.Ear || part == ModularBodyPart.FacialHair)
     {
         return(true);
     }
     return(false);
 }
Beispiel #4
0
 public static bool IsBaseBodyPart(this ModularBodyPart part)
 {
     if (part == ModularBodyPart.Head || part == ModularBodyPart.Torso || part == ModularBodyPart.ArmUpperRight || part == ModularBodyPart.ArmUpperLeft ||
         part == ModularBodyPart.ArmLowerRight || part == ModularBodyPart.ArmLowerLeft || part == ModularBodyPart.HandRight || part == ModularBodyPart.HandLeft ||
         part == ModularBodyPart.Hips || part == ModularBodyPart.LegRight || part == ModularBodyPart.LegLeft)
     {
         return(true);
     }
     return(false);
 }
        public void SetPartColor(ModularBodyPart bodyPart, int partID, string colorProperty, Color newColor)
        {
            GameObject part = GetPartFromID(bodyPart, partID);

            if (part != null)
            {
                Material tempMaterial = new Material(part.GetComponent <SkinnedMeshRenderer>().sharedMaterial);
                tempMaterial.SetColor(colorProperty, newColor);
                part.GetComponent <SkinnedMeshRenderer>().material = tempMaterial;
            }
        }
        public void ActivatePart(ModularBodyPart bodyPart, int partID)
        {
            GameObject partToActivate = GetPartFromID(bodyPart, partID);

            if (partToActivate != null)
            {
                if (activeParts.TryGetValue(bodyPart, out int activePartID))
                {
                    GetPartFromID(bodyPart, activePartID).SetActive(false);
                }
                activeParts[bodyPart] = partID;
                partToActivate.SetActive(true);
            }
        }
 public GameObject GetPartFromID(ModularBodyPart partType, int partID)
 {
     if (characterBody.TryGetValue(partType, out GameObject[] parts))
 public BodyPartLinker(ModularBodyPart bodyType)
 {
     this.bodyType = bodyType;
     this.partID   = 0;
 }
 public BodyPartLinker(ModularBodyPart bodyType, int partID)
 {
     this.bodyType = bodyType;
     this.partID   = partID;
 }
 private void SetupBodyPart(ModularBodyPart bodyPart, ref int index, ref int maxIndex)
 {
     if (characterBody.TryGetValue(bodyPart, out GameObject[] partsArray))