botshara Posted September 19, 2017 Share Posted September 19, 2017 (edited) I want load data from triggerServerEvent but I get boolean in client side. I have records in db and i tested server side loop, it works and dont return boolean. Server side function ShowTopKillers() allData = {} local data = dbQuery(db, "SELECT * FROM top_killers ORDER BY kills DESC LIMIT 50") local result = dbPoll(data, -1) for ind, val in ipairs( result ) do local killer = {} killer.nick = val.nick killer.kills = val.kills killer.deaths = val.deaths --killer.kd = val.kd allData[killer.nick] = killer end return allData end addEvent("ShowTopKillers", true) addEventHandler("ShowTopKillers", getRootElement(), ShowTopKillers) Client side allKilers = triggerServerEvent("ShowTopKillers", localPlayer) killerCounter = 1 for id, killer in pairs(allKilers) do local row = guiGridListAddRow ( killersScreenGridList) guiGridListSetItemText ( killersScreenGridList, row, 1, killerCounter, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 2, killer.nick, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 3, killer.kills, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 4, killer.deaths, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 5, 0.69, false, true ) killerCounter = killerCounter +1 end Edited September 19, 2017 by botshara Link to comment
koragg Posted September 19, 2017 Share Posted September 19, 2017 I may be wrong but I've never seen triggerServerEvent be used like this, assigned to a variable. Link to comment
Captain Cody Posted September 19, 2017 Share Posted September 19, 2017 (edited) TriggerServer side event has to be paired with triggerClientEvent to return results. function ShowTopKillers() allData = {} local data = dbQuery(db, "SELECT * FROM top_killers ORDER BY kills DESC LIMIT 50") local result = dbPoll(data, -1) for ind, val in ipairs( result ) do local killer = {} killer.nick = val.nick killer.kills = val.kills killer.deaths = val.deaths --killer.kd = val.kd allData[killer.nick] = killer end triggerClientEvent ( client, "ShowTopKillersC", client, allData ) end addEvent("ShowTopKillers", true) addEventHandler("ShowTopKillers", getRootElement(), ShowTopKillers) Client - triggerServerEvent("ShowTopKillers", localPlayer) function ShowTopKillers(allKilers) killerCounter = 1 for id, killer in pairs(allKilers) do local row = guiGridListAddRow ( killersScreenGridList) guiGridListSetItemText ( killersScreenGridList, row, 1, killerCounter, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 2, killer.nick, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 3, killer.kills, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 4, killer.deaths, false, false ) guiGridListSetItemText ( killersScreenGridList, row, 5, 0.69, false, true ) killerCounter = killerCounter +1 end end addEvent("ShowTopKillersC", true) addEventHandler("ShowTopKillersC", localPlayer, ShowTopKillers) - Not Tested. If you want this to happen every time a certain function is called - function ShowTopKillers() triggerServerEvent("ShowTopKillers", localPlayer) end Edited September 19, 2017 by CodyJ(L) 1 Link to comment
botshara Posted September 21, 2017 Author Share Posted September 21, 2017 Why onClientGUIClick doesnt work on guiCreateTab ? tabZombies = guiCreateTab( "Top 50 zombie killers", tabs ) addEventHandler("onClientGUIClick", tabZombies, showZombieKillers, false ) function showZombieKillers() outputChatBox("hi") end Link to comment
botshara Posted September 25, 2017 Author Share Posted September 25, 2017 It is possible automatically add oder by for column when open GUI? 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