System: You will be given a Luau script (that has been decompiled). You will rename the variables and functions to sound better, make the script more coherent, and add comments to areas of the script. Return the fixed script without adding ``` as we handle that. If no script has been given, do not produce any output. Do not respond with anything but the script
User: -- Decompiler will be improved soon!
-- Decompiled with Konstant V2.1, a fast Luau decompiler made in Luau by plusgiant5 (https://discord.gg/wyButjTMhM)
-- Decompiled on 2025-02-11 11:47:24
-- Luau version 6, Types version 3
-- Time taken: 0.021813 seconds

local Assets_upvr = game:GetService("ReplicatedStorage").Assets
local Events_upvr = game:GetService("ReplicatedStorage").Events
local Modules = game:GetService("ReplicatedStorage").Modules
local Shared_upvr = require(Modules.Core.Shared)
local Matchmaking_upvr = require(Modules.Core.Matchmaking)
local var6_upvr = Matchmaking_upvr["Difficulty Nomenclature"][Assets_upvr.Session.Difficulty.Value]
local module_2_upvr = {
	Cutscene = false;
	Sword = {
		Reach = 15;
		Damage = 250;
		KB = 20;
		WalkSpeed = 6;
		Cooldown = 0.8;
		DB = false;
		Cue = {
			ID = 8328359011;
			Volume = 0.25;
			Pitch = 1.1;
		};
		Launch = {
			ID = 632919727;
			Volume = 0.5;
			Pitch = 1;
		};
		SFX = {
			Hit = {{
				ID = 7648557047;
				Volume = 0.25;
				Pitch = 1;
			}};
			Swing = {{
				ID = 7171591581;
				Volume = 0.25;
				Pitch = 0.9;
			}};
		};
	};
	Animations = {
		SwingAnimations = {{
			ID = 9820081787;
			Delay = 0.1;
			Speed = 1;
		}, {
			ID = 9820085536;
			Delay = 0.1;
			Speed = 1;
		}};
		Special = {
			ID = 9820089303;
			Delay = 0.05;
			Speed = 0.25;
		};
		Defeat = {
			ID = 17646391354;
			Delay = 0.05;
			Speed = 1;
		};
	};
	Element = {
		Type = "Dark";
		Color = Color3.fromRGB(17, 17, 17);
	};
	Phases = {
		Enabled = true;
		Level = 0;
		Segments = {{
			Min = 0.6;
			Max = 0.8;
		}, {
			Min = 0.4;
			Max = 0.6;
		}, {
			Min = 0.2;
			Max = 0.4;
		}, {
			Min = 0;
			Max = 0.2;
		}};
	};
	["Special Attacks"] = {
		Enabled = true;
		Rate = 3;
		Multiplier = 2;
		Used = false;
		Moveset = {{
			Name = "some spike move lol";
			Amount = 20;
			Rate = 0.075;
			Damage = 65;
			Velocity = 200;
			Color = {
				Primary = Color3.fromRGB(0, 0, 0);
				Secondary = nil;
			};
			Object = Assets_upvr.Gameplay.Projectiles:WaitForChild("Spike2");
			SizeMult = 0.35;
			StatueMult = 1.5;
			Heal = 5;
			Cue = {
				ID = 8328359011;
				Volume = 0.5;
				Pitch = 1;
			};
			Launch = {
				ID = 632919727;
				Volume = 0.5;
				Pitch = 1;
			};
			Explosive = {
				Range = 30;
				Knockback = 0;
				SFX = {
					ID = 7132393400;
					Volume = 0.1;
					Pitch = 1.2;
				};
			};
			Offtime = 2;
			Cooldown = 10;
		}};
	};
}
local tbl_3_upvr = {
	Base = Instance.new("Animation");
	Core = module_2_upvr.Animations.SwingAnimations[1];
	Track = nil;
}
local tbl_4_upvr = {
	Base = Instance.new("Animation");
	Core = module_2_upvr.Animations.SwingAnimations[2];
	Track = nil;
}
local tbl_7_upvr = {
	Base = Instance.new("Animation");
	Core = module_2_upvr.Animations.Special;
	Track = nil;
}
local tbl_6_upvr = {
	Base = Instance.new("Animation");
	Core = module_2_upvr.Animations.Defeat;
	Track = nil;
}
if not workspace.Map.Barriers:FindFirstChild("SigWalls") then
	game.ServerStorage.EnemyUtility.Sigcalypsi["Sig Stuff"].SigWalls:Clone().Parent = workspace.Map.Barriers
end
local function GetSeen_upvr(arg1, arg2, arg3) -- Line 206, Named "GetSeen"
	--[[ Upvalues[1]:
		[1]: Shared_upvr (readonly)
	]]
	local var58 = arg2.CFrame * CFrame.new(0, 1.5, 0).Position
	local RaycastParams_new_result1 = RaycastParams.new()
	for _, v in pairs(workspace:GetChildren()) do
		if v:FindFirstChild("Humanoid") and v.Humanoid:GetState() ~= Enum.HumanoidStateType.Dead and not v:FindFirstChildOfClass("ForceField") and v ~= arg1 then
			local Humanoid = v:FindFirstChild("Humanoid")
			if Humanoid and Humanoid:GetState() ~= Enum.HumanoidStateType.Dead and v.PrimaryPart and v:FindFirstChild("TEAM") then
				-- KONSTANTERROR: Expression was reused, decompilation is incorrect
				local var64
				if v:FindFirstChild("TEAM").Value ~= var64 then
					-- KONSTANTERROR: Expression was reused, decompilation is incorrect
					var64 = nil
					RaycastParams_new_result1.FilterDescendantsInstances = Shared_upvr.CreateIgnoreList(arg1, false, true)
					RaycastParams_new_result1.FilterType = Enum.RaycastFilterType.Exclude
					RaycastParams_new_result1.IgnoreWater = true
					local workspace_Raycast_result1_2 = workspace:Raycast(var58, CFrame.new(var58, v.PrimaryPart.CFrame.Position).LookVector * 2048, RaycastParams_new_result1)
					if workspace_Raycast_result1_2 then
						var64 = workspace_Raycast_result1_2.Instance
					end
					if var64 and var64.Parent and var64:IsDescendantOf(v) then
						table.insert({}, v)
					end
				end
			end
		end
	end
	-- KONSTANTERROR: Expression was reused, decompilation is incorrect
	return {}
end
local function GetClosestPlayers_upvr(arg1, arg2, arg3, arg4, arg5) -- Line 259, Named "GetClosestPlayers"
	if not arg1 then return end
	if not arg2 or not arg2:IsA("BasePart") then return end
	if type(arg4) ~= "table" or not arg4 then
	end
	for _, v_2 in pairs(workspace:GetChildren()) do
		local HumanoidRootPart_2 = v_2:FindFirstChild("HumanoidRootPart")
		local Humanoid_6 = v_2:FindFirstChild("Humanoid")
		if Humanoid_6 and HumanoidRootPart_2 and 0 < Humanoid_6.Health and (arg2.Position - HumanoidRootPart_2.Position).Magnitude <= (arg5 or math.huge) then
			local TEAM_3 = arg1:FindFirstChild("TEAM")
			if TEAM_3 then
				TEAM_3 = arg1.TEAM.Value
			end
			if v_2.TEAM ~= TEAM_3 then
				local var76
				local var77 = v_2
			end
		end
	end
	if arg3 == true then
		if var77 == var76 then
			return {var77}
		end
		return {var77, var76}
	end
	return {var77}
end
local function DamageBeam_upvr(arg1, arg2, arg3) -- Line 289, Named "DamageBeam"
	if not arg2 and not arg2:IsA("BasePart") and not arg3 and not arg3:IsA("Model") then
	else
		if not arg2:FindFirstChildOfClass("Folder") then
			Instance.new("Folder").Parent = arg2
		end
		if not arg2:FindFirstChildOfClass("Attachment") then
			Instance.new("Attachment").Parent = arg2
		end
		local class_Folder_2 = arg2:FindFirstChildOfClass("Folder")
		if class_Folder_2 and class_Folder_2:FindFirstChild(arg3.Name.." - Folder") then return end
		local Folder_2 = Instance.new("Folder")
		Folder_2.Name = arg3.Name.." - Folder"
		Folder_2.Parent = class_Folder_2
		local clone_6 = arg1.Resources.Inline:Clone()
		local clone_3 = arg1.Resources.Outline:Clone()
		clone_6.Attachment0 = arg2:FindFirstChildOfClass("Attachment")
		clone_3.Attachment0 = arg2:FindFirstChildOfClass("Attachment")
		local HumanoidRootPart_5 = arg3:FindFirstChild("HumanoidRootPart")
		if HumanoidRootPart_5 then
			HumanoidRootPart_5 = arg3.HumanoidRootPart:FindFirstChildOfClass("Attachment")
			if not HumanoidRootPart_5 then
				HumanoidRootPart_5 = Instance.new("Attachment", arg3.HumanoidRootPart)
			end
		end
		local HumanoidRootPart_4 = arg3:FindFirstChild("HumanoidRootPart")
		if HumanoidRootPart_4 then
			HumanoidRootPart_4 = arg3.HumanoidRootPart:FindFirstChildOfClass("Attachment")
			if not HumanoidRootPart_4 then
				HumanoidRootPart_4 = Instance.new("Attachment", arg3.HumanoidRootPart)
			end
		end
		clone_6.Attachment1 = HumanoidRootPart_5
		clone_3.Attachment1 = HumanoidRootPart_4
		clone_6.Parent = Folder_2
		clone_3.Parent = Folder_2
	end
end
local function RemoveUnnecessaryDamageBeams_upvr(arg1, arg2) -- Line 317, Named "RemoveUnnecessaryDamageBeams"
	if not arg1 then
	else
		if not arg2 or type(arg2) ~= "table" then return end
		local class_Folder = arg1:FindFirstChildOfClass("Folder")
		if not class_Folder then return end
		for _, v_5 in pairs(workspace:GetChildren()) do
			if not table.find(arg2, v_5) and class_Folder:FindFirstChild(v_5.Name.." - Folder") then
				class_Folder:FindFirstChild(v_5.Name.." - Folder"):Destroy()
			end
		end
	end
end
local function HealBeam_upvr(arg1, arg2) -- Line 334, Named "HealBeam"
	if not arg1 or not arg1:IsA("Model") then return end
	if not arg2 or not arg2:IsA("Model") then return end
	if arg1.Resources.Beams:FindFirstChild(arg2.Name) then return end
	local clone_4 = arg1.Resources.Heal:Clone()
	local HumanoidRootPart = arg2:FindFirstChild("HumanoidRootPart")
	if HumanoidRootPart then
		HumanoidRootPart = arg2.HumanoidRootPart:FindFirstChildOfClass("Attachment")
	end
	clone_4.Attachment0 = HumanoidRootPart
	local HumanoidRootPart_3 = arg1:FindFirstChild("HumanoidRootPart")
	if HumanoidRootPart_3 then
		HumanoidRootPart_3 = arg1.HumanoidRootPart:FindFirstChildOfClass("Attachment")
	end
	clone_4.Attachment1 = HumanoidRootPart_3
	clone_4.Name = arg2.Name
	clone_4.Parent = arg1.Resources.Beams
	return clone_4
end
local function RemoveUnnecessaryHealBeams_upvr(arg1, arg2) -- Line 349, Named "RemoveUnnecessaryHealBeams"
	if not arg1 or not arg1:IsA("Model") then
	else
		if not arg2 or type(arg2) ~= "table" then return end
		for _, v_6 in pairs(workspace:GetChildren()) do
			if not table.find(arg2, v_6) and arg1:FindFirstChild("Resources") and arg1.Resources:FindFirstChild("Beams") and arg1.Resources.Beams:FindFirstChild(v_6.Name) then
				arg1.Resources.Beams:FindFirstChild(v_6.Name):Destroy()
			end
		end
	end
end
local TweenService_upvr = game:GetService("TweenService")
local VFX_upvr = Events_upvr.Gameplay.VFX
local function UseSpecial_upvr(arg1, arg2, arg3, arg4, arg5, arg6) -- Line 366, Named "UseSpecial"
	--[[ Upvalues[15]:
		[1]: Assets_upvr (readonly)
		[2]: Shared_upvr (readonly)
		[3]: module_2_upvr (readonly)
		[4]: var6_upvr (readonly)
		[5]: Matchmaking_upvr (readonly)
		[6]: tbl_7_upvr (readonly)
		[7]: TweenService_upvr (readonly)
		[8]: VFX_upvr (readonly)
		[9]: GetClosestPlayers_upvr (readonly)
		[10]: GetSeen_upvr (readonly)
		[11]: RemoveUnnecessaryDamageBeams_upvr (readonly)
		[12]: DamageBeam_upvr (readonly)
		[13]: HealBeam_upvr (readonly)
		[14]: Events_upvr (readonly)
		[15]: RemoveUnnecessaryHealBeams_upvr (readonly)
	]]
	-- KONSTANTERROR: [0] 1. Error Block 129 start (CF ANALYSIS FAILED)
	if not arg1 or not arg5 or not arg5.Parent or not arg2 or 1 >= arg2.Health then return end
	-- KONSTANTERROR: [0] 1. Error Block 129 end (CF ANALYSIS FAILED)
	-- KONSTANTERROR: [15] 12. Error Block 9 start (CF ANALYSIS FAILED)
	-- KONSTANTERROR: [15] 12. Error Block 9 end (CF ANALYSIS FAILED)
	-- KONSTANTERROR: [26] 18. Error Block 10 start (CF ANALYSIS FAILED)
	do
		return
	end
	-- KONSTANTERROR: [26] 18. Error Block 10 end (CF ANALYSIS FAILED)
	-- KONSTANTERROR: [27] 19. Error Block 11 start (CF ANALYSIS FAILED)
	-- KONSTANTERROR: [27] 19. Error Block 11 end (CF ANALYSIS FAILED)
end
function module_2_upvr.Equip(arg1, arg2) -- Line 762
	if arg2 then
		arg2:Clone().Parent = arg1
	end
end
local Cutscenes_upvr = require(Modules.Gameplay.Cutscenes)
local function Cutscene_upvr(arg1, arg2, arg3, arg4) -- Line 769, Named "Cutscene"
	--[[ Upvalues[4]:
		[1]: module_2_upvr (readonly)
		[2]: tbl_6_upvr (readonly)
		[3]: Cutscenes_upvr (readonly)
		[4]: Events_upvr (readonly)
	]]
	if module_2_upvr.Cutscene then
	else
		if not arg1 or not arg1.Parent then return end
		module_2_upvr.Cutscene = true
		local ForceField = Instance.new("ForceField")
		ForceField.Parent = arg1
		ForceField.Visible = false
		task.wait()
		arg2.Health = 1
		arg2:MoveTo(arg3.Position)
		if arg4 then
			arg4:ClearAllChildren()
			arg4.CanCollide = true
			arg4.Parent = workspace.JunkHolder
			if arg4:CanSetNetworkOwnership() then
				arg4:SetNetworkOwner(nil)
			end
		end
		arg2.WalkSpeed = 0
		if tbl_6_upvr.Track.Length <= 0 then
			repeat
				task.wait()
				arg2.Health = 1
			until 0 < tbl_6_upvr.Track.Length
		end
		tbl_6_upvr.Track:Play()
		local tbl = {}
		tbl.NPC = arg1
		tbl.Track = tbl_6_upvr.Track
		Cutscenes_upvr.Scene("Soulstice", tbl)
		Events_upvr.Core.Master:FireAllClients("Create Cutscene", {
			Camera = arg1.Cam;
			Settings = Cutscenes_upvr.Scenes_Settings.Soulstice;
		})
		task.wait(8.5)
		arg2.Health = 0
		local Light = arg3.Light_Attachment:FindFirstChild("Light")
		if Light then
			Light.Enabled = false
		end
		arg2:SetStateEnabled(Enum.HumanoidStateType.Dead, true)
	end
end
local Storyline_upvr = require(Modules.Gameplay.Storyline)
local RunService_upvr = game:GetService("RunService")
function module_2_upvr.Attack(arg1) -- Line 854
	--[[ Upvalues[13]:
		[1]: Assets_upvr (readonly)
		[2]: tbl_3_upvr (readonly)
		[3]: tbl_4_upvr (readonly)
		[4]: tbl_7_upvr (readonly)
		[5]: tbl_6_upvr (readonly)
		[6]: Cutscene_upvr (readonly)
		[7]: Shared_upvr (readonly)
		[8]: module_2_upvr (readonly)
		[9]: Storyline_upvr (readonly)
		[10]: var6_upvr (readonly)
		[11]: Matchmaking_upvr (readonly)
		[12]: UseSpecial_upvr (readonly)
		[13]: RunService_upvr (readonly)
	]]
	local Humanoid_4_upvr = arg1:WaitForChild("Humanoid", 2)
	local TEAM_upvr = arg1:WaitForChild("TEAM", 2)
	local PrimaryPart_upvr = arg1.PrimaryPart
	arg1.Head.Laugh:Play()
	local Silly_Sword_upvr = arg1:FindFirstChildOfClass("Tool").Handle:WaitForChild("Silly Sword")
	Humanoid_4_upvr:SetStateEnabled(Enum.HumanoidStateType.Dead, false)
	Humanoid_4_upvr:SetStateEnabled(Enum.HumanoidStateType.Ragdoll, false)
	local clone_2 = Assets_upvr.Core.Miscellaneous:WaitForChild("Soulstice's Skull"):Clone()
	clone_2.Owner.Value = arg1
	clone_2.Parent = workspace.JunkHolder
	local Stats_upvr = arg1:FindFirstChild("Stats")
	if Stats_upvr then
		Stats_upvr = require(arg1.Stats)
	end
	tbl_3_upvr.Base.AnimationId = "rbxassetid://"..tbl_3_upvr.Core.ID
	tbl_3_upvr.Track = Humanoid_4_upvr:LoadAnimation(tbl_3_upvr.Base)
	tbl_3_upvr.Base.Parent = script
	tbl_4_upvr.Base.AnimationId = "rbxassetid://"..tbl_4_upvr.Core.ID
	tbl_4_upvr.Track = Humanoid_4_upvr:LoadAnimation(tbl_4_upvr.Base)
	tbl_4_upvr.Base.Parent = script
	tbl_7_upvr.Base.AnimationId = "rbxassetid://"..tbl_7_upvr.Core.ID
	tbl_7_upvr.Track = Humanoid_4_upvr:LoadAnimation(tbl_7_upvr.Base)
	tbl_7_upvr.Base.Parent = script
	tbl_6_upvr.Base.AnimationId = "rbxassetid://"..tbl_6_upvr.Core.ID
	tbl_6_upvr.Track = Humanoid_4_upvr:LoadAnimation(tbl_6_upvr.Base)
	tbl_6_upvr.Base.Parent = script
	coroutine.wrap(function() -- Line 905
		--[[ Upvalues[2]:
			[1]: tbl_6_upvr (copied, readonly)
			[2]: arg1 (readonly)
		]]
		tbl_6_upvr.Track:Play()
		repeat
			task.wait()
		until tick() + 5 <= tick() and 0 < tbl_6_upvr.Track.Length and not arg1 and not arg1.Parent
		tbl_6_upvr.Track:Stop()
	end)()
	Humanoid_4_upvr.HealthChanged:Connect(function(arg1_2) -- Line 921
		--[[ Upvalues[5]:
			[1]: Cutscene_upvr (copied, readonly)
			[2]: arg1 (readonly)
			[3]: Humanoid_4_upvr (readonly)
			[4]: PrimaryPart_upvr (readonly)
			[5]: Silly_Sword_upvr (readonly)
		]]
		if arg1_2 <= 1 then
			Cutscene_upvr(arg1, Humanoid_4_upvr, PrimaryPart_upvr, Silly_Sword_upvr)
		end
	end)
	local function VerifyThisTarget_upvr(arg1_3) -- Line 928, Named "VerifyThisTarget"
		--[[ Upvalues[1]:
			[1]: Stats_upvr (readonly)
		]]
		-- KONSTANTWARNING: Variable analysis failed. Output will have some incorrect variable assignments
		local var130 = arg1_3
		if var130 then
			var130 = arg1_3:FindFirstChild("Humanoid")
		end
		if not arg1_3 or Stats_upvr.Ranged ~= true or not arg1_3:FindFirstChild("Head") then
			if arg1_3 then
				local PrimaryPart_2 = arg1_3.PrimaryPart
			end
		end
		local var132 = arg1_3
		if var132 then
			var132 = arg1_3:FindFirstChild("TEAM")
		end
		if var130 then
			if PrimaryPart_2 and var132 then
			end
		end
		return false, var130, PrimaryPart_2, var132
	end
	local RaycastParams_new_result1_3_upvr = RaycastParams.new()
	local function FindClosestTarget_upvr(arg1_4) -- Line 938, Named "FindClosestTarget"
		--[[ Upvalues[7]:
			[1]: PrimaryPart_upvr (readonly)
			[2]: Shared_upvr (copied, readonly)
			[3]: arg1 (readonly)
			[4]: Stats_upvr (readonly)
			[5]: TEAM_upvr (readonly)
			[6]: RaycastParams_new_result1_3_upvr (readonly)
			[7]: VerifyThisTarget_upvr (readonly)
		]]
		local var199 = PrimaryPart_upvr.CFrame * CFrame.new(0, 1.5, 0).Position
		local module_3 = {}
		local _, pairs_result2_3, pairs_result3_5 = pairs(workspace:GetChildren())
		local var204
		for _, v_3 in var204, pairs_result2_3, pairs_result3_5 do
			if v_3:FindFirstChild("Humanoid") and v_3.Humanoid:GetState() ~= Enum.HumanoidStateType.Dead and not v_3:FindFirstChildOfClass("ForceField") then
				local var205
				if v_3 ~= arg1 then
					local Humanoid_5 = v_3:FindFirstChild("Humanoid")
					local function INLINED_4() -- Internal function, doesn't exist in bytecode
						var205 = v_3:FindFirstChild("Head")
						return var205
					end
					if Stats_upvr.Ranged ~= true or not INLINED_4() then
						var205 = v_3.PrimaryPart
					end
					if Humanoid_5 then
						if Humanoid_5:GetState() ~= Enum.HumanoidStateType.Dead and var205 and v_3:FindFirstChild("TEAM") then
							-- KONSTANTERROR: Expression was reused, decompilation is incorrect
							local var207
							if v_3:FindFirstChild("TEAM").Value ~= var207 then
								var207 = nil
								RaycastParams_new_result1_3_upvr.FilterDescendantsInstances = Shared_upvr.CreateIgnoreList(arg1, false, true)
								RaycastParams_new_result1_3_upvr.FilterType = Enum.RaycastFilterType.Exclude
								RaycastParams_new_result1_3_upvr.IgnoreWater = true
								local workspace_Raycast_result1_3 = workspace:Raycast(var199, CFrame.new(var199, var205.CFrame.Position).LookVector * 2048, RaycastParams_new_result1_3_upvr)
								if workspace_Raycast_result1_3 then
									var207 = workspace_Raycast_result1_3.Instance
								end
								if var207 and var207.Parent and var207:IsDescendantOf(v_3) then
									table.insert(module_3, v_3)
								end
							end
						end
					end
				end
			end
		end
		var204 = nil
		for _, v_4 in pairs(module_3) do
			local Humanoid_3 = v_4:FindFirstChild("Humanoid")
			local var213
			local function INLINED_5() -- Internal function, doesn't exist in bytecode
				var213 = v_4:FindFirstChild("Head")
				return var213
			end
			if Stats_upvr.Ranged ~= true or not INLINED_5() then
				var213 = v_4.PrimaryPart
			end
			local var214 = var213
			var213 = v_4:FindFirstChild("TEAM")
			if Humanoid_3 then
				var213 = Humanoid_3:GetState()
				if var213 ~= Enum.HumanoidStateType.Dead then
					var213 = Humanoid_3.Health
					if 0 < var213 and var214 and var213 then
						-- KONSTANTERROR: Expression was reused, decompilation is incorrect
						var213 = var213.Value
						if var213 ~= TEAM_upvr.Value then
							var213 = (var214.Position - arg1_4).Magnitude
							if var213 < math.huge then
								var204 = v_4
								var213 = var214.Position - arg1_4
							end
						end
					end
				end
			end
		end
		local _, VerifyThisTarget_upvr_result2, VerifyThisTarget_result3_2, _ = VerifyThisTarget_upvr(var204)
		-- KONSTANTERROR: Expression was reused, decompilation is incorrect
		return var204, VerifyThisTarget_upvr_result2, VerifyThisTarget_result3_2, v_3:FindFirstChild("TEAM"), module_3
	end
	local Count_upvr = clone_2.Count
	coroutine.wrap(function() -- Line 1006
		--[[ Upvalues[14]:
			[1]: arg1 (readonly)
			[2]: Humanoid_4_upvr (readonly)
			[3]: module_2_upvr (copied, readonly)
			[4]: Storyline_upvr (copied, readonly)
			[5]: Count_upvr (readonly)
			[6]: FindClosestTarget_upvr (readonly)
			[7]: PrimaryPart_upvr (readonly)
			[8]: tbl_3_upvr (copied, readonly)
			[9]: tbl_4_upvr (copied, readonly)
			[10]: Shared_upvr (copied, readonly)
			[11]: var6_upvr (copied, readonly)
			[12]: Matchmaking_upvr (copied, readonly)
			[13]: Cutscene_upvr (copied, readonly)
			[14]: Silly_Sword_upvr (readonly)
		]]
		-- KONSTANTERROR: Failed to generate AST for unnamed function:
runluau:5427: assertion failed!
Traceback:
runluau:5427 function get_guaranteed_destinations
runluau:5469 function will_reach_block
runluau:5479 function will_reach_block
runluau:5918 function astgen
runluau:8357 function astgen_protected
runluau:4639 function expr_function
runluau:7714 function NEWCLOSURE
runluau:7954 function gen_from_insts
runluau:8053 function gen_from_hl_block
runluau:8228 function gen_condition
runluau:8163 function gen_from_hl_block
runluau:8131 function gen_from_hl_block
runluau:8340 function astgen
runluau:8357 function astgen_protected
runluau:4639 function expr_function
runluau:7707 function DUPCLOSURE
runluau:7954 function gen_from_insts
runluau:8053 function gen_from_hl_block
runluau:8131 function gen_from_hl_block
runluau:8340 function astgen
runluau:8357 function astgen_protected
runluau:8418 function decompile_bytecode
runluau:11983 function wrapped
runluau:11991
runluau:12015 function _decompile
runluau:12181 function decompile
runluau:12377

	end)()
	if module_2_upvr["Special Attacks"].Enabled == true then
		coroutine.wrap(function() -- Line 1255
			--[[ Upvalues[7]:
				[1]: module_2_upvr (copied, readonly)
				[2]: UseSpecial_upvr (copied, readonly)
				[3]: Humanoid_4_upvr (readonly)
				[4]: PrimaryPart_upvr (readonly)
				[5]: TEAM_upvr (readonly)
				[6]: arg1 (readonly)
				[7]: RunService_upvr (copied, readonly)
			]]
			repeat
				task.wait(module_2_upvr["Special Attacks"].Rate * module_2_upvr["Special Attacks"].Multiplier)
				if module_2_upvr["Special Attacks"].Used == false and 0 < #module_2_upvr["Special Attacks"].Moveset then
					local var222 = module_2_upvr["Special Attacks"].Moveset[Random.new():NextInteger(1, #module_2_upvr["Special Attacks"].Moveset)]
					module_2_upvr["Special Attacks"].Used = true
					UseSpecial_upvr(var222, Humanoid_4_upvr, PrimaryPart_upvr, TEAM_upvr, arg1, nil)
					task.wait(var222.Cooldown * module_2_upvr["Special Attacks"].Multiplier)
					module_2_upvr["Special Attacks"].Used = false
				end
				RunService_upvr.Heartbeat:Wait()
			until not arg1.Parent and (not Humanoid_4_upvr or Humanoid_4_upvr:GetState() == Enum.HumanoidStateType.Dead)
		end)()
	end
end
return module_2_upvr
Assistant: