BNR Athena Posted August 28, 2020 Posted August 28, 2020 Quando eu vou verificar se o dinheiro da pessoa, ele retorna que o getPlayerMoney() não pode ter o valor nil, no caso ele não reconhece o player que está fazendo a ação de comprar o carro, isso faz com que o script não funcione. Alguém pode me ajudar a arrumar o script, ficaria bem agradecida Quote Server function abriPainel0(source) triggerClientEvent(source, "Abrir_painel", source) end addEventHandler("onMarkerHit", mc0, abriPainel0) function comprarcarro0(source) local acc = getAccountPlayer(source) or "ninguém" local money = getPlayerMoney(source) or 0 if money >= c0[2] then if getElementData(source,"Comprou") == false then setElementData(source,"Comprou",true) setTimer(comprar, 10000, 1) takePlayerMoney(source, c0[2]) createVehicle(c0[3], g0[3], g0[4], g0[5]+2) else outputChatBox("Espere 10 segundos",source,255,255,255,true) end else outputChatBox("Você não possui dinheiro você precisa de R$ "..c0[2]-money,source,255,255,255,true) outputChatBox("O Player é o: "..tostring(acc)) end end addEvent("comprarc0", true) addEventHandler("comprarc0", root, comprarcarro0) function comprar() setElementData(source,"Comprou",false) outputChatBox("Você já pode comprar outro veiculo.",source,255,255,255,true) end
Tommy. Posted August 28, 2020 Posted August 28, 2020 Mostra o triggerServerEvent do (comprarc0) olhando o seu código aí, parece estar tudo certo
BNR Athena Posted August 28, 2020 Author Posted August 28, 2020 (edited) function tc0() local sX, sY = guiGetScreenSize() showCursor(true) guiSetVisible(tw, false) tw = guiCreateWindow (sX/2 -200, sY/2 +150, 400, 80, "Painel de Compra BNR", false) texto = guiCreateLabel (40, 20, 400, 40, "Você está olhando o "..c0[1]..", ele custa o valor de R$ "..c0[2], false, tw) bbcomprar = guiCreateButton(0 , 40, 200-10, 50, "comprar", false, tw) bbfechar = guiCreateButton(200+10 , 40, 200-10, 50, "Cancelar", false, tw) addEventHandler("onClientGUIClick", bbcomprar, comprar0, false) addEventHandler("onClientGUIClick", bbfechar, fechar0, false) end function ver0() guiSetVisible(tw, true) showCursor(true) end addEvent("Abrir_painel", true) addEventHandler("Abrir_painel", root, tc0) function comprar0(button, state) if button == "left" and state == "up" then triggerServerEvent("comprarc0", root) end end function fechar0(button, state) if button == "left" and state == "up" then guiSetVisible(tw, false) showCursor(false) end end Edited August 28, 2020 by BNR Athena
Monteiro Brasil Vida Unica Posted August 28, 2020 Posted August 28, 2020 triggerServerEvent("comprarc0", root) está usando o root como parametro o root pega todos os players que tem online o certo e usar o localPlayer mais como a sua function tem 1 parametro function comprarcarro0(source) parmetro source e o triggerServerEvent ja pede um parametro obrigatorio entao o certo e triggerServerEvent("comprarc0",localPlayer ,localPlayer ) mais caso vc tire o parametro source function comprarcarro0() so sera preciso 1 localplayer no trigger triggerServerEvent("comprarc0",localPlayer ) mais ai vc tera que substituir o source por localPlayer 1
Tommy. Posted August 29, 2020 Posted August 29, 2020 16 hours ago, BNR Athena said: function tc0() local sX, sY = guiGetScreenSize() showCursor(true) guiSetVisible(tw, false) tw = guiCreateWindow (sX/2 -200, sY/2 +150, 400, 80, "Painel de Compra BNR", false) texto = guiCreateLabel (40, 20, 400, 40, "Você está olhando o "..c0[1]..", ele custa o valor de R$ "..c0[2], false, tw) bbcomprar = guiCreateButton(0 , 40, 200-10, 50, "comprar", false, tw) bbfechar = guiCreateButton(200+10 , 40, 200-10, 50, "Cancelar", false, tw) addEventHandler("onClientGUIClick", bbcomprar, comprar0, false) addEventHandler("onClientGUIClick", bbfechar, fechar0, false) end function ver0() guiSetVisible(tw, true) showCursor(true) end addEvent("Abrir_painel", true) addEventHandler("Abrir_painel", root, tc0) function comprar0(button, state) if button == "left" and state == "up" then triggerServerEvent("comprarc0", root) end end function fechar0(button, state) if button == "left" and state == "up" then guiSetVisible(tw, false) showCursor(false) end end Bem, vamos lá, no triggerServerEvent, você vai alterar o root para localPlayer, e na função comprarcarro0 você irá tirar o parâmetro source, por padrão o source já vai ser o player
ber Posted August 31, 2020 Posted August 31, 2020 Em triggerEvents e addEventHandler é sempre bom usar resourceRoot, pois aquele evento só será acionado pelo mesmo script. Aí você passa o player ou qualquer outra variável através de argumento.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now