Guest 1337 r15
Key RequiredUniversal

Guest 1337 r15

Universal ScriptJustahackertwinJustahackertwin 3K views 1.4K executesUpdated Jan 4, 2026
2.5/ 5(2 votes)
1150% Positive
Lua Script•207 lines (5283 chars)
-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer

-- ANIMATION IDS
local IDLE_ANIM        = "rbxassetid://106005604050931"
local INJURED_IDLE     = "rbxassetid://73905365652295"
local WALK_ANIM        = "rbxassetid://93828075851290"
local RUN_ANIM         = "rbxassetid://70636286183373"

local BUTTON1_ANIM     = "rbxassetid://105310177683245"
local BUTTON2_ANIM     = "rbxassetid://110979677723900"

-- BUTTON IMAGES
local BUTTON1_IMAGE = "rbxassetid://137576632569674"
local BUTTON2_IMAGE = "rbxassetid://86535502112498"
local BUTTON3_IMAGE = "rbxassetid://132640025048316"

-- SPEED SETTINGS
local DEFAULT_WALKSPEED = 7
local SPRINT_WALKSPEED = 25

-- STAMINA SETTINGS
local MAX_STAMINA = 100
local STAMINA_DRAIN = 20
local STAMINA_REGEN = 15

-- INTERNAL STATE
local stamina = MAX_STAMINA
local sprinting = false

-- LOAD ANIMATION
local function LoadAnimation(humanoid, id, looped)
	local anim = Instance.new("Animation")
	anim.AnimationId = id
	local track = humanoid:LoadAnimation(anim)
	track.Looped = looped
	return track
end

-- MAIN SETUP
local function SetupCharacter(char)
	local humanoid = char:WaitForChild("Humanoid")
	local root = char:WaitForChild("HumanoidRootPart")

	local animate = char:FindFirstChild("Animate")
	if animate then animate.Disabled = true end

	humanoid.WalkSpeed = DEFAULT_WALKSPEED
	humanoid:SetAttribute("UsingMove", false)

	-- LOAD TRACKS
	local idleTrack = LoadAnimation(humanoid, IDLE_ANIM, true)
	local injuredIdleTrack = LoadAnimation(humanoid, INJURED_IDLE, true)
	local walkTrack = LoadAnimation(humanoid, WALK_ANIM, true)
	local runTrack = LoadAnimation(humanoid, RUN_ANIM, true)

	local move1Track = LoadAnimation(humanoid, BUTTON1_ANIM, false)
	local move2Track = LoadAnimation(humanoid, BUTTON2_ANIM, false)

	idleTrack:Play()

	local function StopDefault()
		idleTrack:Stop()
		injuredIdleTrack:Stop()
		walkTrack:Stop()
		runTrack:Stop()
	end

	-- IDLE / WALK / RUN
	humanoid.Running:Connect(function(speed)
		if humanoid:GetAttribute("UsingMove") then return end
		StopDefault()

		if humanoid.Health < 50 then
			injuredIdleTrack:Play()
		elseif speed >= 16 then
			runTrack:Play()
		elseif speed > 0 then
			walkTrack:Play()
		else
			idleTrack:Play()
		end
	end)

	-- BUTTON 1
	local function PlayMove1()
		if humanoid:GetAttribute("UsingMove") then return end
		humanoid:SetAttribute("UsingMove", true)

		StopDefault()
		move1Track:Play()

		move1Track.Stopped:Once(function()
			humanoid:SetAttribute("UsingMove", false)
		end)
	end

	-- BUTTON 2 (FORCED 4.5x SPEED + FAST DASH)
	local function PlayMove2()
		if humanoid:GetAttribute("UsingMove") then return end
		humanoid:SetAttribute("UsingMove", true)

		StopDefault()

		move2Track.TimePosition = 0
		move2Track:Play()
		move2Track:AdjustSpeed(0)

		local SPEED_MULT = 4.5
		local animLength = move2Track.Length
		local startTime = tick()

		local startCF = root.CFrame
		local distance = 10

		local conn
		conn = RunService.RenderStepped:Connect(function()
			local elapsed = (tick() - startTime) * SPEED_MULT
			local alpha = elapsed / animLength

			if alpha >= 1 then
				conn:Disconnect()
				move2Track:Stop()
				humanoid:SetAttribute("UsingMove", false)
				return
			end

			move2Track.TimePosition = animLength * alpha
			root.CFrame = startCF + startCF.LookVector * (distance * alpha)
		end)
	end

	-- BUTTON 3 (SPRINT TOGGLE)
	local function ToggleSprint()
		if sprinting then
			sprinting = false
			humanoid.WalkSpeed = DEFAULT_WALKSPEED
		elseif stamina > 0 then
			sprinting = true
			humanoid.WalkSpeed = SPRINT_WALKSPEED
		end
	end

	-- STAMINA SYSTEM
	RunService.RenderStepped:Connect(function(dt)
		if sprinting then
			stamina = math.max(stamina - STAMINA_DRAIN * dt, 0)
			if stamina <= 0 then
				sprinting = false
				humanoid.WalkSpeed = DEFAULT_WALKSPEED
			end
		else
			stamina = math.min(stamina + STAMINA_REGEN * dt, MAX_STAMINA)
		end
	end)

	-- GUI
	local gui = Instance.new("ScreenGui")
	gui.Name = "MoveGui"
	gui.ResetOnSpawn = false
	gui.Parent = player.PlayerGui

	local function CreateButton(img, pos, callback)
		local b = Instance.new("ImageButton")
		b.Size = UDim2.fromOffset(100, 100)
		b.Position = pos
		b.Image = img
		b.BackgroundTransparency = 1
		b.BorderSizePixel = 0
		b.Parent = gui
		b.MouseButton1Click:Connect(callback)
	end

	CreateButton(BUTTON1_IMAGE, UDim2.new(0.05,0,0.75,0), PlayMove1)
	CreateButton(BUTTON2_IMAGE, UDim2.new(0.20,0,0.75,0), PlayMove2)
	CreateButton(BUTTON3_IMAGE, UDim2.new(0.35,0,0.75,0), ToggleSprint)
end

player.CharacterAdded:Connect(SetupCharacter)
if player.Character then
	SetupCharacter(player.Character)
end

local Title = "Roblox:sniper06386"
local Text = "Script made by noli-i6l"
local ButtonText = "Ur sigma"
local Button2Text = "Ur Sigma"
local IconId = "1234567890"
-- [ [ Toggle/Enable  ] ]
local HaveIcon = true
local HaveButton1 = true
local HaveButton2 = true
local Duration = 5
--[ [ Functions ] ]
local function Button1Code()
-- code here
end

local function Button2Code()
-- code here
end

--
loadstring(game:HttpGet("https://pastebin.com/raw/FUPBRUuY"))()(Title, Text, ButtonText, Button2Text, IconId, HaveIcon, HaveButton1, HaveButton2, Duration, Button1Code, Button2Code)

Features & Information

Recommend to use this bundle for better animation https://www.roblox.com/bundles/139053228737235/R6 sub to me pls https://www.youtube.com/@Noli-i6l

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts