local CATEGORY_NAME = "GAG"
function ulx.pgag( calling_ply, target_ply )
local t = target_ply
local PGagBool = tobool(t:GetPData("PGag")) or false
if PGagBool then
ULib.tsayError( calling_ply, t:Nick() .. " is already gagged!", true )
return
end
t:SetPData("PGag", true)
ulx.fancyLogAdmin( calling_ply, "#A has permanently gagged #T", t )
end
local pgag = ulx.command( CATEGORY_NAME, "ulx pgag", ulx.pgag, "!pgag" )
pgag:addParam{ type=ULib.cmds.PlayerArg }
pgag:addParam{ type=ULib.cmds.BoolArg, invisible=true }
pgag:defaultAccess( ULib.ACCESS_ADMIN )
pgag:help( "Permanently Gags target(s), disables microphone." )
function ulx.pungag( calling_ply, target_ply )
local t = target_ply
local PGagBool = tobool(t:GetPData("PGag")) or false
if not PGagBool then
ULib.tsayError( calling_ply, t:Nick() .. " is not gagged!", true )
return
end
t:SetPData("PGag", false)
ulx.fancyLogAdmin( calling_ply, "#A has permanently ungagged #T", t )
end
local pungag = ulx.command( CATEGORY_NAME, "ulx pungag", ulx.pungag, "!pungag" )
pungag:addParam{ type=ULib.cmds.PlayerArg }
pungag:addParam{ type=ULib.cmds.BoolArg, invisible=true }
pungag:defaultAccess( ULib.ACCESS_ADMIN )
pungag:help( "Permanently ungags target(s), enables microphone." )
local function doGag( listener, talker )
local PGagBool = tobool(talker:GetPData("PGag")) or false
if PGagBool then
return false
end
end
hook.Add( "PlayerCanHearPlayersVoice", "PGag", doGag )