local function U(U,N)local u local function M()u={}u.LastUpdate=tick()u.Parts={}for U=1,3,1 do local M=EFFECT_LIB.NewInvisiblePart()local G=script.Energy:Clone()G.Parent=M G.Enabled=true u.Parts[U]=M M.Parent=N end end local function G()local N=EFFECT_LIB.Loop(6)for M=1,#u.Parts,1 do u.Parts[M].CFrame=(U.CFrame*CFrame.Angles(0,math.rad(-N*360+(360/#u.Parts)*(M-1)),0))*CFrame.new(0,-3,-3.2)end end local function t()N:ClearAllChildren()u=nil end return{Start=M;Update=G,Stop=t}end return U

local function AttachAuraControl(source_part, eff_cont) --(source_part, effect_container)
	
	local AnimObj
	
	local function Start()
		AnimObj = {}
		AnimObj["LastUpdate"] = tick()
		
		AnimObj["Parts"] = {}
		
		for i = 1, 3 do
			local np = EFFECT_LIB.NewInvisiblePart()
			
			local particlez = script.Energy:Clone()
			particlez.Parent = np
			particlez.Enabled = true
			
			AnimObj["Parts"][i] = np
	
			np.Parent = eff_cont
		end
	end
	
	local function Update()
		local loop = EFFECT_LIB.Loop(6)
		
		for i = 1, #AnimObj["Parts"] do
			AnimObj["Parts"][i].CFrame = source_part.CFrame * CFrame.Angles(0, math.rad(-loop * 360 + (360 / #AnimObj["Parts"] * (i - 1))), 0) * CFrame.new(0, -3, -3.2) --* CFrame.Angles(0, math.rad(90), 0) --* CFrame.Angles(math.rad(loop2 * -360 + (i * 180)), 0, 0)
		end
	end
	
	local function Stop()
		eff_cont:ClearAllChildren()
		AnimObj = nil
	end
	
	return {Start = Start, Update = Update, Stop = Stop}
end

return AttachAuraControl
