Advertisement
Guest User

server

a guest
Feb 7th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.65 KB | None | 0 0
  1. ------------------------------------------
  2. -- Author: xXMADEXx                     --
  3. -- Polish version: Czaju                --
  4. -- Name: 3D Speakers 2.0                --
  5. -- File: server.lua                     --
  6. -- Copyright 2013 ( C ) Braydon Davis   --
  7. ------------------------------------------
  8.  
  9. local isSpeaker = false
  10.  
  11. function print ( player, message, r, g, b )
  12.     outputChatBox ( message, player, r, g, b )
  13. end
  14.  
  15. speakerBox = { }
  16. addCommandHandler ( "sound", function ( thePlayer  )
  17.     if ( isElement ( speakerBox [ thePlayer] ) ) then isSpeaker = true end
  18.     triggerClientEvent ( thePlayer, "onPlayerViewSpeakerManagment", thePlayer, isSpeaker )
  19. end )
  20.  
  21. addEvent ( "onPlayerPlaceSpeakerBox", true )
  22. addEventHandler ( "onPlayerPlaceSpeakerBox", root, function ( url, isCar )
  23.     if ( url ) then
  24.         if ( isElement ( speakerBox [ source ] ) ) then
  25.             local x, y, z = getElementPosition ( speakerBox [ source ] )
  26.             print ( source, "Zniszczono stary glosnik: "..math.floor ( x )..", "..math.floor ( y )..", "..math.floor ( z ), 255, 0, 0 )
  27.             destroyElement ( speakerBox [ source ] )
  28.             removeEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
  29.         end
  30.         local x, y, z = getElementPosition ( source )
  31.         local rx, ry, rz = getElementRotation ( source )
  32.         speakerBox [ source ] = createObject ( 2229, x-0.5, y+0.5, z - 1, 0, 0, rx )
  33.         print ( source, "Glosnik postawiony na: "..math.floor ( x )..", "..math.floor ( y )..", "..math.floor ( z ), 0, 255, 0 )
  34.         addEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
  35.         triggerClientEvent ( root, "onPlayerStartSpeakerBoxSound", root, source, url, isCar )
  36.         if ( isCar ) then
  37.             local car = getPedOccupiedVehicle ( source )
  38.             attachElements ( speakerBox [ source ], car, -0.7, -1.5, -0.5, 0, 90, 0 )
  39.         end
  40.     end
  41. end )
  42.  
  43. addEvent ( "onPlayerDestroySpeakerBox", true )
  44. addEventHandler ( "onPlayerDestroySpeakerBox", root, function ( )
  45.     if ( isElement ( speakerBox [ source ] ) ) then
  46.         destroyElement ( speakerBox [ source ] )
  47.         triggerClientEvent ( root, "onPlayerDestroySpeakerBox", root, source )
  48.         removeEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
  49.         print ( source, "Zniszczono stary glosnik.", 255, 0, 0 )
  50.     else
  51.         print ( source, "Nie masz glosnika.", 255, 255, 0 )
  52.     end
  53. end )
  54.  
  55. addEvent ( "onPlayerChangeSpeakerBoxVolume", true )
  56. addEventHandler ( "onPlayerChangeSpeakerBoxVolume", root, function ( to )
  57.     triggerClientEvent ( root, "onPlayerChangeSpeakerBoxVolumeC", root, source, to )
  58. end )
  59.  
  60. function destroySpeakersOnPlayerQuit ( )
  61.     if ( isElement ( speakerBox [ source ] ) ) then
  62.         destroyElement ( speakerBox [ source ] )
  63.         triggerClientEvent ( root, "onPlayerDestroySpeakerBox", root, source )
  64.     end
  65. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement