репозиционирование для расположения миникарты - PullRequest
0 голосов
/ 28 апреля 2011

У меня есть миникарта, на которой я рисую, изображение размером 300x300, и я показываю игрока и врагов, которые находятся в пределах досягаемости (500) от игрока.

у них есть координаты карты, которые могутбыть любым (от -1000, -1000) до (1000, 1000), я хочу установить игрока в центр (150, 150), а затем переместить врагов в моем списке (есть точка) в миникарте.Что у меня возникли некоторые проблемы, оборачиваясь вокруг того, как сделать отображение врагов.«Коэффициент» равен 6666 (1000/150). Могу ли я просто разделить позицию противника на этот коэффициент?

Должно ли оно быть относительно позиции игрока?Скажем, его (-1500, 39) и враг находится на (-1000, 39) с левой стороны, как мне преобразовать это в миникарту, где диапазон для X и Y равен 0-300?

1 Ответ

1 голос
/ 29 апреля 2011

Точка должна быть расположена относительно вашего игрока, которая будет в центре вашей миникарты. таким образом, на вашей миникарте каждый враг будет в позиции (с коэффициентом 6,6666)

x = (xennemy-xplayer)/factor +150
y = (yennemy-yplayer)/factor +150

Обратите внимание, что если вы отображаете только тех врагов, которые находятся в диапазоне 500, они будут иметь позицию (x и y) между 75/225, то есть не всю возможную миникарту. Это потому, что коэффициент основан на всем диапазоне позиций (чтобы быть в 0, вы должны быть на расстоянии 1000)

Гийом

...