示例#1
0
文件: Partie.cs 项目: websnizer/Echec
        Echec m_echec;          //Référence à Echec

        //Constructeur
        public Partie(Joueur p_joueur1, Joueur p_joueur2, Echec p_echec)
        {
            m_joueurBlanc = p_joueur1;
            m_joueurNoir  = p_joueur2;

            m_interface = new FormPartie(this);
            m_interface.Show();

            m_tour = true;

            m_plateau = new Plateau();
            refreshForm();

            m_joueurTour = m_joueurBlanc;
            m_interface.afficherTour(m_joueurTour.NomJoueur);
            m_echec = p_echec;
        }
示例#2
0
文件: Partie.cs 项目: websnizer/Echec
        public void jouerCoup(int[] p_posPiece, int[] p_posCase)
        {
            int code;             //Le code que le plateau retourne

            //Valider le coup
            code = m_plateau.validerCoup(p_posPiece, p_posCase, m_tour);

            //Si le coup est valide
            if (code == 0)
            {
                m_plateau.deplacerPiece(p_posPiece, p_posCase);
                m_interface.afficherStatut(code);
                m_interface.afficherDeplacement(p_posPiece, p_posCase, m_joueurTour.NomJoueur);
                refreshForm();

                //Si promotion
                if (m_plateau.verifierPromo(p_posCase))
                {
                    m_interface.afficherStatut(9);

                    //Demander le choix à l'utilisateur avec une form en dialog
                    FormChoixPiece m_choixpiece = new FormChoixPiece(this, m_tour);
                    m_choixpiece.ShowDialog();

                    m_plateau.promouvoirPion(p_posCase, m_piece);
                    m_interface.afficherStatut(14);
                    refreshForm();
                }

                //Changer le tour
                m_tour = !m_tour;

                //Actualiser c'est le tour de quel joueur
                m_joueurTour = (m_tour) ? JoueurBlanc : JoueurNoir;
                m_interface.afficherTour(m_joueurTour.NomJoueur);

                //Vérifier le statut du jeu
                verifierStatutJeu();
            }
            else
            {
                //Afficher l'erreur approprié à l'utilisateur selon le code
                m_interface.afficherStatut(code);
            }
        }