Ejemplo n.º 1
0
        public MetaDataBlock GetMetaDataBlock()
        {
            if (TotalSize <= 0)
            {
                return(null);
            }

            byte[] data   = new byte[TotalSize];
            int    offset = 0;

            for (int j = 0; j < Items.Count; j++)
            {
                var bdata = Items[j];
                Buffer.BlockCopy(bdata, 0, data, offset, bdata.Length);
                offset += bdata.Length;
            }

            MetaDataBlock db = new MetaDataBlock();

            db.StructureNameHash = StructureNameHash;
            db.DataLength        = TotalSize;
            db.Data = data;

            return(db);
        }
Ejemplo n.º 2
0
        public MetaDataBlock GetBlock(int id)
        {
            MetaDataBlock block = null;
            var           ind   = id - 1;

            if ((ind >= 0) && (ind < DataBlocks.Count) && (DataBlocks.Data != null))
            {
                block = DataBlocks[ind];
            }
            return(block);
        }
Ejemplo n.º 3
0
        public MetaDataBlock GetRootBlock()
        {
            MetaDataBlock block   = null;
            var           rootind = RootBlockIndex - 1;

            if ((rootind >= 0) && (rootind < DataBlocks.Count) && (DataBlocks.Data != null))
            {
                block = DataBlocks[rootind];
            }
            return(block);
        }
Ejemplo n.º 4
0
        private void LoadScenarioPointRegion(Meta meta, MetaDataBlock rootblock)
        {
            FileFormat  = YmtFileFormat.RSC;
            ContentType = YmtFileContentType.ScenarioPointRegion;

            var cdata = MetaTypes.ConvertData <CScenarioPointRegion>(rootblock.Data);

            CScenarioPointRegion     = new MCScenarioPointRegion();
            CScenarioPointRegion.Ymt = this;
            CScenarioPointRegion.Load(meta, cdata);


            ScenarioRegion = new ScenarioRegion();
            ScenarioRegion.Load(this);

            //string stypes = MetaTypes.GetTypesInitString(meta);
            //if (!string.IsNullOrEmpty(stypes))
            //{ }
        }