Exemple #1
0
    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
        }
        networkManager = new NetworkManager();

        string[] args = System.Environment.GetCommandLineArgs();
        for (int i = 0; i < args.Length; i++)
        {
            if (args[i] == "-server")
            {
                loaderStatus = LoaderStatus.ServerBackground;
                DebugLog("Starting as server", GD.LT.Log);
                // ./UncivilizationLinux.x86_64 -server -batchmode -nographics -port 55601 -password olc
            }
            if (args[i] == "-port")
            {
                networkManager.SetPort(args[i + 1]);
                DebugLog("Listening port is: " + args[i + 1], GD.LT.Log);
            }
            if (args[i] == "-password")
            {
                networkManager.serverPassword = args[i + 1];
                DebugLog("Using password for server", GD.LT.Log);
            }
        }

        if (loaderStatus == LoaderStatus.ServerBackground)
        {
            networkManager.StartUpServer();
        }


        // Read the options
        fullScreen      = (FullScreenMode)PlayerPrefs.GetInt("FullScreen", 3);
        mainVolume      = PlayerPrefs.GetInt("MainVolume", 100);
        useTypingSound  = PlayerPrefs.GetInt("UseTypingSound", 1) != 0;
        writeLogsOnFile = PlayerPrefs.GetInt("WriteLogsOnFile", 1) != 0;
        logsLevel       = (LT)PlayerPrefs.GetInt("LogsLevel", (int)LT.Warning);
        filePathForLogs = PlayerPrefs.GetString("FilePathForLogs", Application.persistentDataPath);
        if (string.IsNullOrWhiteSpace(filePathForLogs))
        {
            filePathForLogs = "C:\\Users\\claud\\Unity\\Uncivilization\\Logs\\Server Logs\\";
        }

        logsLevel       = LT.DebugST; // FIXME remove after debugging
        writeLogsOnFile = true;       // FIXME

        AudioListener.volume  = mainVolume / 100f;
        Screen.fullScreenMode = fullScreen;
        Screen.fullScreen     = fullScreen != FullScreenMode.Windowed && fullScreen != FullScreenMode.Windowed;


        Debug.Log(filePathForLogs);

        // Init the log file
        InitLogFile();

        enemies = gameLoader.GetEnemies();
        gameLoader.InitGame();
    }