Создание панели заполненной формы, в которой я хочу, чтобы персонаж (представленный pictureBox) перемещался. Когда я нажимаю на PictureBox персонажа, я хочу выделить область, представляющую, насколько далеко может перемещаться этот символ.Как выделить конкретную область на сетке панелей
Образ ниже - это то, чем я до сих пор управлял, но это не совсем то, что я хочу. Красный прямоугольник прямоугольника представляет собой изображение, тогда как оранжевые прямоугольники представляют собой выделенную область. Каждый прямоугольник с черной рамкой представляет собой панель.
Персонаж двигается к панели по диагонали должен затрачивать 2 движение так, что если символ имеет 2 движения доступного ниже область должна быть выделена, когда PictureBox нажал на:
Я понимаю, почему мой код выделяет квадрат вместо области, которую я хочу, но я не уверен, как ее исправить. Любая помощь будет оценена по достоинству; ниже приведен код, который я написал.
foreach (Panel pan in grid)
{
if (pan.Left <= (selectedCharacter.PictureBox.Left + (selectedCharacter.Movement * 80))
&& pan.Left >= (selectedCharacter.PictureBox.Left - (selectedCharacter.Movement * 80)))
{
if (pan.Top <= (selectedCharacter.PictureBox.Top + (selectedCharacter.Movement * 100))
&& pan.Top >= (selectedCharacter.PictureBox.Top - (selectedCharacter.Movement * 100)))
{
pan.BackColor = selectedCharacter.PlayerHighlight;
}
}
}
Не стесняйтесь задавать вопросы, если я не был достаточно