Thread:Spawn(function()while true do for f,F in ipairs(ActiveHitboxes)do if F.deleted then Handler:remove(F.object)else for f,R in ipairs(F.points)do if not F.active then R.LastPosition=nil else local f,q,k,b=R.solver:solve(R,((game:GetService("\082\101\112\108\105\099\097\116\101\100\083\116\111\114\097\103\101")):WaitForChild("\067\108\105\101\110\116\083\101\116\116\105\110\103\115")).Debug.Value)local function Q(f,F,R)local q=workspace:Raycast(f,F,R)if q then local f=q.Instance if f.Parent:IsA("\065\099\099\111\117\116\114\101\109\101\110\116")then table.insert(R.FilterDescendantsInstances,f)q=nil end end return q end local i=Q(f,q,F.raycastParams)R.solver:lastPosition(R,k)if i then local f=i.Instance local q=not F.partMode and f:FindFirstAncestorOfClass("\077\111\100\101\108")local k=q and q:FindFirstChildOfClass("\072\117\109\097\110\111\105\100")local Q=k or F.partMode and f if Q and not F.targetsHit[Q]then F.targetsHit[Q]=true if b~=nil and typeof(b)=="\073\110\115\116\097\110\099\101"then b.Color=Color3.fromRGB(85,255,0)end F.OnHit:Fire(f,k,i,R.group)end end if F.endTime>0 then if F.endTime<=clock()then F.endTime=0 F:HitStop()end end F.OnUpdate:Fire(R.LastPosition)end end end end Thread:Wait(.028)end end)return Handler
--------
Thread:Spawn(function()
	while true do
		for Index, Object in ipairs(ActiveHitboxes) do
			if Object.deleted then
				Handler:remove(Object.object)
			else
				for _, Point in ipairs(Object.points) do
					if not Object.active then
						Point.LastPosition = nil
					else
						local rayStart, rayDir, RelativePointToWorld, debugPart = Point.solver:solve(
							Point,
							game:GetService("ReplicatedStorage"):WaitForChild("ClientSettings").Debug.Value
						)

						local function castFunction(rayStart, rayDir, params)
							local resultOfCast = workspace:Raycast(rayStart, rayDir, params)

							if resultOfCast then
								local hitInstance = resultOfCast.Instance

								if hitInstance.Parent:IsA("Accoutrement") then
									table.insert(params.FilterDescendantsInstances, hitInstance)
									resultOfCast = nil
								end
							end

							return resultOfCast
						end

						local raycastResult = castFunction(rayStart, rayDir, Object.raycastParams)
						Point.solver:lastPosition(Point, RelativePointToWorld)

						if raycastResult then
							local hitPart = raycastResult.Instance
							local findModel = not Object.partMode and hitPart:FindFirstAncestorOfClass("Model")
							local humanoid = findModel and findModel:FindFirstChildOfClass("Humanoid")
							local target = humanoid or (Object.partMode and hitPart)

							if target and not Object.targetsHit[target] then
								Object.targetsHit[target] = true

								if debugPart ~= nil and typeof(debugPart) == "Instance" then
									debugPart.Color = Color3.fromRGB(85, 255, 0)
								end

								Object.OnHit:Fire(hitPart, humanoid, raycastResult, Point.group)
							end
						end

						if Object.endTime > 0 then
							if Object.endTime <= clock() then
								Object.endTime = 0
								Object:HitStop()
							end
						end

						Object.OnUpdate:Fire(Point.LastPosition)
					end
				end
			end
		end

		Thread:Wait(0.028)
	end
end)

return Handler
