Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ------------------------------------------
- -- Author: xXMADEXx --
- -- Polish version: Czaju --
- -- Name: 3D Speakers 2.0 --
- -- File: server.lua --
- -- Copyright 2013 ( C ) Braydon Davis --
- ------------------------------------------
- local isSpeaker = false
- function print ( player, message, r, g, b )
- outputChatBox ( message, player, r, g, b )
- end
- speakerBox = { }
- addCommandHandler ( "sound", function ( thePlayer )
- if ( isElement ( speakerBox [ thePlayer] ) ) then isSpeaker = true end
- triggerClientEvent ( thePlayer, "onPlayerViewSpeakerManagment", thePlayer, isSpeaker )
- end )
- addEvent ( "onPlayerPlaceSpeakerBox", true )
- addEventHandler ( "onPlayerPlaceSpeakerBox", root, function ( url, isCar )
- if ( url ) then
- if ( isElement ( speakerBox [ source ] ) ) then
- local x, y, z = getElementPosition ( speakerBox [ source ] )
- print ( source, "Zniszczono stary glosnik: "..math.floor ( x )..", "..math.floor ( y )..", "..math.floor ( z ), 255, 0, 0 )
- destroyElement ( speakerBox [ source ] )
- removeEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
- end
- local x, y, z = getElementPosition ( source )
- local rx, ry, rz = getElementRotation ( source )
- speakerBox [ source ] = createObject ( 2229, x-0.5, y+0.5, z - 1, 0, 0, rx )
- print ( source, "Glosnik postawiony na: "..math.floor ( x )..", "..math.floor ( y )..", "..math.floor ( z ), 0, 255, 0 )
- addEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
- triggerClientEvent ( root, "onPlayerStartSpeakerBoxSound", root, source, url, isCar )
- if ( isCar ) then
- local car = getPedOccupiedVehicle ( source )
- attachElements ( speakerBox [ source ], car, -0.7, -1.5, -0.5, 0, 90, 0 )
- end
- end
- end )
- addEvent ( "onPlayerDestroySpeakerBox", true )
- addEventHandler ( "onPlayerDestroySpeakerBox", root, function ( )
- if ( isElement ( speakerBox [ source ] ) ) then
- destroyElement ( speakerBox [ source ] )
- triggerClientEvent ( root, "onPlayerDestroySpeakerBox", root, source )
- removeEventHandler ( "onPlayerQuit", source, destroySpeakersOnPlayerQuit )
- print ( source, "Zniszczono stary glosnik.", 255, 0, 0 )
- else
- print ( source, "Nie masz glosnika.", 255, 255, 0 )
- end
- end )
- addEvent ( "onPlayerChangeSpeakerBoxVolume", true )
- addEventHandler ( "onPlayerChangeSpeakerBoxVolume", root, function ( to )
- triggerClientEvent ( root, "onPlayerChangeSpeakerBoxVolumeC", root, source, to )
- end )
- function destroySpeakersOnPlayerQuit ( )
- if ( isElement ( speakerBox [ source ] ) ) then
- destroyElement ( speakerBox [ source ] )
- triggerClientEvent ( root, "onPlayerDestroySpeakerBox", root, source )
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement