Example #1
0
    static void InitializeTest()
    {
        FlatBuffersInitializer.Initialize(typeof(PhoneNumber).Assembly);

        var insts = InstancePool.sInstances;

        Debug.Assert(insts.Count == 5);
        Debug.Assert(insts.ContainsKey(typeof(PhoneNumber)));
        Debug.Assert(insts.ContainsKey(typeof(Person)));
        Debug.Assert(insts.ContainsKey(typeof(AddressBook)));

        var arrays = OffsetArrayPool.sArrays;

        Debug.Assert(arrays.Count == 2);
        Debug.Assert(arrays.ContainsKey(typeof(PhoneNumber)));
        Debug.Assert(arrays.ContainsKey(typeof(Person)));
        var pnarr = arrays[typeof(PhoneNumber)];

        Debug.Assert(pnarr.GetType() == typeof(List <OffsetArrayPool.Array <PhoneNumber> >));
        Debug.Assert(pnarr.Count == (OffsetArrayPool.maxSizePOT - OffsetArrayPool.minSizePOT + 1) * OffsetArrayPool.initialArraySize);
        var parr = arrays[typeof(Person)];

        Debug.Assert(parr.GetType() == typeof(List <OffsetArrayPool.Array <Person> >));
        Debug.Assert(parr.Count == (OffsetArrayPool.maxSizePOT - OffsetArrayPool.minSizePOT + 1) * OffsetArrayPool.initialArraySize);
        Console.WriteLine("Initialize Done");
    }
Example #2
0
    IEnumerator AwakeRoutine()
    {
        FlatBuffersInitializer.Initialize(typeof(ProtocolInitializer).Assembly);
        MessageBuilder.Initialize();
        yield return(StartCoroutine(InitializeLog()));

        AppConfig appConfig = Singletons.Add <AppConfig>("Config/config.json");

        yield return(StartCoroutine(appConfig.Initialize()));

        Singletons.Add <CoexEngine>();

        if (!isHeadless)
        {
            UI.Instance.Show <SceneList>();
        }
        else
        {
            string   scene = null;
            string[] args  = Environment.GetCommandLineArgs();
            for (int i = 0; i < args.Length; ++i)
            {
                if (args[i] == "--scene" && i < args.Length - 1)
                {
                    scene = args[i + 1];
                    break;
                }
            }

            if (null != scene)
            {
                UnityEngine.SceneManagement.SceneManager.LoadScene(scene);
            }
            else
            {
                GameLog.Error("specify scene on command line, eg. --scene PacMan");
                Application.Quit();
            }
        }
    }