If ((masx>=0)&&(masy>=0)) //...
=0)&&(masy>=0)) //..." title="If ((masx>=0)&&(masy>=0)) //..."/>If ((masx>=0)&&(masy>=0)) // если не справа и не сверху от сетки
click=1; // засчитывается ход
В игре на одном компьютере переход хода осуществляется лишь после щелчка мыши в
заданную плоскость. Щелчок мышью проверяется следующим образом:
Readmousestate (); // считать состояние мыши
if (Leftbutton!=0) // если нажата левая кнопка
Процедура Readmousestate () записывает в переменные X и Y текущее положение мыши
на плоскости, а переменной Leftbutton присваивается 1, если нажата
соответствующая кнопка
4) одновременно с запретом выхода за пределы игрового поля проверяется условие
— не занят ли узел сетки другими фишками:
if (filmas[masx][masy]==0) // если узел не заполнен
if (fishmas[masx][masy]!=1) // если нет фишек красного
if (fishmas[masx][masy]!=2) // если нет фишек зеленого
,где filmas[i][j] — массив, в который заносится 1 если точка (i, j) была
обведена, а fishmas[i][j] — массив точек, причем, если значение fishmas[i][j]
равно единице, то фишка (i, j) первого игрока, иначе если 2, то второго; i — это
номер строки игрового поля, j — номер столбца;
5) чтобы обнаружить на сетке кольца, необходимо воспользоваться алгоритмом
поиска в глубину, используемого для последовательного обхода неориентированного
графа. Шаги этого алгоритма следующие:
Оставить комментарий