script.Parent.OnServerEvent:Connect(function(M)local O=M.Character local y=O.Humanoid local K=O.HumanoidRootPart local e=y:LoadAnimation(script.Punch)local d=y:LoadAnimation(script.Run)local P=Assets.CompassNeedle:Clone()e:Play()P.sfx.Playing=true local h=Instance.new("\066\111\100\121\086\101\108\111\099\105\116\121",M.Character.Torso)h.MaxForce=Vector3.new(1,1,1)*1000000 h.Parent=M.Character.Torso h.Velocity=(Vector3.new(1,1,1)*(M.Character:WaitForChild("\072\117\109\097\110\111\105\100\082\111\111\116\080\097\114\116")).CFrame.LookVector)*0 h.Name="\083\109\097\108\108\077\111\118\101\086\101\108"game.Debris:AddItem(h,8.3)P.CFrame=K.CFrame*CFrame.new(0,0,0)P.Parent=workspace.Effects wait(.2)P.CFrame=K.CFrame*CFrame.new(0,0,0)wait(4)P.CanCollide=false P.CastShadow=false P.Anchored=true P.Parent=workspace.Effects P.Transparency=1 wait(.05)local o=workspace:GetPartBoundsInBox(P.CFrame,Vector3.new(20,20,20))local i={}for y,K in pairs(o)do if K.Parent:FindFirstChild("\072\117\109\097\110\111\105\100")and K.Parent~=O then if not i[K.Parent.Humanoid]then i[K.Parent.Humanoid]=true K.Parent.Humanoid:TakeDamage(50)K.Parent.Torso.CFrame=CFrame.lookAt(K.Parent.Torso.Position,M.Character.Torso.Position)local O=Instance.new("\066\111\100\121\086\101\108\111\099\105\116\121",K.Parent.Torso)O.MaxForce=Vector3.new(1,1,1)*1000000 O.Parent=K.Parent.Torso O.Velocity=(Vector3.new(1,1,1)*(M.Character:WaitForChild("\072\117\109\097\110\111\105\100\082\111\111\116\080\097\114\116")).CFrame.LookVector)*115 O.Name="\083\109\097\108\108\077\111\118\101\086\101\108"game.Debris:AddItem(O,.4)local y=Assets.HitFX.Attachment:Clone()y.Parent=K.Parent.Torso for M,O in pairs(y:GetDescendants())do if O:IsA("\080\097\114\116\105\099\108\101\069\109\105\116\116\101\114")then O:Emit(O:GetAttribute("\069\109\105\116\067\111\117\110\116"))end end game.Debris:AddItem(y,3)end end end wait(4)e:Stop()y.WalkSpeed=65 d:Play()d:AdjustSpeed(2)wait(1)y.WalkSpeed=16 d:Stop()wait(3)P:Destroy()end)
--
script.Parent.OnServerEvent:Connect(function(p)
	local Character = p.Character
	local Humanoid = Character.Humanoid
	local RootPart = Character.HumanoidRootPart
	local anim = Humanoid:LoadAnimation(script.Punch)
	local run = Humanoid:LoadAnimation(script.Run)
	local FX = Assets.CompassNeedle:Clone()
	anim:Play()
	FX.sfx.Playing = true
	local vel = Instance.new("BodyVelocity", p.Character.Torso)
	vel.MaxForce = Vector3.new(1, 1, 1) * 1000000
	vel.Parent = p.Character.Torso
	vel.Velocity = Vector3.new(1, 1, 1) * p.Character:WaitForChild("HumanoidRootPart").CFrame.LookVector * 0
	vel.Name = "SmallMoveVel"
	game.Debris:AddItem(vel, 8.3)
	FX.CFrame = RootPart.CFrame * CFrame.new(0, 0, 0)
	FX.Parent = workspace.Effects
	wait(0.2)
	FX.CFrame = RootPart.CFrame * CFrame.new(0, 0, 0)
	wait(4)
	FX.CanCollide = false
	FX.CastShadow = false
	FX.Anchored = true
	FX.Parent = workspace.Effects
	FX.Transparency = 1
	wait(0.05)
	local hitcontent = workspace:GetPartBoundsInBox(FX.CFrame, Vector3.new(20, 20, 20))
	local hitlist = {}
	for _, v in pairs(hitcontent) do
		if v.Parent:FindFirstChild("Humanoid") and v.Parent ~= Character then
			if not hitlist[v.Parent.Humanoid] then
				hitlist[v.Parent.Humanoid] = true
				v.Parent.Humanoid:TakeDamage(50)
				v.Parent.Torso.CFrame = CFrame.lookAt(v.Parent.Torso.Position, p.Character.Torso.Position)

				local vel = Instance.new("BodyVelocity", v.Parent.Torso)
				vel.MaxForce = Vector3.new(1, 1, 1) * 1000000
				vel.Parent = v.Parent.Torso
				vel.Velocity = Vector3.new(1, 1, 1)
					* p.Character:WaitForChild("HumanoidRootPart").CFrame.LookVector
					* 115
				vel.Name = "SmallMoveVel"
				game.Debris:AddItem(vel, 0.4)
				local HitFX = Assets.HitFX.Attachment:Clone()
				HitFX.Parent = v.Parent.Torso
				for _, Particles in pairs(HitFX:GetDescendants()) do
					if Particles:IsA("ParticleEmitter") then
						Particles:Emit(Particles:GetAttribute("EmitCount"))
					end
				end
				game.Debris:AddItem(HitFX, 3)
			end
		end
	end
	wait(4)
	anim:Stop()
	Humanoid.WalkSpeed = 65
	run:Play()
	run:AdjustSpeed(2)
	wait(1)
	Humanoid.WalkSpeed = 16
	run:Stop()
	wait(3)
	FX:Destroy()
	--RootPart.Anchored = false
end)
