Пример #1
0
        public override void Build(MetaBuilder mb, bool isRoot = false)
        {
            this.MetaStructure.VersionNumber = this.VersionNumber;
            this.Points.Build(mb);
            this.MetaStructure.Points = this.Points.MetaStructure;
            MCScenarioPointContainer.AddEnumAndStructureInfo(mb);

            if (this.EntityOverrides != null)
            {
                this.MetaStructure.EntityOverrides = mb.AddItemArrayPtr(MetaName.CScenarioEntityOverride, this.EntityOverrides.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCScenarioEntityOverride.AddEnumAndStructureInfo(mb);

            this.Unk_3696045377.Build(mb);
            this.MetaStructure.Unk_3696045377 = this.Unk_3696045377.MetaStructure;
            MUnk_4023740759.AddEnumAndStructureInfo(mb);

            this.AccelGrid.Build(mb);
            this.MetaStructure.AccelGrid = this.AccelGrid.MetaStructure;
            Mrage__spdGrid2D.AddEnumAndStructureInfo(mb);

            // this.MetaStructure.Unk_3844724227 = this.Unk_3844724227;
            if (this.Clusters != null)
            {
                this.MetaStructure.Clusters = mb.AddItemArrayPtr(MetaName.CScenarioPointCluster, this.Clusters.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCScenarioPointCluster.AddEnumAndStructureInfo(mb);

            this.LookUps.Build(mb);
            this.MetaStructure.LookUps = this.LookUps.MetaStructure;
            MCScenarioPointLookUps.AddEnumAndStructureInfo(mb);


            MCScenarioPointRegion.AddEnumAndStructureInfo(mb);

            if (isRoot)
            {
                mb.AddItem(this.MetaName, this.MetaStructure);

                this.Meta = mb.GetMeta();
            }
        }
        public override void Build(MetaBuilder mb, bool isRoot = false)
        {
            this.MetaStructure.EntityPosition = this.EntityPosition;
            this.MetaStructure.EntityType     = this.EntityType;
            if (this.ScenarioPoints != null)
            {
                this.MetaStructure.ScenarioPoints = mb.AddItemArrayPtr(MetaName.CExtensionDefSpawnPoint, this.ScenarioPoints.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCExtensionDefSpawnPoint.AddEnumAndStructureInfo(mb);

            this.MetaStructure.Unk_538733109  = this.Unk_538733109;
            this.MetaStructure.Unk_1035513142 = this.Unk_1035513142;

            MCScenarioEntityOverride.AddEnumAndStructureInfo(mb);

            if (isRoot)
            {
                mb.AddItem(this.MetaName, this.MetaStructure);

                this.Meta = mb.GetMeta();
            }
        }
Пример #3
0
        public override void Parse(MetaFile meta, CScenarioPointRegion CScenarioPointRegion)
        {
            this.Meta          = meta;
            this.MetaStructure = CScenarioPointRegion;

            this.VersionNumber = CScenarioPointRegion.VersionNumber;
            this.Points        = new MCScenarioPointContainer();
            this.Points.Parse(meta, CScenarioPointRegion.Points);
            var EntityOverrides = MetaUtils.ConvertDataArray <CScenarioEntityOverride>(meta, CScenarioPointRegion.EntityOverrides);

            this.EntityOverrides = EntityOverrides?.Select(e => { var msw = new MCScenarioEntityOverride(); msw.Parse(meta, e); return(msw); }).ToList();

            this.Unk_3696045377 = new MUnk_4023740759();
            this.Unk_3696045377.Parse(meta, CScenarioPointRegion.Unk_3696045377);
            this.AccelGrid = new Mrage__spdGrid2D();
            this.AccelGrid.Parse(meta, CScenarioPointRegion.AccelGrid);
            // this.Unk_3844724227 = CScenarioPointRegion.Unk_3844724227;
            var Clusters = MetaUtils.ConvertDataArray <CScenarioPointCluster>(meta, CScenarioPointRegion.Clusters);

            this.Clusters = Clusters?.Select(e => { var msw = new MCScenarioPointCluster(); msw.Parse(meta, e); return(msw); }).ToList();

            this.LookUps = new MCScenarioPointLookUps();
            this.LookUps.Parse(meta, CScenarioPointRegion.LookUps);
        }