local RayEvent = Instance.new("RemoteEvent") RayEvent.Name = "RayEvent" RayEvent.Parent = script.Parent RayEvent.OnServerEvent:Connect(function() local part = script.Parent local orgin = part.Position local direction = part.CFrame.LookVector * 50 local ray = Ray.new(orgin, direction) local raycastResult = workspace:Raycast(ray.Origin, ray.Direction) print(raycastResult) local midpoint = orgin + direction/2 local part = Instance.new("Part") part.Parent = game.Workspace part.Anchored = true part.CanCollide = false part.Material = Enum.Material.Neon part.BrickColor = BrickColor.new("Bright yellow") part.CFrame = CFrame.new(midpoint, orgin) part.Size = Vector3.new(0.02, 0.02, direction.magnitude) wait(0.1) local hitpart = raycastResult.Instance local human = hitpart:FindFirstChild("Humanoid") if (human ~= nil) then human.Health = human.Health - 5 end end)
I'm trying to cast out a ray from a part that upon contact deals damage, but when in server it doesn't deal damage. What's weird to me that the code to make the bullet trail works, but the function to print and deal damage doesn't, I'm unsure of how to fix this.
I'm using a local script to fire this event, that detects when the player clicks. I'm doing this instead of a tool cause the way I have set up my custom character the weapon is attached to their hand directly in the model rather than being a tool.