Run it
Copy the script and paste it into your executor.
ContextActionService = :()
RunService = :()
UserInputService = :()
Players = :()
player = Players.LocalPlayer
IDLE_ANIM =
WALK_ANIM =
RUN_ANIM =
PUNCH_ANIM =
WALK_SPEED =
SPRINT_SPEED =
punchTrack
idleTrack
walkTrack
runTrack
debouncePunch =
sprintEnabled =
flingActive =
flingCoroutine
(character, speed)
humanoid = character:()
humanoid
humanoid.WalkSpeed = speed
()
walkTrack walkTrack.IsPlaying walkTrack:()
runTrack runTrack.IsPlaying runTrack:()
idleTrack idleTrack.IsPlaying
idleTrack:()
()
flingActive =
flingCoroutine =
()
debouncePunch =
sprintEnabled =
()
idleTrack idleTrack:()
walkTrack walkTrack:()
runTrack runTrack:()
punchTrack punchTrack:()
player.Character
(player.Character, WALK_SPEED)
idleTrack idleTrack:()
()
lp = Players.LocalPlayer
movel =
flingActive
RunService.Heartbeat:()
c = lp.Character
hrp = c c:()
hrp
vel = hrp.Velocity
hrp.Velocity = vel * + .(, , )
RunService.RenderStepped:()
hrp.Velocity = vel
RunService.Stepped:()
hrp.Velocity = vel + .(, movel, )
movel = -movel
(character)
humanoid = character:()
idleTrack idleTrack:()
walkTrack walkTrack:()
runTrack runTrack:()
punchTrack punchTrack:()
idleTrack, walkTrack, runTrack, punchTrack = , , ,
idleAnim = .()
idleAnim.AnimationId = .. IDLE_ANIM
idleTrack = humanoid:(idleAnim)
idleTrack.Priority = .AnimationPriority.Idle
idleTrack.Looped =
idleTrack:()
walkAnim = .()
walkAnim.AnimationId = .. WALK_ANIM
walkTrack = humanoid:(walkAnim)
walkTrack.Priority = .AnimationPriority.Movement
walkTrack.Looped =
runAnim = .()
runAnim.AnimationId = .. RUN_ANIM
runTrack = humanoid:(runAnim)
runTrack.Priority = .AnimationPriority.Movement
runTrack.Looped =
humanoid.Running:((speed)
speed >
sprintEnabled
runTrack.IsPlaying
walkTrack:()
runTrack:()
walkTrack.IsPlaying
runTrack:()
walkTrack:()
idleTrack.IsPlaying
idleTrack:()
()
)
humanoid.Died:(resetToInitialState)
punchAnim = .()
punchAnim.AnimationId = .. PUNCH_ANIM
punchTrack = humanoid:(punchAnim)
punchTrack.Priority = .AnimationPriority.Action
punchTrack.Looped =
punchTrack.Stopped:(()
debouncePunch =
()
()
)
player.CharacterAdded:((character)
sprintEnabled =
debouncePunch =
(character, WALK_SPEED)
(character)
)
player.Character
sprintEnabled =
debouncePunch =
(player.Character, WALK_SPEED)
(player.Character)
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed input.KeyCode == .KeyCode.LeftShift
sprintEnabled = sprintEnabled
player.Character
(player.Character, sprintEnabled SPRINT_SPEED WALK_SPEED)
)
(_, state, _)
state == .UserInputState.Begin punchTrack debouncePunch
debouncePunch =
flingActive =
runTrack runTrack.IsPlaying runTrack:()
walkTrack walkTrack.IsPlaying walkTrack:()
idleTrack idleTrack.IsPlaying idleTrack:()
punchTrack:()
flingCoroutine .(flingCoroutine) ==
flingCoroutine = .(startFling)
.(flingCoroutine)
ContextActionService:(
,
punchAction,
,
.KeyCode.F
)
ContextActionService:(, )
(_, state, _)
state == .UserInputState.Begin
sprintEnabled = sprintEnabled
player.Character
(player.Character, sprintEnabled SPRINT_SPEED WALK_SPEED)
ContextActionService:(
,
sprintToggleAction,
,
.KeyCode.LeftShift
)
ContextActionService:(, )
Just a version of that flinger with pursuer anins

Universal