-ffn-python Posted September 14, 2015 Share Posted September 14, 2015 (edited) DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ:", true) guiSetText(DjKim, ""..getPlayerFromName().."") Edited September 15, 2015 by Guest Link to comment
freudo Posted September 14, 2015 Share Posted September 14, 2015 DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ:", true) guiSetText(DjKim, ""..getPlayerFromName().."") DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ:", true) guiSetText(DjKim, getPlayerName(source)) or DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ:", true) guiSetText(DjKim, getPlayerFromName(source)) Link to comment
-ffn-python Posted September 14, 2015 Author Share Posted September 14, 2015 Okay. Barikat, but work ? Link to comment
-ffn-python Posted September 14, 2015 Author Share Posted September 14, 2015 i'm testing but don'T working. Link to comment
TAPL Posted September 14, 2015 Share Posted September 14, 2015 DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ:", true) guiSetText(DjKim, "DJ: "..getPlayerName(localPlayer)) Link to comment
-ffn-python Posted September 14, 2015 Author Share Posted September 14, 2015 Okay. DJ player name ? All Player show ? Link to comment
-ffn-python Posted September 15, 2015 Author Share Posted September 15, 2015 Hey My New Problem Help me Guys... how to All Players Listen To Music ? fetchremote = guiCreateEdit(0.24, 0.02, 0.68, 0.05, "", true, Donators) muzikOlustur = guiGetText( fetchremote ) Dinlet = playSound(tostring( muzikOlustur ), true) addEventHandler("onClientRender", root, djArkaPlan) Link to comment
' A F . Posted September 15, 2015 Share Posted September 15, 2015 guiGetText triggerServerEvent getElementsByType triggerClientEvent playSound Use ^ Link to comment
VenceremoS Posted September 15, 2015 Share Posted September 15, 2015 (edited) If you wanna show how many players listening music then use these codes setElementData getElementData getElementsByType Edited September 15, 2015 by Guest Link to comment
obuhhh Posted September 15, 2015 Share Posted September 15, 2015 Emm... Its client-side? DjKim = guiCreateLabel(0.49, 0.81, 0.20, 0.03, "DJ: none", true) guiSetText(DjKim, "DJ: "..getPlayerName(localPlayer)) -- return string - nickname [i]localPlayer[/i] -- if you need name another player, then getPlayerName(*player*) Link to comment
Dealman Posted September 15, 2015 Share Posted September 15, 2015 You'll have to use both triggerServerEvent and triggerClientEvent. When you use functions such as playSound and playSound3D much like the Wiki states - they are client-sided. Meaning, they only execute on the client calling it. And that client only. Example; Player 1 calls playSound, sound starts playing. Player 2 does nothing, no sound starts playing. This is intended behaviour in order for clients to perform their own unique operations. The solution? Use the server to call this function for all current clients - or the clients(player element) you specify. Example; Player 1 requests to play a song Server handles the request Server tells all clients to call playSound with specified filepath or URL. Player 1 calls playSound, sound starts playing. Player 2 calls playSound, sound starts playing. This is how you communicate between clients and servers and is a critical part to be able to understand in order to create more advanced scripts. Functions needed for Clients; triggerServerEvent -- Trigger a custom server-sided event addEvent -- Create a custom event addEventHandler -- Handle the custom event playSound -- To play the sound Functions needed for the Server; addEvent -- Create a custom event addEventHandler -- Handle the custom event triggerClientEvent -- Trigger a custom client-sided event for specific player(s), or all players Link to comment
-ffn-python Posted September 15, 2015 Author Share Posted September 15, 2015 Okay Guys. My Example; addEventHandler("onClientResourceStart", resourceRoot, function() triggerServerEvent("pytExample", source) end ) addEvent("onPytMusic", true) addEventHandler("onPytMusic", root, function() pytTestMusic = playSound(tostring( url ), true) end ) Server Side addEvent("pytExample", true) addEventHandler("pytExample", root, function() triggerClientEvent( client, "onPytMusic", client) end ) Link to comment
Dealman Posted September 15, 2015 Share Posted September 15, 2015 That's rather unnecessary, this does the same thing; addEventHandler("onClientResourceStart", resourceRoot, function() pytTestMusic = playSound(tostring( url ), true) end ) Link to comment
-ffn-python Posted September 15, 2015 Author Share Posted September 15, 2015 you do ? What is the difference between? Link to comment
Dealman Posted September 15, 2015 Share Posted September 15, 2015 Client: function TriggerServerEvent_Handler() triggerServerEvent("onPlayerRequestSoundStart", localPlayer) end function SendServerSoundRequest(theURL) if(type(theURL) == "string") then theSound = playSound(theURL) outputChatBox("Starting to play: "..theURL) else outputDebugString("Expected a string, but received "..tostring(type(theURL))) end end addEvent("startPlayingSound", true) addEventHandler("startPlayingSound", root, SendServerSoundRequest) Server: local theURL = "www.example.com/example.mp3" function HandleClientSoundRequest() triggerClientEvent("startPlayingSound", client, theURL) -- All players -- triggerClientEvent(root, "startPlayingSound", client, theURL) -- All players -- triggerClientEvent(client, "startPlayingSound", client, theURL) -- Only the client that triggered this event -- triggerClientEvent(getRandomPlayer(), "startPlayingSound", client, theURL) -- Trigger for a random player end addEvent("onPlayerRequestSoundStart") addEventHandler("onPlayerRequestSoundStart", root, HandleClientSoundRequest) Link to comment
-ffn-python Posted September 15, 2015 Author Share Posted September 15, 2015 Okay. button Clicking , guiGetText and play sound working ? Code; function TriggerServerEvent_Handler() triggerServerEvent("onPlayerRequestSoundStart", localPlayer) end function SendServerSoundRequest(theURL) if(type(theURL) == "string") then theURL = guiGetText( fetchremote ) theSound = playSound(theURL) outputChatBox("Starting to play: "..theURL) else outputDebugString("Expected a string, but received "..tostring(type(theURL))) end end addEvent("startPlayingSound", true) addEventHandler("startPlayingSound", root, SendServerSoundRequest) my Full Code; addEventHandler("onClientResourceStart", resourceRoot, function() Donator1 = guiCreateStaticImage(0.15, 0.09, 0.73, 0.77, ":bally5/panel.png", true) URL = guiCreateLabel(0.09, 0.02, 0.15, 0.05, "Muzik URL:", true, Donator1) local font0_font = guiCreateFont(":Nwt-user/font/font.ttf", 11) guiSetFont(URL, font0_font) guiLabelSetHorizontalAlign(URL, "center", false) guiLabelSetVerticalAlign(URL, "bottom") fetchremote = guiCreateEdit(0.24, 0.02, 0.68, 0.05, "", true, Donator1) Baslat = guiCreateButton(0.35, 0.09, 0.16, 0.06, "Muzik Dinlet", true, Donator1) guiSetFont(Baslat, "default-bold-small") Kapat = guiCreateButton(0.57, 0.09, 0.16, 0.06, "Muzik Durdur", true, Donator1) guiSetFont(Kapat, "default-bold-small") guiSetVisible(Donator1, false) end ) local btn = false; addEventHandler("onClientGUIClick", root, function() if source == Baslat and btn == false then muzikOlustur = guiGetText( fetchremote ) Dinlet = playSound(tostring( muzikOlustur ), true) addEventHandler("onClientRender", root, djArkaPlan) mtrDJ() guiSetText(DjKim, getPlayerFromName(source)) setTimer( function() removeEventHandler("onClientRender", root, djArkaPlan) guiSetVisible(DjKim, false) guiSetVisible(mtrMesaj, false) end, 5000, 1) btn = true elseif source == Baslat and btn == true then stopSound( Dinlet ) btn = false end end ) new Example in My Code function play() muzikOlustur = guiGetText( fetchremote ) Dinlet = playSound(tostring( muzikOlustur ), true) end addEvent("test", true) addEventHandler("test", root, play) -- server side function testa ( pythonClient ) local pythonClient = pythonClient or source triggerClientEvent ( pythonClient,"test", pythonClient ) end Link to comment
Dealman Posted September 15, 2015 Share Posted September 15, 2015 Not quite sure what you're trying to do here, doesn't make a whole lot of sense. function testa ( pythonClient ) local pythonClient = pythonClient or source triggerClientEvent ( pythonClient,"test", pythonClient ) end What is this meant to do...? Link to comment
JR10 Posted September 16, 2015 Share Posted September 16, 2015 I can't see testa being called anywhere, can you explain a bit better? Link to comment
-ffn-python Posted September 16, 2015 Author Share Posted September 16, 2015 Button for PlaySound Trigger don't work. client side function TriggerServerEvent_Handler() triggerServerEvent("onPlayerRequestSoundStart", localPlayer) end local isButtonOn = false; function trs() if source == Baslat and isButtonOn == false then if(type(theURL) == "string") then theSound = playSound(theURL) TriggerServerEvent_Handler() outputChatBox("Starting to play: "..theURL) isButtonOn = true elseif source == Baslat and isButtonOn == true then stopSound( theSound ) isButtonOn = false end end end addEvent("startPlayingSound", true) addEventHandler("startPlayingSound", root, SendServerSoundRequest) addEventHandler("onClientGUIClick", root, trs) server- side local theURL = "1.mp3" function HandleClientSoundRequest() triggerClientEvent("startPlayingSound", client, theURL) -- All players -- triggerClientEvent(root, "startPlayingSound", client, theURL) -- All players -- triggerClientEvent(client, "startPlayingSound", client, theURL) -- Only the client that triggered this event -- triggerClientEvent(getRandomPlayer(), "startPlayingSound", client, theURL) -- Trigger for a random player end addEvent("onPlayerRequestSoundStart") addEventHandler("onPlayerRequestSoundStart", root, HandleClientSoundRequest) Link to comment
Dealman Posted September 16, 2015 Share Posted September 16, 2015 Because you need to call this function somewhere; function TriggerServerEvent_Handler() triggerServerEvent("onPlayerRequestSoundStart", localPlayer) end I didn't call or add a trigger for it because I assumed you could figure that out yourself 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