public override void Build(MetaBuilder mb, bool isRoot = false) { this.MetaStructure.iType = this.IType; this.MetaStructure.ModelSetId = this.ModelSetId; this.MetaStructure.iInterior = this.IInterior; this.MetaStructure.iRequiredIMapId = this.IRequiredIMapId; this.MetaStructure.iProbability = this.IProbability; this.MetaStructure.uAvailableInMpSp = this.UAvailableInMpSp; this.MetaStructure.iTimeStartOverride = this.ITimeStartOverride; this.MetaStructure.iTimeEndOverride = this.ITimeEndOverride; this.MetaStructure.iRadius = this.IRadius; this.MetaStructure.iTimeTillPedLeaves = this.ITimeTillPedLeaves; this.MetaStructure.iScenarioGroup = this.IScenarioGroup; this.MetaStructure.Flags = this.Flags; this.MetaStructure.vPositionAndDirection = this.VPositionAndDirection; MCScenarioPoint.AddEnumAndStructureInfo(mb); if (isRoot) { mb.AddItem(this.MetaName, this.MetaStructure); this.Meta = mb.GetMeta(); } }
public override void Build(MetaBuilder mb, bool isRoot = false) { if (this.LoadSavePoints != null) { this.MetaStructure.LoadSavePoints = mb.AddItemArrayPtr(MetaName.CExtensionDefSpawnPoint, this.LoadSavePoints.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray()); } MCExtensionDefSpawnPoint.AddEnumAndStructureInfo(mb); if (this.MyPoints != null) { this.MetaStructure.MyPoints = mb.AddItemArrayPtr(MetaName.CScenarioPoint, this.MyPoints.Select(e => { e.Build(mb); return(e.MetaStructure); }).ToArray()); } MCScenarioPoint.AddEnumAndStructureInfo(mb); MCScenarioPointContainer.AddEnumAndStructureInfo(mb); if (isRoot) { mb.AddItem(this.MetaName, this.MetaStructure); this.Meta = mb.GetMeta(); } }