onClientClick
Disparado quando um botão do mouse é pressionado ou solto com o cursor visível.
A raiz (root).
Parâmetros
Seção intitulada “Parâmetros”| Posição | Nome | Tipo | Descrição |
|---|---|---|---|
| 1 | botao | string | "left", "right" ou "middle". |
| 2 | estado | string | "down" no clique, "up" ao soltar. |
| 3 | telaX | number | Posição do cursor em pixels, contada da esquerda. |
| 4 | telaY | number | Posição do cursor em pixels, contada do topo. |
| 5 | mundoX | number | Onde o clique bateu no mundo. |
| 6 | mundoY | number | Onde o clique bateu no mundo. |
| 7 | mundoZ | number | Onde o clique bateu no mundo. |
| 8 | elemento | element ou bool | O elemento sob o cursor, ou false quando o clique caiu no cenário ou no vazio. |
Cancelável
Seção intitulada “Cancelável”Não.
Os três valores de mundo vêm de um traçado do cursor para dentro da cena, até 300 unidades. Quando esse traçado não encontra nada, eles são o ponto final do traçado e o oitavo parâmetro é false. A roda do mouse não gera este evento: ela chega pelo onClientKey.
local botaoX, botaoY, botaoL, botaoA = 40, 40, 160, 36
addEventHandler("onClientRender", root, function() dxDrawRectangle(botaoX, botaoY, botaoL, botaoA, tocolor(30, 30, 30, 200)) dxDrawText("Abrir loja", botaoX, botaoY, botaoX + botaoL, botaoY + botaoA, tocolor(255, 255, 255, 255), 1, "default", "center", "center")end)
addEventHandler("onClientClick", root, function(botao, estado, x, y) if botao ~= "left" or estado ~= "down" then return end if x >= botaoX and x <= botaoX + botaoL and y >= botaoY and y <= botaoY + botaoA then outputDebugString("clicou na loja") endend)Clicar em um elemento do mundo é o outro uso comum:
Exemplo
Seção intitulada “Exemplo”addEventHandler("onClientClick", root, function(botao, estado, telaX, telaY, mundoX, mundoY, mundoZ, elemento) if botao ~= "left" or estado ~= "down" then return end if isElement(elemento) then outputDebugString("clicou em um " .. getElementType(elemento)) endend)Veja também
Seção intitulada “Veja também”onClientKey— Disparado quando uma tecla é pressionada ou solta.onClientCharacter— Disparado quando o jogador digita um caractere.onClientDoubleClick— Disparado quando um clique acontece logo depois de outro, no mesmo lugar.onClientCursorMove— Disparado quando o cursor do mouse se move.onClientPaste— Disparado quando o jogador aperta Ctrl + V.