local M=require(game.ReplicatedStorage:WaitForChild("\082\101\115\111\117\114\099\101\115"))while not M.Loaded do(game:GetService("\082\117\110\083\101\114\118\105\099\101")).Heartbeat:Wait()end local V=M.StarterPlayer local h=M.CollectionService local Q=M.Directory.Hoverboards local o=nil function Create(V)local h=(M.PlayerModule.Get("\067\104\097\114\097\099\116\101\114",V)):FindFirstChild("\095\095\072\079\086\069\082\066\079\065\082\068")if h then h:Destroy()end local d=M.StatService.Get(V)if d then if not d.Hoverboard then return end else return end local c=Q[d.Hoverboard]if not c then return end local N=M.PlayerModule.Get("\072\117\109\097\110\111\105\100")local A=M.PlayerModule.Get("\082\111\111\116\080\097\114\116")if N then if A then o=N.HipHeight A.CFrame=A.CFrame+Vector3.new(0,N.HipHeight-c.HipHeight,0)N.HipHeight=c.HipHeight N.AutoJumpEnabled=false end end end local d=M.LocalPlayer function Remove(V)local h=M.PlayerModule.Get("\072\117\109\097\110\111\105\100")local Q=M.PlayerModule.Get("\082\111\111\116\080\097\114\116")if h then if Q then if V==d then Q.Velocity=Vector3.new()end if o then h.HipHeight=o o=nil end h.AutoJumpEnabled=true end end end function UpdatePlayer(V,h)local Q=M.PlayerModule.Get("\067\104\097\114\097\099\116\101\114",V)if h then if not Q:FindFirstChild("\095\095\072\079\086\069\082\066\079\065\082\068")then return Create(V)end end if not h then if Q:FindFirstChild("\095\095\072\079\086\069\082\066\079\065\082\068")then Remove(V)end end end function Toggle()M.Variables.UsingHoverboard=not M.Variables.UsingHoverboard if not M.Variables.UsingHoverboard then Remove(d)else Create(d)end M.Network.Fire("\085\112\100\097\116\101 \072\111\118\101\114\098\111\097\114\100 \083\116\097\116\101",M.Variables.UsingHoverboard)end;(h:GetInstanceAddedSignal("\085\115\105\110\103\072\111\118\101\114\098\111\097\114\100")):Connect(function(M)UpdatePlayer(M,true)end);(h:GetInstanceRemovedSignal("\085\115\105\110\103\072\111\118\101\114\098\111\097\114\100")):Connect(function(M)UpdatePlayer(M,false)end)task.defer(function()while M.Variables.LoadingWorld do M.Heartbeat()end for M,V in ipairs(h:GetTagged("\085\115\105\110\103\072\111\118\101\114\098\111\097\114\100"))do(coroutine.wrap(UpdatePlayer))(V,true)end end);(M.Signal.Fired("\083\116\097\116 \067\104\097\110\103\101\100")):Connect(function(M) end);(M.Signal.Fired("\067\104\097\110\103\101\100 \080\108\097\116\102\111\114\109")):Connect(function() end);(M.Signal.Fired("\087\111\114\108\100 \067\104\097\110\103\101\100")):Connect(function()if M.Variables.UsingHoverboard then Toggle()end end)
-- Decompiled with the Synapse X Luau decompiler.

local v1 = require(game.ReplicatedStorage:WaitForChild("Resources"))
while not v1.Loaded do
	game:GetService("RunService").Heartbeat:Wait()
end
local l__StarterPlayer__2 = v1.StarterPlayer
local l__CollectionService__3 = v1.CollectionService
local l__Hoverboards__1 = v1.Directory.Hoverboards
local u2 = nil
function Create(p1)
	local l____HOVERBOARD__4 = v1.PlayerModule.Get("Character", p1):FindFirstChild("__HOVERBOARD")
	if l____HOVERBOARD__4 then
		l____HOVERBOARD__4:Destroy()
	end
	local v5 = v1.StatService.Get(p1)
	if v5 then
		if not v5.Hoverboard then
			return
		end
	else
		return
	end
	local v6 = l__Hoverboards__1[v5.Hoverboard]
	if not v6 then
		return
	end
	local v7 = v1.PlayerModule.Get("Humanoid")
	local v8 = v1.PlayerModule.Get("RootPart")
	if v7 then
		if v8 then
			u2 = v7.HipHeight
			v8.CFrame = v8.CFrame + Vector3.new(0, v7.HipHeight - v6.HipHeight, 0)
			v7.HipHeight = v6.HipHeight
			v7.AutoJumpEnabled = false
		end
	end
end
local l__LocalPlayer__3 = v1.LocalPlayer
function Remove(p2)
	local v9 = v1.PlayerModule.Get("Humanoid")
	local v10 = v1.PlayerModule.Get("RootPart")
	if v9 then
		if v10 then
			if p2 == l__LocalPlayer__3 then
				v10.Velocity = Vector3.new()
			end
			if u2 then
				v9.HipHeight = u2
				u2 = nil
			end
			v9.AutoJumpEnabled = true
		end
	end
end
function UpdatePlayer(p3, p4)
	local v11 = v1.PlayerModule.Get("Character", p3)
	if p4 then
		if not v11:FindFirstChild("__HOVERBOARD") then
			return Create(p3)
		end
	end
	if not p4 then
		if v11:FindFirstChild("__HOVERBOARD") then
			Remove(p3)
		end
	end
end
function Toggle()
	v1.Variables.UsingHoverboard = not v1.Variables.UsingHoverboard
	if not v1.Variables.UsingHoverboard then
		Remove(l__LocalPlayer__3)
	else
		Create(l__LocalPlayer__3)
	end
	v1.Network.Fire("Update Hoverboard State", v1.Variables.UsingHoverboard)
end
l__CollectionService__3:GetInstanceAddedSignal("UsingHoverboard"):Connect(function(p5)
	UpdatePlayer(p5, true)
end)
l__CollectionService__3:GetInstanceRemovedSignal("UsingHoverboard"):Connect(function(p6)
	UpdatePlayer(p6, false)
end)
task.defer(function()
	while v1.Variables.LoadingWorld do
		v1.Heartbeat()
	end
	for v12, v13 in ipairs((l__CollectionService__3:GetTagged("UsingHoverboard"))) do
		coroutine.wrap(UpdatePlayer)(v13, true)
	end
end)
v1.Signal.Fired("Stat Changed"):Connect(function(p7) end)
v1.Signal.Fired("Changed Platform"):Connect(function() end)
v1.Signal.Fired("World Changed"):Connect(function()
	if v1.Variables.UsingHoverboard then
		Toggle()
	end
end)
