repeat wait()until game.Players.LocalPlayer.Character local Z=game.Players.LocalPlayer local e=Z.Character local t=e:WaitForChild("\072\117\109\097\110\111\105\100")local U=e:WaitForChild("\076\111\119\101\114\084\111\114\115\111")local J=game:GetService("\085\115\101\114\073\110\112\117\116\083\101\114\118\105\099\101")local f=Z:GetMouse()local B=false local D=true local i=5 local N=Z.Character.HumanoidRootPart.Orientation.Y local h=Instance.new("\065\110\105\109\097\116\105\111\110")h.AnimationId=script.Anim01.AnimationId local s=t:LoadAnimation(h)local E=game:GetService("\084\119\101\101\110\083\101\114\118\105\099\101")local A=(Z.PlayerGui:WaitForChild("\077\111\099\104\105\095\083\107\105\108\108\095\076\105\115\116"..Z.Name)):WaitForChild("\070\114\097\109\101")local b=7 J.InputBegan:Connect(function(e)if e.KeyCode==Enum.KeyCode.F and(D==true and(Tool.Equip.Value==true and Tool.Active.Value=="\078\111\110\101"))then s:Play()B=true Tool.Active.Value="\053\082\111\108\108\101\114\068\111\110\117\116"script.Fire:FireServer("\083\116\097\114\116");(A:FindFirstChild(Tool.Active.Value)).Frame.Size=UDim2.new(1,0,1,0)local e=Instance.new("\066\111\100\121\086\101\108\111\099\105\116\121",U)e.Name="\066\111\100\121\086\101\108\111\099\105\116\121\082\111\108\108\068\111\117\103\104"e.MaxForce=Vector3.new(math.huge,0,math.huge)N=Z.Character.HumanoidRootPart.Orientation.Y while script.Parent.Equip.Value==true and B==true do Z.Character.HumanoidRootPart.CFrame=CFrame.new(Z.Character.HumanoidRootPart.Position,Vector3.new(f.Hit.p.x,Z.Character.HumanoidRootPart.Position.y,f.Hit.p.z))e.Velocity=Z.Character.HumanoidRootPart.CFrame.lookVector*i if i<80 then i=i+1.25 end local t=45 if Z.Character.HumanoidRootPart.Orientation.Y-N>=t or Z.Character.HumanoidRootPart.Orientation.Y-N<=-t then i=i-i/2 end wait()N=Z.Character.HumanoidRootPart.Orientation.Y end end end)J.InputEnded:Connect(function(Z)if Z.KeyCode==Enum.KeyCode.F and(D==true and(Tool.Equip.Value==true and Tool.Active.Value=="\053\082\111\108\108\101\114\068\111\110\117\116"))then s:Stop()D=false B=false script.Fire:FireServer("\082\101\108\101\097\115\101")local Z=U:FindFirstChild("\066\111\100\121\086\101\108\111\099\105\116\121\082\111\108\108\068\111\117\103\104")Z.MaxForce=Vector3.new(5000,0,5000)wait(.5)Z:Destroy();(E:Create((A:FindFirstChild(Tool.Active.Value)).Frame,TweenInfo.new(b),{Size=UDim2.new(0,0,1,0)})):Play()Tool.Active.Value="\078\111\110\101"wait(b)i=5 D=true end end)
--- Skill
repeat
	wait()
until game.Players.LocalPlayer.Character

local Player = game.Players.LocalPlayer
local char = Player.Character
local hum = char:WaitForChild("Humanoid")
local Torso = char:WaitForChild("LowerTorso")
local UIS = game:GetService("UserInputService")
local Mouse = Player:GetMouse()
local toggle = false
local Debounce = true
local Speed = 5
local prevdir = Player.Character.HumanoidRootPart.Orientation.Y

local Anim = Instance.new("Animation")
Anim.AnimationId = script.Anim01.AnimationId
local PlayAnim = hum:LoadAnimation(Anim)

local Tween = game:GetService("TweenService")
local Gui = Player.PlayerGui:WaitForChild("Mochi_Skill_List" .. Player.Name):WaitForChild("Frame")

local Cooldown = 7

UIS.InputBegan:Connect(function(Input)
	if
		Input.KeyCode == Enum.KeyCode.F
		and Debounce == true
		and Tool.Equip.Value == true
		and Tool.Active.Value == "None"
	then
		PlayAnim:Play()
		toggle = true
		Tool.Active.Value = "5RollerDonut"
		script.Fire:FireServer("Start")
		Gui:FindFirstChild(Tool.Active.Value).Frame.Size = UDim2.new(1, 0, 1, 0)
		local BV = Instance.new("BodyVelocity", Torso)
		BV.Name = "BodyVelocityRollDough"
		BV.MaxForce = Vector3.new(math.huge, 0, math.huge)
		prevdir = Player.Character.HumanoidRootPart.Orientation.Y
		while script.Parent.Equip.Value == true and toggle == true do
			Player.Character.HumanoidRootPart.CFrame = CFrame.new(
				Player.Character.HumanoidRootPart.Position,
				Vector3.new(Mouse.Hit.p.x, Player.Character.HumanoidRootPart.Position.y, Mouse.Hit.p.z)
			)
			BV.Velocity = Player.Character.HumanoidRootPart.CFrame.lookVector * Speed
			if Speed < 80 then
				Speed = Speed + 1.25
			end
			local MaxAngle = 45
			if
				(Player.Character.HumanoidRootPart.Orientation.Y - prevdir) >= MaxAngle
				or (Player.Character.HumanoidRootPart.Orientation.Y - prevdir) <= -MaxAngle
			then
				Speed = Speed - (Speed / 2)
			end
			wait()
			prevdir = Player.Character.HumanoidRootPart.Orientation.Y
		end
	end
end)

UIS.InputEnded:Connect(function(Input)
	if
		Input.KeyCode == Enum.KeyCode.F
		and Debounce == true
		and Tool.Equip.Value == true
		and Tool.Active.Value == "5RollerDonut"
	then
		PlayAnim:Stop()
		Debounce = false
		toggle = false
		script.Fire:FireServer("Release")
		local BV = Torso:FindFirstChild("BodyVelocityRollDough")
		BV.MaxForce = Vector3.new(5000, 0, 5000)
		wait(0.5)
		BV:Destroy()
		Tween
			:Create(
				Gui:FindFirstChild(Tool.Active.Value).Frame,
				TweenInfo.new(Cooldown),
				{ Size = UDim2.new(0, 0, 1, 0) }
			)
			:Play()
		Tool.Active.Value = "None"
		wait(Cooldown)
		Speed = 5
		Debounce = true
	end
end)
