Exemplo n.º 1
0
        public void LoadClass(VLTDataClassLoad classLoad, VLTFile vltFile)
        {
            this.VLTFile   = vltFile;
            this.ClassLoad = classLoad;
            this.ClassHash = classLoad.NameHash;

            this.VLTPointers = vltFile.GetChunk(VLTChunkId.Pointers) as VLTPointers;
            int offset = this.VLTPointers[classLoad.Pointer].OffsetDest;

            vltFile.RawStream.Seek(offset, SeekOrigin.Begin);
            BinaryReader br = new BinaryReader(vltFile.RawStream);

            this._classFields = new ClassField[this.ClassLoad.TotalFieldsCount];
            for (int i = 0; i < this.ClassLoad.TotalFieldsCount; i++)
            {
                ClassField field = new ClassField();
                field.Read(br);

                // HACK: for hash dumping later on
                HashResolver.Resolve(field.NameHash);

                this._classFields[i] = field;
            }

            this.Data = new ClassData(this);
        }
Exemplo n.º 2
0
        public void LoadClass(VLTDataClassLoad classLoad, VLTFile vltFile)
        {
            VLTClass vltClass = new VLTClass();

            vltClass.LoadClass(classLoad, vltFile);
            vltClass.VLTDatabase = this;
            this._classes.Add(classLoad.NameHash, vltClass);
        }