![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 30.06.2012
Сообщений: 145
|
![]()
Всем доброго времени суток, уважаемые эксперты. Столкнулся с проблемой.
Задача: Есть игровая карта (массив цифр). По цифрам рисую квадраты нужного цвета. Вся карта рисуется без проблем. Но мне необходимо сделать так, чтобы рисовалась только видимая персонажем часть карты. Я вычисляю по положению персонажа клетки, которые нужно показать (беру по всем сторонам +1 лишнюю клетку, которая будет либо не видна, либо видна частично при перемещении). И при перемещении персонажа вроде бы сама карта двигается и прорисовывается плюс минус нормально. Когда персонаж подходит к границам карты - ее скроллинг (сдвиг nx, ny) прекращается, а когда отходит за средину размеров формы - скроллинг продолжается. Беда заключается в том, что при отображении видимой части карты мой персонаж отображается неправильно (отображается не по центру экрана, а иногда вообще за границами). Я не правильно просчитываю его сдвиг, судя по всему. И никак не могу придумать нормальный сдвиг. Пробовал разными способами, но голова не соображает. Если у кого-то есть идеи - заранее буду благодарен. Код и проект прилагаю (предполагаю ошибку в посл). Код:
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Изменение фона ЧАСТИ изображения Графические карты | DimaDR | HTML и CSS | 1 | 01.11.2017 10:00 |
Ищем специалиста(смарт-карты,бонус.карты и т.п) | modob1 | Фриланс | 3 | 20.01.2012 11:09 |
Изменение видимой части формы | niki2012 | Общие вопросы Delphi | 14 | 13.01.2011 22:50 |
Координаты центра видимой части ScrollBox | Алён@ | Компоненты Delphi | 13 | 04.02.2009 17:58 |
Как определить координаты видимой части PaintBox? | Vladimir K. | Общие вопросы Delphi | 3 | 28.12.2006 10:02 |