Пример #1
0
        public override void Build(MetaBuilder mb, bool isRoot = false)
        {
            if (this.Nodes != null)
            {
                this.MetaStructure.Nodes = mb.AddItemArrayPtr(MetaName.CScenarioChainingNode, this.Nodes.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCScenarioChainingNode.AddEnumAndStructureInfo(mb);

            if (this.Edges != null)
            {
                this.MetaStructure.Edges = mb.AddItemArrayPtr(MetaName.CScenarioChainingEdge, this.Edges.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCScenarioChainingEdge.AddEnumAndStructureInfo(mb);

            if (this.Chains != null)
            {
                this.MetaStructure.Chains = mb.AddItemArrayPtr(MetaName.CScenarioChain, this.Chains.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray());
            }
            MCScenarioChain.AddEnumAndStructureInfo(mb);


            MUnk_4023740759.AddEnumAndStructureInfo(mb);

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

                this.Meta = mb.GetMeta();
            }
        }
Пример #2
0
        public override void Build(MetaBuilder mb, bool isRoot = false)
        {
            this.MetaStructure.NodeIndexFrom = this.NodeIndexFrom;
            this.MetaStructure.NodeIndexTo   = this.NodeIndexTo;
            this.MetaStructure.Action        = this.Action;
            this.MetaStructure.NavMode       = this.NavMode;
            this.MetaStructure.NavSpeed      = this.NavSpeed;

            MCScenarioChainingEdge.AddEnumAndStructureInfo(mb);

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

                this.Meta = mb.GetMeta();
            }
        }