local player = game.Players.LocalPlayer
local playername = player.Name
local value = script.Parent.HasItem


if value.Value == true then
	script.Parent.Text = "Equip"
end

script.Parent.MouseButton1Down:connect(function()
	if script.Parent.Text == "Purchase" then
		value.Value = true
		script.Parent.Text = "Equip"
	elseif script.Parent.Text == "Equip" then
		script.Parent.Text = "Unequip"
		
	local particle = Instance.new("ParticleEmitter")
	particle.Name = "Particles"
	particle.Texture = "http://www.roblox.com/asset/?id=46253296"
	particle.Lifetime = NumberRange.new(10)
	particle.LockedToPart = true
	particle.Speed = NumberRange.new(10)
	particle.RotSpeed = NumberRange.new(5)
	particle.Rotation = NumberRange.new(5)
	particle.VelocitySpread = 25
	particle.Parent = game.Workspace ..(playername).Head
	
	elseif script.Parent.Text == "Unequip" then
		script.Parent.Text = "Equip"
		game.Workspace(playername).Head:findFirstChild("Particles"):Destroy()
	end
end)

Error: "Players.Player1.PlayerGui.Shop.Shop.Background.Tabs.Particles.Frames.AlphaTester.Purchase.Script:30: attempt to call field 'Workspace' (a userdata value)"

Please help? thanks