Playing reload sound only once?

So I’ve got this custom reload sound for a SWEP I’m making, but there’s a problem: if you hold the reload button down, it gets played every millisecond… and when you’re out of ammo and try to shoot, every time you do so the reload sound plays, which results in sound spam. Any ideas how I could solve this? I’ve currently got this…
[lua]
function SWEP:Reload()

self.Weapon:EmitSound( "gtp_wp_fsmg_reload.wav" )
self.Weapon:DefaultReload( ACT_VM_RELOAD )

end[/lua]

[lua]SWEP.NextReload = 0
SWEP.ReloadTime = 5

function SWEP:Reload()
if self.NextReload > CurTime() then return end
self.NextReload = CurTime() + self.ReloadTime
self.Weapon:EmitSound( “gtp_wp_fsmg_reload.wav” )
self.Weapon:DefaultReload( ACT_VM_RELOAD )
end[/lua]

Well, it works, with a hacky solution I suppose :stuck_out_tongue: thanks :v:

I fail to see how it is hacky.