SoundDuration() & limiting the player from spamming ply.EmitSound()

I created a Derma Menu, now it works. The sounds are send via Net.SendToServer() commands, they play for everyone.
Though it doesn’t limit the player on how many times he can press the button in order to play the sound, meaning it could cause spam.
I want to limit that the player who started the sound has to wait until the initial taunt he played will end before playing another one.

The Client Side Menu code:


if ( CLIENT )	then
	local FKeyMenus = {
		KEY_F4 = phm_1;
		KEY_C = phm_1;
	};
	hook.Add( "PlayerBindPress", "PlayerBindPressFKeyMenus", function( _p, _bind, _pressed )
		local _key = "KEY_" .. string.upper( input.LookupBinding( _bind ) );
		local _func = FKeyMenus[ _key ];
		if ( _func) then
			_func( LocalPlayer() );
		else
			
		end
	end); 
	
	//Menu 
	function phm_1(_p) 
		print("Received hook.call( taunt_p1 ) from player, opening menu page 1")//Debug Line for hook.Call
		local p1_base = vgui.Create( "DFrame")		//Menu Frame
			p1_base:SetSize(176, 571)
			p1_base:SetPos(1728, 208)
			p1_base:SetTitle("Taunts - Page 1")
			p1_base:SetVisible( true )
			p1_base:SetDeleteOnClose(false)
			p1_base:ShowCloseButton(false)
			p1_base:SetDraggable(false)
			p1_base:SetKeyBoardInputEnabled(false)
			p1_base:SetMouseInputEnabled(true)
			p1_base:MakePopup(false)
		local b1 = vgui.Create("DButton", p1_base)	//Button1
			b1:SetSize(150, 33)
			b1:SetPos(12,35)
			b1:SetText("Boom Headshot!")
			b1.DoClick	=	function () 
								net.Start("send_p1_B1")
									net.WriteString("taunts/props/1.wav")//Boom Headshot
								net.SendToServer()
							end
	end
end

the Server Side code:



if ( SERVER )	then 
	TAUNT_DELAY = 3
														//Menu Page 1
														//Button1
	util.AddNetworkString("send_p1_B1")
	net.Receive( "send_p1_B1", function( ply )
		if SoundDuration(net.ReadString()) + TAUNT_DELAY <= CurTime() then
			for _,ply in pairs(player.GetAll()) do
				ply:EmitSound(net.ReadString())
				print("Should Play sound")//Debug Print
			end
		else
				print("Wait until the taunt is finished.")
		end
	end )
end

Now this code doesn’t play the sound when the button is pressed nor it give any errors. Only thing that happens when I press the button is that this appears twice in console:


print("Should Play sound")//Debug Print

Any tips or ideas as to why it doesn’t work?

Just so you guys don’t waste your time replying: I posted an answer to his problem here: http://forum.facepunch.com/showthread.php?t=1411111&p=46206968&viewfull=1#post46206968