private bool LoadFile(Stream stream, EndianUtils.Endianness endian, BitUtils.Bitness bits) { string magic = stream.ReadAscii(8); if (magic != "TOVNPCT\0") { throw new Exception("Invalid magic."); } uint fileSize = stream.ReadUInt32().FromEndian(endian); uint unknownDataStart = stream.ReadUInt32().FromEndian(endian); uint unknownDataCount = stream.ReadUInt32().FromEndian(endian); uint npcDefStart = stream.ReadUInt32().FromEndian(endian); uint npcDefCount = stream.ReadUInt32().FromEndian(endian); uint refStringStart = stream.ReadUInt32().FromEndian(endian); stream.Position = npcDefStart; NpcDefList = new List <NpcDialogueDefinition>((int)npcDefCount); for (uint i = 0; i < npcDefCount; ++i) { NpcDialogueDefinition n = new NpcDialogueDefinition(stream, refStringStart, endian, bits); NpcDefList.Add(n); } return(true); }
private bool LoadFile( Stream stream ) { string magic = stream.ReadAscii( 8 ); uint fileSize = stream.ReadUInt32().SwapEndian(); uint unknownDataStart = stream.ReadUInt32().SwapEndian(); uint unknownDataCount = stream.ReadUInt32().SwapEndian(); uint npcDefStart = stream.ReadUInt32().SwapEndian(); uint npcDefCount = stream.ReadUInt32().SwapEndian(); uint refStringStart = stream.ReadUInt32().SwapEndian(); stream.Position = npcDefStart; NpcDefList = new List<NpcDialogueDefinition>( (int)npcDefCount ); for ( uint i = 0; i < npcDefCount; ++i ) { NpcDialogueDefinition n = new NpcDialogueDefinition( stream, refStringStart ); NpcDefList.Add( n ); } return true; }
private bool LoadFile(Stream stream, Util.Endianness endian, Util.Bitness bits) { string magic = stream.ReadAscii(8); uint fileSize = stream.ReadUInt32().FromEndian(endian); uint unknownDataStart = stream.ReadUInt32().FromEndian(endian); uint unknownDataCount = stream.ReadUInt32().FromEndian(endian); uint npcDefStart = stream.ReadUInt32().FromEndian(endian); uint npcDefCount = stream.ReadUInt32().FromEndian(endian); uint refStringStart = stream.ReadUInt32().FromEndian(endian); stream.Position = npcDefStart; NpcDefList = new List <NpcDialogueDefinition>((int)npcDefCount); for (uint i = 0; i < npcDefCount; ++i) { NpcDialogueDefinition n = new NpcDialogueDefinition(stream, refStringStart, endian, bits); NpcDefList.Add(n); } return(true); }