void ParseGameBuildFromOptionValue(string v)
 {
     KBlam.Engine.EngineBuildRevision build_revision = KBlam.Engine.EngineRegistry.TryParseExportedBuildName(v);
     if (build_revision != null)
     {
         mGameBuildAndTarget      = build_revision.BuildHandle.ToEngineTargetHandle();
         mGameEngineBlobSystemRef = KBlam.Engine.EngineRegistry.GetSystem <KBlam.Blob.BlobSystem>(mGameBuildAndTarget.Build);
         mGameEngineLangystemRef  = KBlam.Engine.EngineRegistry.GetSystem <KBlam.Localization.LanguageSystem>(mGameBuildAndTarget.Build);
     }
 }
Exemple #2
0
        public static MgloBlamGameRequiredSystems GetOrCreateFromSelectableGameBuildName(string name)
        {
            MgloBlamGameRequiredSystems instance;

            lock (gCachedGames)
            {
                if (!gCachedGames.TryGetValue(name, out instance))
                {
                    KBlam.Engine.EngineBuildRevision build_revision = KBlam.Engine.EngineRegistry.TryParseExportedBuildName(name);
                    if (build_revision == null)
                    {
                        throw new ArgumentOutOfRangeException(nameof(name), name, "Not a valid build name");
                    }

                    instance = new MgloBlamGameRequiredSystems(build_revision.BuildHandle.ToEngineTargetHandle());
                    gCachedGames.Add(name, instance);
                }
            }

            return(instance);
        }