NeedSumHelp Posted November 6, 2010 Share Posted November 6, 2010 function MoneyForWinner() local alivePlayers = getAlivePlayers() if #alivePlayers == 1 then local playername = getPlayerName( alivePlayers[1] ) local serial = getPlayerSerial(alivePlayers[1]) local Cash = executeSQLSelect( "GREENTHING", "Cash","serial = '" .. serial .. "'") Cashs = tonumber(Cash[1]["Cash"]) + 150 setElementData(alivePlayers[1] ,"data.playername",playername,true) setElementData(alivePlayers[1] ,"data.Cash",Cashs,true) executeSQLUpdate ( "GREENTHING", "Cash = '"..Cashs.."'","serial = '" .. serial .. "'") end end addEventHandler("onPlayerWasted", rootElement , MoneyForWinner) it says bad argument @ getplayerserial and getplayername This should give winner 150 rubla but w/e its not doing it and im sure everything is correct.. what i should do ? Link to comment
dzek (varez) Posted November 6, 2010 Share Posted November 6, 2010 im not sure if you should use 1 as table index. try: if #alivePlayers == 1 then for key,val in ipairs(alivePlayers) do -- your stuff here -- val is player element end Link to comment
NeedSumHelp Posted November 6, 2010 Author Share Posted November 6, 2010 for key,val in ipairs(alivePlayers) do i changed to example: local playername = getPlayerName( val[1] ) and no errors but still not working Link to comment
dzek (varez) Posted November 6, 2010 Share Posted November 6, 2010 show full code pls Link to comment
NeedSumHelp Posted November 6, 2010 Author Share Posted November 6, 2010 function MoneyForWinner() local alivePlayers = getAlivePlayers() if #alivePlayers == 1 then for key,val in ipairs(alivePlayers) do local playername = getPlayerName( val[1] ) local serial = getPlayerSerial(val[1]) local Cash = executeSQLSelect( "GREENTHING", "Cash","serial = '" .. serial .. "'") Cashs = tonumber(Cash[1]["Cash"]) + 150 setElementData(val[1] ,"data.playername",playername,true) setElementData(val[1] ,"data.Cash",Cashs,true) executeSQLUpdate ( "GREENTHING", "Cash = '"..Cashs.."'","serial = '" .. serial .. "'") end end addEventHandler("onPlayerWasted", rootElement , MoneyForWinner) Or still error.. attempt to index local 'val' (a userdata value) line local playername = getPlayerName( val[1] ) Link to comment
dzek (varez) Posted November 6, 2010 Share Posted November 6, 2010 replace val[1] with only val Link to comment
NeedSumHelp Posted November 6, 2010 Author Share Posted November 6, 2010 ah right, tought it will change it for everyone but yeah u were right thanks for very very fast help.. never seen such speed in forums im serious ur the best moderator i ever seen and i dint try to rise ur ego ^^ ok again, thank you Link to comment
dzek (varez) Posted November 6, 2010 Share Posted November 6, 2010 umm, well, thanks, being some kind of no-life makes my replies fast hope i'll get new job soon.. whatever.. glad i helped 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