testSphereAgainstWorld
Testa uma esfera contra o mundo e descreve o que ela encostou.
Sintaxe
Seção intitulada “Sintaxe”bool, element, number, number, number, number, number, number, number, number, string testSphereAgainstWorld ( number x, number y, number z, number raio [, element elementoIgnorado, bool verificarPredios = true, bool verificarVeiculos = true, bool verificarPeds = true, bool verificarObjetos = true, bool verificarDummies = true, bool ignorarObjetosDeCamera = false ] )Parâmetros
Seção intitulada “Parâmetros”| Nome | Tipo | Padrão | Descrição |
|---|---|---|---|
x, y, z | number | — | Centro da esfera. |
raio | number | — | Raio da esfera. |
elementoIgnorado | element | — | Elemento que a esfera atravessa. Omita ou passe nil para nenhum. |
verificarPredios | bool | true | Considerar prédios e cenário fixo. |
verificarVeiculos | bool | true | Considerar veículos. |
verificarPeds | bool | true | Considerar peds e jogadores. |
verificarObjetos | bool | true | Considerar objetos. |
verificarDummies | bool | true | Considerar dummies. |
ignorarObjetosDeCamera | bool | false | Ignorar os objetos que a câmera também ignora. |
Retorno
Seção intitulada “Retorno”Sempre 11 valores, mesmo quando não houve colisão:
| Posição | Descrição |
|---|---|
| 1 | true se colidiu, false caso contrário. |
| 2 | Elemento atingido, ou nil. |
| 3 | ID do modelo atingido. |
| 4, 5, 6 | Posição do que foi atingido. |
| 7, 8, 9 | Rotação do que foi atingido, em graus. |
| 10 | ID do modelo de LOD. |
| 11 | Tipo do que foi atingido, como texto. |
Os valores possíveis da posição 11:
| Texto | Significado |
|---|---|
"building" | Prédio ou cenário fixo. |
"vehicle" | Veículo. |
"ped" | Ped ou jogador. |
"object" | Objeto. |
"dummy" | Dummy. |
"unknown" | Nada foi atingido, ou o tipo não é reconhecido. |
Os argumentos são conferidos de forma estrita: uma coordenada ou raio que não seja número (ou seja NaN ou infinito), um elementoIgnorado que não seja um elemento existente — false incluído — ou uma opção que não seja booleana gera um erro de Lua.
Exemplo
Seção intitulada “Exemplo”-- cabe um veiculo aqui?local colidiu = testSphereAgainstWorld(x, y, z, 3.0)if colidiu then outputDebugString("espaco ocupado")endVeja também
Seção intitulada “Veja também”processLineOfSight— Traça uma linha entre dois pontos e descreve o primeiro obstáculo encontrado.isLineOfSightClear— Responde apenas se existe caminho livre entre dois pontos, sem descrever o obstáculo.processLineAgainstMesh— Traça uma linha contra a malha de um elemento específico e devolve o ponto exato do triângulo atingido.getGroundPosition— Devolve a altura do chão logo abaixo de um ponto.getRoofPosition— Devolve a altura do teto logo acima de um ponto.