Сообщение от Nikich
Этот способ хорош, если ГГ пытается перейти с клетки со стенкой на свободную клетку. А если наоборот то фиг.
|
Инфу о наличии стенки хранить можно как в 1 клетке, так и в 2х, которые эта стенка и разделяет.
Сообщение от Nikich
Тогда придется еще просчитывать какая у него следующая клетка.
|
Просчитывать особо нечего, т.к. у клетки есть инфа (должна быть) о занимаемой ей позиции по типу индекса массива. Тогда проверка сводится к такому алгоритму (для движения вверх):
;если инфа о стенках только в 1 клетке хранится, а не в обеих смежных, то две проверки
;x,y - индексы текущей клетки, в которой игрок стоит
;up,down - направления
if(cells[x][y]\walls[up]=true) Return ;стена сверху у текущей клетки
if(cells[x][y-1]\walls[down]=true) Return ;стена снизу у верхней клетки
Плюс добавить проверку выход за границы поля.
рубишь фишку?
