Exemplo n.º 1
0
        public int Run()
        {
            ConsoleKeyInfo keyInfo;
            UpdateStatus   updateStatus = UpdateStatus.None;

            do
            {
                updateStatus = UpdateStatus.None;

                CurrentGameViewControler.Draw(CurrentGameData, CurrentPlayerData);

                while (!Console.KeyAvailable)
                {
                    Thread.Yield();
                }

                keyInfo = Console.ReadKey(true);

                updateStatus = CurrentGameViewControler.ProcessGameKeyPress(keyInfo.Key);

                switch (updateStatus)
                {
                case UpdateStatus.Error:
                    CurrentGameViewControler.ShowError();
                    break;

                case UpdateStatus.Hit:
                    CurrentGameViewControler.ShowHit();
                    break;

                case UpdateStatus.ShowHelp:
                    CurrentDisplayedView     = GameViews.HelpView;
                    CurrentGameViewControler = new HelpViewControler();
                    break;

                case UpdateStatus.ShowSettings:
                    CurrentDisplayedView     = GameViews.SettingsView;
                    CurrentGameViewControler = new SettingsViewControler();
                    break;

                case UpdateStatus.Reset:
                    Reset();
                    CurrentDisplayedView     = GameViews.GameView;
                    CurrentGameViewControler = GameViewControler;
                    CurrentGameViewControler.ShowHit();
                    break;

                case UpdateStatus.Close:
                    CurrentDisplayedView     = GameViews.GameView;
                    CurrentGameViewControler = GameViewControler;
                    break;
                }
            } while (updateStatus != UpdateStatus.Terminate);
            return(0);
        }
Exemplo n.º 2
0
        public void Init(IPlayerControler playerControler, IGameViewControler gameViewControler, GameSettings settings)
        {
            CurrentDisplayedView = GameViews.GameView;

            CurrentPlayerControler   = playerControler;
            GameViewControler        = gameViewControler;
            CurrentGameViewControler = GameViewControler;
            CurrentGameSettings      = settings;

            CurrentGameData = BoardGenerationControler.Create(CurrentGameSettings);

            Reset();
        }
Exemplo n.º 3
0
 public static void Initialize()
 {
     PlayerSettings = Resources.Load <PlayerSettings>("PlayerSettings");
     GameViews      = Resources.Load <GameViews>("GameViews");
 }