Well, here it is in a nutshell: This gun has no errors. It works in Play Solo, but does not work on a server. Edit: here is the lines in which an error is on: Error: weld1 is not a valid member of part
torso.weld1.C1 = CFrame.new(0.7, 0.9, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(28), math.rad(-1))
Error:Ammo is not a valid member of tool
sp.Name=ToolName.."-("..tostring(sp.Ammo.Value)..")"
Edit: Here is a picture of the errors http://gyazo.com/582d99e44ab35bf6a7793bf5cc29eca1
I can't help you much because you didn't provide enough information but you probably need to move this code from a script to a localscript. Please provide more info next time so we can better help you.