VictorScripting Posted October 20, 2019 Share Posted October 20, 2019 Olá bom dia então pessoal tenho um mod que quanto ocorre uma transação de dinheiro ele faz um som. Mais ele funcionava com getElementData e eu mudei para getPlayerMoney, ele n funcionou aew fui mexendo até conseguir arrumar mais fica fazendo um som toda hora como se estivesse caindo dinheiro direto !!!!! addEventHandler("onClientElementDataChange", root, function(dataName, oldValue) if source == localPlayer then local newValue = getPlayerMoney(source) or 0 if newValue then moneyTick = getTickCount() + 5000 moneyChange = math.abs(newValue - oldValue) if newValue < oldValue then moneyChange = "-$"..moneyChange cor[2] = tocolor(255, 0, 0, 255) else moneyChange = "+$"..moneyChange cor[2] = tocolor(0, 255, 0, 255) end playSound("money.mp3", false) end elseif source == localPlayer then --loadStats() end end) Link to comment
Other Languages Moderators Lord Henry Posted October 20, 2019 Other Languages Moderators Share Posted October 20, 2019 O evento onClientElementDataChange é ativado sempre que alguma data de algum elemento for alterada, tanto server-side quanto client-side. Isso significa que o som vai tocar sempre que algum script usar setElementData em algum elemento. Você pode adicionar uma condição para tocar o áudio somente se a data que foi alterada possui tal nome. Você pode usar o parâmetro dataName. 1 Link to comment
VictorScripting Posted October 20, 2019 Author Share Posted October 20, 2019 14 minutes ago, Lord Henry said: O evento onClientElementDataChange é ativado sempre que alguma data de algum elemento for alterada, tanto server-side quanto client-side. Isso significa que o som vai tocar sempre que algum script usar setElementData em algum elemento. Você pode adicionar uma condição para tocar o áudio somente se a data que foi alterada possui tal nome. Você pode usar o parâmetro dataName. como faço pra dizer que o dataname é o getPlayerMoney ? Link to comment
DNL291 Posted October 20, 2019 Share Posted October 20, 2019 Se você trocou por get/SetPlayerMoney esse evento será inútil, onClientElementDataChange é um evento de elementData (setElementData). Em vez disso você terá que usar setTimer ou o evento onClientRender para verificar a mudança do getPlayerMoney. 1 Link to comment
VictorScripting Posted October 20, 2019 Author Share Posted October 20, 2019 1 hour ago, DNL291 said: Se você trocou por get/SetPlayerMoney esse evento será inútil, onClientElementDataChange é um evento de elementData (setElementData). Em vez disso você terá que usar setTimer ou o evento onClientRender para verificar a mudança do getPlayerMoney. ok mais agora no lugar de: moneyChange = math.abs(newValue - oldValue) coloco oque em oldvalue ???????????? 1 hour ago, DNL291 said: Se você trocou por get/SetPlayerMoney esse evento será inútil, onClientElementDataChange é um evento de elementData (setElementData). Em vez disso você terá que usar setTimer ou o evento onClientRender para verificar a mudança do getPlayerMoney. ficou assim está correto ? function somDimDim() if source == localPlayer then local newValue = getPlayerMoney(source) or 0 if newValue then moneyTick = getTickCount() + 5000 moneyChange = math.abs(newValue - oldValue) if newValue < oldValue then moneyChange = "-$"..moneyChange cor[2] = tocolor(255, 0, 0, 255) else moneyChange = "+$"..moneyChange cor[2] = tocolor(0, 255, 0, 255) end playSound("money.mp3", false) end elseif source == localPlayer then --loadStats() end end addEventHandler ( "onClientRender", root, somDimDim ) Link to comment
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