Sign in to follow this  
PlaKS

Como usar a bindKey

Recommended Posts

Posted (edited)

Estava fazendo um sistema que em uma parte dele seria preciso utilizar uma bind dentro de um marker para criar um veiculo. Fiz tudo certo, porém, fiz no client-side e acabei sabendo que veículos criados no client-side serviriam apenas para "enfeite", tentei então aprender a como fazer bind no server-side, li na wiki do mta e vi videos relacionados a ela, mas não consegui fazer da maneira correta.

Ainda estou confuso com a função bindKey, então se tiver alguém que possa me explicar um pouco dela ou pelo menos me ajudar dizendo o que esta de errado no código, ficarei grato.

local g1 = createMarker (1517.796, -694.59, 92.00, "cylinder", 3.0, 184,0,0, 150)

function buffalo ()
	bindKey (source, "e", "down",
function(thePlayer, player)
    if isElementWithinMarker(thePlayer, g1) then
        createVehicle(551, 1517.6644287109,-689.70690917969,94.75)
    end
    end)
end 
addEventHandler ("onPlayerLogin", getRootElement(), buffalo)

 

Edited by PlaKS

Share this post


Link to post
Posted (edited)

Bem confuso oq vc tentou fazer... tente isso:

local g1 = createMarker (1517.796, -694.59, 92.00, "cylinder", 3.0, 184,0,0, 150)

function buffalo ()
	bindKey (source, "e", "down", criaVeh)
end 
addEventHandler ("onPlayerLogin", root, buffalo)

function criaVeh (keyPresser, key, keyState)
	if isElementWithinMarker (keyPresser, g1) then
		createVehicle (551, 1517.66, -689.7, 94.75)
	end
end

Edit: Não precisava criar outro tópico, pois este assunto é o mesmo que o outro.

Edited by Lord Henry
  • Thanks 1

Share this post


Link to post
Posted (edited)

Porque você criou outro tópico sendo que era o mesmo assunto?

---

Não é necessário usar bindKey, basta usar um trigger quando o veículo é criado desta forma:

Server-side:

function verifyCreateVeh (veh)
	createVehicle (402, 1517.172, -690.4, 94.75, 0, 0, 100)
end
addEvent ("onRequestCreateVeh", true)
addEventHandler ("onRequestCreateVeh", getRootElement(), verifyCreateVeh)

Client-side:

local g1 = createMarker (1517.796, -694.59, 92.00, "cylinder", 3.0, 184,0,0, 150)

addEventHandler ("onClientKey", root, function (btn, press)
	if isElementWithinMarker (localPlayer, g1) and press then
		if btn == "e" then 
			triggerServerEvent ("onRequestCreateVeh", localPlayer)
		end
	end
end)

 

Edited by Jonas^
  • Thanks 1

Share this post


Link to post
Posted (edited)

BindKey é mais leve do que trigger. Mas dependendo do script dele, as vezes é mais necessário manter client-side, e então o trigger seria a única opção.

Edited by Lord Henry
  • Like 1

Share this post


Link to post
13 minutes ago, Lord Henry said:

BindKey é mais leve do que trigger. Mas dependendo do script dele, as vezes é mais necessário manter client-side, e então o trigger seria a única opção.

No caso eu manteria client mas iria limitar a usar a cada x tempo pra evitar pessoas ficar chamado o trigger lá e evitar que spawnem 300 carros.

Share this post


Link to post
Posted (edited)

Havia criado outro tópico pois queria entender mais da função bindKey, diferente do outro que era algo mais voltado pra apenas uma parte dela, mas acho que eu deveria realmente ter perguntado no meu outro tópico, mesmo assim, obrigado pelas respostas.

Edited by PlaKS

Share this post


Link to post
28 minutes ago, PlaKS said:

Havia criado outro tópico pois queria entender mais da função bindKey, diferente do outro que era algo mais voltado pra apenas uma parte dela, mas acho que eu deveria realmente ter perguntado no meu outro tópico, mesmo assim, obrigado pelas respostas.

Entendi, mas na verdade poderia continuar lá sem problemas até porque tem a ver com o mesmo script e tal.

Share this post


Link to post

ok, me desculpe, sou meio novo aqui e não sei muito bem como funciona as coisas mas ja estou ciente sobre isso, obrigado!

Share this post


Link to post

Regras do fórum em vídeo:

 

Share this post


Link to post

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
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.