Esempio n. 1
0
        public void StartGame(IAi aiModule)
        {
            _ai = aiModule;
            //use the aiModule to calculate the computer movements. (probably inject to logic!)
            _model = new MillModel();

            // nézemodell létrehozása
            _viewModel = new MillViewModel(_model);
            //_viewModel.GameEnded += GameEnded;

            // nézet létrehozása
            _view             = new MainWindow();
            _view.DataContext = _viewModel;
            _view.Show();
        }
Esempio n. 2
0
        public MillViewModel(MillModel model)
        {
            _model = model;

            PP = true;
            PC = false;
            CC = false;
            PlayerChangedCommand = new DelegateCommand(PlayerSettingsChanged);
            Elements             = new ObservableCollection <ViewElement>();
            Elements.Add(new ViewElement()
            {
                X               = 0,
                Y               = 0,
                Parameter       = "0,0",
                ButtonMargin    = "56,44,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 0,
                Y               = 3,
                Parameter       = "0,3",
                ButtonMargin    = "306,44,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 0,
                Y               = 6,
                Parameter       = "0,6",
                ButtonMargin    = "554,44,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 1,
                Y               = 1,
                Parameter       = "1,1",
                ButtonMargin    = "129,118,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 1,
                Y               = 3,
                Parameter       = "1,3",
                ButtonMargin    = "306,118,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 1,
                Y               = 5,
                Parameter       = "1,5",
                ButtonMargin    = "480,118,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 2,
                Y               = 2,
                Parameter       = "2,2",
                ButtonMargin    = "202,192,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 2,
                Y               = 3,
                Parameter       = "2,3",
                ButtonMargin    = "306,192,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 2,
                Y               = 4,
                Parameter       = "2,4",
                ButtonMargin    = "406,192,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 0,
                Parameter       = "3,0",
                ButtonMargin    = "56,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 1,
                Parameter       = "3,1",
                ButtonMargin    = "129,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 2,
                Parameter       = "3,2",
                ButtonMargin    = "203,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 4,
                Parameter       = "3,4",
                ButtonMargin    = "406,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 5,
                Parameter       = "3,5",
                ButtonMargin    = "480,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 3,
                Y               = 6,
                Parameter       = "3,6",
                ButtonMargin    = "554,294,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 4,
                Y               = 2,
                Parameter       = "4,2",
                ButtonMargin    = "204,393,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 4,
                Y               = 3,
                Parameter       = "4,3",
                ButtonMargin    = "306,393,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 4,
                Y               = 4,
                Parameter       = "4,4",
                ButtonMargin    = "406,393,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 5,
                Y               = 1,
                Parameter       = "5,1",
                ButtonMargin    = "129,469,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 5,
                Y               = 3,
                Parameter       = "5,3",
                ButtonMargin    = "306,469,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 5,
                Y               = 5,
                Parameter       = "5,5",
                ButtonMargin    = "480,469,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 6,
                Y               = 0,
                Parameter       = "6,0",
                ButtonMargin    = "56,544,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 6,
                Y               = 3,
                Parameter       = "6,3",
                ButtonMargin    = "306,544,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            Elements.Add(new ViewElement()
            {
                X               = 6,
                Y               = 6,
                Parameter       = "6,6",
                ButtonMargin    = "554,544,0,0",
                Dummy           = -1,
                MillStepCommand = new DelegateCommand(MillFieldChosen)
            });
            _model.Mill     = false;
            _model.LastStep = "3,3";
        }