コード例 #1
0
ファイル: GameForm.cs プロジェクト: skotz/volcanoes
 private void GraphicsSettingsFsw_Changed(object sender, FileSystemEventArgs e)
 {
     if (File.Exists(gameFolder + "graphics.json"))
     {
         settings = GameGraphicsSettings.LoadOrDefault(gameFolder + "graphics.json");
         graphics.GraphicsSettings = settings;
     }
 }
コード例 #2
0
ファイル: GameForm.cs プロジェクト: simondorfman/volcanoes
        public GameForm()
        {
            InitializeComponent();

            if (!Directory.Exists(gameFolder))
            {
                Directory.CreateDirectory(gameFolder);
            }

            settings = GameGraphicsSettings.LoadOrDefault(gameFolder + "graphics.json");
            chkShowTileLocations.Checked = settings.ShowTileNames;
            graphics         = new GameGraphics(gamePanel, settings);
            game             = new VolcanoGame();
            game.OnMoveMade += Game_OnMoveMade;

            gameTimer.Start();

            engines = new EngineHelper();
            engines.Add <BarricadeEngine>("Barricade");
            engines.Add <RandomEngine>("Random");
            engines.Add <DeepBeelineEngine>("Deep Beeline");
            engines.Add <MonteCarloBarricadeEngine>("Monte Carlo Barricade");
            engines.Add <MonteCarloBeelineRandParallelEngine>("Parallel MCTS Beeline");
            engines.Add <MonteCarloTreeSearchParallelEngine>("Parallel MCTS");
            engines.Add <MonteCarloBeelineThreeEngine>("Monte Carlo Beeline 3");
            engines.Add <MonteCarloBeelineFourEngine>("Monte Carlo Beeline 4");
            engines.Add <MonteCarloTreeSearchEngine>("Monte Carlo Tree Search");
            //engines.Add<MonteCarloBeelineParallelEngine>("Parallel MCTS Beeline Full");
            //engines.Add<MonteCarloBeelineParallelDeepEngine>("Parallel MCTS Beeline Sim");

            cbPlayerOne.Items.Add("Human");
            cbPlayerTwo.Items.Add("Human");
            cbPlayerOne.SelectedIndex = 0;
            cbPlayerTwo.SelectedIndex = 0;
            foreach (string engine in engines.EngineNames)
            {
                cbPlayerOne.Items.Add(engine);
                cbPlayerTwo.Items.Add(engine);
            }

            cbSeconds.SelectedIndex = 1;

            ConfigureComputer();

            menuStrip1.Renderer = new MenuProfessionalRenderer(new MenuColorTable());
            toolStrip1.Renderer = new MenuProfessionalRenderer(new MenuColorTable());
            toolStripContainer1.ContentPanel.RenderMode = ToolStripRenderMode.System;

            if (!string.IsNullOrEmpty(VolcanoGame.Settings.CustomSettingsFile))
            {
                lblStatusBar.Text = VolcanoGame.Settings.CustomSettingsFile + " loaded " + VolcanoGame.Settings.CustomSettingsTitle;
            }

            FileSystemWatcher graphicsSettingsFsw = new FileSystemWatcher(".", gameFolder + "graphics.json");

            graphicsSettingsFsw.EnableRaisingEvents = true;
            graphicsSettingsFsw.Changed            += GraphicsSettingsFsw_Changed;
        }
コード例 #3
0
ファイル: GameForm.cs プロジェクト: skotz/volcanoes
 private void resetThemeToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (File.Exists(gameFolder + "graphics.json"))
     {
         File.Move(gameFolder + "graphics.json", gameFolder + "graphics.json." + DateTime.Now.ToString("yyyyMMddhhmmss") + ".bak");
         settings = GameGraphicsSettings.Default;
         graphics.GraphicsSettings = settings;
     }
 }