Координаты

$Mr.R1ch$

Активный
Автор темы
142
28
Версия MoonLoader
Другое
Пытаюсь сделать такую функцию, если я нахожусь на указанной территории, то произойдет какое то действие, но либо я координаты неправильно ввожу, либо я что то не то делаю. Что тут надо переделать? (координаты ждлс - x: 1769.3217773438 y: -1898.7712402344 z: 13.640000343323)
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 13, 1751, -1898, 13, false) then
      sampAddChatMessage('Вы находитесь на территории ЖДЛС!', -1)
end
 
Решение
Если визуализировать твой куб, получится вот так(1 скрин), кубом и не пахнет. А всё потому, что укзал в первой и второй координате Y одинаковое значение (-1898), если вторую Y изменить -1905, это уже будет похоже на куб и проверка пройдёт. isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1905, 10, false)

whyega52

52NGG
Модератор
2,634
2,374
Пытаюсь сделать такую функцию, если я нахожусь на указанной территории, то произойдет какое то действие, но либо я координаты неправильно ввожу, либо я что то не то делаю. Что тут надо переделать? (координаты ждлс - x: 1769.3217773438 y: -1898.7712402344 z: 13.640000343323)
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 13, 1751, -1898, 13, false) then
      sampAddChatMessage('Вы находитесь на территории ЖДЛС!', -1)
end
Ты уверен, что второй y правильно указан?
 

$Mr.R1ch$

Активный
Автор темы
142
28
Ты уверен, что второй y правильно указан?
вроде да, получается как прямоугольная территория

вроде да, получается как прямоугольная территория
проверил только что координаты, y там даже не меняется вообще
 

whyega52

52NGG
Модератор
2,634
2,374
вроде да, получается как прямоугольная территория
Не забывай, что координаты это число с плавающей точкой и если ты явно не указываешь дробную часть, она будет 0
 

VanoKLR

Известный
731
422
Пытаюсь сделать такую функцию, если я нахожусь на указанной территории, то произойдет какое то действие, но либо я координаты неправильно ввожу, либо я что то не то делаю. Что тут надо переделать? (координаты ждлс - x: 1769.3217773438 y: -1898.7712402344 z: 13.640000343323)
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 13, 1751, -1898, 13, false) then
      sampAddChatMessage('Вы находитесь на территории ЖДЛС!', -1)
end
Измени Z координату, ты ищешь своего персонажа по факту на 1 линии, сделай так
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1898, 10, false) then

Пытаюсь сделать такую функцию, если я нахожусь на указанной территории, то произойдет какое то действие, но либо я координаты неправильно ввожу, либо я что то не то делаю. Что тут надо переделать? (координаты ждлс - x: 1769.3217773438 y: -1898.7712402344 z: 13.640000343323)
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 13, 1751, -1898, 13, false) then
      sampAddChatMessage('Вы находитесь на территории ЖДЛС!', -1)
end
1718098090080.png

Ты искал так
а получиться вот так


1718098110036.png
 

$Mr.R1ch$

Активный
Автор темы
142
28
Измени Z координату, ты ищешь своего персонажа по факту на 1 линии, сделай так
Lua:
if isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1898, 10, false) then


Посмотреть вложение 243135
Ты искал так
а получиться вот так


Посмотреть вложение 243136
Все работает, координата нашлась, но вот действие не происходит, от слово совсем.
Lua:
function main()
while not isSampAvailable() do
        wait(100)
    end
    wait(500)
  while true do wait(0)
if isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1898, 10, true) then
     sampAddChatMessage('Вы в зоне', -1)
            end
      end
end
 

VanoKLR

Известный
731
422
Все работает, координата нашлась, но вот действие не происходит, от слово совсем.
Lua:
function main()
while not isSampAvailable() do
        wait(100)
    end
    wait(500)
  while true do wait(0)
if isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1898, 10, true) then
     sampAddChatMessage('Вы в зоне', -1)
            end
      end
end
True -> false, ты ищешь в сфере вместо куба
 
  • Клоун
Реакции: Samirca

ChаtGPT

Активный
324
74
Если визуализировать твой куб, получится вот так(1 скрин), кубом и не пахнет. А всё потому, что укзал в первой и второй координате Y одинаковое значение (-1898), если вторую Y изменить -1905, это уже будет похоже на куб и проверка пройдёт. isCharInArea3d(PLAYER_PED, 1769, -1898, 15, 1751, -1905, 10, false)
 

Вложения

  • sa-mp-298.png
    sa-mp-298.png
    2.1 MB · Просмотры: 20
  • sa-mp-299.png
    sa-mp-299.png
    2.1 MB · Просмотры: 19