- Dokumentacja
- Funkcje serwera
- processLineAgainstMesh
Funkcja
processLineAgainstMesh
Sprawdza, czy odcinek przecina jeden konkretny element, traktując go jako kulę o jego promieniu (uproszczenie po stronie serwera). Zwraca punkt na odcinku najbliższy środka elementu.
Składnia
bool, float, float, float processLineAgainstMesh(element element, float sx, float sy, float sz, float ex, float ey, float ez)Argumenty
elementelement- Element do sprawdzenia.
sxfloat- X początku.
syfloat- Y początku.
szfloat- Z początku.
exfloat- X końca.
eyfloat- Y końca.
ezfloat- Z końca.
Zwraca
true i punkt x, y, z albo false.
Przykład
addCommandHandler("trafiam", function(player, _, id)
local target = getElementByID(id or "")
if not target then return end
local x, y, z = getElementPosition(player)
local hit = processLineAgainstMesh(target, x, y, z + 0.6, x, y + 50, z + 0.6)
outputChatBox(hit and "Trafiony" or "Pudlo", player)
end)