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; }
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(); } } }
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); } }