예제 #1
0
 private void appBarButtonCancel_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         coup last = p.CoupList.Pop();
         p.Plateau.appliqueCoup(last);
     }
     catch (InvalidOperationException)
     {}
 }
예제 #2
0
        public void appliqueCoup(coup clic)
        {
            string str = clic.X.ToString() + clic.Y.ToString();

            switch (str)
            {
            case "11":
                Cases[0, 0] = 1 - Cases[0, 0];
                Cases[0, 1] = 1 - Cases[0, 1];
                Cases[1, 0] = 1 - Cases[1, 0];
                Cases[1, 1] = 1 - Cases[1, 1];
                break;

            case "12":
                for (int i = 0; i < 3; i++)
                {
                    Cases[0, i] = 1 - Cases[0, i];
                }
                break;

            case "13":
                Cases[0, 2] = 1 - Cases[0, 2];
                Cases[0, 1] = 1 - Cases[0, 1];
                Cases[1, 2] = 1 - Cases[1, 2];
                Cases[1, 1] = 1 - Cases[1, 1];
                break;

            case "21":
                for (int i = 0; i < 3; i++)
                {
                    Cases[i, 0] = 1 - Cases[i, 0];
                }
                break;

            case "22":
                Cases[0, 1] = 1 - Cases[0, 1];
                Cases[2, 1] = 1 - Cases[2, 1];
                for (int i = 0; i < 3; i++)
                {
                    Cases[1, i] = 1 - Cases[1, i];
                }
                break;

            case "23":
                for (int i = 0; i < 3; i++)
                {
                    Cases[2, i] = 1 - Cases[2, i];
                }
                break;

            case "31":
                Cases[2, 0] = 1 - Cases[2, 0];
                Cases[2, 1] = 1 - Cases[2, 1];
                Cases[1, 0] = 1 - Cases[1, 0];
                Cases[1, 1] = 1 - Cases[1, 1];
                break;

            case "32":
                for (int i = 0; i < 3; i++)
                {
                    Cases[2, i] = 1 - Cases[2, i];
                }
                break;

            case "33":
                Cases[2, 2] = 1 - Cases[2, 2];
                Cases[2, 1] = 1 - Cases[2, 1];
                Cases[1, 2] = 1 - Cases[1, 2];
                Cases[1, 1] = 1 - Cases[1, 1];
                break;
            }
        }
예제 #3
0
 public void JouerCoup(coup clic)
 {
     Plateau.appliqueCoup(clic);
     coupList.Push(clic);
 }