public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.SoundSet.Count); if (this.SoundSet.Count == 0) { return; } writer.Write(this.UnkUInt06); writer.Write(this.UnkUInt07); writer.Write(this.UnkUInt08); writer.Write(this.UnkFloat02); writer.Write(this.UnkFloat03); writer.Write(this.UnkUInt09); writer.Write(this.UnkUInt10); writer.Write(this.UnkUInt11); writer.Write(this.UnkUInt12); writer.Write(this.UnkUInt13); writer.Write(this.UnkUInt14); foreach (var item in this.SoundSet) { writer.Serialize(item); } }
public void Serialize(BSWriter writer) { writer.Write(this.Time); writer.Write(this.Type); writer.Write(this.Param01); writer.Write(this.Param02); }
public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.UnkUInt06); writer.Write(this.UnkUInt07); writer.Write(this.UnkUInt08); writer.Write(this.GradientKeys.Count); foreach (var item in this.GradientKeys) { writer.Serialize(item); } if ((this.UnkUInt07 & 4) != 0) { writer.Write(this.CurveKeys.Count); foreach (var item in this.CurveKeys) { writer.Serialize(item); } } writer.Write(this.UnkUInt09); writer.Write(this.UnkUInt10); writer.Write(this.UnkUInt11); writer.Write(this.UnkUInt12); writer.Write(this.UnkUInt13); writer.Write(this.UnkUInt14); writer.Write(this.UnkUInt15); writer.Write(this.UnkUInt16); writer.Write(this.UnkUInt17); }
public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.UnkFloat02); writer.Write(this.UnkFloat03); writer.Write(this.UnkFloat04); writer.Write(this.UnkFloat05); writer.Write(this.UnkFloat06); writer.Write(this.UnkFloat07); writer.Write(this.Textures.Count); for (int i = 0; i < this.Textures.Count; i++) { var texture = this.Textures[i]; if (string.IsNullOrWhiteSpace(texture)) { writer.Write((byte)0); continue; } writer.Write((byte)1); writer.Write(texture); } }
public void Serialize(BSWriter writer) { writer.Write((short)this.Type); writer.Write((short)this.Category); writer.Write(this.Name); writer.Write(this.Int01); writer.Write(this.Int02); }
public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.UnkUInt06); writer.Write(this.Path); writer.Write(this.UnkUInt07); }
public void Serialize(BSWriter writer) { writer.Write(this.Name); writer.Write(this.MeshIndices.Count); foreach (var item in this.MeshIndices) { writer.Write(item); } }
public void Serialize(BSWriter writer) { writer.Write(this.Name); writer.Write(this.AniTypeDataList.Count); foreach (var item in this.AniTypeDataList) { writer.Serialize(item); } }
public void Serialize(BSWriter writer) { writer.Write(this.Name); writer.Write(this.Tracks.Count); foreach (var track in this.Tracks) { writer.Write(1); writer.Serialize(track); } }
public void Serialize(BSWriter writer, params object[] param) { var flag = (int)param[0]; writer.Write(this.Path); if ((flag & 1) != 0) { writer.Write(this.Int01); } }
public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.Particles.Count); foreach (var item in this.Particles) { writer.Serialize(item); } }
public override void Serialize(BSWriter writer) { base.Serialize(writer); writer.Write(this.UnkUInt06); writer.Write(this.UnkUInt07); writer.Write(this.UnkUInt08); writer.Write(this.UnkUInt09); writer.Write(this.UnkUInt10); writer.Write(this.Matrix); }
public void Serialize(BSWriter writer) { writer.Write(this.Type); writer.Write((int)this.AnimationType); writer.Write(this.Name); writer.Write(this.ModData.Count); foreach (var data in this.ModData) { writer.Write((int)data.Type); writer.Serialize(data); } }
public virtual void Serialize(BSWriter writer) { writer.Write(this.UnkFloat01); writer.Write(this.UnkUInt01); writer.Write(this.UnkUInt02); writer.Write(this.UnkUInt03); writer.Write(this.UnkUInt04); writer.Write(this.UnkUInt05); writer.Write(this.UnkByte01); writer.Write(this.UnkByte02); writer.Write(this.UnkByte03); writer.Write(this.UnkByte04); }
public void Save(string path) { // Override file structure using (var stream = new FileStream(path, FileMode.Create, FileAccess.Write)) using (var writer = new BSWriter(stream)) { writer.Write(LatestSignature, 12); writer.Write(Materials.Count); foreach (var mtrl in Materials) { writer.Serialize(mtrl); } } }
public void Serialize(BSWriter writer) { writer.Write(this.IsEnabled ? 1 : 0); writer.Write(this.Path); writer.Write(this.BoneRelative); writer.Write(this.Position); writer.Write(this.BirthTime); writer.Write(this.UnkByte01); writer.Write(this.UnkByte02); writer.Write(this.UnkByte03); writer.Write(this.UnkByte04); if (this.UnkByte04 == 1) { writer.Write(this.UnkVector01); } }
public void Serialize(BSWriter writer) { writer.Write((int)this.Type); writer.Write(this.PrimAnimationIndex); writer.Write(this.Events.Count); foreach (var item in this.Events) { writer.Serialize(item); } writer.Write(this.WalkGraph.Count); writer.Write(this.WalkLength); foreach (var item in this.WalkGraph) { writer.Write(item); } }
public void Save(string path) { // Override file structure using (var stream = new FileStream(path, FileMode.Create, FileAccess.Write)) using (var writer = new BSWriter(stream)) { // Signature writer.Write(LatestSignature, 12); // Reserved file offsets writer.Write(0); // CollisionOffset writer.Write(0); // ResourceOffset // Unknown writer.Write(Int01); writer.Write(Int02); writer.Write(Int03); writer.Write(Int04); writer.Write(Int05); // Object Info writer.Serialize(this.ObjectInfo); // FileOffset.Collision var collisionOffset = (int)stream.Position; writer.Write(CollisionResourcePath); // FileOffset.Resources var resourceOffset = (int)stream.Position; writer.Write(ResourceSet.Count); for (int i = 0; i < ResourceSet.Count; i++) { writer.Write(ResourceSet[i]); } // write offsets writer.Seek(12, SeekOrigin.Begin); writer.Write(collisionOffset); writer.Write(resourceOffset); } }
public void Serialize(BSWriter writer) { writer.Write(this.Name); writer.Write(this.Diffuse); writer.Write(this.Ambient); writer.Write(this.Specular); writer.Write(this.Emissive); writer.Write(this.UnkFloat01); writer.Write(this.Flags); writer.Write(this.DiffuseMapPath); writer.Write(this.UnkFloat02); writer.Write(this.UnkByte01); writer.Write(this.UnkByte02); writer.Write(this.IsAbsolutePath); if ((this.Flags & (uint)PrimMtrlFlag.Bit14) != 0) { writer.Write(this.NormalMapPath); writer.Write(this.UnkUInt01); } }
public void Serialize(BSWriter writer, params object[] param) { var objectInfoType = (ObjectGeneralType)param[0]; // This could change if other file than JMXVRES use this class if (objectInfoType == ObjectGeneralType.Character || objectInfoType == ObjectGeneralType.Item) { writer.Write(UnkUInt01); writer.Write(UnkUInt02); writer.Write(AttachMethod); writer.Write(Slots.Count); for (int i = 0; i < Slots.Count; i++) { writer.Write((uint)Slots[i].Type); writer.Write(Slots[i].MeshSetIndex); } if (objectInfoType == ObjectGeneralType.Character) { writer.Write(nComboNum); } } }
public void Save(string Path) { // Override file structure using (var stream = new FileStream(Path, FileMode.Create, FileAccess.Write)) using (var writer = new BSWriter(stream)) { // Signature writer.Write(LatestSignature, 12); // Reserved offsets writer.Write(0); // MaterialOffset writer.Write(0); // MeshOffset writer.Write(0); // SkeletonOffset writer.Write(0); // AnimationOffset writer.Write(0); // MeshGroupOffset writer.Write(0); // AnimationGroupOffset writer.Write(0); // ModPaletteOffset writer.Write(0); // CollisionOffset // Unknown Flags writer.Write(Flag01); writer.Write(Flag02); writer.Write(Flag03); writer.Write(Flag04); writer.Write(Flag05); // Object Info writer.Serialize(this.ObjectInfo); writer.Write(UnkBuffer); // FileOffset.Collision var collisionOffset = (int)stream.Position; writer.Write(CollisionMesh); writer.Write(this.CollisionBox01); writer.Write(this.CollisionBox02); writer.Write(UseCollisionMatrix ? 1u : 0u); if (UseCollisionMatrix) { writer.Write(this.CollisionMatrix); } var materialOffset = (int)stream.Position; writer.Write(MaterialSet.Count); foreach (var item in MaterialSet) { writer.Serialize(item); } // FileOffset.Mesh var meshOffset = (int)stream.Position; writer.Write(MeshSet.Count); foreach (var item in MeshSet) { writer.SerializeParameterized(item, this.Flag01); } // FileOffset.Animation var animationOffset = (int)stream.Position; writer.Write(AnimationTypeVersion); writer.Write(AnimationTypeUserDefine); writer.Write(AnimationSet.Count); foreach (var item in AnimationSet) { writer.Serialize(item); } // FileOffset.Skeleton var skeletonOffset = (int)stream.Position; writer.Write(HasSkeleton ? 1u : 0u); if (HasSkeleton) { writer.Write(SkeletonPath); writer.Write(AttachmentBone); } // FileOffset.MeshGroup var meshGroupOffset = (int)stream.Position; writer.Write(MeshGroups.Count); foreach (var group in MeshGroups) { writer.Serialize(group); } // FileOffset.AnimationGroup var aniGroupOffset = (int)stream.Position; writer.Write(AnimationGroups.Count); foreach (var item in AnimationGroups) { writer.Serialize(item); } // FileOffset.ModPalette var modPaletteOffset = (int)stream.Position; writer.Write(SystemModSets.Count); foreach (var set in SystemModSets) { writer.Serialize(set); } writer.Write(AniModSets.Count); foreach (var set in AniModSets) { writer.Serialize(set); } // ResAttachable writer.SerializeParameterized(ResourceAttachable, ObjectInfo.Type); // Overwrite offsets now that we know them all writer.Seek(12, SeekOrigin.Begin); writer.Write(materialOffset); writer.Write(meshOffset); writer.Write(skeletonOffset); writer.Write(animationOffset); writer.Write(meshGroupOffset); writer.Write(aniGroupOffset); writer.Write(modPaletteOffset); writer.Write(collisionOffset); } }
public void Serialize(BSWriter writer) { writer.Write(this.Path); }
public void Serialize(BSWriter writer) { writer.Write(this.Time); writer.Write(this.Value); }
public void Serialize(BSWriter writer) { writer.Write(this.Path); writer.Write(this.Time); writer.Write(this.Event); }