Exemplo n.º 1
0
 //Constructor
 public YogiBearViewModel(YogiBearModel m)
 {
     model           = m;
     model.GameOver += new EventHandler <GameOverEventArgs>(OnVM_GameOver);
     NewGameCommand  = new DelegateCommand(param => { OnNewGame(); SetupTable(); });
     PauseCommand    = new DelegateCommand(param => { OnPause(); });
     ExitCommand     = new DelegateCommand(param => OnExitGame());
     Fields          = new ObservableCollection <GameField>();
     model.Refresh  += RefreshTable;
 }
        //Ctor
        public YogiBearViewModel(YogiBearModel m)
        {
            model           = m;
            model.GameOver += new EventHandler <GameOverEventArgs>(OnVM_GameOver);

            NewGameCommand = new DelegateCommand(param => { OnNewGame(); CopyToFields(); });
            PauseCommand   = new DelegateCommand(param => { OnPause(); });
            StepCommand    = new DelegateCommand(param => MoveBear(Convert.ToInt32(param)));

            Fields         = new ObservableCollection <GameField>();
            model.Refresh += RefreshTable;
        }
Exemplo n.º 3
0
        public App()
        {
            //       InitializeComponent();

            model = new YogiBearModel();

            viewModel              = new YogiBearViewModel(model);
            viewModel.NewGame     += new EventHandler(VM_NewGame);
            viewModel.VM_GameOver += new EventHandler <GameOverEventArgs>(ViewModel_GameOver);

            gamePage = new MainPage();
            gamePage.BindingContext = viewModel;

            MainPage = gamePage;
        }
Exemplo n.º 4
0
        private void App_Startup(object sender, StartupEventArgs e)
        {
            //modell létrehozás
            model = new YogiBearModel();

            //viewmodell létrehozás
            viewModel              = new YogiBearViewModel(model);
            viewModel.NewGame     += new EventHandler(ViewModel_NewGame);
            viewModel.ExitGame    += new EventHandler(ViewModel_ExitGame);
            viewModel.VM_GameOver += new EventHandler <GameOverEventArgs>(ViewModel_GameOver);

            //nézet létrehozása
            view             = new MainWindow();
            view.KeyDown    += new KeyEventHandler(ViewModel_OnKeyDownHandler);
            view.DataContext = viewModel;
            view.Show();
        }
Exemplo n.º 5
0
        //Új játék menüpont eseménykezelője
        private void NewGameToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //Ha már futott játék, akkor leíratkozunk az eseményekről, míg nem indul új
            if (model != null)
            {
                model.GotBasket     -= Model_GotBasket;
                model.AdvancePatrol -= Model_AdvancePatrol;
                model.GameOver      -= Model_GameOver;
            }

            model = new YogiBearModel(); //új játékmodell példányosítása

            //Pálya létrehozása/beállítása
            try
            {
                model.NewGame();
            }
            catch (YogiBearDataException)
            {
                MessageBox.Show("Pálya betöltése sikertelen!" + Environment.NewLine + "Hibás az elérési út, vagy a fájlformátum." + Environment.NewLine + "Első pálya indítása", "Hiba!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            CreateMap();
            SetupMap();

            scorelabel.Text = model.Baskets.ToString();
            gameover        = false;
            paused          = false;

            //játékeseményekre feliratkozás
            model.GotBasket     += Model_GotBasket;
            model.AdvancePatrol += Model_AdvancePatrol;
            model.GameOver      += Model_GameOver;

            //Játékidő inicializálás, időzítők indítása
            gametime = 0;
            timer.Start();
            model.Patrolling.Start();
        }
Exemplo n.º 6
0
 public void Initialize()
 {
     model  = new YogiBearModel();
     data   = new YogiBearData();
     level1 = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + "\\level1.map";
 }