Questions with setting speed and making noise.

I’m trying to make a taser swep that slows NPCs/players down with minor damage, but I’ve run into a few problems. First of all, the stunstick sounds do not work. I don’t really understand why though. Second, I want it to have a slowing effect for half speed that eventually goes away in ~5 seconds, but the way I did that doesn’t work either. Sorry if this is a noob post, but this is my first try at making a swep and coding in general.

Here’s my code, what errors have I made and how should I go about fixing them?

if SERVER then // This is where the init.lua stuff goes.

//This makes sure clients download the file
AddCSLuaFile ("shared.lua");

//How heavy the SWep is
SWEP.Weight = 5;
SWEP.AutoSwitchTo = false;
SWEP.AutoSwitchFrom = false;

elseif CLIENT then // This is where the cl_init.lua stuff goes
AddCSLuaFile (“cl_init.lua”);

//The name of the SWep, as appears in the weapons tab in the spawn menu(Q Menu)
SWEP.PrintName = "Taser";

//Sets the position of the weapon in the switching menu 
//(appears when you use the scroll wheel or keys 1-6 by default)
SWEP.Slot = 3;
SWEP.SlotPos = 1;

//Sets drawing the ammuntion levels for this weapon
SWEP.DrawAmmo = true;

//Sets the drawing of the crosshair when this weapon is deployed
SWEP.DrawCrosshair = true;


SWEP.HoldType = “pistol”;

SWEP.Author = “Marche100”;
SWEP.IconLetter = “w”;

SWEP.ViewModel = “models/weapons/v_Pistol.mdl”;
SWEP.WorldModel = “models/weapons/w_Pistol.mdl”;
SWEP.ReloadSound = “clipin.wav”

SWEP.Spawnable = false;
SWEP.AdminSpawnable = true;
SWEP.AutoReload = true;

SWEP.Purpose = “Slow criminals down for arrest.”;
SWEP.Instructions = “Point and shoot.”;

SWEP.Primary.Sound = Sound(“weapons/stunstick/spark1.wav”);
SWEP.Primary.Damage = 5;
SWEP.Primary.NumShots = 1;
SWEP.Primary.Recoil = 1.5;
SWEP.Primary.Cone = 0;
SWEP.Primary.Delay = 0.1;
SWEP.Primary.ClipSize = 1;
SWEP.Primary.DefaultClip = 31;
SWEP.Primary.Tracer = 1;
SWEP.Primary.Force = 0;
SWEP.Primary.TakeAmmoPerBullet = false;
SWEP.Primary.Automatic = true;
SWEP.Primary.Ammo = “pistol”;

SWEP.Secondary.ClipSize = -1;
SWEP.Secondary.DefaultClip = -1;
SWEP.Secondary.Automatic = false;
SWEP.Secondary.Ammo = “none”;

function SWEP:Primary