note:this is not the full script; the problem is every thing works except for when the humanoid's health is zero is doesn't create the string value which shows which player killed the humanoid, neither does the "You Killed"gui
function e(plr,hit,Target,Dmg,raycf) spawn(function() local ray=Ray.new(raycf.p,(hit.p-raycf.p).unit*300) local Hit,Pos=workspace:FindPartOnRay(ray,Ignore) if Hit.Parent:FindFirstChildWhichIsA("Humanoid")~=nil then if game.Players:GetPlayerFromCharacter(Hit.Parent)~=nil then if game.Players:GetPlayerFromCharacter(Hit.Parent).TeamData.Team.Value~=plr.TeamData.Team.Value then Hit.Parent:FindFirstChildWhichIsA("Humanoid"):TakeDamage(Dmg) if Hit.Parent:FindFirstChildWhichIsA("Humanoid").Health==0 then spawn(function() local clone = script.kill:Clone() clone.Parent=plr.PlayerGui clone.TextLabel.Text="[!+100! you killed]"..Hit.Parent.Name local killer=Instance.new("StringValue",Hit.Parent:FindFirstChildWhichIsA("Humanoid")) killer.Name="Killer" killer.Value=plr.Name wait(3) clone:Destroy() end) end end end end local raypart=Instance.new("Part",workspace) raypart.Anchored=true raypart.Material="Neon" raypart.Color=Color3.fromRGB(255,0,0) raypart.CanCollide=false raypart.Name=plr.Name local Dist=(Pos-raycf.p).magnitude raypart.Size=Vector3.new(0.1,0.1,Dist) raypart.CFrame=CFrame.new(raycf.p,Pos)*CFrame.new(0,0,-Dist/2) game.Debris:AddItem(raypart,0.1) end) end game.ReplicatedStorage.Remotes.Shoot.OnServerEvent:Connect(e)