-- ruleta script 🗣️ math.randomseed(os.clock()) local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer -- Humanoid seguro local function getHumanoid() while true do local char = player.Character if char and char:FindFirstChild("Humanoid") then return char.Humanoid end task.wait() end end local humanoid = getHumanoid() -- Valores base local normalSpeed = 16 local fastSpeed = 32 local slowSpeed = 8 local normalJump = 50 local highJump = 120 local normalGravity = workspace.Gravity -- Símbolos local symbols = {"⚡","🤡","🦘","🧱","👻","🔥"} -- GUI local gui = Instance.new("ScreenGui", player.PlayerGui) gui.ResetOnSpawn = false local frame = Instance.new("Frame", gui) frame.Size = UDim2.new(0, 260, 0, 110) frame.Position = UDim2.new(0.5, -130, 0.15, 0) frame.BackgroundColor3 = Color3.fromRGB(15,15,15) frame.BorderSizePixel = 0 frame.Active = true -- Texto de creador local title = Instance.new("TextLabel", frame) title.Size = UDim2.new(1,0,0,20) title.Position = UDim2.new(0,0,0,0) title.BackgroundTransparency = 1 title.TextColor3 = Color3.new(1,1,1) title.TextScaled = true title.Font = Enum.Font.GothamBold title.Text = "Creador: Smokekidd" -- Slots local labels = {} for i = 1, 3 do local lbl = Instance.new("TextLabel", frame) lbl.Size = UDim2.new(0, 60, 0, 60) lbl.Position = UDim2.new(0, 10 + (i-1)*75, 0, 25) lbl.BackgroundColor3 = Color3.fromRGB(30,30,30) lbl.TextColor3 = Color3.new(1,1,1) lbl.TextScaled = true lbl.Font = Enum.Font.GothamBold lbl.Text = "❔" lbl.Parent = frame table.insert(labels, lbl) end -- Reset efectos local function resetEffects() humanoid.WalkSpeed = normalSpeed humanoid.JumpPower = normalJump workspace.Gravity = normalGravity for _, p in pairs(player.Character:GetDescendants()) do if p:IsA("BasePart") then p.CanCollide = true end end end -- Aplicar efecto local function applyEffect(symbol) resetEffects() if symbol == "⚡" then humanoid.WalkSpeed = fastSpeed elseif symbol == "🤡" then humanoid.WalkSpeed = slowSpeed elseif symbol == "🦘" then humanoid.JumpPower = highJump elseif symbol == "🧱" then workspace.Gravity = 60 elseif symbol == "👻" then for _, p in pairs(player.Character:GetDescendants()) do if p:IsA("BasePart") then p.CanCollide = false end end elseif symbol == "🔥" then humanoid.WalkSpeed = fastSpeed humanoid.JumpPower = highJump end end -- 🎰 Animación de giro con detención automática local function spinSlots() local results = {"❔","❔","❔"} local duration = 2.5 local startTime = os.clock() local finished = false while not finished do local elapsed = os.clock() - startTime local progress = elapsed / duration local delayTime = math.clamp(0.05 + progress * 0.2, 0.05, 0.25) for i = 1, 3 do if results[i] == "❔" then labels[i].Text = symbols[math.random(#symbols)] end end -- Detener gradualmente if elapsed >= duration * 0.4 and results[1] == "❔" then results[1] = labels[1].Text end if elapsed >= duration * 0.7 and results[2] == "❔" then results[2] = labels[2].Text end if elapsed >= duration * 1.0 and results[3] == "❔" then results[3] = labels[3].Text end if results[1] ~= "❔" and results[2] ~= "❔" and results[3] ~= "❔" then finished = true end task.wait(delayTime) end if results[1] == results[2] and results[2] == results[3] then applyEffect(results[1]) frame.BackgroundColor3 = Color3.fromRGB(40,80,40) else frame.BackgroundColor3 = Color3.fromRGB(15,15,15) end end -- Respawn player.CharacterAdded:Connect(function() humanoid = getHumanoid() resetEffects() end) -- Giro automático task.spawn(function() while true do task.wait(3) spinSlots() end end) -- 🖱️📱 Mover GUI local dragging, dragStart, startPos frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = frame.Position end end) frame.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) UserInputService.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then local delta = input.Position - dragStart frame.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end)