Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 client defaultlinks = {} defaultlinks[1] = {"", "Edit these from client.lua file"} defaultlinks[2] = {"", ""} defaultlinks[3] = {"", ""} defaultlinks[4] = {"", ""} defaultlinks[5] = {"", ""} defaultlinks[6] = {"", ""} defaultlinks[7] = {"", ""} defaultlinks[8] = {"", ""} openKey = "f5" maxdistance = 100 defaultdistance = 50 --//Dont edit these! triggerServerEvent ("clientIsReady", getRootElement()) width, height = guiGetScreenSize () speakers = {} linkTable = {} selectedURLName = "N/A" function startScript () --//Create main GUI mainWindow = guiCreateWindow ((width/2) - (500/2), (height/2) - (417/2), 500, 417, "Speaker system", false) guiWindowSetSizable (mainWindow, false) --Buttons and event handlers closeButton = guiCreateButton (450, 25, 40, 35, "Close", false, mainWindow) addEventHandler ("onClientGUIClick", closeButton, closeGUI) createButton = guiCreateButton (30, 87, 80, 40, "Create speaker", false, mainWindow) addEventHandler ("onClientGUIClick", createButton, onCreateSpeakerKlick) destroyButton = guiCreateButton (130, 87, 80, 40, "Destroy speaker", false, mainWindow) addEventHandler ("onClientGUIClick", destroyButton, onDestroySpeakerClick) myLinksButton = guiCreateButton (420, 114, 70, 35, "My links", false, mainWindow) addEventHandler ("onClientGUIClick", myLinksButton, onMyLinksButtonClick) guiSetEnabled (myLinksButton, false) --URL Stuff guiCreateLabel (90, 23, 100, 30, "Radio URL:", false, mainWindow) urlEdit = guiCreateEdit (22, 44, 200, 35, "", false, mainWindow) --50 --Max distance guiCreateLabel (259, 23, 200, 30, "Max distance (1 - " .. tostring(maxdistance) .. "):", false, mainWindow) distanceEdit = guiCreateEdit (290, 44, 50, 35, tostring(defaultdistance), false, mainWindow) -- nowPlayingText = guiCreateLabel (34, 133, 70, 30, "Now playing:", false, mainWindow) guiSetVisible (nowPlayingText, false) nowPlayingEditLabel = guiCreateLabel (112, 133, 288, 30, "-", false, mainWindow) guiSetVisible (nowPlayingEditLabel, false) guiCreateLabel (25, 145, 600, 30, "_______________________________________________________________", false, mainWindow) --Links --Edit 1 edit1 = guiCreateEdit (105, 168, 313, 23, defaultlinks[1][2], false, mainWindow) guiCreateLabel (30, 170, 200, 30, defaultlinks[1][1], false, mainWindow) guiEditSetReadOnly (edit1, true) defaultUseButton1 = guiCreateButton (423, 168, 40, 23, "use", false, mainWindow) --Edit 2 edit2 = guiCreateEdit (105, 198, 313, 23, defaultlinks[2][2], false, mainWindow) guiCreateLabel (30, 200, 200, 30, defaultlinks[2][1], false, mainWindow) guiEditSetReadOnly (edit2, true) defaultUseButton2 = guiCreateButton (423, 198, 40, 23, "use", false, mainWindow) --Edit 3 edit3 = guiCreateEdit (105, 228, 313, 23, defaultlinks[3][2], false, mainWindow) guiCreateLabel (30, 230, 200, 30, defaultlinks[3][1], false, mainWindow) guiEditSetReadOnly (edit3, true) defaultUseButton3 = guiCreateButton (423, 228, 40, 23, "use", false, mainWindow) --Edit 4 edit4 = guiCreateEdit (105, 258, 313, 23, defaultlinks[4][2], false, mainWindow) guiCreateLabel (30, 260, 200, 30, defaultlinks[4][1], false, mainWindow) guiEditSetReadOnly (edit4, true) defaultUseButton4 = guiCreateButton (423, 258, 40, 23, "use", false, mainWindow) --Edit 5 edit5 = guiCreateEdit (105, 288, 313, 23, defaultlinks[5][2], false, mainWindow) guiCreateLabel (30, 290, 200, 30, defaultlinks[5][1], false, mainWindow) guiEditSetReadOnly (edit5, true) defaultUseButton5 = guiCreateButton (423, 288, 40, 23, "use", false, mainWindow) --Edit 6 edit6 = guiCreateEdit (105, 318, 313, 23, defaultlinks[6][2], false, mainWindow) guiCreateLabel (30, 320, 200, 30, defaultlinks[6][1], false, mainWindow) guiEditSetReadOnly (edit6, true) defaultUseButton6 = guiCreateButton (423, 318, 40, 23, "use", false, mainWindow) --Edit 7 edit7 = guiCreateEdit (105, 348, 313, 23, defaultlinks[7][2], false, mainWindow) guiCreateLabel (30, 350, 200, 30, defaultlinks[7][1], false, mainWindow) guiEditSetReadOnly (edit7, true) defaultUseButton7 = guiCreateButton (423, 348, 40, 23, "use", false, mainWindow) --Edit 8 edit8 = guiCreateEdit (105, 378, 313, 23, defaultlinks[8][2], false, mainWindow) guiCreateLabel (30, 380, 200, 30, defaultlinks[8][1], false, mainWindow) guiEditSetReadOnly (edit8, true) defaultUseButton8 = guiCreateButton (423, 378, 40, 23, "use", false, mainWindow) --//-- guiSetVisible (mainWindow, false) --Add some events addEvent ("speakerStuffFromServer", true) addEventHandler ("speakerStuffFromServer", getRootElement(), createSpeaker) addEvent ("destroySpeaker", true) addEventHandler ("destroySpeaker", getRootElement(), destroySpeaker) addEvent ("onPQuit", true) addEventHandler ("onPQuit", getRootElement(), onPlayerQuit) addEvent ("createMyLinksGUI", true) addEventHandler ("createMyLinksGUI", getRootElement(), createMyLinksGUI) addEvent ("onPlayerLogout", true) addEventHandler ("onPlayerLogout", getRootElement(), onPlayerLogout) end addEventHandler ("onClientResourceStart", getResourceRootElement(), startScript) function openOrCloseGUI () if guiGetVisible (mainWindow) then guiSetVisible (mainWindow, false) guiSetVisible (linkWindow, false) showCursor (false) else guiSetVisible (mainWindow, true) showCursor (true) end end addEvent("openWindow",true) addEventHandler("openWindow",root,openOrCloseGUI) function closeGUI () if source == closeButton then guiSetVisible (mainWindow, false) showCursor (false) end end function createMyLinksGUI (tableoflinks) linkTable = tableoflinks guiSetEnabled (myLinksButton, true) --//Create my links window linkWindow = guiCreateWindow ((width/2) - (483/2), (height/2) - (375/2), 483, 375, "My links", false) guiWindowSetSizable (linkWindow, false) guiSetAlpha (linkWindow, 0.-- s8) --> guiSetVisible (linkWindow, false) saveLinksButton = guiCreateButton (428, 25, 40, 35, "Close", false, linkWindow) guiCreateLabel (63, 48, 100, 30, "Name", false, linkWindow) guiCreateLabel (260, 48, 100, 30, "Link", false, linkWindow) --Link pad 1 linkname1 = guiCreateEdit (17, 70, 125, 23, linkTable[1]["name"], false, linkWindow) linkedit1 = guiCreateEdit (145, 70, 253, 23, linkTable[1]["link"], false, linkWindow) linkUseButton1 = guiCreateButton (428, 70, 40, 23, "use", false, linkWindow) removeButton1 = guiCreateButton (400.5, 70, 23, 23, "X", false, linkWindow) --Link pad 2 linkname2 = guiCreateEdit (17, 100, 125, 23, linkTable[2]["name"], false, linkWindow) linkedit2 = guiCreateEdit (145, 100, 253, 23, linkTable[2]["link"], false, linkWindow) linkUseButton2 = guiCreateButton (428, 100, 40, 23, "use", false, linkWindow) removeButton2 = guiCreateButton (400.5, 100, 23, 23, "X", false, linkWindow) --Link pad 3 linkname3 = guiCreateEdit (17, 130, 125, 23, linkTable[3]["name"], false, linkWindow) linkedit3 = guiCreateEdit (145, 130, 253, 23, linkTable[3]["link"], false, linkWindow) linkUseButton3 = guiCreateButton (428, 130, 40, 23, "use", false, linkWindow) removeButton3 = guiCreateButton (400.5, 130, 23, 23, "X", false, linkWindow) --Link pad 4 linkname4 = guiCreateEdit (17, 160, 125, 23, linkTable[4]["name"], false, linkWindow) linkedit4 = guiCreateEdit (145, 160, 253, 23, linkTable[4]["link"], false, linkWindow) linkUseButton4 = guiCreateButton (428, 160, 40, 23, "use", false, linkWindow) removeButton4 = guiCreateButton (400.5, 160, 23, 23, "X", false, linkWindow) --Link pad 5 linkname5 = guiCreateEdit (17, 190, 125, 23, linkTable[5]["name"], false, linkWindow) linkedit5 = guiCreateEdit (145, 190, 253, 23, linkTable[5]["link"], false, linkWindow) linkUseButton5 = guiCreateButton (428, 190, 40, 23, "use", false, linkWindow) removeButton5 = guiCreateButton (400.5, 190, 23, 23, "X", false, linkWindow) --Link pad 6 linkname6 = guiCreateEdit (17, 220, 125, 23, linkTable[6]["name"], false, linkWindow) linkedit6 = guiCreateEdit (145, 220, 253, 23, linkTable[6]["link"], false, linkWindow) linkUseButton6 = guiCreateButton (428, 220, 40, 23, "use", false, linkWindow) removeButton6 = guiCreateButton (400.5, 220, 23, 23, "X", false, linkWindow) --Link pad 7 linkname7 = guiCreateEdit (17, 250, 125, 23, linkTable[7]["name"], false, linkWindow) linkedit7 = guiCreateEdit (145, 250, 253, 23, linkTable[7]["link"], false, linkWindow) linkUseButton7 = guiCreateButton (428, 250, 40, 23, "use", false, linkWindow) removeButton7 = guiCreateButton (400.5, 250, 23, 23, "X", false, linkWindow) --Link pa d8 linkname8 = guiCreateEdit (17, 280, 125, 23, linkTable[8]["name"], false, linkWindow) linkedit8 = guiCreateEdit (145, 280, 253, 23, linkTable[8]["link"], false, linkWindow) linkUseButton8 = guiCreateButton (428, 280, 40, 23, "use", false, linkWindow) removeButton8 = guiCreateButton (400.5, 280, 23, 23, "X", false, linkWindow) --Link pad 9 linkname9 = guiCreateEdit (17, 310, 125, 23, linkTable[9]["name"], false, linkWindow) linkedit9 = guiCreateEdit (145, 310, 253, 23, linkTable[9]["link"], false, linkWindow) linkUseButton9 = guiCreateButton (428, 310, 40, 23, "use", false, linkWindow) removeButton9 = guiCreateButton (400.5, 310, 23, 23, "X", false, linkWindow) --Link pad 10 linkname10 = guiCreateEdit (17, 340, 125, 23, linkTable[10]["name"], false, linkWindow) linkedit10 = guiCreateEdit (145, 340, 253, 23, linkTable[10]["link"], false, linkWindow) linkUseButton10 = guiCreateButton (428, 340, 40, 23, "use", false, linkWindow) removeButton10 = guiCreateButton (400.5, 340, 23, 23, "X", false, linkWindow) end function onMyLinksButtonClick () if source == myLinksButton then guiSetVisible (linkWindow, true) guiMoveToBack (mainWindow) end end function closeLinkWindow () if source == closeLinkWindowButton then guiSetVisible (linkWindow, false) reloadLinkPads () end end function onCreateSpeakerKlick () if source == createButton then if speakers[player] then outputChatBox ("You already have a speaker!", 255, 0, 0) else local guiText = guiGetText (urlEdit) if guiText == "" then outputChatBox ("You need to type radio url!", 255, 0, 0) else local distance = guiGetText (distanceEdit) distance = tonumber (distance) if type (distance) ~= "number" then outputChatBox ("Distance have to be number!", 255, 0, 0) else if distance > maxdistance then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else if distance < 1 then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 And what do you want to change? Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 And what do you want to change? i want it work only for Owner aclgroup not all players in server Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 Well, can you post the code, i just formated my PC i can't download stuffs at this moment Link to comment
xeon17 Posted September 22, 2015 Share Posted September 22, 2015 if ( getElementType ( player ) == "player" ) then --Checking the player who use the command Didn't knew that vehicles and peds can also use a command lmao. Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 Well, can you post the code, i just formated my PC i can't download stuffs at this moment Server : --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers clientIsReady = false function startScript () addEvent ("onSpeakerCreate", true) addEventHandler ("onSpeakerCreate", getRootElement(), onSpeakerCreate) addEvent ("onSpeakerDestroy", true) addEventHandler ("onSpeakerDestroy", getRootElement(), onSpeakerDestroy) addEvent ("clientIsReady", true) addEventHandler ("clientIsReady", getRootElement(), enableClientIsReady) addEvent ("saveLinks", true) addEventHandler ("saveLinks", getRootElement(), saveLinks) linkTimer = setTimer (enableLinksForPlayers, 500, 0) end addEventHandler ("onResourceStart", getResourceRootElement(), startScript) function onSpeakerCreate (player, url, distance) if getPedOccupiedVehicle (player) then if getPedOccupiedVehicleSeat (player) > 0 then outputChatBox ("You can't create speaker as a passenger!", player, 255, 0, 0) return false end end local x, y, z = getElementPosition (player) local z = z - 1 local rx, ry, rz = getElementRotation (player) local rz = rz + 90 local rz = 0.0174532925 * rz local x = (math.cos(rz) * 1.5) + x local y = (math.sin(rz) * 1.5) + y local ox, oy, oz = getElementPosition (player) local rotation = findRotation(x, y, ox, oy) local rotation = rotation + 180 triggerClientEvent ("speakerStuffFromServer", getRootElement(), player, url, distance, x, y, z, rotation) end function onSpeakerDestroy (player) triggerClientEvent ("destroySpeaker", getRootElement(), player) end function onPlayerQuit () local player = source triggerClientEvent ("onPQuit", getRootElement(), player) end addEventHandler ("onPlayerQuit", getRootElement(), onPlayerQuit) function findRotation(x1,y1,x2,y2) local t = -math.deg(math.atan2(x2-x1,y2-y1)) if t < 0 then t = t + 360 end; return t; end function getLinks (player) local account = getPlayerAccount (player) if getAccountData (account, "urlLinks") then linkJSONTable = getAccountData (account, "urlLinks") linkTable = fromJSON (linkJSONTable) else linkTable = {{}, {}, {}, {}, {}, {}, {}, {}, {}, {}} linkTable[1]["name"] = "" linkTable[1]["link"] = "" linkTable[2]["name"] = "" linkTable[2]["link"] = "" linkTable[3]["name"] = "" linkTable[3]["link"] = "" linkTable[4]["name"] = "" linkTable[4]["link"] = "" linkTable[5]["name"] = "" linkTable[5]["link"] = "" linkTable[6]["name"] = "" linkTable[6]["link"] = "" linkTable[7]["name"] = "" linkTable[7]["link"] = "" linkTable[8]["name"] = "" linkTable[8]["link"] = "" linkTable[9]["name"] = "" linkTable[9]["link"] = "" linkTable[10]["name"] = "" linkTable[10]["link"] = "" end local tableoflinks = linkTable triggerClientEvent (player, "createMyLinksGUI", getRootElement(), tableoflinks) end function onLogin () local player = source getLinks (player) end addEventHandler ("onPlayerLogin", getRootElement(), onLogin) function onLogout () local player = source triggerClientEvent (player, "onPlayerLogout", getRootElement()) end addEventHandler ("onPlayerLogout", getRootElement(), onLogout) function saveLinks (player, linkTable) local account = getPlayerAccount (player) local linkTable = toJSON (linkTable) setAccountData (account, "urlLinks", linkTable) end function enableClientIsReady () clientIsReady = true end function enableLinksForPlayers () if clientIsReady == true then local players = getElementsByType ("player") for k, player in ipairs (players) do local account = getPlayerAccount (player) if isGuestAccount (account) == false then getLinks (player) end end killTimer (linkTimer) end end client : --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers --//You can edit these defaultlinks = {} defaultlinks[1] = {"", "Edit these from client.lua file"} defaultlinks[2] = {"", ""} defaultlinks[3] = {"", ""} defaultlinks[4] = {"", ""} defaultlinks[5] = {"", ""} defaultlinks[6] = {"", ""} defaultlinks[7] = {"", ""} defaultlinks[8] = {"", ""} openKey = "f5" maxdistance = 100 defaultdistance = 50 --//Dont edit these! triggerServerEvent ("clientIsReady", getRootElement()) width, height = guiGetScreenSize () speakers = {} linkTable = {} selectedURLName = "N/A" function startScript () --//Create main GUI mainWindow = guiCreateWindow ((width/2) - (500/2), (height/2) - (417/2), 500, 417, "Speaker system", false) guiWindowSetSizable (mainWindow, false) --Buttons and event handlers closeButton = guiCreateButton (450, 25, 40, 35, "Close", false, mainWindow) addEventHandler ("onClientGUIClick", closeButton, closeGUI) createButton = guiCreateButton (30, 87, 80, 40, "Create speaker", false, mainWindow) addEventHandler ("onClientGUIClick", createButton, onCreateSpeakerKlick) destroyButton = guiCreateButton (130, 87, 80, 40, "Destroy speaker", false, mainWindow) addEventHandler ("onClientGUIClick", destroyButton, onDestroySpeakerClick) myLinksButton = guiCreateButton (420, 114, 70, 35, "My links", false, mainWindow) addEventHandler ("onClientGUIClick", myLinksButton, onMyLinksButtonClick) guiSetEnabled (myLinksButton, false) --URL Stuff guiCreateLabel (90, 23, 100, 30, "Radio URL:", false, mainWindow) urlEdit = guiCreateEdit (22, 44, 200, 35, "", false, mainWindow) --50 --Max distance guiCreateLabel (259, 23, 200, 30, "Max distance (1 - " .. tostring(maxdistance) .. "):", false, mainWindow) distanceEdit = guiCreateEdit (290, 44, 50, 35, tostring(defaultdistance), false, mainWindow) -- nowPlayingText = guiCreateLabel (34, 133, 70, 30, "Now playing:", false, mainWindow) guiSetVisible (nowPlayingText, false) nowPlayingEditLabel = guiCreateLabel (112, 133, 288, 30, "-", false, mainWindow) guiSetVisible (nowPlayingEditLabel, false) guiCreateLabel (25, 145, 600, 30, "_______________________________________________________________", false, mainWindow) --Links --Edit 1 edit1 = guiCreateEdit (105, 168, 313, 23, defaultlinks[1][2], false, mainWindow) guiCreateLabel (30, 170, 200, 30, defaultlinks[1][1], false, mainWindow) guiEditSetReadOnly (edit1, true) defaultUseButton1 = guiCreateButton (423, 168, 40, 23, "use", false, mainWindow) --Edit 2 edit2 = guiCreateEdit (105, 198, 313, 23, defaultlinks[2][2], false, mainWindow) guiCreateLabel (30, 200, 200, 30, defaultlinks[2][1], false, mainWindow) guiEditSetReadOnly (edit2, true) defaultUseButton2 = guiCreateButton (423, 198, 40, 23, "use", false, mainWindow) --Edit 3 edit3 = guiCreateEdit (105, 228, 313, 23, defaultlinks[3][2], false, mainWindow) guiCreateLabel (30, 230, 200, 30, defaultlinks[3][1], false, mainWindow) guiEditSetReadOnly (edit3, true) defaultUseButton3 = guiCreateButton (423, 228, 40, 23, "use", false, mainWindow) --Edit 4 edit4 = guiCreateEdit (105, 258, 313, 23, defaultlinks[4][2], false, mainWindow) guiCreateLabel (30, 260, 200, 30, defaultlinks[4][1], false, mainWindow) guiEditSetReadOnly (edit4, true) defaultUseButton4 = guiCreateButton (423, 258, 40, 23, "use", false, mainWindow) --Edit 5 edit5 = guiCreateEdit (105, 288, 313, 23, defaultlinks[5][2], false, mainWindow) guiCreateLabel (30, 290, 200, 30, defaultlinks[5][1], false, mainWindow) guiEditSetReadOnly (edit5, true) defaultUseButton5 = guiCreateButton (423, 288, 40, 23, "use", false, mainWindow) --Edit 6 edit6 = guiCreateEdit (105, 318, 313, 23, defaultlinks[6][2], false, mainWindow) guiCreateLabel (30, 320, 200, 30, defaultlinks[6][1], false, mainWindow) guiEditSetReadOnly (edit6, true) defaultUseButton6 = guiCreateButton (423, 318, 40, 23, "use", false, mainWindow) --Edit 7 edit7 = guiCreateEdit (105, 348, 313, 23, defaultlinks[7][2], false, mainWindow) guiCreateLabel (30, 350, 200, 30, defaultlinks[7][1], false, mainWindow) guiEditSetReadOnly (edit7, true) defaultUseButton7 = guiCreateButton (423, 348, 40, 23, "use", false, mainWindow) --Edit 8 edit8 = guiCreateEdit (105, 378, 313, 23, defaultlinks[8][2], false, mainWindow) guiCreateLabel (30, 380, 200, 30, defaultlinks[8][1], false, mainWindow) guiEditSetReadOnly (edit8, true) defaultUseButton8 = guiCreateButton (423, 378, 40, 23, "use", false, mainWindow) --//-- guiSetVisible (mainWindow, false) --Add some events addEvent ("speakerStuffFromServer", true) addEventHandler ("speakerStuffFromServer", getRootElement(), createSpeaker) addEvent ("destroySpeaker", true) addEventHandler ("destroySpeaker", getRootElement(), destroySpeaker) addEvent ("onPQuit", true) addEventHandler ("onPQuit", getRootElement(), onPlayerQuit) addEvent ("createMyLinksGUI", true) addEventHandler ("createMyLinksGUI", getRootElement(), createMyLinksGUI) addEvent ("onPlayerLogout", true) addEventHandler ("onPlayerLogout", getRootElement(), onPlayerLogout) end addEventHandler ("onClientResourceStart", getResourceRootElement(), startScript) function openOrCloseGUI () if guiGetVisible (mainWindow) then guiSetVisible (mainWindow, false) guiSetVisible (linkWindow, false) showCursor (false) else guiSetVisible (mainWindow, true) showCursor (true) end end addCommandHandler ("speaker", openOrCloseGUI) bindKey (openKey, "down", openOrCloseGUI) function closeGUI () if source == closeButton then guiSetVisible (mainWindow, false) showCursor (false) end end function createMyLinksGUI (tableoflinks) linkTable = tableoflinks guiSetEnabled (myLinksButton, true) --//Create my links window linkWindow = guiCreateWindow ((width/2) - (483/2), (height/2) - (375/2), 483, 375, "My links", false) guiWindowSetSizable (linkWindow, false) guiSetAlpha (linkWindow, 0.-- s8) --> guiSetVisible (linkWindow, false) saveLinksButton = guiCreateButton (428, 25, 40, 35, "Close", false, linkWindow) guiCreateLabel (63, 48, 100, 30, "Name", false, linkWindow) guiCreateLabel (260, 48, 100, 30, "Link", false, linkWindow) --Link pad 1 linkname1 = guiCreateEdit (17, 70, 125, 23, linkTable[1]["name"], false, linkWindow) linkedit1 = guiCreateEdit (145, 70, 253, 23, linkTable[1]["link"], false, linkWindow) linkUseButton1 = guiCreateButton (428, 70, 40, 23, "use", false, linkWindow) removeButton1 = guiCreateButton (400.5, 70, 23, 23, "X", false, linkWindow) --Link pad 2 linkname2 = guiCreateEdit (17, 100, 125, 23, linkTable[2]["name"], false, linkWindow) linkedit2 = guiCreateEdit (145, 100, 253, 23, linkTable[2]["link"], false, linkWindow) linkUseButton2 = guiCreateButton (428, 100, 40, 23, "use", false, linkWindow) removeButton2 = guiCreateButton (400.5, 100, 23, 23, "X", false, linkWindow) --Link pad 3 linkname3 = guiCreateEdit (17, 130, 125, 23, linkTable[3]["name"], false, linkWindow) linkedit3 = guiCreateEdit (145, 130, 253, 23, linkTable[3]["link"], false, linkWindow) linkUseButton3 = guiCreateButton (428, 130, 40, 23, "use", false, linkWindow) removeButton3 = guiCreateButton (400.5, 130, 23, 23, "X", false, linkWindow) --Link pad 4 linkname4 = guiCreateEdit (17, 160, 125, 23, linkTable[4]["name"], false, linkWindow) linkedit4 = guiCreateEdit (145, 160, 253, 23, linkTable[4]["link"], false, linkWindow) linkUseButton4 = guiCreateButton (428, 160, 40, 23, "use", false, linkWindow) removeButton4 = guiCreateButton (400.5, 160, 23, 23, "X", false, linkWindow) --Link pad 5 linkname5 = guiCreateEdit (17, 190, 125, 23, linkTable[5]["name"], false, linkWindow) linkedit5 = guiCreateEdit (145, 190, 253, 23, linkTable[5]["link"], false, linkWindow) linkUseButton5 = guiCreateButton (428, 190, 40, 23, "use", false, linkWindow) removeButton5 = guiCreateButton (400.5, 190, 23, 23, "X", false, linkWindow) --Link pad 6 linkname6 = guiCreateEdit (17, 220, 125, 23, linkTable[6]["name"], false, linkWindow) linkedit6 = guiCreateEdit (145, 220, 253, 23, linkTable[6]["link"], false, linkWindow) linkUseButton6 = guiCreateButton (428, 220, 40, 23, "use", false, linkWindow) removeButton6 = guiCreateButton (400.5, 220, 23, 23, "X", false, linkWindow) --Link pad 7 linkname7 = guiCreateEdit (17, 250, 125, 23, linkTable[7]["name"], false, linkWindow) linkedit7 = guiCreateEdit (145, 250, 253, 23, linkTable[7]["link"], false, linkWindow) linkUseButton7 = guiCreateButton (428, 250, 40, 23, "use", false, linkWindow) removeButton7 = guiCreateButton (400.5, 250, 23, 23, "X", false, linkWindow) --Link pa d8 linkname8 = guiCreateEdit (17, 280, 125, 23, linkTable[8]["name"], false, linkWindow) linkedit8 = guiCreateEdit (145, 280, 253, 23, linkTable[8]["link"], false, linkWindow) linkUseButton8 = guiCreateButton (428, 280, 40, 23, "use", false, linkWindow) removeButton8 = guiCreateButton (400.5, 280, 23, 23, "X", false, linkWindow) --Link pad 9 linkname9 = guiCreateEdit (17, 310, 125, 23, linkTable[9]["name"], false, linkWindow) linkedit9 = guiCreateEdit (145, 310, 253, 23, linkTable[9]["link"], false, linkWindow) linkUseButton9 = guiCreateButton (428, 310, 40, 23, "use", false, linkWindow) removeButton9 = guiCreateButton (400.5, 310, 23, 23, "X", false, linkWindow) --Link pad 10 linkname10 = guiCreateEdit (17, 340, 125, 23, linkTable[10]["name"], false, linkWindow) linkedit10 = guiCreateEdit (145, 340, 253, 23, linkTable[10]["link"], false, linkWindow) linkUseButton10 = guiCreateButton (428, 340, 40, 23, "use", false, linkWindow) removeButton10 = guiCreateButton (400.5, 340, 23, 23, "X", false, linkWindow) end function onMyLinksButtonClick () if source == myLinksButton then guiSetVisible (linkWindow, true) guiMoveToBack (mainWindow) end end function closeLinkWindow () if source == closeLinkWindowButton then guiSetVisible (linkWindow, false) reloadLinkPads () end end function onCreateSpeakerKlick () if source == createButton then if speakers[player] then outputChatBox ("You already have a speaker!", 255, 0, 0) else local guiText = guiGetText (urlEdit) if guiText == "" then outputChatBox ("You need to type radio url!", 255, 0, 0) else local distance = guiGetText (distanceEdit) distance = tonumber (distance) if type (distance) ~= "number" then outputChatBox ("Distance have to be number!", 255, 0, 0) else if distance > maxdistance then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else if distance < 1 then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 --Server side: --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers clientIsReady = false addCommandHandler("speakers", function (thePlayer) local account = getPlayerAccount(thePlayer) if not account or isGuestAccount(account) then return end local accountName = getAccountName(account) if ( isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Owner" ) )) then triggerClientEvent(thePlayer,"openGUI",thePlayer) end end) function startScript () addEvent ("onSpeakerCreate", true) addEventHandler ("onSpeakerCreate", getRootElement(), onSpeakerCreate) addEvent ("onSpeakerDestroy", true) addEventHandler ("onSpeakerDestroy", getRootElement(), onSpeakerDestroy) addEvent ("clientIsReady", true) addEventHandler ("clientIsReady", getRootElement(), enableClientIsReady) addEvent ("saveLinks", true) addEventHandler ("saveLinks", getRootElement(), saveLinks) linkTimer = setTimer (enableLinksForPlayers, 500, 0) end addEventHandler ("onResourceStart", getResourceRootElement(), startScript) function onSpeakerCreate (player, url, distance) if getPedOccupiedVehicle (player) then if getPedOccupiedVehicleSeat (player) > 0 then outputChatBox ("You can't create speaker as a passenger!", player, 255, 0, 0) return false end end local x, y, z = getElementPosition (player) local z = z - 1 local rx, ry, rz = getElementRotation (player) local rz = rz + 90 local rz = 0.0174532925 * rz local x = (math.cos(rz) * 1.5) + x local y = (math.sin(rz) * 1.5) + y local ox, oy, oz = getElementPosition (player) local rotation = findRotation(x, y, ox, oy) local rotation = rotation + 180 triggerClientEvent ("speakerStuffFromServer", getRootElement(), player, url, distance, x, y, z, rotation) end function onSpeakerDestroy (player) triggerClientEvent ("destroySpeaker", getRootElement(), player) end function onPlayerQuit () local player = source triggerClientEvent ("onPQuit", getRootElement(), player) end addEventHandler ("onPlayerQuit", getRootElement(), onPlayerQuit) function findRotation(x1,y1,x2,y2) local t = -math.deg(math.atan2(x2-x1,y2-y1)) if t < 0 then t = t + 360 end; return t; end function getLinks (player) local account = getPlayerAccount (player) if getAccountData (account, "urlLinks") then linkJSONTable = getAccountData (account, "urlLinks") linkTable = fromJSON (linkJSONTable) else linkTable = {{}, {}, {}, {}, {}, {}, {}, {}, {}, {}} linkTable[1]["name"] = "" linkTable[1]["link"] = "" linkTable[2]["name"] = "" linkTable[2]["link"] = "" linkTable[3]["name"] = "" linkTable[3]["link"] = "" linkTable[4]["name"] = "" linkTable[4]["link"] = "" linkTable[5]["name"] = "" linkTable[5]["link"] = "" linkTable[6]["name"] = "" linkTable[6]["link"] = "" linkTable[7]["name"] = "" linkTable[7]["link"] = "" linkTable[8]["name"] = "" linkTable[8]["link"] = "" linkTable[9]["name"] = "" linkTable[9]["link"] = "" linkTable[10]["name"] = "" linkTable[10]["link"] = "" end local tableoflinks = linkTable triggerClientEvent (player, "createMyLinksGUI", getRootElement(), tableoflinks) end function onLogin () local player = source getLinks (player) end addEventHandler ("onPlayerLogin", getRootElement(), onLogin) function onLogout () local player = source triggerClientEvent (player, "onPlayerLogout", getRootElement()) end addEventHandler ("onPlayerLogout", getRootElement(), onLogout) function saveLinks (player, linkTable) local account = getPlayerAccount (player) local linkTable = toJSON (linkTable) setAccountData (account, "urlLinks", linkTable) end function enableClientIsReady () clientIsReady = true end function enableLinksForPlayers () if clientIsReady == true then local players = getElementsByType ("player") for k, player in ipairs (players) do local account = getPlayerAccount (player) if isGuestAccount (account) == false then getLinks (player) end end killTimer (linkTimer) end end --Client side: --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers --//You can edit these defaultlinks = {} defaultlinks[1] = {"", "Edit these from client.lua file"} defaultlinks[2] = {"", ""} defaultlinks[3] = {"", ""} defaultlinks[4] = {"", ""} defaultlinks[5] = {"", ""} defaultlinks[6] = {"", ""} defaultlinks[7] = {"", ""} defaultlinks[8] = {"", ""} openKey = "f5" maxdistance = 100 defaultdistance = 50 --//Dont edit these! triggerServerEvent ("clientIsReady", getRootElement()) width, height = guiGetScreenSize () speakers = {} linkTable = {} selectedURLName = "N/A" function startScript () --//Create main GUI mainWindow = guiCreateWindow ((width/2) - (500/2), (height/2) - (417/2), 500, 417, "Speaker system", false) guiWindowSetSizable (mainWindow, false) --Buttons and event handlers closeButton = guiCreateButton (450, 25, 40, 35, "Close", false, mainWindow) addEventHandler ("onClientGUIClick", closeButton, closeGUI) createButton = guiCreateButton (30, 87, 80, 40, "Create speaker", false, mainWindow) addEventHandler ("onClientGUIClick", createButton, onCreateSpeakerKlick) destroyButton = guiCreateButton (130, 87, 80, 40, "Destroy speaker", false, mainWindow) addEventHandler ("onClientGUIClick", destroyButton, onDestroySpeakerClick) myLinksButton = guiCreateButton (420, 114, 70, 35, "My links", false, mainWindow) addEventHandler ("onClientGUIClick", myLinksButton, onMyLinksButtonClick) guiSetEnabled (myLinksButton, false) --URL Stuff guiCreateLabel (90, 23, 100, 30, "Radio URL:", false, mainWindow) urlEdit = guiCreateEdit (22, 44, 200, 35, "", false, mainWindow) --50 --Max distance guiCreateLabel (259, 23, 200, 30, "Max distance (1 - " .. tostring(maxdistance) .. "):", false, mainWindow) distanceEdit = guiCreateEdit (290, 44, 50, 35, tostring(defaultdistance), false, mainWindow) -- nowPlayingText = guiCreateLabel (34, 133, 70, 30, "Now playing:", false, mainWindow) guiSetVisible (nowPlayingText, false) nowPlayingEditLabel = guiCreateLabel (112, 133, 288, 30, "-", false, mainWindow) guiSetVisible (nowPlayingEditLabel, false) guiCreateLabel (25, 145, 600, 30, "_______________________________________________________________", false, mainWindow) --Links --Edit 1 edit1 = guiCreateEdit (105, 168, 313, 23, defaultlinks[1][2], false, mainWindow) guiCreateLabel (30, 170, 200, 30, defaultlinks[1][1], false, mainWindow) guiEditSetReadOnly (edit1, true) defaultUseButton1 = guiCreateButton (423, 168, 40, 23, "use", false, mainWindow) --Edit 2 edit2 = guiCreateEdit (105, 198, 313, 23, defaultlinks[2][2], false, mainWindow) guiCreateLabel (30, 200, 200, 30, defaultlinks[2][1], false, mainWindow) guiEditSetReadOnly (edit2, true) defaultUseButton2 = guiCreateButton (423, 198, 40, 23, "use", false, mainWindow) --Edit 3 edit3 = guiCreateEdit (105, 228, 313, 23, defaultlinks[3][2], false, mainWindow) guiCreateLabel (30, 230, 200, 30, defaultlinks[3][1], false, mainWindow) guiEditSetReadOnly (edit3, true) defaultUseButton3 = guiCreateButton (423, 228, 40, 23, "use", false, mainWindow) --Edit 4 edit4 = guiCreateEdit (105, 258, 313, 23, defaultlinks[4][2], false, mainWindow) guiCreateLabel (30, 260, 200, 30, defaultlinks[4][1], false, mainWindow) guiEditSetReadOnly (edit4, true) defaultUseButton4 = guiCreateButton (423, 258, 40, 23, "use", false, mainWindow) --Edit 5 edit5 = guiCreateEdit (105, 288, 313, 23, defaultlinks[5][2], false, mainWindow) guiCreateLabel (30, 290, 200, 30, defaultlinks[5][1], false, mainWindow) guiEditSetReadOnly (edit5, true) defaultUseButton5 = guiCreateButton (423, 288, 40, 23, "use", false, mainWindow) --Edit 6 edit6 = guiCreateEdit (105, 318, 313, 23, defaultlinks[6][2], false, mainWindow) guiCreateLabel (30, 320, 200, 30, defaultlinks[6][1], false, mainWindow) guiEditSetReadOnly (edit6, true) defaultUseButton6 = guiCreateButton (423, 318, 40, 23, "use", false, mainWindow) --Edit 7 edit7 = guiCreateEdit (105, 348, 313, 23, defaultlinks[7][2], false, mainWindow) guiCreateLabel (30, 350, 200, 30, defaultlinks[7][1], false, mainWindow) guiEditSetReadOnly (edit7, true) defaultUseButton7 = guiCreateButton (423, 348, 40, 23, "use", false, mainWindow) --Edit 8 edit8 = guiCreateEdit (105, 378, 313, 23, defaultlinks[8][2], false, mainWindow) guiCreateLabel (30, 380, 200, 30, defaultlinks[8][1], false, mainWindow) guiEditSetReadOnly (edit8, true) defaultUseButton8 = guiCreateButton (423, 378, 40, 23, "use", false, mainWindow) --//-- guiSetVisible (mainWindow, false) --Add some events addEvent ("speakerStuffFromServer", true) addEventHandler ("speakerStuffFromServer", getRootElement(), createSpeaker) addEvent ("destroySpeaker", true) addEventHandler ("destroySpeaker", getRootElement(), destroySpeaker) addEvent ("onPQuit", true) addEventHandler ("onPQuit", getRootElement(), onPlayerQuit) addEvent ("createMyLinksGUI", true) addEventHandler ("createMyLinksGUI", getRootElement(), createMyLinksGUI) addEvent ("onPlayerLogout", true) addEventHandler ("onPlayerLogout", getRootElement(), onPlayerLogout) end addEventHandler ("onClientResourceStart", getResourceRootElement(), startScript) addEvent("openGUI",true) addEventHandler("openGUI",getRootElement(), function openOrCloseGUI () if guiGetVisible (mainWindow) then guiSetVisible (mainWindow, false) guiSetVisible (linkWindow, false) showCursor (false) else guiSetVisible (mainWindow, true) showCursor (true) end end) bindKey (openKey, "down", openOrCloseGUI) function closeGUI () if source == closeButton then guiSetVisible (mainWindow, false) showCursor (false) end end function createMyLinksGUI (tableoflinks) linkTable = tableoflinks guiSetEnabled (myLinksButton, true) --//Create my links window linkWindow = guiCreateWindow ((width/2) - (483/2), (height/2) - (375/2), 483, 375, "My links", false) guiWindowSetSizable (linkWindow, false) --guiSetAlpha (linkWindow, 0. guiSetVisible (linkWindow, false) saveLinksButton = guiCreateButton (428, 25, 40, 35, "Close", false, linkWindow) guiCreateLabel (63, 48, 100, 30, "Name", false, linkWindow) guiCreateLabel (260, 48, 100, 30, "Link", false, linkWindow) --Link pad 1 linkname1 = guiCreateEdit (17, 70, 125, 23, linkTable[1]["name"], false, linkWindow) linkedit1 = guiCreateEdit (145, 70, 253, 23, linkTable[1]["link"], false, linkWindow) linkUseButton1 = guiCreateButton (428, 70, 40, 23, "use", false, linkWindow) removeButton1 = guiCreateButton (400.5, 70, 23, 23, "X", false, linkWindow) --Link pad 2 linkname2 = guiCreateEdit (17, 100, 125, 23, linkTable[2]["name"], false, linkWindow) linkedit2 = guiCreateEdit (145, 100, 253, 23, linkTable[2]["link"], false, linkWindow) linkUseButton2 = guiCreateButton (428, 100, 40, 23, "use", false, linkWindow) removeButton2 = guiCreateButton (400.5, 100, 23, 23, "X", false, linkWindow) --Link pad 3 linkname3 = guiCreateEdit (17, 130, 125, 23, linkTable[3]["name"], false, linkWindow) linkedit3 = guiCreateEdit (145, 130, 253, 23, linkTable[3]["link"], false, linkWindow) linkUseButton3 = guiCreateButton (428, 130, 40, 23, "use", false, linkWindow) removeButton3 = guiCreateButton (400.5, 130, 23, 23, "X", false, linkWindow) --Link pad 4 linkname4 = guiCreateEdit (17, 160, 125, 23, linkTable[4]["name"], false, linkWindow) linkedit4 = guiCreateEdit (145, 160, 253, 23, linkTable[4]["link"], false, linkWindow) linkUseButton4 = guiCreateButton (428, 160, 40, 23, "use", false, linkWindow) removeButton4 = guiCreateButton (400.5, 160, 23, 23, "X", false, linkWindow) --Link pad 5 linkname5 = guiCreateEdit (17, 190, 125, 23, linkTable[5]["name"], false, linkWindow) linkedit5 = guiCreateEdit (145, 190, 253, 23, linkTable[5]["link"], false, linkWindow) linkUseButton5 = guiCreateButton (428, 190, 40, 23, "use", false, linkWindow) removeButton5 = guiCreateButton (400.5, 190, 23, 23, "X", false, linkWindow) --Link pad 6 linkname6 = guiCreateEdit (17, 220, 125, 23, linkTable[6]["name"], false, linkWindow) linkedit6 = guiCreateEdit (145, 220, 253, 23, linkTable[6]["link"], false, linkWindow) linkUseButton6 = guiCreateButton (428, 220, 40, 23, "use", false, linkWindow) removeButton6 = guiCreateButton (400.5, 220, 23, 23, "X", false, linkWindow) --Link pad 7 linkname7 = guiCreateEdit (17, 250, 125, 23, linkTable[7]["name"], false, linkWindow) linkedit7 = guiCreateEdit (145, 250, 253, 23, linkTable[7]["link"], false, linkWindow) linkUseButton7 = guiCreateButton (428, 250, 40, 23, "use", false, linkWindow) removeButton7 = guiCreateButton (400.5, 250, 23, 23, "X", false, linkWindow) --Link pa d8 linkname8 = guiCreateEdit (17, 280, 125, 23, linkTable[8]["name"], false, linkWindow) linkedit8 = guiCreateEdit (145, 280, 253, 23, linkTable[8]["link"], false, linkWindow) linkUseButton8 = guiCreateButton (428, 280, 40, 23, "use", false, linkWindow) removeButton8 = guiCreateButton (400.5, 280, 23, 23, "X", false, linkWindow) --Link pad 9 linkname9 = guiCreateEdit (17, 310, 125, 23, linkTable[9]["name"], false, linkWindow) linkedit9 = guiCreateEdit (145, 310, 253, 23, linkTable[9]["link"], false, linkWindow) linkUseButton9 = guiCreateButton (428, 310, 40, 23, "use", false, linkWindow) removeButton9 = guiCreateButton (400.5, 310, 23, 23, "X", false, linkWindow) --Link pad 10 linkname10 = guiCreateEdit (17, 340, 125, 23, linkTable[10]["name"], false, linkWindow) linkedit10 = guiCreateEdit (145, 340, 253, 23, linkTable[10]["link"], false, linkWindow) linkUseButton10 = guiCreateButton (428, 340, 40, 23, "use", false, linkWindow) removeButton10 = guiCreateButton (400.5, 340, 23, 23, "X", false, linkWindow) end function onMyLinksButtonClick () if source == myLinksButton then guiSetVisible (linkWindow, true) guiMoveToBack (mainWindow) end end function closeLinkWindow () if source == closeLinkWindowButton then guiSetVisible (linkWindow, false) reloadLinkPads () end end function onCreateSpeakerKlick () if source == createButton then if speakers[player] then outputChatBox ("You already have a speaker!", 255, 0, 0) else local guiText = guiGetText (urlEdit) if guiText == "" then outputChatBox ("You need to type radio url!", 255, 0, 0) else local distance = guiGetText (distanceEdit) distance = tonumber (distance) if type (distance) ~= "number" then outputChatBox ("Distance have to be number!", 255, 0, 0) else if distance > maxdistance then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else if distance < 1 then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 Error: Loading script failed : SAEGspeaker/client.lua:119: '(' expected near 'openorcloseGUI' Link to comment
HUNGRY:3 Posted September 22, 2015 Share Posted September 22, 2015 if ( getElementType ( player ) == "player" ) then --Checking the player who use the command Didn't knew that vehicles and peds can also use a command lmao. Well i just copied Karim code so pls. Eh. Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 Error: Loading script failed : SAEGspeaker/client.lua:119: '(' expected near 'openorcloseGUI' Yes my bad, replace this client with your client --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers --//You can edit these defaultlinks = {} defaultlinks[1] = {"", "Edit these from client.lua file"} defaultlinks[2] = {"", ""} defaultlinks[3] = {"", ""} defaultlinks[4] = {"", ""} defaultlinks[5] = {"", ""} defaultlinks[6] = {"", ""} defaultlinks[7] = {"", ""} defaultlinks[8] = {"", ""} openKey = "f5" maxdistance = 100 defaultdistance = 50 --//Dont edit these! triggerServerEvent ("clientIsReady", getRootElement()) width, height = guiGetScreenSize () speakers = {} linkTable = {} selectedURLName = "N/A" function startScript () --//Create main GUI mainWindow = guiCreateWindow ((width/2) - (500/2), (height/2) - (417/2), 500, 417, "Speaker system", false) guiWindowSetSizable (mainWindow, false) --Buttons and event handlers closeButton = guiCreateButton (450, 25, 40, 35, "Close", false, mainWindow) addEventHandler ("onClientGUIClick", closeButton, closeGUI) createButton = guiCreateButton (30, 87, 80, 40, "Create speaker", false, mainWindow) addEventHandler ("onClientGUIClick", createButton, onCreateSpeakerKlick) destroyButton = guiCreateButton (130, 87, 80, 40, "Destroy speaker", false, mainWindow) addEventHandler ("onClientGUIClick", destroyButton, onDestroySpeakerClick) myLinksButton = guiCreateButton (420, 114, 70, 35, "My links", false, mainWindow) addEventHandler ("onClientGUIClick", myLinksButton, onMyLinksButtonClick) guiSetEnabled (myLinksButton, false) --URL Stuff guiCreateLabel (90, 23, 100, 30, "Radio URL:", false, mainWindow) urlEdit = guiCreateEdit (22, 44, 200, 35, "", false, mainWindow) --50 --Max distance guiCreateLabel (259, 23, 200, 30, "Max distance (1 - " .. tostring(maxdistance) .. "):", false, mainWindow) distanceEdit = guiCreateEdit (290, 44, 50, 35, tostring(defaultdistance), false, mainWindow) -- nowPlayingText = guiCreateLabel (34, 133, 70, 30, "Now playing:", false, mainWindow) guiSetVisible (nowPlayingText, false) nowPlayingEditLabel = guiCreateLabel (112, 133, 288, 30, "-", false, mainWindow) guiSetVisible (nowPlayingEditLabel, false) guiCreateLabel (25, 145, 600, 30, "_______________________________________________________________", false, mainWindow) --Links --Edit 1 edit1 = guiCreateEdit (105, 168, 313, 23, defaultlinks[1][2], false, mainWindow) guiCreateLabel (30, 170, 200, 30, defaultlinks[1][1], false, mainWindow) guiEditSetReadOnly (edit1, true) defaultUseButton1 = guiCreateButton (423, 168, 40, 23, "use", false, mainWindow) --Edit 2 edit2 = guiCreateEdit (105, 198, 313, 23, defaultlinks[2][2], false, mainWindow) guiCreateLabel (30, 200, 200, 30, defaultlinks[2][1], false, mainWindow) guiEditSetReadOnly (edit2, true) defaultUseButton2 = guiCreateButton (423, 198, 40, 23, "use", false, mainWindow) --Edit 3 edit3 = guiCreateEdit (105, 228, 313, 23, defaultlinks[3][2], false, mainWindow) guiCreateLabel (30, 230, 200, 30, defaultlinks[3][1], false, mainWindow) guiEditSetReadOnly (edit3, true) defaultUseButton3 = guiCreateButton (423, 228, 40, 23, "use", false, mainWindow) --Edit 4 edit4 = guiCreateEdit (105, 258, 313, 23, defaultlinks[4][2], false, mainWindow) guiCreateLabel (30, 260, 200, 30, defaultlinks[4][1], false, mainWindow) guiEditSetReadOnly (edit4, true) defaultUseButton4 = guiCreateButton (423, 258, 40, 23, "use", false, mainWindow) --Edit 5 edit5 = guiCreateEdit (105, 288, 313, 23, defaultlinks[5][2], false, mainWindow) guiCreateLabel (30, 290, 200, 30, defaultlinks[5][1], false, mainWindow) guiEditSetReadOnly (edit5, true) defaultUseButton5 = guiCreateButton (423, 288, 40, 23, "use", false, mainWindow) --Edit 6 edit6 = guiCreateEdit (105, 318, 313, 23, defaultlinks[6][2], false, mainWindow) guiCreateLabel (30, 320, 200, 30, defaultlinks[6][1], false, mainWindow) guiEditSetReadOnly (edit6, true) defaultUseButton6 = guiCreateButton (423, 318, 40, 23, "use", false, mainWindow) --Edit 7 edit7 = guiCreateEdit (105, 348, 313, 23, defaultlinks[7][2], false, mainWindow) guiCreateLabel (30, 350, 200, 30, defaultlinks[7][1], false, mainWindow) guiEditSetReadOnly (edit7, true) defaultUseButton7 = guiCreateButton (423, 348, 40, 23, "use", false, mainWindow) --Edit 8 edit8 = guiCreateEdit (105, 378, 313, 23, defaultlinks[8][2], false, mainWindow) guiCreateLabel (30, 380, 200, 30, defaultlinks[8][1], false, mainWindow) guiEditSetReadOnly (edit8, true) defaultUseButton8 = guiCreateButton (423, 378, 40, 23, "use", false, mainWindow) --//-- guiSetVisible (mainWindow, false) --Add some events addEvent ("speakerStuffFromServer", true) addEventHandler ("speakerStuffFromServer", getRootElement(), createSpeaker) addEvent ("destroySpeaker", true) addEventHandler ("destroySpeaker", getRootElement(), destroySpeaker) addEvent ("onPQuit", true) addEventHandler ("onPQuit", getRootElement(), onPlayerQuit) addEvent ("createMyLinksGUI", true) addEventHandler ("createMyLinksGUI", getRootElement(), createMyLinksGUI) addEvent ("onPlayerLogout", true) addEventHandler ("onPlayerLogout", getRootElement(), onPlayerLogout) end addEventHandler ("onClientResourceStart", getResourceRootElement(), startScript) addEvent("openGUI",true) addEventHandler("openGUI",getRootElement(), function () if guiGetVisible (mainWindow) then guiSetVisible (mainWindow, false) guiSetVisible (linkWindow, false) showCursor (false) else guiSetVisible (mainWindow, true) showCursor (true) end end) bindKey (openKey, "down", openOrCloseGUI) function closeGUI () if source == closeButton then guiSetVisible (mainWindow, false) showCursor (false) end end function createMyLinksGUI (tableoflinks) linkTable = tableoflinks guiSetEnabled (myLinksButton, true) --//Create my links window linkWindow = guiCreateWindow ((width/2) - (483/2), (height/2) - (375/2), 483, 375, "My links", false) guiWindowSetSizable (linkWindow, false) --guiSetAlpha (linkWindow, 0. guiSetVisible (linkWindow, false) saveLinksButton = guiCreateButton (428, 25, 40, 35, "Close", false, linkWindow) guiCreateLabel (63, 48, 100, 30, "Name", false, linkWindow) guiCreateLabel (260, 48, 100, 30, "Link", false, linkWindow) --Link pad 1 linkname1 = guiCreateEdit (17, 70, 125, 23, linkTable[1]["name"], false, linkWindow) linkedit1 = guiCreateEdit (145, 70, 253, 23, linkTable[1]["link"], false, linkWindow) linkUseButton1 = guiCreateButton (428, 70, 40, 23, "use", false, linkWindow) removeButton1 = guiCreateButton (400.5, 70, 23, 23, "X", false, linkWindow) --Link pad 2 linkname2 = guiCreateEdit (17, 100, 125, 23, linkTable[2]["name"], false, linkWindow) linkedit2 = guiCreateEdit (145, 100, 253, 23, linkTable[2]["link"], false, linkWindow) linkUseButton2 = guiCreateButton (428, 100, 40, 23, "use", false, linkWindow) removeButton2 = guiCreateButton (400.5, 100, 23, 23, "X", false, linkWindow) --Link pad 3 linkname3 = guiCreateEdit (17, 130, 125, 23, linkTable[3]["name"], false, linkWindow) linkedit3 = guiCreateEdit (145, 130, 253, 23, linkTable[3]["link"], false, linkWindow) linkUseButton3 = guiCreateButton (428, 130, 40, 23, "use", false, linkWindow) removeButton3 = guiCreateButton (400.5, 130, 23, 23, "X", false, linkWindow) --Link pad 4 linkname4 = guiCreateEdit (17, 160, 125, 23, linkTable[4]["name"], false, linkWindow) linkedit4 = guiCreateEdit (145, 160, 253, 23, linkTable[4]["link"], false, linkWindow) linkUseButton4 = guiCreateButton (428, 160, 40, 23, "use", false, linkWindow) removeButton4 = guiCreateButton (400.5, 160, 23, 23, "X", false, linkWindow) --Link pad 5 linkname5 = guiCreateEdit (17, 190, 125, 23, linkTable[5]["name"], false, linkWindow) linkedit5 = guiCreateEdit (145, 190, 253, 23, linkTable[5]["link"], false, linkWindow) linkUseButton5 = guiCreateButton (428, 190, 40, 23, "use", false, linkWindow) removeButton5 = guiCreateButton (400.5, 190, 23, 23, "X", false, linkWindow) --Link pad 6 linkname6 = guiCreateEdit (17, 220, 125, 23, linkTable[6]["name"], false, linkWindow) linkedit6 = guiCreateEdit (145, 220, 253, 23, linkTable[6]["link"], false, linkWindow) linkUseButton6 = guiCreateButton (428, 220, 40, 23, "use", false, linkWindow) removeButton6 = guiCreateButton (400.5, 220, 23, 23, "X", false, linkWindow) --Link pad 7 linkname7 = guiCreateEdit (17, 250, 125, 23, linkTable[7]["name"], false, linkWindow) linkedit7 = guiCreateEdit (145, 250, 253, 23, linkTable[7]["link"], false, linkWindow) linkUseButton7 = guiCreateButton (428, 250, 40, 23, "use", false, linkWindow) removeButton7 = guiCreateButton (400.5, 250, 23, 23, "X", false, linkWindow) --Link pa d8 linkname8 = guiCreateEdit (17, 280, 125, 23, linkTable[8]["name"], false, linkWindow) linkedit8 = guiCreateEdit (145, 280, 253, 23, linkTable[8]["link"], false, linkWindow) linkUseButton8 = guiCreateButton (428, 280, 40, 23, "use", false, linkWindow) removeButton8 = guiCreateButton (400.5, 280, 23, 23, "X", false, linkWindow) --Link pad 9 linkname9 = guiCreateEdit (17, 310, 125, 23, linkTable[9]["name"], false, linkWindow) linkedit9 = guiCreateEdit (145, 310, 253, 23, linkTable[9]["link"], false, linkWindow) linkUseButton9 = guiCreateButton (428, 310, 40, 23, "use", false, linkWindow) removeButton9 = guiCreateButton (400.5, 310, 23, 23, "X", false, linkWindow) --Link pad 10 linkname10 = guiCreateEdit (17, 340, 125, 23, linkTable[10]["name"], false, linkWindow) linkedit10 = guiCreateEdit (145, 340, 253, 23, linkTable[10]["link"], false, linkWindow) linkUseButton10 = guiCreateButton (428, 340, 40, 23, "use", false, linkWindow) removeButton10 = guiCreateButton (400.5, 340, 23, 23, "X", false, linkWindow) end function onMyLinksButtonClick () if source == myLinksButton then guiSetVisible (linkWindow, true) guiMoveToBack (mainWindow) end end function closeLinkWindow () if source == closeLinkWindowButton then guiSetVisible (linkWindow, false) reloadLinkPads () end end function onCreateSpeakerKlick () if source == createButton then if speakers[player] then outputChatBox ("You already have a speaker!", 255, 0, 0) else local guiText = guiGetText (urlEdit) if guiText == "" then outputChatBox ("You need to type radio url!", 255, 0, 0) else local distance = guiGetText (distanceEdit) distance = tonumber (distance) if type (distance) ~= "number" then outputChatBox ("Distance have to be number!", 255, 0, 0) else if distance > maxdistance then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else if distance < 1 then Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 Error: Loading script failed : SAEGspeaker/client.lua:119: '(' expected near 'openorcloseGUI' Yes my bad, replace this client with your client --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers --//You can edit these defaultlinks = {} defaultlinks[1] = {"", "Edit these from client.lua file"} defaultlinks[2] = {"", ""} defaultlinks[3] = {"", ""} defaultlinks[4] = {"", ""} defaultlinks[5] = {"", ""} defaultlinks[6] = {"", ""} defaultlinks[7] = {"", ""} defaultlinks[8] = {"", ""} openKey = "f5" maxdistance = 100 defaultdistance = 50 --//Dont edit these! triggerServerEvent ("clientIsReady", getRootElement()) width, height = guiGetScreenSize () speakers = {} linkTable = {} selectedURLName = "N/A" function startScript () --//Create main GUI mainWindow = guiCreateWindow ((width/2) - (500/2), (height/2) - (417/2), 500, 417, "Speaker system", false) guiWindowSetSizable (mainWindow, false) --Buttons and event handlers closeButton = guiCreateButton (450, 25, 40, 35, "Close", false, mainWindow) addEventHandler ("onClientGUIClick", closeButton, closeGUI) createButton = guiCreateButton (30, 87, 80, 40, "Create speaker", false, mainWindow) addEventHandler ("onClientGUIClick", createButton, onCreateSpeakerKlick) destroyButton = guiCreateButton (130, 87, 80, 40, "Destroy speaker", false, mainWindow) addEventHandler ("onClientGUIClick", destroyButton, onDestroySpeakerClick) myLinksButton = guiCreateButton (420, 114, 70, 35, "My links", false, mainWindow) addEventHandler ("onClientGUIClick", myLinksButton, onMyLinksButtonClick) guiSetEnabled (myLinksButton, false) --URL Stuff guiCreateLabel (90, 23, 100, 30, "Radio URL:", false, mainWindow) urlEdit = guiCreateEdit (22, 44, 200, 35, "", false, mainWindow) --50 --Max distance guiCreateLabel (259, 23, 200, 30, "Max distance (1 - " .. tostring(maxdistance) .. "):", false, mainWindow) distanceEdit = guiCreateEdit (290, 44, 50, 35, tostring(defaultdistance), false, mainWindow) -- nowPlayingText = guiCreateLabel (34, 133, 70, 30, "Now playing:", false, mainWindow) guiSetVisible (nowPlayingText, false) nowPlayingEditLabel = guiCreateLabel (112, 133, 288, 30, "-", false, mainWindow) guiSetVisible (nowPlayingEditLabel, false) guiCreateLabel (25, 145, 600, 30, "_______________________________________________________________", false, mainWindow) --Links --Edit 1 edit1 = guiCreateEdit (105, 168, 313, 23, defaultlinks[1][2], false, mainWindow) guiCreateLabel (30, 170, 200, 30, defaultlinks[1][1], false, mainWindow) guiEditSetReadOnly (edit1, true) defaultUseButton1 = guiCreateButton (423, 168, 40, 23, "use", false, mainWindow) --Edit 2 edit2 = guiCreateEdit (105, 198, 313, 23, defaultlinks[2][2], false, mainWindow) guiCreateLabel (30, 200, 200, 30, defaultlinks[2][1], false, mainWindow) guiEditSetReadOnly (edit2, true) defaultUseButton2 = guiCreateButton (423, 198, 40, 23, "use", false, mainWindow) --Edit 3 edit3 = guiCreateEdit (105, 228, 313, 23, defaultlinks[3][2], false, mainWindow) guiCreateLabel (30, 230, 200, 30, defaultlinks[3][1], false, mainWindow) guiEditSetReadOnly (edit3, true) defaultUseButton3 = guiCreateButton (423, 228, 40, 23, "use", false, mainWindow) --Edit 4 edit4 = guiCreateEdit (105, 258, 313, 23, defaultlinks[4][2], false, mainWindow) guiCreateLabel (30, 260, 200, 30, defaultlinks[4][1], false, mainWindow) guiEditSetReadOnly (edit4, true) defaultUseButton4 = guiCreateButton (423, 258, 40, 23, "use", false, mainWindow) --Edit 5 edit5 = guiCreateEdit (105, 288, 313, 23, defaultlinks[5][2], false, mainWindow) guiCreateLabel (30, 290, 200, 30, defaultlinks[5][1], false, mainWindow) guiEditSetReadOnly (edit5, true) defaultUseButton5 = guiCreateButton (423, 288, 40, 23, "use", false, mainWindow) --Edit 6 edit6 = guiCreateEdit (105, 318, 313, 23, defaultlinks[6][2], false, mainWindow) guiCreateLabel (30, 320, 200, 30, defaultlinks[6][1], false, mainWindow) guiEditSetReadOnly (edit6, true) defaultUseButton6 = guiCreateButton (423, 318, 40, 23, "use", false, mainWindow) --Edit 7 edit7 = guiCreateEdit (105, 348, 313, 23, defaultlinks[7][2], false, mainWindow) guiCreateLabel (30, 350, 200, 30, defaultlinks[7][1], false, mainWindow) guiEditSetReadOnly (edit7, true) defaultUseButton7 = guiCreateButton (423, 348, 40, 23, "use", false, mainWindow) --Edit 8 edit8 = guiCreateEdit (105, 378, 313, 23, defaultlinks[8][2], false, mainWindow) guiCreateLabel (30, 380, 200, 30, defaultlinks[8][1], false, mainWindow) guiEditSetReadOnly (edit8, true) defaultUseButton8 = guiCreateButton (423, 378, 40, 23, "use", false, mainWindow) --//-- guiSetVisible (mainWindow, false) --Add some events addEvent ("speakerStuffFromServer", true) addEventHandler ("speakerStuffFromServer", getRootElement(), createSpeaker) addEvent ("destroySpeaker", true) addEventHandler ("destroySpeaker", getRootElement(), destroySpeaker) addEvent ("onPQuit", true) addEventHandler ("onPQuit", getRootElement(), onPlayerQuit) addEvent ("createMyLinksGUI", true) addEventHandler ("createMyLinksGUI", getRootElement(), createMyLinksGUI) addEvent ("onPlayerLogout", true) addEventHandler ("onPlayerLogout", getRootElement(), onPlayerLogout) end addEventHandler ("onClientResourceStart", getResourceRootElement(), startScript) addEvent("openGUI",true) addEventHandler("openGUI",getRootElement(), function () if guiGetVisible (mainWindow) then guiSetVisible (mainWindow, false) guiSetVisible (linkWindow, false) showCursor (false) else guiSetVisible (mainWindow, true) showCursor (true) end end) bindKey (openKey, "down", openOrCloseGUI) function closeGUI () if source == closeButton then guiSetVisible (mainWindow, false) showCursor (false) end end function createMyLinksGUI (tableoflinks) linkTable = tableoflinks guiSetEnabled (myLinksButton, true) --//Create my links window linkWindow = guiCreateWindow ((width/2) - (483/2), (height/2) - (375/2), 483, 375, "My links", false) guiWindowSetSizable (linkWindow, false) --guiSetAlpha (linkWindow, 0. guiSetVisible (linkWindow, false) saveLinksButton = guiCreateButton (428, 25, 40, 35, "Close", false, linkWindow) guiCreateLabel (63, 48, 100, 30, "Name", false, linkWindow) guiCreateLabel (260, 48, 100, 30, "Link", false, linkWindow) --Link pad 1 linkname1 = guiCreateEdit (17, 70, 125, 23, linkTable[1]["name"], false, linkWindow) linkedit1 = guiCreateEdit (145, 70, 253, 23, linkTable[1]["link"], false, linkWindow) linkUseButton1 = guiCreateButton (428, 70, 40, 23, "use", false, linkWindow) removeButton1 = guiCreateButton (400.5, 70, 23, 23, "X", false, linkWindow) --Link pad 2 linkname2 = guiCreateEdit (17, 100, 125, 23, linkTable[2]["name"], false, linkWindow) linkedit2 = guiCreateEdit (145, 100, 253, 23, linkTable[2]["link"], false, linkWindow) linkUseButton2 = guiCreateButton (428, 100, 40, 23, "use", false, linkWindow) removeButton2 = guiCreateButton (400.5, 100, 23, 23, "X", false, linkWindow) --Link pad 3 linkname3 = guiCreateEdit (17, 130, 125, 23, linkTable[3]["name"], false, linkWindow) linkedit3 = guiCreateEdit (145, 130, 253, 23, linkTable[3]["link"], false, linkWindow) linkUseButton3 = guiCreateButton (428, 130, 40, 23, "use", false, linkWindow) removeButton3 = guiCreateButton (400.5, 130, 23, 23, "X", false, linkWindow) --Link pad 4 linkname4 = guiCreateEdit (17, 160, 125, 23, linkTable[4]["name"], false, linkWindow) linkedit4 = guiCreateEdit (145, 160, 253, 23, linkTable[4]["link"], false, linkWindow) linkUseButton4 = guiCreateButton (428, 160, 40, 23, "use", false, linkWindow) removeButton4 = guiCreateButton (400.5, 160, 23, 23, "X", false, linkWindow) --Link pad 5 linkname5 = guiCreateEdit (17, 190, 125, 23, linkTable[5]["name"], false, linkWindow) linkedit5 = guiCreateEdit (145, 190, 253, 23, linkTable[5]["link"], false, linkWindow) linkUseButton5 = guiCreateButton (428, 190, 40, 23, "use", false, linkWindow) removeButton5 = guiCreateButton (400.5, 190, 23, 23, "X", false, linkWindow) --Link pad 6 linkname6 = guiCreateEdit (17, 220, 125, 23, linkTable[6]["name"], false, linkWindow) linkedit6 = guiCreateEdit (145, 220, 253, 23, linkTable[6]["link"], false, linkWindow) linkUseButton6 = guiCreateButton (428, 220, 40, 23, "use", false, linkWindow) removeButton6 = guiCreateButton (400.5, 220, 23, 23, "X", false, linkWindow) --Link pad 7 linkname7 = guiCreateEdit (17, 250, 125, 23, linkTable[7]["name"], false, linkWindow) linkedit7 = guiCreateEdit (145, 250, 253, 23, linkTable[7]["link"], false, linkWindow) linkUseButton7 = guiCreateButton (428, 250, 40, 23, "use", false, linkWindow) removeButton7 = guiCreateButton (400.5, 250, 23, 23, "X", false, linkWindow) --Link pa d8 linkname8 = guiCreateEdit (17, 280, 125, 23, linkTable[8]["name"], false, linkWindow) linkedit8 = guiCreateEdit (145, 280, 253, 23, linkTable[8]["link"], false, linkWindow) linkUseButton8 = guiCreateButton (428, 280, 40, 23, "use", false, linkWindow) removeButton8 = guiCreateButton (400.5, 280, 23, 23, "X", false, linkWindow) --Link pad 9 linkname9 = guiCreateEdit (17, 310, 125, 23, linkTable[9]["name"], false, linkWindow) linkedit9 = guiCreateEdit (145, 310, 253, 23, linkTable[9]["link"], false, linkWindow) linkUseButton9 = guiCreateButton (428, 310, 40, 23, "use", false, linkWindow) removeButton9 = guiCreateButton (400.5, 310, 23, 23, "X", false, linkWindow) --Link pad 10 linkname10 = guiCreateEdit (17, 340, 125, 23, linkTable[10]["name"], false, linkWindow) linkedit10 = guiCreateEdit (145, 340, 253, 23, linkTable[10]["link"], false, linkWindow) linkUseButton10 = guiCreateButton (428, 340, 40, 23, "use", false, linkWindow) removeButton10 = guiCreateButton (400.5, 340, 23, 23, "X", false, linkWindow) end function onMyLinksButtonClick () if source == myLinksButton then guiSetVisible (linkWindow, true) guiMoveToBack (mainWindow) end end function closeLinkWindow () if source == closeLinkWindowButton then guiSetVisible (linkWindow, false) reloadLinkPads () end end function onCreateSpeakerKlick () if source == createButton then if speakers[player] then outputChatBox ("You already have a speaker!", 255, 0, 0) else local guiText = guiGetText (urlEdit) if guiText == "" then outputChatBox ("You need to type radio url!", 255, 0, 0) else local distance = guiGetText (distanceEdit) distance = tonumber (distance) if type (distance) ~= "number" then outputChatBox ("Distance have to be number!", 255, 0, 0) else if distance > maxdistance then outputChatBox ("Distance have to be between 1 - " .. maxdistance .. "!", 255, 0, 0) return false else Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 It should works, replace the server side code with this one --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers clientIsReady = false addCommandHandler("speakers", function (thePlayer) local account = getPlayerAccount(thePlayer) if not account or isGuestAccount(account) then return false end local accountName = getAccountName(account) if ( isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Owner" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Co-Owner" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Staff Manager" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Administrator" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Super Moderator" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Senior Moderator" ) ) ) then triggerClientEvent(thePlayer,"openGUI",thePlayer) end end) function startScript () addEvent ("onSpeakerCreate", true) addEventHandler ("onSpeakerCreate", getRootElement(), onSpeakerCreate) addEvent ("onSpeakerDestroy", true) addEventHandler ("onSpeakerDestroy", getRootElement(), onSpeakerDestroy) addEvent ("clientIsReady", true) addEventHandler ("clientIsReady", getRootElement(), enableClientIsReady) addEvent ("saveLinks", true) addEventHandler ("saveLinks", getRootElement(), saveLinks) linkTimer = setTimer (enableLinksForPlayers, 500, 0) end addEventHandler ("onResourceStart", getResourceRootElement(), startScript) function onSpeakerCreate (player, url, distance) if getPedOccupiedVehicle (player) then if getPedOccupiedVehicleSeat (player) > 0 then outputChatBox ("You can't create speaker as a passenger!", player, 255, 0, 0) return false end end local x, y, z = getElementPosition (player) local z = z - 1 local rx, ry, rz = getElementRotation (player) local rz = rz + 90 local rz = 0.0174532925 * rz local x = (math.cos(rz) * 1.5) + x local y = (math.sin(rz) * 1.5) + y local ox, oy, oz = getElementPosition (player) local rotation = findRotation(x, y, ox, oy) local rotation = rotation + 180 triggerClientEvent ("speakerStuffFromServer", getRootElement(), player, url, distance, x, y, z, rotation) end function onSpeakerDestroy (player) triggerClientEvent ("destroySpeaker", getRootElement(), player) end function onPlayerQuit () local player = source triggerClientEvent ("onPQuit", getRootElement(), player) end addEventHandler ("onPlayerQuit", getRootElement(), onPlayerQuit) function findRotation(x1,y1,x2,y2) local t = -math.deg(math.atan2(x2-x1,y2-y1)) if t < 0 then t = t + 360 end; return t; end function getLinks (player) local account = getPlayerAccount (player) if getAccountData (account, "urlLinks") then linkJSONTable = getAccountData (account, "urlLinks") linkTable = fromJSON (linkJSONTable) else linkTable = {{}, {}, {}, {}, {}, {}, {}, {}, {}, {}} linkTable[1]["name"] = "" linkTable[1]["link"] = "" linkTable[2]["name"] = "" linkTable[2]["link"] = "" linkTable[3]["name"] = "" linkTable[3]["link"] = "" linkTable[4]["name"] = "" linkTable[4]["link"] = "" linkTable[5]["name"] = "" linkTable[5]["link"] = "" linkTable[6]["name"] = "" linkTable[6]["link"] = "" linkTable[7]["name"] = "" linkTable[7]["link"] = "" linkTable[8]["name"] = "" linkTable[8]["link"] = "" linkTable[9]["name"] = "" linkTable[9]["link"] = "" linkTable[10]["name"] = "" linkTable[10]["link"] = "" end local tableoflinks = linkTable triggerClientEvent (player, "createMyLinksGUI", getRootElement(), tableoflinks) end function onLogin () local player = source getLinks (player) end addEventHandler ("onPlayerLogin", getRootElement(), onLogin) function onLogout () local player = source triggerClientEvent (player, "onPlayerLogout", getRootElement()) end addEventHandler ("onPlayerLogout", getRootElement(), onLogout) function saveLinks (player, linkTable) local account = getPlayerAccount (player) local linkTable = toJSON (linkTable) setAccountData (account, "urlLinks", linkTable) end function enableClientIsReady () clientIsReady = true end function enableLinksForPlayers () if clientIsReady == true then local players = getElementsByType ("player") for k, player in ipairs (players) do local account = getPlayerAccount (player) if isGuestAccount (account) == false then getLinks (player) end end killTimer (linkTimer) end end Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 It should works, replace the server side code with this one --// Made by: MoPoMaN --// © 2014 Pelinurkka Servers clientIsReady = false addCommandHandler("speakers", function (thePlayer) local account = getPlayerAccount(thePlayer) if not account or isGuestAccount(account) then return false end local accountName = getAccountName(account) if ( isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Owner" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Co-Owner" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Staff Manager" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Administrator" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Super Moderator" ) ) or isObjectInACLGroup ( "user." .. accountName, aclGetGroup ( "Senior Moderator" ) ) ) then triggerClientEvent(thePlayer,"openGUI",thePlayer) end end) function startScript () addEvent ("onSpeakerCreate", true) addEventHandler ("onSpeakerCreate", getRootElement(), onSpeakerCreate) addEvent ("onSpeakerDestroy", true) addEventHandler ("onSpeakerDestroy", getRootElement(), onSpeakerDestroy) addEvent ("clientIsReady", true) addEventHandler ("clientIsReady", getRootElement(), enableClientIsReady) addEvent ("saveLinks", true) addEventHandler ("saveLinks", getRootElement(), saveLinks) linkTimer = setTimer (enableLinksForPlayers, 500, 0) end addEventHandler ("onResourceStart", getResourceRootElement(), startScript) function onSpeakerCreate (player, url, distance) if getPedOccupiedVehicle (player) then if getPedOccupiedVehicleSeat (player) > 0 then outputChatBox ("You can't create speaker as a passenger!", player, 255, 0, 0) return false end end local x, y, z = getElementPosition (player) local z = z - 1 local rx, ry, rz = getElementRotation (player) local rz = rz + 90 local rz = 0.0174532925 * rz local x = (math.cos(rz) * 1.5) + x local y = (math.sin(rz) * 1.5) + y local ox, oy, oz = getElementPosition (player) local rotation = findRotation(x, y, ox, oy) local rotation = rotation + 180 triggerClientEvent ("speakerStuffFromServer", getRootElement(), player, url, distance, x, y, z, rotation) end function onSpeakerDestroy (player) triggerClientEvent ("destroySpeaker", getRootElement(), player) end function onPlayerQuit () local player = source triggerClientEvent ("onPQuit", getRootElement(), player) end addEventHandler ("onPlayerQuit", getRootElement(), onPlayerQuit) function findRotation(x1,y1,x2,y2) local t = -math.deg(math.atan2(x2-x1,y2-y1)) if t < 0 then t = t + 360 end; return t; end function getLinks (player) local account = getPlayerAccount (player) if getAccountData (account, "urlLinks") then linkJSONTable = getAccountData (account, "urlLinks") linkTable = fromJSON (linkJSONTable) else linkTable = {{}, {}, {}, {}, {}, {}, {}, {}, {}, {}} linkTable[1]["name"] = "" linkTable[1]["link"] = "" linkTable[2]["name"] = "" linkTable[2]["link"] = "" linkTable[3]["name"] = "" linkTable[3]["link"] = "" linkTable[4]["name"] = "" linkTable[4]["link"] = "" linkTable[5]["name"] = "" linkTable[5]["link"] = "" linkTable[6]["name"] = "" linkTable[6]["link"] = "" linkTable[7]["name"] = "" linkTable[7]["link"] = "" linkTable[8]["name"] = "" linkTable[8]["link"] = "" linkTable[9]["name"] = "" linkTable[9]["link"] = "" linkTable[10]["name"] = "" linkTable[10]["link"] = "" end local tableoflinks = linkTable triggerClientEvent (player, "createMyLinksGUI", getRootElement(), tableoflinks) end function onLogin () local player = source getLinks (player) end addEventHandler ("onPlayerLogin", getRootElement(), onLogin) function onLogout () local player = source triggerClientEvent (player, "onPlayerLogout", getRootElement()) end addEventHandler ("onPlayerLogout", getRootElement(), onLogout) function saveLinks (player, linkTable) local account = getPlayerAccount (player) local linkTable = toJSON (linkTable) setAccountData (account, "urlLinks", linkTable) end function enableClientIsReady () clientIsReady = true end function enableLinksForPlayers () if clientIsReady == true then local players = getElementsByType ("player") for k, player in ipairs (players) do local account = getPlayerAccount (player) if isGuestAccount (account) == false then getLinks (player) end end killTimer (linkTimer) end end Thanx Karim i can ask you ? Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 Thanx Karim i can ask you ? Sure,ask Link to comment
Best-Killer1 Posted September 22, 2015 Author Share Posted September 22, 2015 Thanx Karim i can ask you ? Sure,ask when i change dimension and create speaker it's not showing in dimension where me it's showing in dimension 0 you know how to fix it ? Link to comment
KariiiM Posted September 22, 2015 Share Posted September 22, 2015 nsion and create speaker it's not showing in dimension where me it's showing in dimension 0 you know how to fix it ? You mean, when you create the speaker object in different dimension the object keep showing in the default dimension 0? IF Yes, you've to get the player's dimension then set the object the dimension of the player that you got his dim with getElementDimension function. Here are all the functions that you need in this case getElementDimension setElementDimension 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