local Players = game:GetService("Players") local RunService = game:GetService("RunService") local GuiService = game:GetService("GuiService") local StarterGui = game:GetService("StarterGui") local Player = Players.LocalPlayer local Character = Player.Character or Player.CharacterAdded:Wait() local Humanoid = Character:WaitForChild("Humanoid") Player.CharacterAdded:Connect(function(char) Character = char Humanoid = char:WaitForChild("Humanoid") end) pcall(function() StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.TouchControls, false) end) if Player:WaitForChild("PlayerGui"):FindFirstChild("FatChicken") then Player.PlayerGui.FatChicken:Destroy() end local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "FatChicken" ScreenGui.ResetOnSpawn = false ScreenGui.IgnoreGuiInset = true ScreenGui.Parent = Player:WaitForChild("PlayerGui") local Container = Instance.new("Frame") Container.Size = UDim2.new(0,400,0,400) Container.BackgroundTransparency = 1 Container.Parent = ScreenGui local function updatePosition() if GuiService:IsTenFootInterface() then Container.Position = UDim2.new(0.04,0,0.35,0) else Container.Position = UDim2.new(0.02,0,0.38,0) end end updatePosition() workspace.CurrentCamera:GetPropertyChangedSignal("ViewportSize"):Connect(updatePosition) local ARROW_NORMAL = "rbxassetid://16810132542" local ARROW_PRESSED = "rbxassetid://16810118497" local function createButton(name, rotation, pos) local btn = Instance.new("ImageButton") btn.Name = name btn.Size = UDim2.new(0,160,0,160) btn.Position = pos btn.BackgroundTransparency = 1 btn.AutoButtonColor = false btn.Parent = Container local arrow = Instance.new("ImageLabel") arrow.Size = UDim2.new(0.8,0,0.8,0) arrow.Position = UDim2.new(0.1,0,0.1,0) arrow.BackgroundTransparency = 1 arrow.Image = ARROW_NORMAL arrow.Rotation = rotation arrow.Parent = btn btn.MouseButton1Down:Connect(function() arrow.Image = ARROW_PRESSED end) btn.MouseButton1Up:Connect(function() arrow.Image = ARROW_NORMAL end) btn.MouseLeave:Connect(function() arrow.Image = ARROW_NORMAL end) return btn end local Forward = createButton("Forward", 0, UDim2.new(0.5,-80,0,0)) local Backward = createButton("Backward", 180, UDim2.new(0.5,-80,1,-160)) local Left = createButton("Left", -90, UDim2.new(0,0,0.5,-80)) local Right = createButton("Right", 90, UDim2.new(1,-160,0.5,-80)) local moveX, moveZ = 0,0 local function bind(btn, axis, value) btn.MouseButton1Down:Connect(function() if axis == "X" then moveX = value else moveZ = value end end) btn.MouseButton1Up:Connect(function() if axis == "X" then moveX = 0 else moveZ = 0 end end) btn.MouseLeave:Connect(function() if axis == "X" then moveX = 0 else moveZ = 0 end end) end bind(Forward,"Z",-1) bind(Backward,"Z",1) bind(Left,"X",-1) bind(Right,"X",1) RunService.RenderStepped:Connect(function() if not Humanoid or not Humanoid.Parent then return end local seat = Humanoid.SeatPart if seat and seat:IsA("VehicleSeat") then seat.Throttle = -moveZ seat.Steer = moveX else Humanoid:Move(Vector3.new(moveX,0,moveZ), true) end end)