
Key Required
free auto spin scripts open src
Lua Script•151 lines (4071 chars)
--// Services
local RS = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local LP = Players.LocalPlayer
--// Knit
local Knit = RS.Packages._Index["sleitnick_knit@1.6.0"].knit
local SpinService = Knit.Services.SpinService
local spinRF = SpinService.RF.Spin
--// Config
local AUTO_SPIN = false
local MIN_DELAY = 0.55 -- เร็วสุดปลอดภัย
local FAIL_LIMIT = 5
--// Runtime
local failCount = 0
local spinCount = 0
local lastTick = os.clock()
-- GUI
local gui = Instance.new("ScreenGui")
gui.Name = "AutoSpinMiniGUI"
gui.ResetOnSpawn = false
gui.Parent = LP:WaitForChild("PlayerGui")
local frame = Instance.new("Frame", gui)
frame.Size = UDim2.fromOffset(180, 80)
frame.Position = UDim2.fromScale(0.5, 0.5) -- กลางจอ
frame.AnchorPoint = Vector2.new(0.5, 0.5)
frame.BackgroundColor3 = Color3.fromRGB(30,30,30)
frame.BorderSizePixel = 0
frame.Active = true
Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 12)
-- Toggle Button
local toggleBtn = Instance.new("TextButton", frame)
toggleBtn.Size = UDim2.new(1, -20, 0, 32)
toggleBtn.Position = UDim2.fromOffset(10, 8)
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.TextSize = 16
toggleBtn.BackgroundColor3 = Color3.fromRGB(40,40,40)
toggleBtn.BorderSizePixel = 0
Instance.new("UICorner", toggleBtn).CornerRadius = UDim.new(0, 8)
-- SPS
local spsLabel = Instance.new("TextLabel", frame)
spsLabel.Size = UDim2.new(1, -20, 0, 20)
spsLabel.Position = UDim2.fromOffset(10, 45)
spsLabel.BackgroundTransparency = 1
spsLabel.Font = Enum.Font.Gotham
spsLabel.TextSize = 14
spsLabel.TextColor3 = Color3.fromRGB(200,200,200)
spsLabel.Text = "SPS: 0.00"
local function updateToggle()
toggleBtn.Text = AUTO_SPIN and "AUTO SPIN : ON" or "AUTO SPIN : OFF"
toggleBtn.TextColor3 = AUTO_SPIN
and Color3.fromRGB(0,255,140)
or Color3.fromRGB(255,90,90)
end
updateToggle()
toggleBtn.MouseButton1Click:Connect(function()
AUTO_SPIN = not AUTO_SPIN
updateToggle()
end)
-- DRAG
local dragging = false
local dragStart, startPos
local function updateDrag(input)
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
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
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
UIS.InputChanged:Connect(function(input)
if dragging and
(input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch) then
updateDrag(input)
end
end)
-- AUTO SPIN
task.spawn(function()
while true do
if AUTO_SPIN then
local startTime = os.clock()
local ok = pcall(function()
spinRF:InvokeServer()
end)
if ok then
spinCount += 1
failCount = 0
else
failCount += 1
if failCount >= FAIL_LIMIT then
AUTO_SPIN = false
updateToggle()
end
task.wait(1)
end
local elapsed = os.clock() - startTime
local waitTime = MIN_DELAY - elapsed
if waitTime > 0 then
task.wait(waitTime)
end
else
task.wait(0.15)
end
end
end)
-- SPIN PER SECOND COUNTER
task.spawn(function()
while true do
task.wait(1)
local now = os.clock()
local sps = spinCount / (now - lastTick)
spsLabel.Text = string.format("SPS: %.2f", sps)
spinCount = 0
lastTick = now
end
end)Features & Information
-
Community Comments (0)
No comments yet for this script.
