Map arizona

Сырник

Известный
Автор темы
219
76
Версия MoonLoader
.026-beta
Увидел конвертацию координат игровых на корды на карте
Умные люди, кто может быть хочет с этим поиграться или уже знает, нужна адаптация этого кода на новую аризоновскую карту
Код:
ffi.cast("uint8_t*", 0xBA6748 + 0x15D)[0] == 5

function convert2DCoordsToMenuMapScreenCoords(x, y)
    local fMapZoom = ffi.cast("float*", 0xBA6748+0x64)[0]
    local fMapBaseX = ffi.cast("float*", 0xBA6748+0x68)[0]
    local fMapBaseY = ffi.cast("float*", 0xBA6748+0x6C)[0]

    if isKeyDown(0x5A) then
        return convertGameScreenCoordsToWindowScreenCoords(320+(x/3000)*140, 206-(y/3000)*140)
    else
        return convertGameScreenCoordsToWindowScreenCoords(fMapBaseX+(x/3000)*fMapZoom, fMapBaseY-(y/3000)*fMapZoom)
    end
end

up
 
Последнее редактирование:
Решение
JavaScript:
const worldToMap = (x, y, zm) => {
    return {
        x: 320 - x / WORLD_BOTTOM_RIGHT_COORDS.x * zm,
        y: 224 + y / WORLD_BOTTOM_RIGHT_COORDS.y * zm
    };
};

const mapToWorld = (mx, my, zm) => {
    return {
        x: (320 - mx) / zm * WORLD_BOTTOM_RIGHT_COORDS.x,
        y: (my - 224) / zm * WORLD_BOTTOM_RIGHT_COORDS.y
    };
};
1783509821947.png

1783509881386.png

chapo

tg/inst: @moujeek
Всефорумный модератор
9,242
12,670
Если там карта на цефе, то нет смысла ковырять то что ты скинул, проще покопаться в жске. У тебя игра как-то передает в цеф например твои координаты, а цеф сам высчитывает где именно рисовать твою метку на карте, следовательно, метод для конвертации уже есть внутри цефа
 

XRLM

Против ветра рождённый
Модератор
1,677
1,376
JavaScript:
const worldToMap = (x, y, zm) => {
    return {
        x: 320 - x / WORLD_BOTTOM_RIGHT_COORDS.x * zm,
        y: 224 + y / WORLD_BOTTOM_RIGHT_COORDS.y * zm
    };
};

const mapToWorld = (mx, my, zm) => {
    return {
        x: (320 - mx) / zm * WORLD_BOTTOM_RIGHT_COORDS.x,
        y: (my - 224) / zm * WORLD_BOTTOM_RIGHT_COORDS.y
    };
};
1783509821947.png

1783509881386.png