Hero192 Posted July 22, 2015 Share Posted July 22, 2015 Hello guys im trying to make a small shop for 24/7 Shop but i stuck again in guiGridList and in triggering to take player and to buy weapon from list also something in guiGridList broken im not professional on it,please helps me to solve this i will be happy for that, thanks in advance. --Client Side: local client = getLocalPlayer() window = guiCreateWindow(519,214,347,282,"24/7 Shop",false) sevenShopList = guiCreateGridList(11,25,326,218,false,window) guiGridListSetSelectionMode(sevenShopList,0) guiGridListAddColumn(sevenShopList,"ID:",0.19,window) guiGridListAddColumn(sevenShopList,"Name:",0.38,window) guiGridListAddColumn(sevenShopList,"Price",0.38,window) buy = guiCreateButton(13,249,134,23,"Buy",false,window) reject = guiCreateButton(199,249,134,23,"Close ",false,window) guiWindowSetSizable(window,false) guiSetVisible (window,false) addEvent("sevenShop:showGUI",true) addEventHandler("sevenShop:showGUI",root, function (sevenShop) guiGridListClear(sevenShop) for i,v in pairs(sevenShop) do local row = guiGridListAddRow(sevenShop) guiGridListSetItemText(sevenShopList, row, 1, getWeaponNameFromID(v[2]), false, false) end guiSetVisible (window,true) showCursor(true) end) addEventHandler("onClientGUIClick",root, function () if (source == reject) then guiSetVisible(window, false) showCursor(false) elseif (source == accept) then local weaponName = guiGridListGetItemText(sevenShopList,guiGridListGetSelectedItem(sevenShopList),2) if row and col and row ~= -1 and col ~= -1 then local weaponName = guiGridListGetItemText(sevenShopList, row, col) triggerServerEvent("weapon_Name",client,client,getWeaponNameFromID(weaponName)) guiSetVisible(window,false) showCursor(false) end end end) --Server Side: local sevenshopmarkers = { {x=2184.56, y=1996.33, z=10.82, size=1.5, int=0, dim=0, r=0, g=165, b=180, a=170} } local sevenShoplist = { --RandomID[1],WeaponID[2],Price[3],ItemPriceTable[4]. {1,1,"100$",100}, {2,2,"2,400$",2400}, {3,3,"1,000$",1000}, {4,4,"1,000$",1000}, {5,5,"1,000$",1000}, {6,6,"1,000$",1000}, {7,7,"1,000$",1000}, {8,8,"1,000$",1000}, {9,9,"1,000$",1000}, {10,10,"1,000$",1000}, } addEventHandler("onResourceStart",resourceRoot, function () for index, pos in pairs(sevenshopmarkers) do local sevenshopmarkers = createMarker(pos.x, pos.y, pos.z-1, "cylinder", pos.size, pos.r, pos.g, pos.b, pos.a) setElementInterior (sevenshopmarkers, pos.int) setElementDimension(sevenshopmarkers, pos.dim) addEventHandler("onMarkerHit",sevenshopmarkers,MarkerHit) createBlip(pos.bx, pos.by, 100, 17, 2, 255, 255, 255, 255, 0, 400) end end) function MarkerHit(player, dim) if (dim and getElementType(player) == "player") then triggerClientEvent(player,"sevenShop:showGUI",player,sevenShop) end end g_Root = getRootElement() resourceRoot = getResourceRootElement(getThisResource()) function giveClientWeapons(sevenShop) giveWeapon(client, getWeaponIDFromName(sevenShoplist),1) takePlayerMoney( client, 100 ) end addEvent( "weapon_Name", true ) addEventHandler("weapon_Name", g_Root, giveClientWeapons) Link to comment
1B0Y Posted July 22, 2015 Share Posted July 22, 2015 Try this: function onStart() window = guiCreateWindow(519,214,347,282,"24/7 Shop",false) sevenShopList = guiCreateGridList(11,25,326,218,false,window) guiGridListSetSelectionMode(sevenShopList,0) local id = guiGridListAddColumn(sevenShopList,"ID:",0.19,window) local wepname = guiGridListAddColumn(sevenShopList,"Name:",0.38,window) local wepprice = guiGridListAddColumn(sevenShopList,"Price",0.38,window) buy = guiCreateButton(13,249,134,23,"Buy",false,window) reject = guiCreateButton(199,249,134,23,"Close ",false,window) guiWindowSetSizable(window,false) guiSetVisible (window,false) end addEventHandler("onClientResourceStart",resourceRoot,onStart) addEvent("sevenShop:showGUI",true) addEventHandler("sevenShop:showGUI",root, function (sevenShop) guiGridListClear(sevenShop) for i,v in ipairs(sevenShop) do local row = guiGridListAddRow(sevenShop) guiGridListSetItemText(sevenShopList, row, wepname, getWeaponNameFromID(v[2]), false, false) guiGridListSetItemText(sevenShopList, row, id, v[1], false, false) guiGridListSetItemText(sevenShopList, row, wepprice, v[3], false, false) end guiSetVisible (window,true) showCursor(true) end) addEventHandler("onClientGUIClick",root, function () if (source == reject) then guiSetVisible(window, false) showCursor(false) elseif (source == accept) then local weaponName = guiGridListGetItemText(sevenShopList,guiGridListGetSelectedItem(sevenShopList),2) if row and col and row ~= -1 and col ~= -1 then local weaponName = guiGridListGetItemText(sevenShopList, row, col) triggerServerEvent("weapon_Name",client,client,getWeaponNameFromID(weaponName)) guiSetVisible(window,false) showCursor(false) end end end) Link to comment
Hero192 Posted July 22, 2015 Author Share Posted July 22, 2015 Anyone it still doesn't working Link to comment
GTX Posted July 22, 2015 Share Posted July 22, 2015 Such amateur mistakes, lol. local sevenshopmarkers = { {x=2184.56, y=1996.33, z=10.82, size=1.5, int=0, dim=0, r=0, g=165, b=180, a=170} } local sevenShoplist = { --RandomID[1],WeaponID[2],Price[3],ItemPriceTable[4]. {1,1,"100$",100}, {2,2,"2,400$",2400}, {3,3,"1,000$",1000}, {4,4,"1,000$",1000}, {5,5,"1,000$",1000}, {6,6,"1,000$",1000}, {7,7,"1,000$",1000}, {8,8,"1,000$",1000}, {9,9,"1,000$",1000}, {10,10,"1,000$",1000}, } addEventHandler("onResourceStart",resourceRoot, function () for index, pos in pairs(sevenshopmarkers) do local sevenshopmarkers = createMarker(pos.x, pos.y, pos.z-1, "cylinder", pos.size, pos.r, pos.g, pos.b, pos.a) setElementInterior (sevenshopmarkers, pos.int) setElementDimension(sevenshopmarkers, pos.dim) addEventHandler("onMarkerHit",sevenshopmarkers,MarkerHit) createBlip(pos.bx, pos.by, 100, 17, 2, 255, 255, 255, 255, 0, 400) end end) function MarkerHit(player, dim) if (dim and getElementType(player) == "player") then triggerClientEvent(player,"sevenShop:showGUI",player,sevenShoplist) end end g_Root = getRootElement() resourceRoot = getResourceRootElement(getThisResource()) function giveClientWeapons(sevenShop) giveWeapon(client, getWeaponIDFromName(sevenShop),1) takePlayerMoney( client, 100 ) end addEvent( "weapon_Name", true ) addEventHandler("weapon_Name", g_Root, giveClientWeapons) Link to comment
Hero192 Posted July 22, 2015 Author Share Posted July 22, 2015 Thanks but i still can't buy weapons from the list Link to comment
Hero192 Posted July 22, 2015 Author Share Posted July 22, 2015 Also some Warnings,any idea? WARNING:client.lua:21: Bad argument @'guiGridListAddRow'[Expected gui-element at argument 1,got table] WARNING:client.lua:22: Bad argument @'guiGridListSetitemText''[Expected number at argument 2,got boolean] WARNING:client.lua:23: Bad argument @'guiGridListSetitemText''[Expected number at argument 2,got boolean] WARNING:client.lua:24: Bad argument @'guiGridListSetitemText''[Expected number at argument 2,got boolean] Link to comment
Hero192 Posted July 22, 2015 Author Share Posted July 22, 2015 Hey,anyone knows how to handle this problem? Link to comment
GTX Posted July 23, 2015 Share Posted July 23, 2015 4 posts in 1 day? Are you sick? function onStart() window = guiCreateWindow(519,214,347,282,"24/7 Shop",false) sevenShopList = guiCreateGridList(11,25,326,218,false,window) guiGridListSetSelectionMode(sevenShopList,0) id = guiGridListAddColumn(sevenShopList,"ID:",0.19,window) wepname = guiGridListAddColumn(sevenShopList,"Name:",0.38,window) wepprice = guiGridListAddColumn(sevenShopList,"Price",0.38,window) buy = guiCreateButton(13,249,134,23,"Buy",false,window) reject = guiCreateButton(199,249,134,23,"Close ",false,window) guiWindowSetSizable(window,false) guiSetVisible (window,false) end addEventHandler("onClientResourceStart",resourceRoot,onStart) addEvent("sevenShop:showGUI",true) addEventHandler("sevenShop:showGUI",root, function (sevenShop) guiGridListClear(sevenShopList) for i,v in ipairs(sevenShop) do local row = guiGridListAddRow(sevenShopList) guiGridListSetItemText(sevenShopList, row, wepname, getWeaponNameFromID(v[2]), false, false) guiGridListSetItemText(sevenShopList, row, id, v[1], false, false) guiGridListSetItemText(sevenShopList, row, wepprice, v[3], false, false) end guiSetVisible (window,true) showCursor(true) end) addEventHandler("onClientGUIClick",root, function () if (source == reject) then guiSetVisible(window, false) showCursor(false) elseif (source == accept) then local weaponName = guiGridListGetItemText(sevenShopList,guiGridListGetSelectedItem(sevenShopList),2) if weaponName then triggerServerEvent("weapon_Name",localPlayer,weaponName) guiSetVisible(window,false) showCursor(false) end end end) local sevenshopmarkers = { {x=2184.56, y=1996.33, z=10.82, size=1.5, int=0, dim=0, r=0, g=165, b=180, a=170} } local sevenShoplist = { --RandomID[1],WeaponID[2],Price[3],ItemPriceTable[4]. {1,1,"100$",100}, {2,2,"2,400$",2400}, {3,3,"1,000$",1000}, {4,4,"1,000$",1000}, {5,5,"1,000$",1000}, {6,6,"1,000$",1000}, {7,7,"1,000$",1000}, {8,8,"1,000$",1000}, {9,9,"1,000$",1000}, {10,10,"1,000$",1000}, } addEventHandler("onResourceStart",resourceRoot, function () for index, pos in pairs(sevenshopmarkers) do local sevenshopmarkers = createMarker(pos.x, pos.y, pos.z-1, "cylinder", pos.size, pos.r, pos.g, pos.b, pos.a) setElementInterior (sevenshopmarkers, pos.int) setElementDimension(sevenshopmarkers, pos.dim) addEventHandler("onMarkerHit",sevenshopmarkers,MarkerHit) createBlip(pos.bx, pos.by, 100, 17, 2, 255, 255, 255, 255, 0, 400) end end) function MarkerHit(player, dim) if (dim and getElementType(player) == "player") then triggerClientEvent(player,"sevenShop:showGUI",player,sevenShoplist) end end g_Root = getRootElement() resourceRoot = getResourceRootElement(getThisResource()) function giveClientWeapons(sevenShop) giveWeapon(source, getWeaponIDFromName(sevenShop),1) takePlayerMoney( source, 100 ) end addEvent( "weapon_Name", true ) addEventHandler("weapon_Name", root, giveClientWeapons) 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