public void Deserialize(Stream stream) { using (var r = stream.ToBinaryReader(true)) { Translation = new Vector3(r.ReadSingle(), r.ReadSingle(), r.ReadSingle()); Rotation = new Quaternion(r.ReadSingle(), r.ReadSingle(), r.ReadSingle(), r.ReadSingle()); Scale = new Vector3(r.ReadSingle(), r.ReadSingle(), r.ReadSingle()); uint count = r.ReadUInt32(); for (int n = 0; n < count; n++) { Unk1.Add(Tuple.Create(r.ReadInt32(), new Vector3(r.ReadSingle(), r.ReadSingle(), r.ReadSingle()))); } count = r.ReadUInt32(); for (int n = 0; n < count; n++) { Unk2.Add(Tuple.Create(r.ReadInt32(), new Quaternion(r.ReadSingle(), r.ReadSingle(), r.ReadSingle(), r.ReadSingle()))); } count = r.ReadUInt32(); for (int n = 0; n < count; n++) { Unk3.Add(Tuple.Create(r.ReadInt32(), new Vector3(r.ReadSingle(), r.ReadSingle(), r.ReadSingle()))); } } }
public override int GetHashCode() { int hash = 1; if (Name.Length != 0) { hash ^= Name.GetHashCode(); } if (Unk2 != 0) { hash ^= Unk2.GetHashCode(); } if (None.Length != 0) { hash ^= None.GetHashCode(); } if (Lang.Length != 0) { hash ^= Lang.GetHashCode(); } if (Unk5 != 0) { hash ^= Unk5.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override void Write(BinaryWriter Writer) { base.Write(Writer); Writer.Write(Unk0); Position.WriteToFile(Writer); Direction.WriteToFile(Writer); Unk2.WriteToFile(Writer); Writer.Write(Unk3); }
public override void Write(BinaryWriter Writer) { base.Write(Writer); Writer.Write(Unk0); Unk1.WriteToFile(Writer); Unk2.WriteToFile(Writer); Unk3.WriteToFile(Writer); Writer.Write(Unk4); }
public override void DebugWrite(StreamWriter Writer) { base.DebugWrite(Writer); Writer.WriteLine("Type 7:"); Writer.WriteLine("Unk0: {0}", Unk0); Writer.WriteLine("Position: {0}", Position.ToString()); Writer.WriteLine("Direction: {0}", Direction.ToString()); Writer.WriteLine("Unk2: {0}", Unk2.ToString()); Writer.WriteLine("Unke3: {0}", Unk3); }
// public byte[] ToByteArray() { using var ms = new MemoryStream(); using var bw = new BinaryWriter(ms); bw.Write(Espn.ToCharArray()); bw.Write(Unk0); bw.Write(Unk1); bw.Write(Unk2.ToArray()); bw.Write(Checksum); bw.Write(NumberOfFiles); bw.Write(FilesTableOffset); bw.Write(FileNameHash); return(ms.ToArray()); }
public void WriteXml(StringBuilder sb, int indent) { CacheDatXml.StringTag(sb, indent, "name", CacheDatXml.HashString(Name)); CacheDatXml.StringTag(sb, indent, "parent", CacheDatXml.HashString(ParentName)); CacheDatXml.ValueTag(sb, indent, "contentFlags", ContentFlags.ToString()); CacheDatXml.SelfClosingTag(sb, indent, "streamingExtentsMin " + FloatUtil.GetVector3XmlString(streamingExtentsMin)); CacheDatXml.SelfClosingTag(sb, indent, "streamingExtentsMax " + FloatUtil.GetVector3XmlString(streamingExtentsMax)); CacheDatXml.SelfClosingTag(sb, indent, "entitiesExtentsMin " + FloatUtil.GetVector3XmlString(entitiesExtentsMin)); CacheDatXml.SelfClosingTag(sb, indent, "entitiesExtentsMax " + FloatUtil.GetVector3XmlString(entitiesExtentsMax)); CacheDatXml.ValueTag(sb, indent, "unk1", Unk1.ToString()); CacheDatXml.ValueTag(sb, indent, "unk2", Unk2.ToString()); CacheDatXml.ValueTag(sb, indent, "unk3", Unk3.ToString()); CacheDatXml.ValueTag(sb, indent, "unk4", Unk4.ToString()); }
public override void Write(BinaryWriter Writer) { base.Write(Writer); Writer.Write(Unk0); Writer.Write(Unk1); Unk2.WriteToFile(Writer); Writer.Write(Unk3); Writer.Write(Unk4); Writer.Write((ushort)Unk5.Length); foreach (uint Value in Unk5) { Writer.Write(Value); } }
public override int GetHashCode() { int hash = 1; if (Unk1 != 0UL) { hash ^= Unk1.GetHashCode(); } if (Unk2 != 0UL) { hash ^= Unk2.GetHashCode(); } if (Name.Length != 0) { hash ^= Name.GetHashCode(); } if (Desc.Length != 0) { hash ^= Desc.GetHashCode(); } if (Icon.Length != 0) { hash ^= Icon.GetHashCode(); } if (Position.Length != 0) { hash ^= Position.GetHashCode(); } if (Button.Length != 0) { hash ^= Button.GetHashCode(); } if (Effect.Length != 0) { hash ^= Effect.GetHashCode(); } if (Lbdat.Length != 0) { hash ^= Lbdat.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override void DebugWrite(StreamWriter Writer) { base.DebugWrite(Writer); Writer.WriteLine("Type 9:"); Writer.WriteLine("Unk0: {0}", Unk0); Writer.WriteLine("Unk1: {0}", Unk1); Writer.WriteLine("Unk2: {0}", Unk2.ToString()); Writer.WriteLine("Unk3: {0}", Unk3); Writer.WriteLine("Unk4: {0}", Unk4); Writer.WriteLine("Unk5 Size: {0}", Unk5.Length); foreach (uint Value in Unk5) { Writer.WriteLine("Value: {0}", Value); } }
public override string ToString() { return(AdjAreaIDInd.ToString() + ", " + PolyID.ToString() + ", " + Unk2.ToString() + ", " + Unk3.ToString()); }
public override string ToString() { string pid = (PolyID == 0x3FFF) ? "-" : PolyID.ToString(); return(AreaIDInd.ToString() + ", " + pid + ", " + Unk2.ToString() + ", " + Unk3.ToString()); }
} //byte offset public override string ToString() { return(BlockID.ToString() + ", " + ItemOffset.ToString() + ", " + Unk2.ToString()); }
public void LoadFile(string targetFile) { using var reader = new BinaryReader(File.OpenRead(targetFile)); reader.BaseStream.Seek(6, SeekOrigin.Begin); { var count = reader.ReadUInt32(); var arr = new DateTime[count]; for (var i = 0; i < count; i++) { var timeT = reader.ReadInt64(); arr[i] = new DateTime(1970, 1, 1).AddSeconds(timeT); } times = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Weapon[count]; for (var i = 0; i < count; i++) { arr[i] = new Weapon { Index = (ulong)i, unlockTime = times[reader.ReadByte()], weaponCategory = (WeaponType)reader.ReadByte(), weaponId = reader.ReadUInt32() }; } weapons = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Armor[count]; for (var i = 0; i < count; i++) { arr[i] = new Armor { Index = (ulong)i, unlockTime = times[reader.ReadByte()], armorType = (ArmorType)reader.ReadByte(), armorId = reader.ReadUInt32() }; } armors = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Unk1[count]; for (var i = 0; i < count; i++) { arr[i] = new Unk1 { Index = (ulong)i, unlockTime = times[reader.ReadByte()], unk1 = reader.ReadUInt32() }; } unk1 = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Unk2[count]; for (var i = 0; i < count; i++) { arr[i] = new Unk2 { Index = (ulong)i, unlockTime = times[reader.ReadByte()], unk1 = reader.ReadByte(), unk2 = reader.ReadUInt32() }; } unk2 = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Pendant[count]; for (var i = 0; i < count; i++) { arr[i] = new Pendant { Index = (ulong)i, unlockTime = times[reader.ReadByte()], pendantId = reader.ReadUInt32() }; } pendants = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new ItemTg[count]; for (var i = 0; i < count; i++) { arr[i] = new ItemTg { Index = (ulong)i, unlockTime = times[reader.ReadByte()], itemId = reader.ReadUInt32() }; } items = arr.ToList(); } reader.BaseStream.Seek(1, SeekOrigin.Current); { var count = reader.ReadUInt32(); var arr = new Unk3[count]; for (var i = 0; i < count; i++) { arr[i] = new Unk3 { Index = (ulong)i, unlockTime = times[reader.ReadByte()], unk1 = reader.ReadByte(), unk2 = reader.ReadUInt32() }; } unk3 = arr.ToList(); } }