По чуть-чуть

Изменил алгоритм патрулирования, теперь в наличии 6 вариантов обхода, что разнообразит игру.

Сам алгоритм ниже:

if (as %2 == 0) {f=w;n=h;} else {n=w;f=h;}
for(int i=0;i<f;i++)
for(int j=0;j<n;j++)
{
int off;
int ii=i,jj=j;
if (as && 0x2)
if (as%2 == 0) {ii=(w-i)-1;} else {ii=(h-i)-1;}
if (as && 0x4)
if (as%2 == 0) {jj=(h-j)-1;} else {jj=(w-j)-1;}
if (as%2==0) off=jj*w+ii; else off=ii*w+jj;
}

Т.е. обход может начинаться с горизонтальной координаты, а может с вертикальной. Также обход может перебираться от 0 до максимального значения, а может наоборот.

Еще перенесли нажатие кнопки "конец хода" с сервера на клиент, это оказалось не так уж и сложно, зато избавились от глюков, которые полезли при той реализации.
Например ситуация - игрок делает последний ход, на сервере жмется "конец хода", из тени выходит противник и убивает игрока. Тут же срабатывает события выигрыша если на арене), моб удалялся из лабиринта, игрок тоже - в результате на клиент передавался уже событие проигрыша - а самого противника не рисовалось.

Конечно, это можно было обойти и по другому, но уж решилось переносом на клиент.

Еще чуть-чуть изменили дизайн. Такой день

Комментарии

Поздравляю!

Поистине стало приятней тестить =) Удобней да и вообще мелочь, а приятно