private bool LoadFile( Stream stream )
        {
            string magic = stream.ReadAscii( 8 );
            uint fileSize = stream.ReadUInt32().SwapEndian();
            uint dataStart = stream.ReadUInt32().SwapEndian();
            uint dataCount = stream.ReadUInt32().SwapEndian();
            uint refStringStart = stream.ReadUInt32().SwapEndian();

            stream.Position = dataStart;
            NpcFileList = new List<NpcFileReference>( (int)dataCount );
            for ( uint i = 0; i < dataCount; ++i ) {
                NpcFileReference n = new NpcFileReference( stream, refStringStart );
                NpcFileList.Add( n );
            }

            return true;
        }
Exemple #2
0
        private bool LoadFile(Stream stream)
        {
            string magic          = stream.ReadAscii(8);
            uint   fileSize       = stream.ReadUInt32().SwapEndian();
            uint   dataStart      = stream.ReadUInt32().SwapEndian();
            uint   dataCount      = stream.ReadUInt32().SwapEndian();
            uint   refStringStart = stream.ReadUInt32().SwapEndian();

            stream.Position = dataStart;
            NpcFileList     = new List <NpcFileReference>((int)dataCount);
            for (uint i = 0; i < dataCount; ++i)
            {
                NpcFileReference n = new NpcFileReference(stream, refStringStart);
                NpcFileList.Add(n);
            }

            return(true);
        }
Exemple #3
0
        private bool LoadFile(Stream stream, Util.Endianness endian, Util.Bitness bits)
        {
            string magic          = stream.ReadAscii(8);
            uint   fileSize       = stream.ReadUInt32().FromEndian(endian);
            uint   dataStart      = stream.ReadUInt32().FromEndian(endian);
            uint   dataCount      = stream.ReadUInt32().FromEndian(endian);
            uint   refStringStart = stream.ReadUInt32().FromEndian(endian);

            stream.Position = dataStart;
            NpcFileList     = new List <NpcFileReference>((int)dataCount);
            for (uint i = 0; i < dataCount; ++i)
            {
                NpcFileReference n = new NpcFileReference(stream, refStringStart, endian, bits);
                NpcFileList.Add(n);
            }

            return(true);
        }
Exemple #4
0
        private bool LoadFile(Stream stream, EndianUtils.Endianness endian, BitUtils.Bitness bits)
        {
            string magic = stream.ReadAscii(8);

            if (magic != "TOVNPCL\0")
            {
                throw new Exception("Invalid magic.");
            }
            uint fileSize       = stream.ReadUInt32().FromEndian(endian);
            uint dataStart      = stream.ReadUInt32().FromEndian(endian);
            uint dataCount      = stream.ReadUInt32().FromEndian(endian);
            uint refStringStart = stream.ReadUInt32().FromEndian(endian);

            stream.Position = dataStart;
            NpcFileList     = new List <NpcFileReference>((int)dataCount);
            for (uint i = 0; i < dataCount; ++i)
            {
                NpcFileReference n = new NpcFileReference(stream, refStringStart, endian, bits);
                NpcFileList.Add(n);
            }

            return(true);
        }