Beispiel #1
0
    // Token: 0x06001950 RID: 6480 RVA: 0x000F30D0 File Offset: 0x000F12D0
    public static void DeserializePose(CosmeticScript cosmeticScript, Transform root, string poseName)
    {
        string path = string.Format("{0}/Poses/{1}", Application.streamingAssetsPath, poseName + ".txt");

        if (File.Exists(path))
        {
            SerializedPose       serializedPose       = JsonUtility.FromJson <SerializedPose>(File.ReadAllText(path));
            StudentCosmeticSheet studentCosmeticSheet = JsonUtility.FromJson <StudentCosmeticSheet>(serializedPose.CosmeticData);
            cosmeticScript.LoadCosmeticSheet(studentCosmeticSheet);
            cosmeticScript.CharacterAnimation.Stop();
            bool        flag = cosmeticScript.Male == studentCosmeticSheet.Male;
            Transform[] componentsInChildren = root.GetComponentsInChildren <Transform>();
            foreach (BoneData boneData2 in serializedPose.BoneData)
            {
                foreach (Transform transform in componentsInChildren)
                {
                    if (transform.name == boneData2.BoneName)
                    {
                        transform.localRotation = boneData2.LocalRotation;
                        if (flag)
                        {
                            transform.localPosition = boneData2.LocalPosition;
                            transform.localScale    = boneData2.LocalScale;
                        }
                    }
                    else if (boneData2.BoneName == "StudentRoot" && transform == root)
                    {
                        transform.localPosition = boneData2.LocalPosition;
                        transform.localRotation = boneData2.LocalRotation;
                        transform.localScale    = boneData2.LocalScale;
                    }
                }
            }
        }
    }
Beispiel #2
0
    // Token: 0x0600194E RID: 6478 RVA: 0x000F2FD8 File Offset: 0x000F11D8
    public static void SerializePose(CosmeticScript cosmeticScript, Transform root, string poseName)
    {
        StudentCosmeticSheet studentCosmeticSheet = cosmeticScript.CosmeticSheet();
        SerializedPose       serializedPose;

        serializedPose.CosmeticData = JsonUtility.ToJson(studentCosmeticSheet);
        serializedPose.BoneData     = PoseSerializer.getBoneData(root);
        string contents = JsonUtility.ToJson(serializedPose);
        string text     = string.Format("{0}/Poses/{1}", Application.streamingAssetsPath, poseName + ".txt");

        new FileInfo(text).Directory.Create();
        File.WriteAllText(text, contents);
    }