Exemple #1
0
        // Pour faire descendre une barre
        //vérifier le débordement sur un coté
        public bool Descendre(Table grille)
        {
            bool placementvalide = grille.EmplacementDispo(this);
            List<int> precemplacement = new List<int>();

            for (int i = 0; i < this.emplacement.Count; i++)
            {
                // Je copie la liste des emplacement dans la barre dans une liste afin de les garder en mémoire en cas de Fail
                precemplacement.Add(this.emplacement[i]);
                // J'effectue le deplacement sur la vrai liste
                this.emplacement[i] = this.emplacement[i] + 10;
            }
            // je verifie si tout est okay. Si oui, j'écris les nouveaux emplacement dans le tableau
            if (grille.EmplacementDispo(this))
            {

                grille.write(ref precemplacement, this);
                this.posInitiale = false;
                return true;

            }
            else
            {
                // Sinon, je remets tout comme avant grace a la liste copié auparavant
                this.emplacement = precemplacement;
                this.bloquer = true;

                grille.checkLigne();
                if (this.posInitiale)
                {
                    MainWindow.main.Termine.Text = "Partie Terminée";
                    Partie.stop();
                    MainWindow.main.GameOver.Visibility = System.Windows.Visibility.Visible;
                    MainWindow.main.ScoreNom.Visibility = Visibility.Collapsed;
                    MainWindow.main.ScoreScore.Visibility = Visibility.Collapsed;
                    MainWindow.main.ScoreNiveau.Visibility = Visibility.Collapsed;
                    MainWindow.main.labelScore.Visibility = Visibility.Collapsed;
                    MainWindow.main.labelScoreLevel.Visibility = Visibility.Collapsed;
                    MainWindow.main.labelScoreNom.Visibility = Visibility.Collapsed;
                }
                return false;
            }
        }