Nythic

Getting Over it ( Trun on G )

Jul 1st, 2024 (edited)
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.04 KB | None | 0 0
  1. local Players = game:GetService("Players")
  2. local UserInputService = game:GetService("UserInputService")
  3. local Workspace = game:GetService("Workspace")
  4.  
  5. local zeroGravityForce = Vector3.new(0, Workspace.Gravity, 0)
  6. local gravityEnabled = false
  7. local bodyForces = {}
  8.  
  9. -- GUI creation function
  10. local function createGui()
  11.     local screenGui = Instance.new("ScreenGui")
  12.     screenGui.Name = "GravityToggleGui"
  13.     screenGui.ResetOnSpawn = false
  14.     screenGui.Parent = Players.LocalPlayer:WaitForChild("PlayerGui")
  15.  
  16.     -- Create toggle button
  17.     local toggleButton = Instance.new("TextButton")
  18.     toggleButton.Size = UDim2.new(0, 150, 0, 50)
  19.     toggleButton.Position = UDim2.new(1, -180, 0, 10)
  20.     toggleButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
  21.     toggleButton.BorderSizePixel = 0
  22.     toggleButton.TextColor3 = Color3.fromRGB(255, 255, 255)
  23.     toggleButton.Text = "Enable Gravity"
  24.     toggleButton.TextScaled = true -- auto-resize text to fit
  25.     toggleButton.TextWrapped = true -- allow multi-line if needed
  26.     toggleButton.Parent = screenGui
  27.  
  28.     -- Rounded corners
  29.     local uiCorner = Instance.new("UICorner")
  30.     uiCorner.CornerRadius = UDim.new(0, 12) -- radius in pixels
  31.     uiCorner.Parent = toggleButton
  32.  
  33.     -- Optional padding for better text spacing
  34.     local padding = Instance.new("UIPadding")
  35.     padding.PaddingTop = UDim.new(0, 5)
  36.     padding.PaddingBottom = UDim.new(0, 5)
  37.     padding.PaddingLeft = UDim.new(0, 5)
  38.     padding.PaddingRight = UDim.new(0, 5)
  39.     padding.Parent = toggleButton
  40.  
  41.     -- Update button appearance
  42.     local function updateButton()
  43.         toggleButton.Text = gravityEnabled and "Disable Gravity" or "Enable Gravity"
  44.         toggleButton.BackgroundColor3 = gravityEnabled and Color3.fromRGB(0, 255, 0) or Color3.fromRGB(255, 0, 0)
  45.     end
  46.  
  47.     -- Toggle gravity function
  48.     local function toggleGravity()
  49.         gravityEnabled = not gravityEnabled
  50.         updateButton()
  51.  
  52.         if gravityEnabled then
  53.             for _, part in pairs(Workspace:GetDescendants()) do
  54.                 if part:IsA("BasePart") and not part:IsDescendantOf(Players.LocalPlayer.Character) then
  55.                     local bodyForce = Instance.new("BodyForce")
  56.                     bodyForce.Force = zeroGravityForce * part:GetMass()
  57.                     bodyForce.Parent = part
  58.                     table.insert(bodyForces, bodyForce)
  59.                 end
  60.             end
  61.         else
  62.             for _, bodyForce in ipairs(bodyForces) do
  63.                 bodyForce:Destroy()
  64.             end
  65.             bodyForces = {}
  66.         end
  67.     end
  68.  
  69.     toggleButton.MouseButton1Click:Connect(toggleGravity)
  70.  
  71.     UserInputService.InputBegan:Connect(function(input, gameProcessed)
  72.         if not gameProcessed and input.KeyCode == Enum.KeyCode.G then
  73.             toggleGravity()
  74.         end
  75.     end)
  76.  
  77.     updateButton()
  78. end
  79.  
  80. createGui()
  81.  
  82. Players.LocalPlayer.CharacterAdded:Connect(function()
  83.     if not Players.LocalPlayer.PlayerGui:FindFirstChild("GravityToggleGui") then
  84.         createGui()
  85.     end
  86. end)
  87.  
Advertisement
Add Comment
Please, Sign In to add comment