Run it
Copy the script and paste it into your executor.
ReplicatedStorage = :()
UserInputService = :()
Players = :()
RunService = :()
TweenService = :()
ContextActionService = :()
player = Players.LocalPlayer
DETECTION_RADIUS =
DANGER_ZONE_RADIUS =
ATTACK_RADIUS =
parryAuraEnabled =
autoPositionEnabled =
autoAttackEnabled =
parryConnection
aimConnection
walkSpeedConnection
positionConnection
attackConnection
movementTween =
blockedAnimations = {}
originalWalkSpeed =
currentTarget =
lastTargetPosition =
mobileGui =
parryButton =
autoPositionButton =
autoAttackButton =
combatFolder = ReplicatedStorage:():()
parryRemote = combatFolder:()
combatFolder:()
combatFolder:()
combatFolder:()
()
(()
(()
ContextActionService:(, (actionName, inputState, inputObject)
inputState == .UserInputState.Begin
.ContextActionResult.Sink
.ContextActionResult.Pass
, , .UserInputType.MouseButton1)
()
ContextActionService:()
)
)
()
mobileGui
parryButton
parryAuraEnabled
parryButton.BackgroundColor3 = .(, , )
parryButton.Text =
parryButton.BackgroundColor3 = .(, , )
parryButton.Text =
autoPositionButton
autoPositionEnabled
autoPositionButton.BackgroundColor3 = .(, , )
autoPositionButton.Text =
autoPositionButton.BackgroundColor3 = .(, , )
autoPositionButton.Text =
autoAttackButton
autoAttackEnabled
autoAttackButton.BackgroundColor3 = .(, , )
autoAttackButton.Text =
autoAttackButton.BackgroundColor3 = .(, , )
autoAttackButton.Text =
()
mobileGui = .()
mobileGui.Name =
mobileGui.Parent = player:()
mobileGui.ResetOnSpawn =
container = .()
container.Size = .(, , , )
container.Position = .(, , , -)
container.BackgroundColor3 = .(, , )
container.BorderSizePixel =
container.Parent = mobileGui
containerCorner = .()
containerCorner.CornerRadius = .(, )
containerCorner.Parent = container
mobileTitle = .()
mobileTitle.Size = .(, , , )
mobileTitle.Position = .(, , , )
mobileTitle.BackgroundTransparency =
mobileTitle.Text =
mobileTitle.TextColor3 = .(, , )
mobileTitle.TextScaled =
mobileTitle.Font = .Font.SourceSansBold
mobileTitle.Parent = container
parryButton = .()
parryButton.Size = .(, -, , )
parryButton.Position = .(, , , )
parryButton.BackgroundColor3 = .(, , )
parryButton.Text =
parryButton.TextColor3 = .(, , )
parryButton.TextScaled =
parryButton.Font = .Font.SourceSans
parryButton.Parent = container
parryCorner = .()
parryCorner.CornerRadius = .(, )
parryCorner.Parent = parryButton
autoPositionButton = .()
autoPositionButton.Size = .(, -, , )
autoPositionButton.Position = .(, , , )
autoPositionButton.BackgroundColor3 = .(, , )
autoPositionButton.Text =
autoPositionButton.TextColor3 = .(, , )
autoPositionButton.TextScaled =
autoPositionButton.Font = .Font.SourceSans
autoPositionButton.Parent = container
autoPositionCorner = .()
autoPositionCorner.CornerRadius = .(, )
autoPositionCorner.Parent = autoPositionButton
autoAttackButton = .()
autoAttackButton.Size = .(, -, , )
autoAttackButton.Position = .(, , , )
autoAttackButton.BackgroundColor3 = .(, , )
autoAttackButton.Text =
autoAttackButton.TextColor3 = .(, , )
autoAttackButton.TextScaled =
autoAttackButton.Font = .Font.SourceSans
autoAttackButton.Parent = container
autoAttackCorner = .()
autoAttackCorner.CornerRadius = .(, )
autoAttackCorner.Parent = autoAttackButton
parryButton.MouseButton1Click:(()
()
()
)
autoPositionButton.MouseButton1Click:(()
()
()
)
autoAttackButton.MouseButton1Click:(()
()
()
)
()
screenGui = .()
screenGui.Name =
screenGui.Parent = player:()
frame = .()
frame.Size = .(, , , )
frame.Position = .(, -, , -)
frame.BackgroundColor3 = .(, , )
frame.BorderSizePixel =
frame.Parent = screenGui
corner = .()
corner.CornerRadius = .(, )
corner.Parent = frame
title = .()
title.Size = .(, , , )
title.Position = .(, , , )
title.BackgroundTransparency =
title.Text =
title.TextColor3 = .(, , )
title.TextScaled =
title.Font = .Font.SourceSansBold
title.Parent = frame
instructions = .()
instructions.Size = .(, -, , -)
instructions.Position = .(, , , )
instructions.BackgroundTransparency =
instructions.Text = .. DETECTION_RADIUS .. .. DANGER_ZONE_RADIUS .. .. ATTACK_RADIUS ..
instructions.TextColor3 = .(, , )
instructions.TextScaled =
instructions.Font = .Font.SourceSans
instructions.TextXAlignment = .TextXAlignment.Left
instructions.TextYAlignment = .TextYAlignment.Top
instructions.Parent = frame
(()
()
screenGui:()
()
()
)
(maxDistance)
player.Character player.Character:()
myPosition = player.Character.HumanoidRootPart.Position
closestPlayer =
closestDistance = maxDistance .huge
_, otherPlayer (Players:())
otherPlayer ~= player otherPlayer.Character otherPlayer.Character:()
distance = (myPosition - otherPlayer.Character.HumanoidRootPart.Position).Magnitude
distance < closestDistance
closestPlayer = otherPlayer
closestDistance = distance
closestPlayer
(targetPlayer)
player.Character player.Character:() targetPlayer.Character
myRootPart = player.Character.HumanoidRootPart
targetRootPart = targetPlayer.Character.HumanoidRootPart
targetPos = targetRootPart.Position
myPos = myRootPart.Position
targetLookDirection = targetRootPart.CFrame.LookVector
behindDistance = DANGER_ZONE_RADIUS +
behindPosition = targetPos - (targetLookDirection * behindDistance)
behindPosition = .(behindPosition.X, myPos.Y, behindPosition.Z)
directDistance = (myPos - behindPosition).Magnitude
distanceToTarget = (myPos - targetPos).Magnitude
distanceToTarget < DANGER_ZONE_RADIUS directDistance > DANGER_ZONE_RADIUS
rightVector = targetRootPart.CFrame.RightVector
leftSide = targetPos + (rightVector * (DANGER_ZONE_RADIUS + ))
rightSide = targetPos - (rightVector * (DANGER_ZONE_RADIUS + ))
leftDistance = (myPos - leftSide).Magnitude
rightDistance = (myPos - rightSide).Magnitude
leftDistance < rightDistance
.(leftSide.X, myPos.Y, leftSide.Z)
.(rightSide.X, myPos.Y, rightSide.Z)
behindPosition
(targetPlayer)
player.Character player.Character:() player.Character:()
myRootPart = player.Character.HumanoidRootPart
myHumanoid = player.Character.Humanoid
targetRootPart = targetPlayer.Character.HumanoidRootPart
targetPosition = targetRootPart.Position
lookDirection = (targetPosition - myRootPart.Position).Unit
targetCFrame = .(myRootPart.Position, .(targetPosition.X, myRootPart.Position.Y, targetPosition.Z))
myRootPart.CFrame = myRootPart.CFrame:(targetCFrame, )
myHumanoid.WalkSpeed >
myHumanoid.WalkSpeed =
backPosition = (targetPlayer)
backPosition
currentDistance = (myRootPart.Position - backPosition).Magnitude
currentDistance >
movementTween
movementTween:()
movementTime = .(currentDistance / , )
tweenInfo = TweenInfo.(
movementTime,
.EasingStyle.Linear,
.EasingDirection.InOut
)
newCFrame = .(backPosition, .(targetPosition.X, backPosition.Y, targetPosition.Z))
movementTween = TweenService:(myRootPart, tweenInfo, { = newCFrame})
movementTween:()
(animationId)
player.Character player.Character:()
humanoid = player.Character.Humanoid
connection
connection = humanoid.AnimationPlayed:((track)
track.Animation.AnimationId:((animationId))
track:()
track:()
)
.(blockedAnimations, connection)
()
player.Character player.Character:()
humanoid = player.Character.Humanoid
walkSpeedConnection = RunService.Heartbeat:(()
autoPositionEnabled parryAuraEnabled autoAttackEnabled
humanoid.WalkSpeed >
humanoid.WalkSpeed =
)
()
_, connection (blockedAnimations)
connection
connection:()
blockedAnimations = {}
walkSpeedConnection
walkSpeedConnection:()
walkSpeedConnection =
movementTween
movementTween:()
movementTween =
()
()
()
parryConnection = RunService.Heartbeat:(()
parryAuraEnabled
closestEnemy = (DETECTION_RADIUS)
closestEnemy
(()
parryRemote:()
)
)
aimConnection = RunService.Heartbeat:(()
parryAuraEnabled
closestPlayer = (DETECTION_RADIUS)
closestPlayer
myRootPart = player.Character.HumanoidRootPart
targetPosition = closestPlayer.Character.HumanoidRootPart.Position
targetCFrame = .(myRootPart.Position, .(targetPosition.X, myRootPart.Position.Y, targetPosition.Z))
myRootPart.CFrame = myRootPart.CFrame:(targetCFrame, )
)
()
()
()
attackConnection = RunService.Heartbeat:(()
autoAttackEnabled
closestEnemy = (ATTACK_RADIUS)
closestEnemy
player.Character player.Character:()
myRootPart = player.Character.HumanoidRootPart
targetPosition = closestEnemy.Character.HumanoidRootPart.Position
targetCFrame = .(myRootPart.Position, .(targetPosition.X, myRootPart.Position.Y, targetPosition.Z))
myRootPart.CFrame = myRootPart.CFrame:(targetCFrame, )
()
)
()
()
positionConnection = RunService.Heartbeat:(()
autoPositionEnabled
closestPlayer = ()
closestPlayer
currentTarget = closestPlayer
(closestPlayer)
)
()
parryConnection parryConnection:(); parryConnection =
aimConnection aimConnection:(); aimConnection =
()
()
positionConnection positionConnection:(); positionConnection =
movementTween movementTween:(); movementTween =
currentTarget =
()
()
attackConnection attackConnection:(); attackConnection =
()
()
parryAuraEnabled = parryAuraEnabled
parryAuraEnabled
()
( .. DETECTION_RADIUS .. )
()
()
()
()
autoPositionEnabled = autoPositionEnabled
autoPositionEnabled
()
()
()
()
()
()
autoAttackEnabled = autoAttackEnabled
autoAttackEnabled
()
()
()
()
()
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.KeyCode == .KeyCode.P
()
input.KeyCode == .KeyCode.K
()
input.KeyCode == .KeyCode.M
()
)
player.CharacterAdded:(()
()
()
player.Character:()
parryAuraEnabled
()
()
autoPositionEnabled
()
autoAttackEnabled
()
()
mobileGui mobileGui.Parent
()
()
()
)
(createGUI)
()
()
()
Age of Honor 義