Я работаю над пониманием того как разместить все элементы карты максимально математический точно. Значит, есть вот такой тестовый код:
Суть проста, размещаю двух юнитов на карте с иксом равным 0, а Y = Максимальная координата играбельной зоны/2 (то есть центр верхней части карты или центр нижней половины если координата отрицательная) + смещение на некое значение.
На выходе проверяю дистанцию от центра 0,0 до размещённых юнитов. Но всё равно имею погрешность. Как так ?
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
26
4 года назад
0
Вот тут поднимал вопрос, почему реальные значения не равны друг другу. Может быть у тебя аналогичная причина. xgm.guru/p/100/230797
0
29
4 года назад
0
Принятый ответ
1
32
4 года назад
1
Ого у тебя монитор широкий (2560 x 1080),варик весьма странно выглядит, каким то пустым
1
37
4 года назад
1
0
28
4 года назад
Отредактирован PT153
0
  1. Функция SquareRoot даёт такие значения. Убери её вызов и корень считай на калькуляторе Windows.
  2. Смещение у тебя такое себе. Делишь на 100, умножаешь на 22. Такое число вполне себе может не иметь точного представления в типе float, зависит от значений максимальных координат.

И хватит использовать BJDebugMsg. Используйте это, рассинхрона не будет.
function DebugMsg takes string s returns nothing
    call DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 5., s)
endfunction
0
15
4 года назад
0
NazarPunk:
Воот оно как, познавательно. Спс
Bergi_Bear:
Ого у тебя монитор широкий (2560 x 1080),варик весьма странно выглядит, каким то пустым
Потому что на карте ничего нет ) А так, это лучшее разрешение для работы и игр и фильмов )

PT153:
  1. Функция SquareRoot даёт такие значения. Убери её вызов и корень считай на калькуляторе Windows.
  2. Смещение у тебя такое себе. Делишь на 100, умножаешь на 22. Такое число вполне себе может не иметь точного представления в типе float, зависит от значений максимальных координат.

И хватит использовать BJDebugMsg. Используйте это, рассинхрона не будет.
function DebugMsg takes string s returns nothing
    call DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 5., s)
endfunction
Понимаю, спасибо.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.