Exemplo n.º 1
0
 public Guess_ViewModel(UserControl_Guess guessView)
 {
     GuessCommand = new GeneralCommands <object>(GuessDrawing, CanGuessDrawing);
     ClueCommand  = new GeneralCommands <object>(GetClue, CanGetClue);
     // this._guessView.GuessWord.Text = "";
 }
Exemplo n.º 2
0
        public void StateUpdateEvent()
        {
            var passiv = new UserControl_Passive();
            var write  = new UserControl_Write();

            SocketService.MySocket.Off("state update");
            SocketService.MySocket.On("state update", (data) =>
            {
                Console.WriteLine(data);
                StateUpdate_Model d = JsonConvert.DeserializeObject <StateUpdate_Model>(data.ToString());

                if (d.role == "WRITE" && d.answer != null)
                {
                    this._homePageView.Dispatcher.Invoke(() =>
                    {
                        if (d.clear)
                        {
                            lastState = "WRITE";
                            this._homePageView.MiddleView.Children.Clear();
                            write = new UserControl_Write(d, this);
                            this._homePageView.MiddleView.Children.Add(write);
                        }
                    });
                }

                else if (d.role == "GUESS" && d.answer == null)
                {
                    this._homePageView.Dispatcher.Invoke(() =>
                    {
                        if (d.clear)
                        {
                            lastState = "GUESS";
                            this._homePageView.MiddleView.Children.Clear();
                            guess = new UserControl_Guess(d, this);
                            this._homePageView.MiddleView.Children.Add(guess);
                        }
                        else
                        {
                            if (lastState == "PASSIVE")
                            {
                                this._homePageView.MiddleView.Children.Remove(passiv);
                                passiv.switchState(d);
                                this._homePageView.MiddleView.Children.Add(new UserControl_Guess(passiv));
                            }
                            else
                            {
                                if (d.attemptsLeft.ToString() == "-1")
                                {
                                    guess.PassivViewGuess.BarInfoPassive.Answer.Content = "Tentatives : " + "Infinies";
                                }
                                else
                                {
                                    guess.PassivViewGuess.BarInfoPassive.Answer.Content = "Tentatives : " + d.attemptsLeft.ToString();
                                }
                            }
                        }
                    });
                }

                else if (d.role == "PASSIVE" && d.answer == null)
                {
                    this._homePageView.Dispatcher.Invoke(() =>
                    {
                        if (d.clear)
                        {
                            lastState = "PASSIVE";

                            this._homePageView.MiddleView.Children.Clear();
                            passiv = new UserControl_Passive(d, this);
                            this._homePageView.MiddleView.Children.Add(passiv);
                        }
                        else
                        {
                            if (lastState == "WRITE")
                            {
                                write.switchState(d);
                            }
                            else if (lastState == "GUESS")
                            {
                                guess.SwitchToPassive(d);
                            }
                            else
                            {
                                passiv.BarInfoPassive.switchtoPassiv(d);
                            }
                        }
                    });
                }
            });
        }