Jump to content

Получение Z из X и Y


XaskeL

Recommended Posts

Помогите правильно получить "Z" по всей карте. Я просто не догоняю почему получает координату "Z" не со всей карты а с её куска.

  
local mapa = guiCreateStaticImage(500*MapX,150*MapY,600*MapX,600*MapY,"images/map.png",false) 
local mapposx,mapposy = guiGetPosition(gps,true) 
local mapsizex,mapsizey = guiGetSize(gps,true) 
local cursorx,cursory = getCursorPosition() 
local cursorxt=(cursorx*16000-8000) 
local cursoryt=(cursory*9000-4500)*-1 
if mapposx<=cursorx and mapposy<=cursory and mapposx+mapsizey>=cursorx and mapposy+mapsizey>=cursory then 
local hit,hitX,hitY,hitZ = fillInPosition(clickX,clickY) 
setElementPosition(localPlayer,hitX,hitY,hitZ) 
end 
  

  
function fillInPosition(relX, relY) 
    local x = relX*6000 - 3000 
    local y = 3000 - relY*6000 
    local hit, hitX, hitY, hitZ 
    hit, hitX, hitY, hitZ = processLineOfSight(x, y, 3000, x, y, -3000) 
    return hit,hitX,hitY,hitZ or 0 
end 
  

Link to comment
Функция processLineOfSight вроде как работает только в стриме игрока.

А есть какой нибудь другой способ? Просто я могу создать машину и установить ей нулевую альфу. а потом секунд через 5 проверить где она упала(на какой Z) но для одной системы это очень долго.

Link to comment
Функция processLineOfSight вроде как работает только в стриме игрока.

А есть какой нибудь другой способ? Просто я могу создать машину и установить ей нулевую альфу. а потом секунд через 5 проверить где она упала(на какой Z) но для одной системы это очень долго.

Я где-то недавно видел на форуме файл для нахождения высоты по всех карте, но он весит не мало, да и как-то рационально получается.

Link to comment
а разве это не реализовано во freeroam? Там вроде как если кликаешь по горе, то не спавнишься внутри горы

Я знаю как там реализовано, но, там реализовано при телепортации.

Link to comment

Окей, пусть тебе надо кар там заспавнить. Ты это делаешь на серве, зета у тебя нет. Спавни не сразу тогда.

А когда этот "спавн" попадет в стрим игрока -- у этого клиента пускаешь луч, триггеришь его на сервер и спавнишь кар.

Link to comment
Во freeroam там другая ситуация, сначала тебя сравнит по ХУ и тогда используется функция getGroundPosition (точное название не помню) там возвращается высота.

да какая другая то??? То же самое возвращение высоты (Z)

Link to comment
Во freeroam там другая ситуация, сначала тебя сравнит по ХУ и тогда используется функция getGroundPosition (точное название не помню) там возвращается высота.

да какая другая то??? То же самое возвращение высоты (Z)

Ой :oops:

Там идет тп игрока, сначала перемещает его по координатам (X Y 0), дальше ищет высоту на этом XY с помощью функции getGroundPosition и тп уже по XYZ, что не ясно?

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...