Я пишу программу под названием Flipper, которая имеет 3x3 ячейки для головоломки. Каждая ячейка (кнопка) имеет зеленый цвет в начале. При щелчке по определенной ячейке эта ячейка и соседние ячейки переворачиваются (меняют цвет). И еще одно требование - функция отмены, которая возвращается к предыдущему этапу. Я понятия не имею, как это реализовать. Это главное, что происходит в игре.
public Puzzle(Form1 form1)
{
buttons = new Button[3, 3] { { form1.button1, form1.button2, form1.button3 },
{ form1.button4, form1.button5, form1.button6 },
{ form1.button7, form1.button8, form1.button9 } };
//button reference from form1
}
public void reset()
{
//reset all the colors of buttons in the puzzle to lime
}
public void FlipCells(int row, int col)
{
//when certain button is clicked(this event is done in the form1.cs), say for (0,0) change color of cell (0,0),///(0,1) and (1,0) by calling changeColor method
}
public void changeColor(int row, int col)
{
//test current color of the cell, and change it
}
Я прошу реализовать функцию отмены в классе с именем Undo. Любые идеи приветствуются !!!