Jump to content

Ajuda em Dx


Recommended Posts

Estou com um problema que não consigo resolver, no client side, quando clico, o painel vai desaparecer ao clicar em trabalhar, so que no server side, quero que quando eu clico aparece uma mensagem, pode me ajudar?

(OBS: O Painel está funcionando tudo certinho, mesmo eu excluindo esses funcoes, ele ira continuar funcionando.)
CLIENT SIDE

function TrabTaxista (_,state)
if painel == true then
if ( state == "down" ) then
if ( isCursorOnElement(615, 224, 128, 32)) then
    removeEventHandler("onClientRender", root, Dx)
    showCursor(false)
end
end
end
end
addEventHandler ("onClientClick", root, TrabTaxista)
addEvent("TrabTaxi", true)
addEventHandler("TrabTaxi", root, TrabTaxista)

SERVER SIDE  --Acho que o erro está aqui (MINHA DÚVIDA: Mensagem não está aparecendo)

 

function TrabTaxista(source,player)
    triggerClientEvent(source, "TrabTaxi", source)
    outputChatBox("Agora é taxista",player,255,255,255,true)
end
addEventHandler ("onClientClick", player, TrabTaxista)

 

Link to comment

Eu percebi isso, so que oque estou tentando achar, no server side:

function TrabTaxista(source)
    triggerClientEvent(source, "TrabTaxi", source)
    outputChatBox("Agora é taxista",source,255,255,255,true)
end
addEventHandler ("onClientClick", root, TrabTaxista)

esse ai encima é o server side, ali no event handler, oque é coloco?

Link to comment

SERVER-SIDE

function TrabTaxista(source, player)
	triggerClientEvent(source, "TrabTaxi", source)
	outputChatBox("Agora é taxista",player,255,255,255,true)
end
addEvent("TrabTaxi", true)
addEventHandler("TrabTaxi", root, TrabTaxista)

CLIENT SIDE

function TrabTaxista (_,state)
if painel == true then
if ( state == "down" ) then
if ( isCursorOnElement(615, 224, 128, 32)) then
    removeEventHandler("onClientRender", root, Dx)
    showCursor(false)
end
end
end
end
addEventHandler ("onClientClick", root, TrabTaxista)
addEvent("TrabTaxi", true)
addEventHandler("TrabTaxi", root, TrabTaxista)

no client Quando o jogador clicar no botão do meu painel, o painel vai fechar, e no server side, quando apertar no mesmo botao, para mandar uma mensagem para ele, estou tentando consertar isso e não está funcionado

Client side> Clicar botão taxi e fechar painel

Server side> clicar botão taxi e mandar msg

Link to comment

+ ou - isso, eu queria fazer funções sobre a Acl, e no client-side isso não funciona, ja tentei fazer muito, e pra min so funcionou no server-siude, então estou tentando fazer para que no client side ao clicar ele feche o botão e no server-side eu faça as funções

Link to comment

Pelo o que eu entendi, o que vc quer fazer é mais ou menos isso ae:

function executions(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement)
	if painel == true then
		if button == "left" and state == "down" then
			outputChatBox("Você agora trabalha de Taxi", 255, 255, 255)
			removeEventHandler("onClientRender", root, Dx)
			painel = false
			showCursor(false)
		end
	end
end
addEventHandler("onClientClick", root, executions)

 

Link to comment
1 minute ago, #DeltaSCR said:

Pelo o que eu entendi, o que vc quer fazer é mais ou menos isso ae:


function executions(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement)
	if painel == true then
		if button == "left" and state == "down" then
			outputChatBox("Você agora trabalha de Taxi", 255, 255, 255)
			removeEventHandler("onClientRender", root, Dx)
			painel = false
			showCursor(false)
		end
	end
end
addEventHandler("onClientClick", root, executions)

 

Se eu usar o isObjectInAcl vai funcionar?

Link to comment
  • Other Languages Moderators

É mais fácil simplesmente abrir o painel pelo servidor com um triggerClientEvent. Só que antes desse trigger, fazer a verificação de ACL.

Dessa forma, quem não estiver na ACL não vai nem conseguir abrir o painel.

Edited by Lord Henry
  • Thanks 1
Link to comment

Obrigado pela ajuda, a mensagem foi! Já foi um passo! Muito obrigado!

Agora é lutar pra conseguir add na acl kk 

Daí pra quando clicar, no server-side, qual é os scripts para add na acl...    ?

Edited by ODutii
a
Link to comment
  • Other Languages Moderators

Esqueça a ideia de clicar no painel pelo server-side.

Como eu falei, faça a verificação de ACL antes de abrir o painel, ao invés de verificar ao clicar no botão.

Edited by Lord Henry
Link to comment

( SERVER SIDE )
 

function taxx(thePlayer)
    local accName = getAccountName ( getPlayerAccount (thePlayer) )
    if aclGroupAddObject (aclGetGroup("Taxista"), "user."..accName) then
        outputChatBox("Added",thePlayer,255,255,255,true)
end
end
addEvent("trabtax", true)
addEventHandler("trabtax", root, taxx)

( CLIENT SIDE )

function TrabTaxista (_,state)
if painel == true then
if ( state == "down" ) then
if ( isCursorOnElement(615, 224, 128, 32)) then
    removeEventHandler("onClientRender", root, Dx)
    showCursor(false)
    outputChatBox("Agora é taxista",255,255,255,true)
    painel = false
    triggerClientEvent ("trabtax", getLocalPlayer())
end
end
end
end
addEventHandler ("onClientClick", root, TrabTaxista)

Não está adicionando na Acl... qual o erro

Link to comment

Você esta usando triggerClientEvent no mesmo lado, nunca vai funcionar, fiz um upgrade no seu código:

Client

function TrabTaxista (_, state)
	if painel == true then
		if (state == "down") then
			if (isCursorOnElement (615, 224, 128, 32)) then
				removeEventHandler ("onClientRender", root, Dx)
				showCursor (false)
				painel = false
				triggerServerEvent ("trabtax", getLocalPlayer())
				-- outputChatBox ("Agora é taxista", 255, 255, 255)
				-- triggerClientEvent ("trabtax", getLocalPlayer()) -- Erro aqui, ''triggerClientEvent''.
			end
		end
	end
end
addEventHandler ("onClientClick", root, TrabTaxista)

Server

function taxx ()
	if (isObjectInACLGroup ("user."..getAccountName (getPlayerAccount (client)), aclGetGroup("Taxista"))) then -- Se o jogador já estiver na acl, então:
		outputChatBox ("Erro! Você já está no trabalho de taxista!", client, 255, 30, 30)
	else -- Senão:
		aclGroupAddObject (aclGetGroup("Taxista"), "user."..getAccountName (getPlayerAccount (client))) -- Adiciona o jogador na acl.
		outputChatBox ("Parabéns! Agora você é um taxista!", client, 0, 255, 0)
	end
end
addEvent ("trabtax", true)
addEventHandler ("trabtax", root, taxx)

 

  • Thanks 1
Link to comment

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...