Ejemplo n.º 1
0
 public Ragdoll(SimpleSubrecord <String> EditorID, SimpleSubrecord <UInt32> Version, RagdollData GeneralData, RecordReference ActorBase, RecordReference BodyPartData, RagdollFeedbackData FeedbackData, RagdollDynamicBones DynamicBones, RagdollPoseMatching PoseMatchingData, SimpleSubrecord <String> DeathPose)
 {
     this.EditorID         = EditorID;
     this.Version          = Version;
     this.GeneralData      = GeneralData;
     this.ActorBase        = ActorBase;
     this.BodyPartData     = BodyPartData;
     this.PoseMatchingData = PoseMatchingData;
 }
Ejemplo n.º 2
0
        public override void ReadData(ESPReader reader, long dataEnd)
        {
            while (reader.BaseStream.Position < dataEnd)
            {
                string subTag = reader.PeekTag();

                switch (subTag)
                {
                case "EDID":
                    if (EditorID == null)
                    {
                        EditorID = new SimpleSubrecord <String>();
                    }

                    EditorID.ReadBinary(reader);
                    break;

                case "NVER":
                    if (Version == null)
                    {
                        Version = new SimpleSubrecord <UInt32>();
                    }

                    Version.ReadBinary(reader);
                    break;

                case "DATA":
                    if (GeneralData == null)
                    {
                        GeneralData = new RagdollData();
                    }

                    GeneralData.ReadBinary(reader);
                    break;

                case "XNAM":
                    if (ActorBase == null)
                    {
                        ActorBase = new RecordReference();
                    }

                    ActorBase.ReadBinary(reader);
                    break;

                case "TNAM":
                    if (BodyPartData == null)
                    {
                        BodyPartData = new RecordReference();
                    }

                    BodyPartData.ReadBinary(reader);
                    break;

                case "RAFD":
                    if (FeedbackData == null)
                    {
                        FeedbackData = new RagdollFeedbackData();
                    }

                    FeedbackData.ReadBinary(reader);
                    break;

                case "RAFB":
                    if (DynamicBones == null)
                    {
                        DynamicBones = new RagdollDynamicBones();
                    }

                    DynamicBones.ReadBinary(reader);
                    break;

                case "RAPS":
                    if (PoseMatchingData == null)
                    {
                        PoseMatchingData = new RagdollPoseMatching();
                    }

                    PoseMatchingData.ReadBinary(reader);
                    break;

                case "ANAM":
                    if (DeathPose == null)
                    {
                        DeathPose = new SimpleSubrecord <String>();
                    }

                    DeathPose.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
Ejemplo n.º 3
0
        public override void ReadDataXML(XElement ele, ElderScrollsPlugin master)
        {
            XElement subEle;

            if (ele.TryPathTo("EditorID", false, out subEle))
            {
                if (EditorID == null)
                {
                    EditorID = new SimpleSubrecord <String>();
                }

                EditorID.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("Version", false, out subEle))
            {
                if (Version == null)
                {
                    Version = new SimpleSubrecord <UInt32>();
                }

                Version.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("GeneralData", false, out subEle))
            {
                if (GeneralData == null)
                {
                    GeneralData = new RagdollData();
                }

                GeneralData.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("ActorBase", false, out subEle))
            {
                if (ActorBase == null)
                {
                    ActorBase = new RecordReference();
                }

                ActorBase.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("BodyPartData", false, out subEle))
            {
                if (BodyPartData == null)
                {
                    BodyPartData = new RecordReference();
                }

                BodyPartData.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("FeedbackData", false, out subEle))
            {
                if (FeedbackData == null)
                {
                    FeedbackData = new RagdollFeedbackData();
                }

                FeedbackData.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("DynamicBones", false, out subEle))
            {
                if (DynamicBones == null)
                {
                    DynamicBones = new RagdollDynamicBones();
                }

                DynamicBones.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("PoseMatchingData", false, out subEle))
            {
                if (PoseMatchingData == null)
                {
                    PoseMatchingData = new RagdollPoseMatching();
                }

                PoseMatchingData.ReadXML(subEle, master);
            }
            if (ele.TryPathTo("DeathPose", false, out subEle))
            {
                if (DeathPose == null)
                {
                    DeathPose = new SimpleSubrecord <String>();
                }

                DeathPose.ReadXML(subEle, master);
            }
        }