Run it
Copy the script and paste it into your executor.
Players = :()
RunService = :()
Debris = :()
UserInputService = :()
TextChatService = :()
(message)
TextChatService.ChatVersion == .ChatVersion.TextChatService
textChannel = TextChatService.TextChannels:()
textChannel
textChannel:(message)
:().DefaultChatSystemChatEvents.SayMessageRequest:(message, )
player = Players.LocalPlayer
(targetPlayer, maxAngle)
maxAngle = maxAngle
targetPlayer.Character
targetHRP = targetPlayer.Character:()
targetHRP
targetLook = targetHRP.CFrame.LookVector
closest =
closestDist = .huge
_, p (Players:())
p ~= player p ~= targetPlayer p.Character
hrp = p.Character:()
hrp
vec = (hrp.Position - targetHRP.Position).Unit
angle = .(.(targetLook:(vec)))
angle <= maxAngle
dist = (hrp.Position - targetHRP.Position).Magnitude
dist < closestDist
closestDist = dist
closest = hrp
closest
character = player.Character player.CharacterAdded:()
humanoidRootPart = character:()
humanoid = character:() character:()
standDistance =
sideOffset =
heightOffset =
followSpeed =
flingDuration =
followDuration =
punchSoundId =
heavyPunchSoundId =
summonSoundIds = {
,
}
screenGui = .()
screenGui.Name =
screenGui.ResetOnSpawn =
screenGui.Parent = player:()
mainFrame = .()
mainFrame.Size = .(, , , )
mainFrame.Position = .(, , , -)
mainFrame.BackgroundColor3 = .(,,)
mainFrame.BorderSizePixel =
mainFrame.Parent = screenGui
.(, mainFrame).CornerRadius = .(,)
title = .()
title.Size = .(, -, , )
title.Position = .(, , , )
title.BackgroundTransparency =
title.Text =
title.TextColor3 = .(, , )
title.Font = .Font.GothamBold
title.TextSize =
title.TextXAlignment = .TextXAlignment.Left
title.Parent = mainFrame
closeBtn = .()
closeBtn.Size = .(, , , )
closeBtn.Position = .(, -, , )
closeBtn.Text =
closeBtn.Font = .Font.GothamBold
closeBtn.TextSize =
closeBtn.TextColor3 = .(,,)
closeBtn.BackgroundColor3 = .(,,)
.(, closeBtn).CornerRadius = .(,)
closeBtn.Parent = mainFrame
guiToggle = .()
guiToggle.Size = .(, , , )
guiToggle.Position = .(, -, , -)
guiToggle.Text =
guiToggle.Font = .Font.GothamBold
guiToggle.TextSize =
guiToggle.TextColor3 = .(,,)
guiToggle.BackgroundColor3 = .(,,)
.(, guiToggle).CornerRadius = .(,)
guiToggle.Parent = screenGui
guiVisible =
guiToggle.MouseButton1Click:(()
guiVisible = guiVisible
mainFrame.Visible = guiVisible
)
closeBtn.MouseButton1Click:(() mainFrame.Visible = )
(text, y)
b = .()
b.Size = .(, , , )
b.Position = .(, , , y)
b.Text = text
b.Font = .Font.GothamBold
b.TextSize =
b.TextColor3 = .(,,)
b.BackgroundColor3 = .(,,)
.(, b).CornerRadius = .(,)
b.Parent = mainFrame
b
standBtn = (, )
targetBox = .()
targetBox.Size = .(, , , )
targetBox.Position = .(, , , )
targetBox.PlaceholderText =
targetBox.ClearTextOnFocus =
targetBox.Font = .Font.Gotham
targetBox.TextSize =
targetBox.BackgroundColor3 = .(,,)
targetBox.TextColor3 = .(,,)
.(, targetBox).CornerRadius = .(,)
targetBox.Parent = mainFrame
punchBtn = (, )
(labelText, y, default, min, max, callback)
lbl = .()
lbl.Size = .(, , , )
lbl.Position = .(, , , y)
lbl.BackgroundTransparency =
lbl.Text = labelText .. .. (default)
lbl.TextColor3 = .(,,)
lbl.Font = .Font.Gotham
lbl.TextSize =
lbl.TextXAlignment = .TextXAlignment.Left
lbl.Parent = mainFrame
box = .()
box.Size = .(, , , )
box.Position = .(, , , y + )
box.Text = (default)
box.ClearTextOnFocus =
box.BackgroundColor3 = .(,,)
box.TextColor3 = .(,,)
box.Font = .Font.Gotham
box.TextSize =
.(, box).CornerRadius = .(,)
box.Parent = mainFrame
box.FocusLost:((enter)
num = (box.Text)
num
num = .(num, min, max)
box.Text = (num)
lbl.Text = labelText .. .. (num)
(num)
box.Text = (default)
)
box, lbl
posBox, posLabel = (, , standDistance, , , (v) standDistance = v )
offBox, offLabel = (, , sideOffset, -, , (v) sideOffset = v )
heightBox, heightLabel = (, , heightOffset, , , (v) heightOffset = v )
dragging =
dragStart = .()
startPos = mainFrame.Position
mainFrame.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging =
dragStart = input.Position
startPos = mainFrame.Position
input.Changed:(()
input.UserInputState == .UserInputState.End
dragging =
)
)
RunService.RenderStepped:(()
dragging
mousePos = UserInputService:()
delta = mousePos - dragStart
newX = .(startPos.X.Offset + delta.X, , .CurrentCamera.ViewportSize.X - mainFrame.Size.X.Offset)
newY = .(startPos.Y.Offset + delta.Y, , .CurrentCamera.ViewportSize.Y - mainFrame.Size.Y.Offset)
mainFrame.Position = .(, newX, , newY)
)
(namePart)
namePart namePart ==
namePart = namePart:()
_, p (Players:())
p ~= player p.Name:():(namePart)
p
standOn =
bp, gyro = ,
floatTime =
()
_, part (character:())
part:()
part.CanCollide =
bp
bp = .()
bp.MaxForce = .(, , )
bp.P =
bp.D =
bp.Position = humanoidRootPart.Position
bp.Parent = humanoidRootPart
gyro
gyro = .()
gyro.P =
gyro.D =
gyro.MaxTorque = .(, , )
gyro.CFrame = humanoidRootPart.CFrame
gyro.Parent = humanoidRootPart
()
_, part (character:())
part:()
part.CanCollide =
bp bp:(); bp=
gyro gyro:(); gyro=
standBtn.MouseButton1Click:(()
standOn = standOn
standBtn.Text = standOn
standOn
()
t = (targetBox.Text)
t t.Character t.Character:()
_, id (summonSoundIds)
summon = .(, humanoidRootPart)
summon.SoundId = id
summon.Volume =
summon:()
Debris:(summon, )
()
()
)
RunService.RenderStepped:((dt)
standOn bp gyro targetBox.Text~=
floatTime += dt *
floatOffset = .(floatTime) *
t = (targetBox.Text)
t t.Character t.Character:()
targetHRP = t.Character.HumanoidRootPart
tcf = targetHRP.CFrame
desiredPos = tcf.Position - tcf.LookVector*standDistance + tcf.RightVector*sideOffset + .(, heightOffset + floatOffset, )
bp.Position = bp.Position:(desiredPos, .(followSpeed,,))
gyro.CFrame = .(humanoidRootPart.Position, humanoidRootPart.Position + tcf.LookVector)
)
(duration)
start = ()
movel =
() - start < duration
RunService.Heartbeat:()
c = player.Character
hrp = c c:()
hrp
vel = hrp.Velocity
hrp.Velocity = vel * + .(,,)
RunService.RenderStepped:()
hrp.Velocity = vel
RunService.Stepped:()
hrp.Velocity = vel + .(, movel, )
movel = -movel
()
punchAnim = .()
punchAnim.AnimationId =
punchTrack = humanoid:(punchAnim)
punchTrack.Priority = .AnimationPriority.Action
punchTrack:()
.(, ()
punchTrack
punchTrack:()
punchTrack:()
)
targetPlayer = (targetBox.Text)
targetPlayer targetPlayer.Character
targetHRP = targetPlayer.Character:()
targetHRP
()
nearest = (targetPlayer)
nearest
wasStandOn = standOn
wasStandOn
standOn =
standBtn.Text =
()
humanoidRootPart.CFrame = .(nearest.Position + .(,,))
tempBP = .()
tempBP.MaxForce = .(, , )
tempBP.P =
tempBP.D =
tempBP.Position = nearest.Position
tempBP.Parent = humanoidRootPart
tempGyro = .()
tempGyro.MaxTorque = .(, , )
tempGyro.P =
tempGyro.D =
tempGyro.CFrame = humanoidRootPart.CFrame
tempGyro.Parent = humanoidRootPart
followConnection
followConnection = RunService.RenderStepped:(()
(tempBP tempGyro nearest nearest.Parent)
tempBP.Position = nearest.Position
lookVec = nearest.CFrame.LookVector
tempGyro.CFrame = .(humanoidRootPart.Position, humanoidRootPart.Position + lookVec)
)
.(followDuration, ()
followConnection
followConnection:()
followConnection =
tempBP tempBP:(); tempBP =
tempGyro tempGyro:(); tempGyro =
)
effect = .()
effect.Saturation = -
effect.Parent = .Lighting
s = .(, humanoidRootPart)
s.SoundId = punchSoundId
s.Volume =
s:()
Debris:(s,)
.(, ()
s2 = .(, humanoidRootPart)
s2.SoundId = heavyPunchSoundId
s2.Volume =
s2:()
Debris:(s2,)
)
.(()
(flingDuration)
)
.(flingDuration + , ()
followConnection
followConnection:()
followConnection =
tempBP tempBP:(); tempBP =
tempGyro tempGyro:(); tempGyro =
effect effect.Parent
effect:()
wasStandOn
standOn =
standBtn.Text =
()
bp
bp.Position = humanoidRootPart.Position
)
punchBtn.MouseButton1Click:(punchTarget)
(otherPlayer, message)
targetName = targetBox.Text
targetName targetName ==
standOn otherPlayer.Name:():(targetName:()) message:():()
()
standOn otherPlayer.Name:():(targetName:()) message:():()
standOn =
standBtn.Text =
()
()
otherPlayer.Name:():(targetName:()) message:():()
standOn = standOn
standBtn.Text = standOn
standOn
()
t = (targetBox.Text)
t t.Character t.Character:()
_, id (summonSoundIds)
summon = .(, humanoidRootPart)
summon.SoundId = id
summon.Volume =
summon:()
Debris:(summon, )
()
()
_, p (Players:())
p ~= player
p.Chatted:((msg)
(p, msg)
)
Players.PlayerAdded:((p)
p ~= player
p.Chatted:((msg)
(p, msg)
)
)
player.CharacterAdded:((char)
character = char
humanoidRootPart = character:()
humanoid = character:() character:()
()
standOn =
standBtn.Text =
)
levitateIdle = .()
levitateIdle.AnimationId =
moveAnim = .()
moveAnim.AnimationId =
levitateTrack
moveTrack
()
humanoid levitateTrack
levitateTrack = humanoid:(levitateIdle)
levitateTrack.Priority = .AnimationPriority.Idle
levitateTrack.Looped =
levitateTrack:()
()
levitateTrack
levitateTrack:()
levitateTrack:()
levitateTrack =
()
humanoid moveTrack
moveTrack = humanoid:(moveAnim)
moveTrack.Priority = .AnimationPriority.Movement
moveTrack.Looped =
moveTrack:()
()
moveTrack
moveTrack:()
moveTrack:()
moveTrack =
RunService.RenderStepped:((dt)
standOn
target = (targetBox.Text)
target target.Character target.Character:()
targetHumanoid = target.Character:()
targetHumanoid
targetHumanoid.MoveDirection.Magnitude >
()
()
()
()
()
()
()
()
)