local A=require(script.MainHandler)local n=require(script.HitboxObject)function RaycastHitbox.Initialize(y,M,N)assert(M,"\089\111\117 \109\117\115\116 \112\114\111\118\105\100\101 \097\110 \111\098\106\101\099\116 \105\110\115\116\097\110\099\101\046")local S=A:check(M)if not S then S=n:new()S:config(M,N)S:seekAttachments(RaycastHitbox.AttachmentName,RaycastHitbox.WarningMessage)S.debugMode=((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 A:add(S)end return S end function RaycastHitbox.Deinitialize(M,n)A:remove(n)end function RaycastHitbox.GetHitbox(M,n)return A:check(n)end return RaycastHitbox


local Handler = require(script.MainHandler)
local HitboxClass = require(script.HitboxObject)

function RaycastHitbox:Initialize(object, ignoreList)
	assert(object, "You must provide an object instance.")
	
	local newHitbox = Handler:check(object)
	if not newHitbox then
		newHitbox = HitboxClass:new()
		newHitbox:config(object, ignoreList)
		newHitbox:seekAttachments(RaycastHitbox.AttachmentName, RaycastHitbox.WarningMessage)
		newHitbox.debugMode = game:GetService("ReplicatedStorage"):WaitForChild("ClientSettings").Debug.Value
		Handler:add(newHitbox)
	end
	return newHitbox
end

function RaycastHitbox:Deinitialize(object) --- Deprecated
	Handler:remove(object)
end

function RaycastHitbox:GetHitbox(object)
   return Handler:check(object)
end

return RaycastHitbox
