/// <summary> /// Recreates this object with new values. /// </summary> /// <returns>The new object.</returns> public Character Recreate() { ClearCustomizationEvents(); name = string.Empty; gender = Gender.Male; height = 0.5f; athletic = 0; heavy = 0; light = 0; skinColor = new Color(0.745f, 0.569f, 0.412f); primarySkinDetail = null; secondarySkinDetail = null; hair = null; eyebrows = null; eyes = null; facialHair = null; underclothing = null; torso = null; hands = null; legs = null; feet = null; return this; }
public static void Deserialize(byte[] serialized, out ClothingMesh clothing) { Item item; Deserialize(serialized, out item); clothing = (ClothingMesh)item; }
private void OnFeetChange(ClothingMesh value) { try { if (value == null) { feetObject.sharedMesh = null; } else { feetObject.sharedMesh = ExtractMesh(Utility.Load<GameObject>("Art/Character/" + Character.Gender.ToString() + "/Feet/Models/" + value.Mesh)); if (value.Textures[0].Texture == 0) { feetObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/General/Textures/Clear")); } else if (value.Textures[0].Texture == 1) { feetObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/General/Textures/White")); } else { feetObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/Character/" + Character.Gender.ToString() + "/Feet/Textures/" + value.Textures[0].Texture)); } feetObject.material.SetColor("_MainColor", value.Textures[0].Color); feetObject.material.shader = Utility.FindShader("PP/Toon Outline (Overlay x" + (value.Textures.Length - 1) + ")"); for (int i = 1; i < value.Textures.Length; i++) { if (value.Textures[i].Texture == 0) { feetObject.material.SetTexture("_OverlayTex" + i, Utility.Load<Texture2D>("Art/General/Textures/Clear")); } else if (value.Textures[i].Texture == 1) { feetObject.material.SetTexture("_OverlayTex" + i, Utility.Load<Texture2D>("Art/General/Textures/White")); } else { feetObject.material.SetTexture("_OverlayTex" + i, Utility.Load<Texture2D>("Art/Character/" + Character.Gender.ToString() + "/Feet/Overlays (" + i + ")/" + value.Textures[i].Texture)); } feetObject.material.SetColor("_OverlayColor" + i, value.Textures[i].Color); } } } finally { Resources.UnloadUnusedAssets(); } }
public static byte[] Serialize(ClothingMesh clothing) { return Serialize((Item)clothing); }
private void OnFacialHairChange(ClothingMesh value) { try { if (value == null) { facialHairObject.sharedMesh = null; } else { facialHairObject.sharedMesh = ExtractMesh(Utility.Load<GameObject>("Art/Character/" + Character.Gender.ToString() + "/Facial Hair/Models/" + value.Mesh)); if (value.Textures[0].Texture == 0) { facialHairObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/General/Textures/Clear")); } else if (value.Textures[0].Texture == 1) { facialHairObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/General/Textures/White")); } else { facialHairObject.material.SetTexture("_MainTex", Utility.Load<Texture2D>("Art/Character/" + Character.Gender.ToString() + "/Facial Hair/Textures/" + value.Textures[0].Texture)); } facialHairObject.material.SetColor("_MainColor", value.Textures[0].Color); } } finally { Resources.UnloadUnusedAssets(); } }