Run it
Copy the script and paste it into your executor.
keyVerified =
TweenService = :()
CORRECT_KEY =
KEY_FILE =
KEY_LINK =
isfile readfile
(KEY_FILE)
savedKey = (KEY_FILE)
savedKey == CORRECT_KEY
()
keyVerified =
keyVerified
(obj, props, time)
TweenService:(obj, TweenInfo.(time , .EasingStyle.Quad, .EasingDirection.Out), props):()
ScreenGui = .()
ScreenGui.Name =
ScreenGui.ResetOnSpawn =
ScreenGui.ZIndexBehavior = .ZIndexBehavior.Sibling
ScreenGui.Parent = .CoreGui
MainFrame = .()
MainFrame.Size = .(, , , )
MainFrame.Position = .(, -, , -)
MainFrame.BackgroundColor3 = .(, , )
MainFrame.BorderSizePixel =
MainFrame.Active =
MainFrame.Draggable =
MainFrame.Parent = ScreenGui
MainCorner = .()
MainCorner.CornerRadius = .(, )
MainCorner.Parent = MainFrame
Header = .()
Header.Size = .(, , , )
Header.Position = .(, , , )
Header.BackgroundColor3 = .(, , )
Header.BorderSizePixel =
Header.Parent = MainFrame
HeaderCorner = .()
HeaderCorner.CornerRadius = .(, )
HeaderCorner.Parent = Header
HeaderBottom = .()
HeaderBottom.Size = .(, , , )
HeaderBottom.Position = .(, , , -)
HeaderBottom.BackgroundColor3 = .(, , )
HeaderBottom.BorderSizePixel =
HeaderBottom.Parent = Header
Icon = .()
Icon.Size = .(, , , )
Icon.Position = .(, -, , )
Icon.BackgroundTransparency =
Icon.Text =
Icon.TextSize =
Icon.Parent = Header
Title = .()
Title.Size = .(, , , )
Title.Position = .(, , , )
Title.BackgroundTransparency =
Title.Text =
Title.TextColor3 = .(, , )
Title.TextSize =
Title.Font = .Font.GothamBold
Title.TextXAlignment = .TextXAlignment.Center
Title.Parent = Header
ContentFrame = .()
ContentFrame.Size = .(, -, , )
ContentFrame.Position = .(, , , )
ContentFrame.BackgroundTransparency =
ContentFrame.Parent = MainFrame
StatusLabel = .()
StatusLabel.Size = .(, , , )
StatusLabel.Position = .(, , , )
StatusLabel.BackgroundTransparency =
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
StatusLabel.TextSize =
StatusLabel.Font = .Font.Gotham
StatusLabel.TextWrapped =
StatusLabel.Parent = ContentFrame
InputContainer = .()
InputContainer.Size = .(, , , )
InputContainer.Position = .(, , , )
InputContainer.BackgroundColor3 = .(, , )
InputContainer.BorderSizePixel =
InputContainer.Parent = ContentFrame
InputCorner = .()
InputCorner.CornerRadius = .(, )
InputCorner.Parent = InputContainer
InputStroke = .()
InputStroke.Color = .(, , )
InputStroke.Thickness =
InputStroke.Transparency =
InputStroke.Parent = InputContainer
KeyInput = .()
KeyInput.Size = .(, -, , -)
KeyInput.Position = .(, , , )
KeyInput.BackgroundTransparency =
KeyInput.PlaceholderText =
KeyInput.PlaceholderColor3 = .(, , )
KeyInput.Text =
KeyInput.TextColor3 = .(, , )
KeyInput.TextSize =
KeyInput.Font = .Font.Gotham
KeyInput.ClearTextOnFocus =
KeyInput.Parent = InputContainer
GetKeyBtn = .()
GetKeyBtn.Size = .(, , , )
GetKeyBtn.Position = .(, , , )
GetKeyBtn.BackgroundColor3 = .(, , )
GetKeyBtn.Text =
GetKeyBtn.TextColor3 = .(, , )
GetKeyBtn.TextSize =
GetKeyBtn.Font = .Font.GothamBold
GetKeyBtn.BorderSizePixel =
GetKeyBtn.Parent = ContentFrame
GetKeyCorner = .()
GetKeyCorner.CornerRadius = .(, )
GetKeyCorner.Parent = GetKeyBtn
VerifyBtn = .()
VerifyBtn.Size = .(, , , )
VerifyBtn.Position = .(, , , )
VerifyBtn.BackgroundColor3 = .(, , )
VerifyBtn.Text =
VerifyBtn.TextColor3 = .(, , )
VerifyBtn.TextSize =
VerifyBtn.Font = .Font.GothamBold
VerifyBtn.BorderSizePixel =
VerifyBtn.Parent = ContentFrame
VerifyCorner = .()
VerifyCorner.CornerRadius = .(, )
VerifyCorner.Parent = VerifyBtn
InfoLabel = .()
InfoLabel.Size = .(, , , )
InfoLabel.Position = .(, , , )
InfoLabel.BackgroundTransparency =
InfoLabel.Text =
InfoLabel.TextColor3 = .(, , )
InfoLabel.TextSize =
InfoLabel.Font = .Font.Gotham
InfoLabel.TextWrapped =
InfoLabel.Parent = ContentFrame
CloseBtn = .()
CloseBtn.Size = .(, , , )
CloseBtn.Position = .(, -, , )
CloseBtn.BackgroundColor3 = .(, , )
CloseBtn.Text =
CloseBtn.TextColor3 = .(, , )
CloseBtn.TextSize =
CloseBtn.Font = .Font.GothamBold
CloseBtn.BorderSizePixel =
CloseBtn.Parent = MainFrame
CloseCorner = .()
CloseCorner.CornerRadius = .(, )
CloseCorner.Parent = CloseBtn
(()
RunService = :()
particles = {}
i = ,
particle = .()
particle.Size = .(, .(, ), , .(, ))
particle.Position = .(.(), , .(), )
particle.BackgroundColor3 = .(, , )
particle.BackgroundTransparency = .(, ) /
particle.BorderSizePixel =
particle.ZIndex =
particle.Parent = MainFrame
corner = .()
corner.CornerRadius = .(, )
corner.Parent = particle
.(particles, {
obj = particle,
speed = .(, ) / ,
angle = .() * .pi *
})
conn
conn = RunService.Heartbeat:(()
MainFrame.Parent
conn:()
_, p (particles)
pos = p.obj.Position
p.angle = p.angle + p.speed
newX = pos.X.Scale + .(p.angle) *
newY = pos.Y.Scale + .(p.angle) *
p.obj.Position = .(newX, , newY, )
)
)
GetKeyBtn.MouseEnter:(()
(GetKeyBtn, {BackgroundColor3 = .(, , )})
)
GetKeyBtn.MouseLeave:(()
(GetKeyBtn, {BackgroundColor3 = .(, , )})
)
VerifyBtn.MouseEnter:(()
(VerifyBtn, {BackgroundColor3 = .(, , )})
)
VerifyBtn.MouseLeave:(()
(VerifyBtn, {BackgroundColor3 = .(, , )})
)
CloseBtn.MouseEnter:(()
(CloseBtn, {BackgroundColor3 = .(, , )})
)
CloseBtn.MouseLeave:(()
(CloseBtn, {BackgroundColor3 = .(, , )})
)
GetKeyBtn.MouseButton1Click:(()
setclipboard
(KEY_LINK)
originalText = GetKeyBtn.Text
GetKeyBtn.Text =
(GetKeyBtn, {BackgroundColor3 = .(, , )})
.()
GetKeyBtn.Text = originalText
(GetKeyBtn, {BackgroundColor3 = .(, , )})
(()
({
Url = KEY_LINK,
Method =
})
)
(()
({
Url = KEY_LINK,
Method =
})
)
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
.()
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
)
VerifyBtn.MouseButton1Click:(()
inputKey = KeyInput.Text
inputKey == CORRECT_KEY
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
(VerifyBtn, {BackgroundColor3 = .(, , )})
VerifyBtn.Text =
writefile
(KEY_FILE, CORRECT_KEY)
.()
(MainFrame, {BackgroundTransparency = }, )
_, child (MainFrame:())
child:() child:()
(child, {TextTransparency = }, )
child:() child:()
(child, {BackgroundTransparency = }, )
child:()
(child, {Transparency = }, )
.()
ScreenGui:()
keyVerified =
()
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
(VerifyBtn, {BackgroundColor3 = .(, , )})
i = ,
(MainFrame, {Position = .(, -, , -)}, )
.()
(MainFrame, {Position = .(, -, , -)}, )
.()
MainFrame.Position = .(, -, , -)
.()
StatusLabel.Text =
StatusLabel.TextColor3 = .(, , )
(VerifyBtn, {BackgroundColor3 = .(, , )})
VerifyBtn.Text =
)
KeyInput.FocusLost:((enterPressed)
enterPressed
VerifyBtn.MouseButton1Click:()
)
CloseBtn.MouseButton1Click:(()
(MainFrame, {Size = .(, , , )}, )
.()
ScreenGui:()
)
.() keyVerified
isDaHood = (.PlaceId == )
:()
.Loaded:()
getnamecallmethod
(:(,))()
.(()
success, err = (()
gamerawmetatable = ()
(gamerawmetatable, )
old__namecall1 = gamerawmetatable.__namecall
gamerawmetatable.__namecall = ((self, ...)
args = {...}
remoteName = (args[])
blockedRemotes = {
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] =
}
blockedRemotes[remoteName]
(self, ...)
)
)
success
()
()
)()
repo =
Library = (:(repo .. ))()
ThemeManager = (:(repo .. ))()
SaveManager = (:(repo .. ))()
Options = Library.Options
Toggles = Library.Toggles
Library.ShowToggleFrameInKeybinds =
Library.ShowCustomCursor =
Library.NotifySide =
TextChatService = :()
chatWindow = TextChatService:()
ChatEnabled =
ChatEnabled chatWindow
chatWindow.Enabled =
Camera = .CurrentCamera
Window = Library:({
Title = ,
Footer = ,
Icon = ,
NotifySide = ,
ShowCustomCursor = ,
Compact = ,
AutoShow = ,
MobileButtonsSide =
})
plr = .Players.LocalPlayer
mps = :()
(:())()
ownerList = {
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
}
().premiumUsers = {
[] = ,
[] = ,
[] = ,
}
().bypassUsers = {
[] = ,
}
isOwner = ownerList[plr.Name] ==
()
owns =
(()
owns = mps:(plr.UserId, )
)
owns ().premiumUsers[plr.Name] ==
()
owns =
(()
owns = mps:(plr.UserId, )
)
owns ().bypassUsers[plr.Name] ==
hasPremium = ()
hasBypass = ()
isOwner
Library:( .. plr.DisplayName .. .. plr.Name .. , )
hasBypass
Library:( .. plr.DisplayName .. .. plr.Name .. , )
hasPremium
Library:( .. plr.DisplayName .. .. plr.Name .. , )
isOwner
hasBypass hasPremium
Library:( .. plr.DisplayName .. .. plr.Name .. , )
Tabs = {
Main = Window:(, ),
Player = Window:(, ),
Visual = Window:(, ),
Character = Window:(, ),
Misc = Window:(, ),
[] = Window:(, ),
}
previousTargetHealth = {}
TargetAimActive =
BuyingAmmo =
BuyingAmmoActive =
BuyingActive =
AutoKillActive =
AutoHealActive =
AutoArmorActive =
AutoLoadoutActive =
BuyingSingleActive =
().Matcha = {}
matchacc = {
TargetAim = {
Enabled = ,
Target = ,
AutoSelect = ,
AutoFire = ,
Strafe = ,
ToggleStrafe = ,
VisualizeStrafe = ,
VisualizeStrafeInlineColor = .(, , ),
VisualizeStrafeOutlineColor = .(, , ),
StrafeMethod = ,
StrafePrediction = ,
Highlight = ,
HighlightOutlineColor = .(, , ),
Tracer = ,
TracerPosition = ,
TracerFillColor = .(, , ),
TracerOutlineColor = .(, , ),
LookAt = ,
SpectateTarget = ,
AutoStomp = ,
Prediction = ,
AutoPredict = ,
PredictMode = ,
HitPart = ,
Offset = ,
JumpOffset = ,
AirPartEnabled = ,
AirPart = ,
Resolver = ,
TargetStats = ,
Autokill = ,
DotCircle = ,
Spoofer = ,
},
HitEffects = {
HitSounds = ,
HitSoundID = ,
HitSoundVolume = ,
HitNotifications = ,
HitNotificationsTime = ,
HitChams = {
Enabled = ,
Color = .(, , ),
Lifetime = ,
Transparency = ,
Material =
},
HitEffect = {
Enabled = ,
Type = ,
Color = .(, , ),
},
HitSkeleton = {
Enabled = ,
Color = .(, , )
},
},
Checks = {
Wall = ,
Forcefield = ,
Alive = ,
Team = ,
},
KillAura = {
Enabled = ,
Active = ,
Range = ,
Silent = ,
Visualize = ,
StompAura = ,
Whitelist = {},
},
RapidFire = {
Enabled = ,
},
Wallbang = {
Enabled = ,
},
HitboxExpander = {
Enabled = ,
Visualize = ,
Color = .(, , ),
OutlineColor = .(, , ),
FillTransparency = ,
OutlineTransparency = ,
Size = ,
},
Movement = {
WalkSpeedEnabled = ,
WalkSpeed = ,
JumpPowerEnabled = ,
JumpPower = ,
},
}
oldVelPos = {}
DotCircle = .()
DotCircle.Visible =
DotCircle.Filled =
DotCircle.Radius =
DotCircle.Thickness =
DotCircle.Color = .(, , )
DotCircle.Transparency =
SupportedGames = {
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = },
[] = {Name = , Arg = , Remote = }
}
CurrentGame = SupportedGames[.PlaceId]
LPH_OBFUSCATED
LPH_JIT = (...) ...
LPH_NO_VIRTUALIZE = (...) ...
BodyClone = :()[]
BodyClone.Parent =
BodyClone.Humanoid:()
BodyClone.Head.Face:()
_, v (BodyClone:())
v:() v:()
v.CanCollide =
v.Transparency =
BodyClone.HumanoidRootPart.Transparency =
BodyClone.HumanoidRootPart.Velocity = .zero
BodyClone.HumanoidRootPart.CFrame = .(, , )
BodyCloneHighlight = .()
BodyCloneHighlight.Enabled =
BodyCloneHighlight.DepthMode = .HighlightDepthMode.AlwaysOnTop
BodyCloneHighlight.FillColor = .(, , )
BodyCloneHighlight.OutlineColor = .(, , )
BodyCloneHighlight.FillTransparency =
BodyCloneHighlight.OutlineTransparency =
BodyCloneHighlight.Adornee = BodyClone
BodyCloneHighlight.Parent = BodyClone
GlowLight = .()
GlowLight.Color = .(, , )
GlowLight.Brightness =
GlowLight.Range =
GlowLight.Parent = BodyClone.HumanoidRootPart
DesyncLine = .()
DesyncLine.Thickness =
DesyncLine.Color = .(, , )
DesyncLine.Visible =
DesyncLine.Transparency =
tracerOutline = .()
tracerOutline.Visible =
tracerOutline.Color = matchacc.TargetAim.TracerOutlineColor
tracerOutline.Thickness =
tracer = .()
tracer.Visible =
tracer.Color = matchacc.TargetAim.TracerFillColor
tracer.Thickness =
ka_tracer = .()
ka_tracer.Size = .(, , )
ka_tracer.Material = .Material.Neon
ka_tracer.Color = .(, , )
ka_tracer.Transparency =
ka_tracer.Anchored =
ka_tracer.CanCollide =
ka_tracer.Parent =
TweenService = :()
HitChams = ((Player)
matchacc.HitEffects.HitChams.Enabled
Player Player.Character Player.Character:()
Player.Character.Archivable =
Cloned = Player.Character:()
Cloned.Name =
BodyParts = { , , , , , , , , , , , , , , }
_, Part (Cloned:())
Part:()
PartValid =
_, validPart (BodyParts)
Part.Name == validPart
PartValid =
PartValid
Part:()
Part:() Part:() Part.Name == Part:() Part:() Part:()
Part:()
Cloned:()
Cloned.Humanoid:()
_, BodyPart (Cloned:())
BodyPart:()
BodyPart.CanCollide =
BodyPart.Anchored =
BodyPart.Transparency = matchacc.HitEffects.HitChams.Transparency
BodyPart.Color = matchacc.HitEffects.HitChams.Color
BodyPart.Material = matchacc.HitEffects.HitChams.Material
Cloned:()
Head = Cloned.Head
Head.Transparency = matchacc.HitEffects.HitChams.Transparency
Head.Color = matchacc.HitEffects.HitChams.Color
Head.Material = matchacc.HitEffects.HitChams.Material
Head:()
Head.face:()
Cloned.Parent = .Workspace
tweenInfo = TweenInfo.(
matchacc.HitEffects.HitChams.Lifetime,
.EasingStyle.Sine,
.EasingDirection.InOut,
,
)
_, BodyPart (Cloned:())
BodyPart:()
tween = TweenService:(BodyPart, tweenInfo, { Transparency = })
tween:()
.(matchacc.HitEffects.HitChams.Lifetime, ()
Cloned Cloned.Parent
Cloned:()
)
)
HitChamsSkeleton = ((Player)
matchacc.HitEffects.HitSkeleton.Enabled
Player Player.Character Player.Character:()
bones = {
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, },
{, }
}
lines = {}
_, bonePair (bones)
parentBone = Player.Character:(bonePair[])
childBone = Player.Character:(bonePair[])
parentBone childBone
line = .()
line.Size = .(, , (parentBone.Position - childBone.Position).Magnitude)
line.CFrame = .(parentBone.Position, childBone.Position) * .(, , -line.Size.Z / )
line.Anchored =
line.CanCollide =
line.Transparency = matchacc.HitEffects.HitChams.Transparency
line.Color = matchacc.HitEffects.HitSkeleton.Color
line.Material = .Material.Neon
line.Parent =
tweenInfo = TweenInfo.(matchacc.HitEffects.HitChams.Lifetime / , .EasingStyle.Sine, .EasingDirection.Out)
tween = TweenService:(line, tweenInfo, {Transparency = })
tween:()
.(lines, line)
.(matchacc.HitEffects.HitChams.Lifetime, ()
_, line (lines)
line line.Parent
line:()
)
)
FOVCircleEnabled =
FOVCircleSize =
FOVInnerColor = .(, , )
GradientFillEnabled =
GradientColor1 = .(, , )
GradientColor2 = .(, , )
FillTransparency =
InnerCircle = .()
InnerCircle.Visible =
InnerCircle.Thickness =
InnerCircle.NumSides =
InnerCircle.Filled =
InnerCircle.Color = FOVInnerColor
InnerCircle.Radius = FOVCircleSize
InnerCircle.ZIndex =
FillCircle = .()
FillCircle.Visible =
FillCircle.Filled =
FillCircle.Transparency = FillTransparency
FillCircle.NumSides =
FillCircle.Radius = FOVCircleSize
FillCircle.Color = GradientColor1
FillCircle.ZIndex =
players = :()
Players = :()
localPlayer = players.LocalPlayer
LocalPlayer = Players.LocalPlayer
RunService = :()
ReplicatedStorage = :()
UserInputService = :()
isMobile = UserInputService.TouchEnabled UserInputService.KeyboardEnabled
possibleRemotes = { , , , , , }
()
ReplicatedStorage:() ReplicatedStorage.MainEvent
ReplicatedStorage:() ReplicatedStorage.MAINEVENT
ReplicatedStorage:() ReplicatedStorage.Remote
ReplicatedStorage:() ReplicatedStorage.Bullets
mainRemotes = ReplicatedStorage:()
mainRemotes mainRemotes:() mainRemotes.MainRemoteEvent
packages = ReplicatedStorage:()
packages
knit = packages:()
knit knit:()
toolService = knit.Services:()
toolService toolService:()
re = toolService.RE
re:() re.UpdateAim
MainEvent = ()
previousPositions = {}
customVelocities = {}
lastTarget =
t =
M1Down =
lastHealth =
ka_lastHealth = {}
sounds = {
Hrntai = ,
Henta01 = ,
Kitty = ,
}
hitsounds = {
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] = ,
[] =
}
(plr)
plr plr.Character
hum = plr.Character:()
hum hum.Health <=
be = plr.Character:()
be
ko = be:()
grabbed = be:()
(ko ko.Value) (grabbed grabbed.Value)
(plr)
plr plr.Character
hum = plr.Character:()
hum hum.Health <=
(plr)
plr plr.Character plr.Character:()
ko = plr.Character.BodyEffects:()
ko ko.Value
()
closestDist = .huge
closestPlayer =
mousePos
UserInputService.TouchEnabled UserInputService.MouseEnabled
mousePos = .(Camera.ViewportSize.X / , Camera.ViewportSize.Y / )
mousePos = UserInputService:()
_, player (players:())
player == localPlayer
char = player.Character
char char:() char:()
(player) matchacc.Checks.Alive
matchacc.Checks.Team player.Team == localPlayer.Team
matchacc.Checks.Forcefield player.Character:()
headPos, onScreen = Camera:(char.Head.Position)
screenPos = .(headPos.X, headPos.Y)
dist = (screenPos - mousePos).Magnitude
FOVCircleEnabled dist > FOVCircleSize
isVisible =
matchacc.Checks.Wall
raycastParams = RaycastParams.()
raycastParams.FilterDescendantsInstances = {localPlayer.Character}
raycastParams.FilterType = .RaycastFilterType.Blacklist
result = :(Camera.CFrame.Position, char.Head.Position - Camera.CFrame.Position, raycastParams)
result result.Instance result.Instance:(char)
isVisible =
onScreen isVisible dist < closestDist
closestDist = dist
closestPlayer = player
closestPlayer
()
sound = .()
sound.Parent = localPlayer.Character.HumanoidRootPart
sound.SoundId = matchacc.HitEffects.HitSoundID
sound.Volume = matchacc.HitEffects.HitSoundVolume
sound:()
sound.Ended:(()
sound:()
)
(clone, trans)
_, v (clone:())
v:() v:()
v.Transparency = trans
(clone)
_, v (clone:())
v:() v:()
v.CanCollide =
(clone, color)
_, v (clone:())
v:() v:()
v.Color = color
MainTabBox = Tabs.Main:()
TargetAimTab = MainTabBox:()
ChecksTab = MainTabBox:()
OptionsTab = MainTabBox:()
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.Enabled = Value
Value
matchacc.TargetAim.Target =
tracer.Visible =
tracerOutline.Visible =
(BodyClone, )
DesyncLine.Visible =
BodyCloneHighlight.Enabled =
Camera.CameraSubject = localPlayer.Character.Humanoid
}):(, {
Default = ,
Text = ,
Mode = ,
Callback = (Value)
matchacc.TargetAim.Enabled
Value
target = ()
target
matchacc.TargetAim.Target = target.Name
matchacc.TargetAim.Target =
matchacc.TargetAim.Target =
tracer.Visible =
tracerOutline.Visible =
(BodyClone, )
DesyncLine.Visible =
BodyCloneHighlight.Enabled =
})
UserInputService.TouchEnabled
Sigmaballs = .()
Sigmaballs.Name =
Sigmaballs.Parent = .CoreGui
Sigmaballs.ZIndexBehavior = .ZIndexBehavior.Sibling
Sigmaballs.ResetOnSpawn =
ImageButton = .()
ImageButton.Name =
ImageButton.Parent = Sigmaballs
ImageButton.Active =
ImageButton.Draggable =
ImageButton.BackgroundColor3 = .(, , )
ImageButton.BackgroundTransparency =
ImageButton.Size = .(, , , )
ImageButton.Image =
ImageButton.Position = .(, -, , -)
ImageButton.Visible =
Ui2corner = .()
Ui2corner.CornerRadius = .(, )
Ui2corner.Parent = ImageButton
ImageButton.MouseButton1Click:(()
matchacc.TargetAim.Enabled
target = ()
target
matchacc.TargetAim.Target = target.Name
matchacc.TargetAim.Target =
)
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.AutoSelect = Value
Value
RunService:(, , ()
target = ()
lastTarget lastTarget ~= target lastTarget.Character
tracer.Visible =
tracerOutline.Visible =
target
matchacc.TargetAim.Target = target.Name
matchacc.TargetAim.Target =
lastTarget = target
)
RunService:()
lastTarget lastTarget.Character
tracer.Visible =
tracerOutline.Visible =
lastTarget =
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.AutoFire = Value
})
color_targethud = .(, , )
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.TargetStats = Value
}):(, {
Default = color_targethud,
Title = ,
Callback = (Value)
color_targethud = Value
})
matchacc_TargetStats = .()
Background = .()
Picture = .()
Top = .()
UIGradient = .()
UIGradient_2 = .()
HealthBarBackground = .()
UIGradient_3 = .()
HealthBar = .()
UIGradient_4 = .()
NameOfTarget = .()
matchacc_TargetStats.Name =
matchacc_TargetStats.Parent = .CoreGui
matchacc_TargetStats.ZIndexBehavior = .ZIndexBehavior.Sibling
Background.Name =
Background.Parent = matchacc_TargetStats
Background.BackgroundColor3 = .(, , )
Background.BorderSizePixel =
Background.Draggable =
Background.Active =
Background.Position = .(, , , )
Background.Size = .(, , , )
Background.Visible =
Picture.Name =
Picture.Parent = Background
Picture.BackgroundColor3 = .(, , )
Picture.BorderSizePixel =
Picture.Position = .(, , , )
Picture.Size = .(, , , )
Picture.Transparency =
Picture.Image =
Top.Name =
Top.Parent = Background
Top.BackgroundColor3 = .(, , )
Top.BorderSizePixel =
Top.Position = .(, , -, )
Top.Size = .(, , , )
UIGradient.Color = ColorSequence.{ColorSequenceKeypoint.(, color_targethud), ColorSequenceKeypoint.(, .(, , ))}
UIGradient.Rotation =
UIGradient.Parent = Top
UIGradient_2.Color = ColorSequence.{ColorSequenceKeypoint.(, color_targethud), ColorSequenceKeypoint.(, .(, , ))}
UIGradient_2.Rotation =
UIGradient_2.Parent = Background
HealthBarBackground.Name =
HealthBarBackground.Parent = Background
HealthBarBackground.BackgroundColor3 = .(, , )
HealthBarBackground.BorderSizePixel =
HealthBarBackground.Position = .(, , , )
HealthBarBackground.Size = .(, , , )
HealthBarBackground.Transparency =
UIGradient_3.Color = ColorSequence.{ColorSequenceKeypoint.(, .(, , )), ColorSequenceKeypoint.(, .(, , ))}
UIGradient_3.Rotation =
UIGradient_3.Parent = HealthBarBackground
HealthBar.Name =
HealthBar.Parent = HealthBarBackground
HealthBar.BackgroundColor3 = .(, , )
HealthBar.BorderSizePixel =
HealthBar.Position = .(-, , , )
HealthBar.Size = .(, , , )
UIGradient_4.Color = ColorSequence.{ColorSequenceKeypoint.(, color_targethud), ColorSequenceKeypoint.(, .(, , ))}
UIGradient_4.Rotation =
UIGradient_4.Parent = HealthBar
NameOfTarget.Name =
NameOfTarget.Parent = Background
NameOfTarget.BackgroundColor3 = .(, , )
NameOfTarget.BackgroundTransparency =
NameOfTarget.Position = .(, , , )
NameOfTarget.Size = .(, , , )
NameOfTarget.Font = .Font.Code
NameOfTarget.TextColor3 = .(, , )
NameOfTarget.TextScaled =
NameOfTarget.TextSize =
NameOfTarget.TextStrokeTransparency =
NameOfTarget.TextWrapped =
IsAlive = (GetPlayer)
GetPlayer GetPlayer.Character GetPlayer.Character:() ~= GetPlayer.Character:() ~= GetPlayer.Character:() ~=
RunService.Heartbeat:(()
matchacc.TargetAim.TargetStats matchacc.TargetAim.Enabled
targetName = matchacc.TargetAim.Target
target = players:(targetName)
target target.Character
Background.Visible =
target (target)
Background.Visible =
NameOfTarget.Text = (target.Character.Humanoid.DisplayName)....(target.Name)..
Picture.Image = ..target.UserId..
HealthBar:(.(target.Character.Humanoid.Health / target.Character.Humanoid.MaxHealth, , , ), , , )
Background.Visible =
)
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.Highlight = Value
}):(, {
Default = matchacc.TargetAim.HighlightOutlineColor,
Title = ,
Callback = (Value)
matchacc.TargetAim.HighlightOutlineColor = Value
})
healthConnections = {}
(target)
healthConnections[target]
hum = target.Character target.Character:()
hum
healthConnections[target] = hum.HealthChanged:((newHP)
highlight = target.Character target.Character:()
highlight
highlight.OutlineColor = .(,,)
.(,()
highlight matchacc.TargetAim.Highlight
highlight.OutlineColor = matchacc.TargetAim.HighlightOutlineColor
)
)
RunService.Heartbeat:(()
targetName = matchacc.TargetAim.Target
target = Players:(targetName)
_, plr (Players:())
hl = plr.Character plr.Character:()
hl ( target matchacc.TargetAim.Highlight plr ~= target)
hl:()
healthConnections[plr]
healthConnections[plr]:()
healthConnections[plr] =
matchacc.TargetAim.Highlight target target.Character
hum = target.Character:()
hum
highlight = target.Character:()
highlight
highlight = .()
highlight.Name =
highlight.FillTransparency =
highlight.OutlineColor = matchacc.TargetAim.HighlightOutlineColor
highlight.DepthMode = .HighlightDepthMode.AlwaysOnTop
highlight.Adornee = target.Character
highlight.Parent = target.Character
(target)
)
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.DotCircle = Value
DotCircle.Visible = Value matchacc.TargetAim.Enabled
}):(, {
Default = .(, , ),
Title = ,
Callback = (Value)
DotCircle.Color = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.Tracer = Value
tracer.Visible =
tracerOutline.Visible =
}):(, {
Default = matchacc.TargetAim.TracerFillColor,
Title = ,
Callback = (Value)
matchacc.TargetAim.TracerFillColor = Value
tracer.Color = Value
}):(, {
Default = matchacc.TargetAim.TracerOutlineColor,
Title = ,
Callback = (Value)
matchacc.TargetAim.TracerOutlineColor = Value
tracerOutline.Color = Value
})
TargetAimTab:(, {
Values = {, },
Default = ,
Multi = ,
Text = ,
Callback = (Value)
matchacc.TargetAim.TracerPosition = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.LookAt = Value
})
TargetAimTab:(, ()
targetName = matchacc.TargetAim.Target
targetName targetName == targetName ==
Library:(, )
targetPlayer = Players:(targetName)
targetPlayer targetPlayer.Character targetPlayer.Character:()
Library:(, )
hrp = localPlayer.Character localPlayer.Character:()
hrp
Library:(, )
hrp.CFrame = targetPlayer.Character.HumanoidRootPart.CFrame * .(, , -)
Library:( .. targetName, )
)
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.AutoKill = Value
}):(, {
Default = ,
Text = ,
Mode = ,
Callback = (Value)
matchacc.TargetAim.AutoKill = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.Spoofer = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.ToggleStrafe = Value
}):(, {
Default = ,
Text = ,
Mode = ,
Callback = (Value)
matchacc.TargetAim.ToggleStrafe
matchacc.TargetAim.Strafe = Value
Value
Library:(, )
Library:(, )
})
voldBypassEnabled =
TargetAimTab:(, {
Text = ,
Default = ,
Tooltip = ,
Callback = (Value)
voldBypassEnabled = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.VisualizeStrafe = Value
}):(, {
Default = matchacc.TargetAim.VisualizeStrafeInlineColor,
Title = ,
Callback = (Value)
matchacc.TargetAim.VisualizeStrafeInlineColor = Value
BodyCloneHighlight.FillColor = Value
}):(, {
Default = matchacc.TargetAim.VisualizeStrafeOutlineColor,
Title = ,
Callback = (Value)
matchacc.TargetAim.VisualizeStrafeOutlineColor = Value
BodyCloneHighlight.OutlineColor = Value
})
TargetAimTab:(, {
Values = {, },
Default = ,
Multi = ,
Text = ,
Callback = (Value)
matchacc.TargetAim.StrafeMethod = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Min = ,
Max = ,
Rounding = ,
Callback = (Value)
matchacc.TargetAim.StrafePrediction = Value
})
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.AutoStomp = Value
})
targetAimSpectateConnection
TargetAimTab:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.TargetAim.SpectateTarget = Value
Value
matchacc.TargetAim.Target ==
Library:(
,
)
Toggles.SpectateTarget.Value =
matchacc.TargetAim.SpectateTarget =
targetAimSpectateConnection
targetAimSpectateConnection:()
targetAimSpectateConnection = RunService.Heartbeat:(()
targetName = matchacc.TargetAim.Target
targetName ==
.CurrentCamera.CameraSubject =
localPlayer.Character localPlayer.Character:()
Toggles.SpectateTarget.Value =
matchacc.TargetAim.SpectateTarget =
targetPlayer = Players:(targetName)
targetPlayer
char = targetPlayer.Character
hum = char char:()
hum hum.Health >
.CurrentCamera.CameraSubject = hum
.CurrentCamera.CameraSubject =
localPlayer.Character localPlayer.Character:()
)
targetAimSpectateConnection
targetAimSpectateConnection:()
targetAimSpectateConnection =
.CurrentCamera.CameraSubject =
localPlayer.Character localPlayer.Character:()
}):(, {
Default = ,
SyncToggleState = ,
Mode = ,
Text = ,
Callback = (Value)
Toggles.SpectateTarget.Value = Value
})
HitEffectsGroup = Tabs.Main:()
HitEffectsGroup:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.HitEffects.HitSkeleton.Enabled = Value
}):(, {
Default = .(, , ),
Title = ,
Callback = (Value)
matchacc.HitEffects.HitSkeleton.Color = Value
})
HitEffectsGroup:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.HitEffects.HitChams.Enabled = Value
}):(, {
Default = matchacc.HitEffects.HitChams.Color,
Title = ,
Callback = (Value)
matchacc.HitEffects.HitChams.Color = Value
})
HitEffectsGroup:(, {
Text = ,
Min = ,
Max = ,
Default = matchacc.HitEffects.HitChams.Lifetime,
Rounding = ,
Callback = (Value)
matchacc.HitEffects.HitChams.Lifetime = Value
})
HitEffectsGroup:(, {
Text = ,
Min = ,
Max = ,
Default = matchacc.HitEffects.HitChams.Transparency,
Rounding = ,
Callback = (Value)
matchacc.HitEffects.HitChams.Transparency = Value
})
HitEffectsGroup:(, {
Values = {, },
Default = matchacc.HitEffects.HitChams.Material == ,
Multi = ,
Text = ,
Callback = (Value)
matchacc.HitEffects.HitChams.Material = Value
})
HitEffectsGroup:(, {
Text = ,
Default = ,
Callback = (Value)
matchacc.HitEffects.HitEffect.Enabled = Value
}):(, {
Default = matchacc.HitEffects.HitEffect.Color,
Title = ,
Callback = (Value)
matchacc.HitEffects.HitEffect.Color = Value
})
HitEffectsGroup:(, {
Values = {, , "Slash", "Atomic Slash", "Thunder", "Electric", "Aura"},
Default = "Coom",
Multi = false,
Text = 'Effect Type',
Callback = function(Value)
matchacc.HitEffects.HitEffect.Type = Value
end
})
local Workspace = game:GetService("Workspace")
-- Hàm tạo Atomic Slash Effect (tạo Part và Attachment một lần, clone khi dùng để tiết kiệm)
local function CreateAtomicSlashEffect()
local Part = Instance.new("Part")
Part.Parent = Workspace -- Parent vào Workspace thay vì ReplicatedStorage để dễ trigger
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
local Crescents = Instance.new("ParticleEmitter")
Crescents.Name = "Crescents"
Crescents.Lifetime = NumberRange.new(0.19, 0.38)
Crescents.SpreadAngle = Vector2.new(-360, 360)
Crescents.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1932907, 0), NumberSequenceKeypoint.new(0.778754, 0), NumberSequenceKeypoint.new(1, 1)})
Crescents.LightEmission = 10
Crescents.Color = ColorSequence.new(Color3.fromRGB(160, 96, 255))
Crescents.VelocitySpread = -360
Crescents.Speed = NumberRange.new(0.0826858, 0.0826858)
Crescents.Brightness = 4
Crescents.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.398774, 8.8026266, 2.2834616), NumberSequenceKeypoint.new(1, 11.477972, 1.860431)})
Crescents.Enabled = false
Crescents.ZOffset = 0.4542207
Crescents.Rate = 50
Crescents.Texture = "rbxassetid://12509373457"
Crescents.RotSpeed = NumberRange.new(800, 1000)
Crescents.Rotation = NumberRange.new(-360, 360)
Crescents.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Crescents.Parent = Attachment
local Glow = Instance.new("ParticleEmitter")
Glow.Name = "Glow"
Glow.Lifetime = NumberRange.new(0.16, 0.16)
Glow.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1421725, 0.6182796), NumberSequenceKeypoint.new(1, 1)})
Glow.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Glow.Speed = NumberRange.new(0, 0)
Glow.Brightness = 5
Glow.Size = NumberSequence.new(9.1873131, 16.5032349)
Glow.Enabled = false
Glow.ZOffset = -0.0565939
Glow.Rate = 50
Glow.Texture = "rbxassetid://8708637750"
Glow.Parent = Attachment
local Effect = Instance.new("ParticleEmitter")
Effect.Name = "Effect"
Effect.Lifetime = NumberRange.new(0.4, 0.7)
Effect.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid4x4
Effect.SpreadAngle = Vector2.new(360, -360)
Effect.LockedToPart = true
Effect.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1070999, 0.19375), NumberSequenceKeypoint.new(0.7761194, 0.88125), NumberSequenceKeypoint.new(1, 1)})
Effect.LightEmission = 1
Effect.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Effect.Drag = 1
Effect.VelocitySpread = 360
Effect.Speed = NumberRange.new(0.0036749, 0.0036749)
Effect.Brightness = 2.0999999
Effect.Size = NumberSequence.new(6.9680691, 9.9213123)
Effect.Enabled = false
Effect.ZOffset = 0.4777403
Effect.Rate = 50
Effect.Texture = "rbxassetid://9484012464"
Effect.RotSpeed = NumberRange.new(-150, -150)
Effect.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
Effect.Rotation = NumberRange.new(50, 50)
Effect.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Effect.Parent = Attachment
local Gradient1 = Instance.new("ParticleEmitter")
Gradient1.Name = "Gradient1"
Gradient1.Lifetime = NumberRange.new(0.3, 0.3)
Gradient1.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.15, 0.3), NumberSequenceKeypoint.new(1, 1)})
Gradient1.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Gradient1.Speed = NumberRange.new(0, 0)
Gradient1.Brightness = 6
Gradient1.Size = NumberSequence.new(0, 11.6261358)
Gradient1.Enabled = false
Gradient1.ZOffset = 0.9187313
Gradient1.Rate = 50
Gradient1.Texture = "rbxassetid://8196169974"
Gradient1.Parent = Attachment
local Shards = Instance.new("ParticleEmitter")
Shards.Name = "Shards"
Shards.Lifetime = NumberRange.new(0.19, 0.7)
Shards.SpreadAngle = Vector2.new(-90, 90)
Shards.Color = ColorSequence.new(Color3.fromRGB(179, 145, 253))
Shards.Drag = 10
Shards.Squash = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5705521, 0.4125001), NumberSequenceKeypoint.new(1, -0.9375)})
Shards.Speed = NumberRange.new(97.7530136, 146.9970093)
Shards.Brightness = 4
Shards.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.284774, 1.2389833, 0.1534118), NumberSequenceKeypoint.new(1, 0)})
Shards.Enabled = false
Shards.Acceleration = Vector3.new(0, -56.961341857910156, 0)
Shards.ZOffset = 0.5705321
Shards.Rate = 50
Shards.Texture = "rbxassetid://8030734851"
Shards.Rotation = NumberRange.new(90, 90)
Shards.Orientation = Enum.ParticleOrientation.VelocityParallel
Shards.Parent = Attachment
return Attachment
end
local function CreateAuraEffect()
local Part = Instance.new("Part")
Part.Parent = Workspace
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
-- Spike Aura ------
local SPIKES = Instance.new("ParticleEmitter")
SPIKES.Name = "SPIKES"
SPIKES.Acceleration = Vector3.new(0, 100, 0)
SPIKES.Color = ColorSequence.new(Color3.new(0, 1, 0), Color3.new(0, 1, 0))
SPIKES.Drag = 3
SPIKES.EmissionDirection = Enum.NormalId.Right
SPIKES.Lifetime = NumberRange.new(0.25, 0.5)
SPIKES.LightEmission = 1
SPIKES.Orientation = Enum.ParticleOrientation.VelocityParallel
SPIKES.Rate = 100
SPIKES.Rotation = NumberRange.new(-90, -90)
SPIKES.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 2, 0),
NumberSequenceKeypoint.new(0.25, 3, 0.25),
NumberSequenceKeypoint.new(0.653846, 2.0625, 0.164957),
NumberSequenceKeypoint.new(1, 0, 0)
})
SPIKES.Speed = NumberRange.new(10, 25)
SPIKES.SpreadAngle = Vector2.new(0, 180)
SPIKES.Squash = NumberSequence.new({
NumberSequenceKeypoint.new(0, -0.25),
NumberSequenceKeypoint.new(1, 0.5),
NumberSequenceKeypoint.new(1, 0.25)
})
SPIKES.Texture = "rbxassetid://7451697448"
SPIKES.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 1),
NumberSequenceKeypoint.new(0.25, 0),
NumberSequenceKeypoint.new(1, 1)
})
SPIKES.Enabled = false
SPIKES.Parent = Attachment
local SPECKS = Instance.new("ParticleEmitter")
SPECKS.Name = "SPECKS"
SPECKS.Acceleration = Vector3.new(0, -25, 0)
SPECKS.Brightness = 2
SPECKS.Color = ColorSequence.new(Color3.new(0, 1, 0), Color3.new(0, 1, 0))
SPECKS.Drag = 5
SPECKS.Lifetime = NumberRange.new(0.375, 0.625)
SPECKS.LightEmission = 1
SPECKS.Rate = 100
SPECKS.RotSpeed = NumberRange.new(-45, 45)
SPECKS.Rotation = NumberRange.new(-360, 360)
SPECKS.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.25),
NumberSequenceKeypoint.new(1, 0)
})
SPECKS.Speed = NumberRange.new(25, 50)
SPECKS.SpreadAngle = Vector2.new(45, 45)
SPECKS.Squash = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(1, 1)
})
SPECKS.Texture = "rbxassetid://4509687978"
SPECKS.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 1),
NumberSequenceKeypoint.new(0.25, 0.2),
NumberSequenceKeypoint.new(1, 1)
})
SPECKS.Enabled = false
SPECKS.Parent = Attachment
local GLOW = Instance.new("ParticleEmitter")
GLOW.Name = "GLOW"
GLOW.Acceleration = Vector3.new(0, 5, 0)
GLOW.Color = ColorSequence.new(Color3.new(0, 1, 0), Color3.new(0, 1, 0))
GLOW.Lifetime = NumberRange.new(0.5, 1)
GLOW.LightEmission = 1
GLOW.Rate = 50
GLOW.Rotation = NumberRange.new(-360, 360)
GLOW.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 8),
NumberSequenceKeypoint.new(1, 3)
})
GLOW.Speed = NumberRange.new(10, 25)
GLOW.Texture = "rbxassetid://4509687978"
GLOW.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 1),
NumberSequenceKeypoint.new(0.5, 0.95),
NumberSequenceKeypoint.new(1, 1)
})
GLOW.ZOffset = -1
GLOW.Enabled = false
GLOW.Parent = Attachment
return Attachment
end
local function TriggerAura(HitPart, Color)
local TempAttach = CreateAuraEffect():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
local function CreateThunderEffect()
local Part = Instance.new("Part")
Part.Parent = Workspace
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
local RESIDUE = Instance.new('ParticleEmitter')
RESIDUE.Name = "RESIDUE"
RESIDUE.Acceleration = Vector3.new(0, -25, 0)
RESIDUE.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 105, 170)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 105, 170))
}
RESIDUE.Drag = 2
RESIDUE.Lifetime = NumberRange.new(0.25, 0.5)
RESIDUE.LightEmission = 1
RESIDUE.Orientation = Enum.ParticleOrientation.VelocityParallel
RESIDUE.Rate = 100
RESIDUE.Rotation = NumberRange.new(90, 90)
RESIDUE.Size = NumberSequence.new{
NumberSequenceKeypoint.new(0, 2),
NumberSequenceKeypoint.new(1, 0)
}
RESIDUE.Speed = NumberRange.new(25, 50)
RESIDUE.SpreadAngle = Vector2.new(-90, 90)
RESIDUE.Squash = NumberSequence.new{
NumberSequenceKeypoint.new(0, 1),
NumberSequenceKeypoint.new(1, 0)
}
RESIDUE.Texture = "rbxassetid://4509687978"
RESIDUE.Transparency = NumberSequence.new{
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(0.25, 1),
NumberSequenceKeypoint.new(1, 1)
}
local ELECTRIC = Instance.new('ParticleEmitter')
ELECTRIC.Name = "ELECTRIC"
ELECTRIC.Brightness = 3
ELECTRIC.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 134, 199)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 134, 199))
}
ELECTRIC.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
ELECTRIC.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ELECTRIC.Lifetime = NumberRange.new(0.5, 1)
ELECTRIC.LightEmission = 2
ELECTRIC.Orientation = Enum.ParticleOrientation.FacingCameraWorldUp
ELECTRIC.Rate = 12
ELECTRIC.Size = NumberSequence.new{
NumberSequenceKeypoint.new(0, 25),
NumberSequenceKeypoint.new(1, 0)
}
ELECTRIC.Speed = NumberRange.new(0, 0)
ELECTRIC.SpreadAngle = Vector2.new(-360, 360)
ELECTRIC.Texture = "rbxassetid://10547286472"
ELECTRIC.Transparency = NumberSequence.new{
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(0.25, 1),
NumberSequenceKeypoint.new(1, 1)
}
RESIDUE.Parent = Attachment
RESIDUE.Enabled = true
ELECTRIC.Parent = Attachment
ELECTRIC.Enabled = true
local SMOKE = Instance.new("ParticleEmitter")
SMOKE.Name = "SMOKE"
SMOKE.Acceleration = Vector3.new(0, 5, 1)
SMOKE.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.new(0.196078, 0.196078, 0.196078)),
ColorSequenceKeypoint.new(1, Color3.new(0.196078, 0.196078, 0.196078))
})
SMOKE.Drag = 1
SMOKE.FlipbookFramerate = NumberRange.new(25, 25)
SMOKE.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
SMOKE.LightInfluence = 1
SMOKE.Rate = 10
SMOKE.RotSpeed = NumberRange.new(-15, 15)
SMOKE.Rotation = NumberRange.new(-360, 360)
SMOKE.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 4, 0),
NumberSequenceKeypoint.new(1, 8, 2)
})
SMOKE.Speed = NumberRange.new(1, 1)
SMOKE.Texture = "rbxassetid://8073306083"
SMOKE.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 1, 0),
NumberSequenceKeypoint.new(0.5, 0.75, 0),
NumberSequenceKeypoint.new(1, 1, 0)
})
SMOKE.Parent = Attachment
SMOKE.Enabled = false
return Attachment
end
local function TriggerThunder(HitPart, Color)
local TempAttach = CreateThunderEffect():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
-- Hàm tạo Coom Effect
local function CreateCoomEffect()
local Part = Instance.new("Part")
Part.Parent = Workspace -- Parent vào Workspace
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
local Foam = Instance.new("ParticleEmitter")
Foam.Name = "Foam"
Foam.LightInfluence = 0.5
Foam.Lifetime = NumberRange.new(1, 1)
Foam.SpreadAngle = Vector2.new(360, -360)
Foam.VelocitySpread = 360
Foam.Squash = NumberSequence.new(1)
Foam.Speed = NumberRange.new(20, 20)
Foam.Brightness = 2.5
Foam.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.1016692, 0.6508875, 0.6508875), NumberSequenceKeypoint.new(0.6494689, 1.4201183, 0.4127519), NumberSequenceKeypoint.new(1, 0)})
Foam.Enabled = false
Foam.Acceleration = Vector3.new(0, -66.04029846191406, 0)
Foam.Rate = 100
Foam.Texture = "rbxassetid://8297030850"
Foam.Rotation = NumberRange.new(-90, -90)
Foam.Orientation = Enum.ParticleOrientation.VelocityParallel
Foam.Parent = Attachment
return Attachment
end
-- Trigger Atomic Slash
local function TriggerAtomicSlash(HitPart, Color)
local TempAttach = CreateAtomicSlashEffect():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
-- Trigger Coom
local function TriggerCoom(HitPart, Color)
local TempAttach = CreateCoomEffect():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
local foam = TempAttach:FindFirstChild("Foam")
if foam then
foam.Color = ColorSequence.new(Color or Color3.fromRGB(255, 255, 255))
foam.Enabled = true
task.delay(2, function()
foam.Enabled = false
TempAttach:Destroy()
end)
end
end
local function CreateCosmicExplosionEffect()
local Part = Instance.new("Part")
Part.Parent = Workspace
local Attachment = Instance.new("Attachment")
Attachment.Name = "Attachment"
Attachment.Parent = Part
local Glow = Instance.new("ParticleEmitter")
Glow.Name = "Glow"
Glow.Lifetime = NumberRange.new(0.16, 0.16)
Glow.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1421725, 0.6182796), NumberSequenceKeypoint.new(1, 1)})
Glow.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Glow.Speed = NumberRange.new(0, 0)
Glow.Brightness = 5
Glow.Size = NumberSequence.new(9.1873131, 16.5032349)
Glow.Enabled = false
Glow.ZOffset = -0.0565939
Glow.Rate = 50
Glow.Texture = "rbxassetid://8708637750"
Glow.Parent = Attachment
local Effect = Instance.new("ParticleEmitter")
Effect.Name = "Effect"
Effect.Lifetime = NumberRange.new(0.4, 0.7)
Effect.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid4x4
Effect.SpreadAngle = Vector2.new(360, -360)
Effect.LockedToPart = true
Effect.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1070999, 0.19375), NumberSequenceKeypoint.new(0.7761194, 0.88125), NumberSequenceKeypoint.new(1, 1)})
Effect.LightEmission = 1
Effect.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Effect.Drag = 1
Effect.VelocitySpread = 360
Effect.Speed = NumberRange.new(0.0036749, 0.0036749)
Effect.Brightness = 2.0999999
Effect.Size = NumberSequence.new(6.9680691, 9.9213123)
Effect.Enabled = false
Effect.ZOffset = 0.4777403
Effect.Rate = 50
Effect.Texture = "rbxassetid://9484012464"
Effect.RotSpeed = NumberRange.new(-150, -150)
Effect.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
Effect.Rotation = NumberRange.new(50, 50)
Effect.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Effect.Parent = Attachment
local Gradient1 = Instance.new("ParticleEmitter")
Gradient1.Name = "Gradient1"
Gradient1.Lifetime = NumberRange.new(0.3, 0.3)
Gradient1.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.15, 0.3), NumberSequenceKeypoint.new(1, 1)})
Gradient1.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Gradient1.Speed = NumberRange.new(0, 0)
Gradient1.Brightness = 6
Gradient1.Size = NumberSequence.new(0, 11.6261358)
Gradient1.Enabled = false
Gradient1.ZOffset = 0.9187313
Gradient1.Rate = 50
Gradient1.Texture = "rbxassetid://8196169974"
Gradient1.Parent = Attachment
local Shards = Instance.new("ParticleEmitter")
Shards.Name = "Shards"
Shards.Lifetime = NumberRange.new(0.19, 0.7)
Shards.SpreadAngle = Vector2.new(-90, 90)
Shards.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
Shards.Drag = 10
Shards.VelocitySpread = -90
Shards.Squash = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5705521, 0.4125001), NumberSequenceKeypoint.new(1, -0.9375)})
Shards.Speed = NumberRange.new(97.7530136, 146.9970093)
Shards.Brightness = 4
Shards.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.284774, 1.2389833, 0.1534118), NumberSequenceKeypoint.new(1, 0)})
Shards.Enabled = false
Shards.Acceleration = Vector3.new(0, -56.961341857910156, 0)
Shards.ZOffset = 0.5705321
Shards.Rate = 50
Shards.Texture = "rbxassetid://8030734851"
Shards.Rotation = NumberRange.new(90, 90)
Shards.Orientation = Enum.ParticleOrientation.VelocityParallel
Shards.Parent = Attachment
local Crescents = Instance.new("ParticleEmitter")
Crescents.Name = "Crescents"
Crescents.Lifetime = NumberRange.new(0.19, 0.38)
Crescents.SpreadAngle = Vector2.new(-360, 360)
Crescents.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1932907, 0), NumberSequenceKeypoint.new(0.778754, 0), NumberSequenceKeypoint.new(1, 1)})
Crescents.LightEmission = 10
Crescents.Color = ColorSequence.new(Color3.fromRGB(160, 96, 255))
Crescents.VelocitySpread = -360
Crescents.Speed = NumberRange.new(0.0826858, 0.0826858)
Crescents.Brightness = 4
Crescents.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.398774, 8.8026266, 2.2834616), NumberSequenceKeypoint.new(1, 11.477972, 1.860431)})
Crescents.Enabled = false
Crescents.ZOffset = 0.4542207
Crescents.Rate = 50
Crescents.Texture = "rbxassetid://12509373457"
Crescents.RotSpeed = NumberRange.new(800, 1000)
Crescents.Rotation = NumberRange.new(-360, 360)
Crescents.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Crescents.Parent = Attachment
local ParticleEmitter2 = Instance.new("ParticleEmitter")
ParticleEmitter2.Name = "ParticleEmitter2"
ParticleEmitter2.FlipbookFramerate = NumberRange.new(20, 20)
ParticleEmitter2.Lifetime = NumberRange.new(0.19, 0.38)
ParticleEmitter2.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid4x4
ParticleEmitter2.SpreadAngle = Vector2.new(360, 360)
ParticleEmitter2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.209842, 0.5), NumberSequenceKeypoint.new(0.503842, 0.263333), NumberSequenceKeypoint.new(0.799842, 0.5), NumberSequenceKeypoint.new(1, 1)})
ParticleEmitter2.LightEmission = 1
ParticleEmitter2.Color = ColorSequence.new(Color3.fromRGB(173, 82, 252))
ParticleEmitter2.VelocitySpread = 360
ParticleEmitter2.Speed = NumberRange.new(0.0161231, 0.0161231)
ParticleEmitter2.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 4.3125), NumberSequenceKeypoint.new(0.3985056, 7.9375), NumberSequenceKeypoint.new(1, 10)})
ParticleEmitter2.Enabled = false
ParticleEmitter2.ZOffset = 0.15
ParticleEmitter2.Rate = 100
ParticleEmitter2.Texture = "http://www.roblox.com/asset/?id=12394566430"
ParticleEmitter2.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ParticleEmitter2.Rotation = NumberRange.new(39, 999)
ParticleEmitter2.Orientation = Enum.ParticleOrientation.VelocityParallel
ParticleEmitter2.Parent = Attachment
Part.Parent = workspace
return Attachment
end
local function TriggerCosmicExplosion(HitPart, Color)
local TempAttach = CreateCosmicExplosionEffect():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
local function electric()
local Part = Instance.new("Part")
Part.Parent = Workspace
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
local ELECTRIC1 = Instance.new('ParticleEmitter')
ELECTRIC1.Name = "ELECTRIC1"
ELECTRIC1.Brightness = 5
ELECTRIC1.Color = ColorSequence.new(Color3.fromRGB(0, 134, 199))
ELECTRIC1.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
ELECTRIC1.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ELECTRIC1.Lifetime = NumberRange.new(1)
ELECTRIC1.LightEmission = 1
ELECTRIC1.Rate = 5
ELECTRIC1.Size = NumberSequence.new(2)
ELECTRIC1.Speed = NumberRange.new(0)
ELECTRIC1.SpreadAngle = Vector2.new(-360, 360)
ELECTRIC1.Texture = "http://www.roblox.com/asset/?id=12390063093"
ELECTRIC1.Transparency = NumberSequence.new(0, 1)
ELECTRIC1.Enabled = false
ELECTRIC1.Parent = Attachment
local ELECTRIC2 = Instance.new('ParticleEmitter')
ELECTRIC2.Name = "ELECTRIC2"
ELECTRIC2.Color = ColorSequence.new(Color3.fromRGB(0, 134, 199))
ELECTRIC2.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
ELECTRIC2.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ELECTRIC2.Lifetime = NumberRange.new(0.25, 0.5)
ELECTRIC2.LightEmission = 1
ELECTRIC2.Rate = 25
ELECTRIC2.Rotation = NumberRange.new(-360, 360)
ELECTRIC2.Size = NumberSequence.new(2)
ELECTRIC2.Speed = NumberRange.new(0)
ELECTRIC2.SpreadAngle = Vector2.new(-360, 360)
ELECTRIC2.Texture = "http://www.roblox.com/asset/?id=12390081661"
ELECTRIC2.Transparency = NumberSequence.new(0, 1)
ELECTRIC2.Enabled = false
ELECTRIC2.Parent = Attachment
local ELECTRIC3 = Instance.new('ParticleEmitter')
ELECTRIC3.Name = "ELECTRIC3"
ELECTRIC3.Color = ColorSequence.new(Color3.fromRGB(0, 134, 199))
ELECTRIC3.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
ELECTRIC3.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ELECTRIC3.Lifetime = NumberRange.new(0.25, 0.5)
ELECTRIC3.LightEmission = 1
ELECTRIC3.Rate = 25
ELECTRIC3.Rotation = NumberRange.new(-360, 360)
ELECTRIC3.Size = NumberSequence.new(2)
ELECTRIC3.Speed = NumberRange.new(0)
ELECTRIC3.SpreadAngle = Vector2.new(-360, 360)
ELECTRIC3.Texture = "http://www.roblox.com/asset/?id=12390081661"
ELECTRIC3.Transparency = NumberSequence.new(0, 1)
ELECTRIC3.Enabled = false
ELECTRIC3.Parent = Attachment
local Wave1 = Instance.new('ParticleEmitter')
Wave1.Name = "Wave1"
Wave1.Brightness = 10
Wave1.Color = ColorSequence.new(Color3.fromRGB(0, 170, 255))
Wave1.Lifetime = NumberRange.new(1)
Wave1.LightEmission = 0.4
Wave1.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Wave1.Rate = 10
Wave1.RotSpeed = NumberRange.new(200, 400)
Wave1.Rotation = NumberRange.new(-180, 180)
Wave1.Size = NumberSequence.new(3)
Wave1.Speed = NumberRange.new(1, 3)
Wave1.SpreadAngle = Vector2.new(10, -10)
Wave1.Texture = "rbxassetid://8047533775"
Wave1.Transparency = NumberSequence.new(0, 1)
Wave1.Enabled = false
Wave1.Parent = Attachment
local ELECTRIC4 = Instance.new('ParticleEmitter')
ELECTRIC4.Name = "ELECTRIC4"
ELECTRIC4.Color = ColorSequence.new(Color3.fromRGB(0, 134, 199))
ELECTRIC4.FlipbookLayout = Enum.ParticleFlipbookLayout.Grid8x8
ELECTRIC4.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
ELECTRIC4.Lifetime = NumberRange.new(0.25, 0.5)
ELECTRIC4.LightEmission = 1
ELECTRIC4.Rate = 25
ELECTRIC4.Rotation = NumberRange.new(-360, 360)
ELECTRIC4.Size = NumberSequence.new(2)
ELECTRIC4.Speed = NumberRange.new(0)
ELECTRIC4.SpreadAngle = Vector2.new(-360, 360)
ELECTRIC4.Texture = "http://www.roblox.com/asset/?id=12390081661"
ELECTRIC4.Transparency = NumberSequence.new(0, 1)
ELECTRIC4.Enabled = false
ELECTRIC4.Parent = Attachment
return Attachment
end
local function triggerelectric(HitPart, Color)
local TempAttach = electric():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
local function slash()
local Part = Instance.new("Part")
Part.Parent = Workspace
local Attachment = Instance.new("Attachment")
Attachment.Parent = Part
local Crescents = Instance.new("ParticleEmitter")
Crescents.Name = "Crescents"
Crescents.Lifetime = NumberRange.new(0.19, 0.38)
Crescents.SpreadAngle = Vector2.new(-360, 360)
Crescents.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.1932907, 0), NumberSequenceKeypoint.new(0.778754, 0), NumberSequenceKeypoint.new(1, 1)})
Crescents.LightEmission = 10
Crescents.Color = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromRGB(160, 96, 255)), ColorSequenceKeypoint.new(0.3160622, Color3.fromRGB(160, 96, 255)), ColorSequenceKeypoint.new(0.5146805, Color3.fromRGB(154, 82, 255)), ColorSequenceKeypoint.new(1, Color3.fromRGB(160, 96, 255))})
Crescents.VelocitySpread = -360
Crescents.Speed = NumberRange.new(0.0826858, 0.0826858)
Crescents.Brightness = 4
Crescents.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.398774, 8.8026266, 2.2834616), NumberSequenceKeypoint.new(1, 11.477972, 1.860431)})
Crescents.Enabled = false
Crescents.ZOffset = 0.4542207
Crescents.Rate = 50
Crescents.Texture = "rbxassetid://12509373457"
Crescents.RotSpeed = NumberRange.new(800, 1000)
Crescents.Rotation = NumberRange.new(-360, 360)
Crescents.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
Crescents.Parent = Attachment
Part.Parent = workspace
return Attachment
end
local function triggerslash(HitPart, Color)
local TempAttach = slash():Clone()
TempAttach.Parent = HitPart or Workspace.CurrentCamera
for _, emitter in ipairs(TempAttach:GetChildren()) do
if emitter:IsA("ParticleEmitter") then
emitter.Color = ColorSequence.new(Color or Color3.fromRGB(160, 96, 255))
emitter.Enabled = true
end
end
task.delay(2, function()
for _, emitter in ipairs(TempAttach:GetChildren()) do
emitter.Enabled = false
end
TempAttach:Destroy()
end)
end
-- Trigger Hit Effect tổng quát (thay thế hoặc thêm vào script hiện tại, gần HitChams)
local function TriggerHitEffect(Player)
if not matchacc.HitEffects.HitEffect.Enabled then return end
if Player and Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then
local HitPart = Player.Character.HumanoidRootPart -- Hoặc matchacc.TargetAim.HitPart nếu có
local EffectType = matchacc.HitEffects.HitEffect.Type
local EffectColor = matchacc.HitEffects.HitEffect.Color
if EffectType == "Atomic Slash" then
TriggerAtomicSlash(HitPart, EffectColor)
end
if EffectType == "Cosmic Explosion" then
TriggerCosmicExplosion(HitPart, EffectColor)
end
if EffectType == "Coom" then
TriggerCoom(HitPart, EffectColor)
end
if EffectType == "Thunder" then
TriggerThunder(HitPart, EffectColor)
end
if EffectType == "Slash" then
triggerslash(HitPart, EffectColor)
end
if EffectType == "Aura" then
TriggerAura(HitPart, EffectColor)
end
if EffectType == "Electric" then
triggerelectric(HitPart, EffectColor)
end
end
end
local TweenService = game:GetService("TweenService")
local RaycastParams = RaycastParams.new()
RaycastParams.FilterType = Enum.RaycastFilterType.Blacklist
RaycastParams.IgnoreWater = true
-- Settings
local font = Enum.Font.SourceSansBold
local baseSize = 40
local distance = 10000
local animationDuration = 3
local fadeDuration = 1
local maxOffset = 20
local isDamageNumbersEnabled = false
local damageColor = Color3.fromRGB(255, 255, 255)
-- Previous health of the nearest player
local previousHealth = {}
-- Function to check if a player is behind a wall
local function isPlayerVisible(player)
if not player.Character or not player.Character:FindFirstChild("Head") then return false end
local head = player.Character.Head
local origin = Camera.CFrame.Position
local direction = (head.Position - origin).Unit * (head.Position - origin).Magnitude
RaycastParams.FilterDescendantsInstances = {Players.LocalPlayer.Character}
local result = workspace:Raycast(origin, direction, RaycastParams)
return not result or result.Instance:IsDescendantOf(player.Character)
end
-- Function to get the player nearest to the cursor with visibility check
local function getNearestToCursor()
local mouseLocation = UserInputService:GetMouseLocation()
local nearestPlayer
local shortestDistance = math.huge
for _, player in ipairs(Players:GetPlayers()) do
if player ~= Players.LocalPlayer and player.Character and player.Character:FindFirstChild("Head") then
local head = player.Character.Head
local screenPosition, onScreen = Camera:WorldToViewportPoint(head.Position)
if onScreen then
local distanceToCursor = (Vector2.new(screenPosition.X, screenPosition.Y) - mouseLocation).Magnitude
if distanceToCursor < shortestDistance then
shortestDistance = distanceToCursor
nearestPlayer = player
end
end
end
end
return nearestPlayer
end
-- Function to create damage number display
local function createDamageDisplay(player, damageAmount)
if not isDamageNumbersEnabled then return end
local head = player.Character and player.Character:FindFirstChild("Head")
if head then
local damageContainer = head:FindFirstChild("DamageContainer")
if not damageContainer then
damageContainer = Instance.new("BillboardGui")
damageContainer.Name = "DamageContainer"
damageContainer.Parent = head
damageContainer.Adornee = head
damageContainer.Size = UDim2.new(0, 100, 0, 50)
damageContainer.StudsOffset = Vector3.new(0, 2, 0)
damageContainer.AlwaysOnTop = true
damageContainer.MaxDistance = distance
damageContainer.Enabled = true
end
-- Create the new damage number label
local textLabel = Instance.new("TextLabel")
textLabel.Parent = damageContainer
textLabel.Text = tostring(damageAmount)
textLabel.TextColor3 = damageColor
textLabel.TextSize = baseSize + (damageAmount / 10) -- Scale size based on damage
textLabel.Font = font
textLabel.BackgroundTransparency = 1
textLabel.Size = UDim2.new(1, 0, 0, baseSize)
textLabel.TextStrokeTransparency = 0.4
textLabel.Position = UDim2.new(0.5, -50 + math.random(-maxOffset, maxOffset), 0, math.random(-maxOffset, maxOffset)) -- Random offset
-- Target position for the damage number to slowly move upwards
local targetPosition = UDim2.new(0.5, -50, 0, -100) -- Final position for all damage numbers
-- Create the upward movement tween
local moveUpTween = TweenService:Create(
textLabel,
TweenInfo.new(animationDuration, Enum.EasingStyle.Sine, Enum.EasingDirection.Out),
{Position = targetPosition}
)
-- Create the fade-out tween
local fadeOutTween = TweenService:Create(
textLabel,
TweenInfo.new(fadeDuration, Enum.EasingStyle.Sine, Enum.EasingDirection.Out),
{TextTransparency = 1, TextStrokeTransparency = 1} -- Fade both text and stroke
)
-- Play the move-up tween
moveUpTween:Play()
-- Once the move-up animation is completed, start fading out
moveUpTween.Completed:Connect(function()
fadeOutTween:Play()
-- Destroy the label after the fade-out is complete
fadeOutTween.Completed:Connect(function()
textLabel:Destroy()
end)
end)
end
end
-- Function to check and display damage numbers for the nearest player
local function checkNearestPlayerDamage()
local nearestPlayer = getNearestToCursor()
if nearestPlayer and nearestPlayer.Character and nearestPlayer.Character:FindFirstChildOfClass("Humanoid") then
local humanoid = nearestPlayer.Character:FindFirstChildOfClass("Humanoid")
local currentHealth = humanoid.Health
-- Get the previous health of the player, or set it to their current health if not tracked
local prevHealth = previousHealth[nearestPlayer.UserId] or currentHealth
if currentHealth < prevHealth then
createDamageDisplay(nearestPlayer, math.floor(prevHealth - currentHealth))
end
-- Update the player's previous health
previousHealth[nearestPlayer.UserId] = currentHealth
end
end
-- Run every frame to check the nearest player's health
RunService.RenderStepped:Connect(checkNearestPlayerDamage)
HitEffectsGroup:AddToggle('DamageNumbersEnabled', {
Text = 'Damage Numbers',
Default = false,
Callback = function(Value)
isDamageNumbersEnabled = Value
end
}):AddColorPicker('DamageColor', {
Default = Color3.fromRGB(255, 255, 255),
Title = 'Damage Color',
Callback = function(Value)
damageColor = Value
end
})
HitEffectsGroup:AddToggle('HitNotifications', {
Text = 'Hit Notifications',
Default = false,
Callback = function(Value)
matchacc.HitEffects.HitNotifications = Value
end
})
HitEffectsGroup:AddSlider('NotifyTime', {
Text = 'Notify Time',
Default = 3,
Min = 1,
Max = 10,
Rounding = 0,
Callback = function(Value)
matchacc.HitEffects.HitNotificationsTime = Value
end
})
HitEffectsGroup:AddToggle('HitSounds', {
Text = 'Hit Sounds',
Default = false,
Callback = function(Value)
matchacc.HitEffects.HitSounds = Value
end
})
HitEffectsGroup:AddDropdown('HitSoundSelect', {
Values = {"Bubble", "Lazer", "Pick", "Pop", "Rust", "Sans", "Fart", "Big", "Vine", "UwU", "Bruh", "Skeet", "Neverlose", "Fatality", "Bonk", "Minecraft", "Gamesense", "RIFK7", "Bamboo", "Crowbar", "Weeb", "Beep", "Bambi", "Stone", "Old Fatality", "Click", "Ding", "Snow", "Laser", "Mario", "Steve", "Call of Duty", "Bat", "TF2 Critical", "Saber", "Baimware", "Osu", "TF2", "Slime", "Among Us", "One"},
Default = "Neverlose",
Multi = false,
Text = 'Hit Sound',
Callback = function(Value)
matchacc.HitEffects.HitSoundID = hitsounds[Value]
end
})
HitEffectsGroup:AddSlider('HitSoundVolume', {
Text = 'Volume',
Default = 5,
Min = 1,
Max = 10,
Rounding = 0,
Callback = function(Value)
matchacc.HitEffects.HitSoundVolume = Value
end
})
ChecksTab:AddToggle('CheckWall', {
Text = 'Check Wall',
Default = false,
Callback = function(Value)
matchacc.Checks.Wall = Value
end
})
ChecksTab:AddToggle('CheckForcefield', {
Text = 'Check Forcefield',
Default = false,
Callback = function(Value)
matchacc.Checks.Forcefield = Value
end
})
ChecksTab:AddToggle('CheckAlive', {
Text = 'Check Alive',
Default = false,
Callback = function(Value)
matchacc.Checks.Alive = Value
end
})
ChecksTab:AddToggle('CheckTeam', {
Text = 'Check Team',
Default = false,
Callback = function(Value)
matchacc.Checks.Team = Value
end
})
ChecksTab:AddToggle('FOVCircleToggle', {
Text = 'FOV Circle',
Default = false,
Callback = function(Value)
FOVCircleEnabled = Value
InnerCircle.Visible = Value
FillCircle.Visible = Value and GradientFillEnabled
end
}):AddColorPicker('FOVInnerColorPicker', {
Default = Color3.fromRGB(255, 255, 255),
Title = 'Inner Circle Color',
Callback = function(Value)
FOVInnerColor = Value
InnerCircle.Color = Value
end
})
ChecksTab:AddSlider('FOVSizeSlider', {
Text = 'FOV Size',
Default = 300,
Min = 100,
Max = 1000,
Rounding = 0,
Callback = function(Value)
FOVCircleSize = Value
InnerCircle.Radius = Value
FillCircle.Radius = Value
end
})
ChecksTab:AddToggle('GradientFillToggle', {
Text = 'Gradient Fill FOV Circle',
Default = false,
Callback = function(Value)
GradientFillEnabled = Value
FillCircle.Visible = FOVCircleEnabled and Value
end
}):AddColorPicker('GradientColor1Picker', {
Default = Color3.fromRGB(255, 255, 255),
Title = 'Gradient Color 1',
Callback = function(Value)
GradientColor1 = Value
end
}):AddColorPicker('GradientColor2Picker', {
Default = Color3.fromRGB(0, 0, 0),
Title = 'Gradient Color 2',
Callback = function(Value)
GradientColor2 = Value
end
})
ChecksTab:AddSlider('FillTransparencySlider', {
Text = 'Fill Transparency',
Default = 0.5,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
FillTransparency = Value
FillCircle.Transparency = Value
end
})
RunService.RenderStepped:Connect(function()
if FOVCircleEnabled then
local pos
if UserInputService.TouchEnabled then
-- Mobile: tâm màn hình
pos = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
else
-- PC: vị trí chuột
pos = UserInputService:GetMouseLocation()
end
InnerCircle.Position = pos
FillCircle.Position = pos
if GradientFillEnabled then
-- Simulate gradient xoay bằng lerp color theo sin wave (xoay màu giữa 2 color)
local t = math.sin(tick() * 2) * 0.5 + 0.5
local r = GradientColor1.R + (GradientColor2.R - GradientColor1.R) * t
local g = GradientColor1.G + (GradientColor2.G - GradientColor1.G) * t
local b = GradientColor1.B + (GradientColor2.B - GradientColor1.B) * t
FillCircle.Color = Color3.new(r, g, b)
end
end
end)
OptionsTab:AddInput('PredictionInput', {
Default = '0.0000',
Numeric = true,
Finished = true,
Text = 'Prediction',
Tooltip = 'Manual prediction value',
Placeholder = '0.0000',
Callback = function(Value)
matchacc.TargetAim.Prediction = tonumber(Value) or 0
end
})
OptionsTab:AddToggle('AutoPredictToggle', {
Text = 'Auto Prediction',
Default = false,
Callback = function(Value)
matchacc.TargetAim.AutoPredict = Value
end
})
OptionsTab:AddDropdown('PredictModeDropdown', {
Values = {'Calculate', 'Ping Sets' },
Default = 0,
Multi = false,
Text = 'Prediction Mode',
Callback = function(Value)
matchacc.TargetAim.PredictMode = Value
end
})
OptionsTab:AddDropdown('HitPartDropdown', {
Values = { 'Head', 'HumanoidRootPart', 'UpperTorso', 'LowerTorso' },
Default = 'Head',
Multi = false,
Text = 'Hit Part',
Callback = function(Value)
matchacc.TargetAim.HitPart = Value
end
})
OptionsTab:AddInput('OffsetInput', {
Default = '0',
Numeric = true,
Finished = true,
Text = 'Y Offset',
Placeholder = '0',
Callback = function(Value)
matchacc.TargetAim.Offset = tonumber(Value) or 0
end
})
OptionsTab:AddInput('JumpOffsetInput', {
Default = '0',
Numeric = true,
Finished = true,
Text = 'Jump Offset',
Placeholder = '0',
Callback = function(Value)
matchacc.TargetAim.JumpOffset = tonumber(Value) or 0
end
})
OptionsTab:AddToggle('AirPartToggle', {
Text = 'Airshot Part',
Default = false,
Callback = function(Value)
matchacc.TargetAim.AirPartEnabled = Value
end
})
OptionsTab:AddDropdown('AirPartDropdown', {
Values = { 'Head', 'HumanoidRootPart', 'UpperTorso', 'LowerTorso' },
Default = 'Head',
Multi = false,
Text = 'Airshot Part',
Callback = function(Value)
matchacc.TargetAim.AirPart = Value
end
})
OptionsTab:AddToggle('ResolverToggle', {
Text = 'Resolver',
Default = false,
Callback = function(Value)
matchacc.TargetAim.Resolver = Value
end
})
local KillAuraGroup = Tabs.Main:AddRightGroupbox('Kill Aura')
KillAuraGroup:AddToggle('KillAuraEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(Value)
matchacc.KillAura.Enabled = Value
if not Value then
matchacc.KillAura.Active = false
ka_tracer.Transparency = 1
end
end
}):AddKeyPicker('KillAuraKey', {
Default = 'K',
Text = 'Kill Aura',
Mode = 'Toggle',
Callback = function(Value)
if matchacc.KillAura.Enabled then
matchacc.KillAura.Active = Value
end
end
})
KillAuraGroup:AddSlider('KillAuraRange', {
Text = 'Range',
Default = 250,
Min = 10,
Max = 250,
Rounding = 0,
Callback = function(Value)
matchacc.KillAura.Range = Value
end
})
KillAuraGroup:AddToggle('KillAuraSilent', {
Text = 'Silent',
Default = false,
Callback = function(Value)
matchacc.KillAura.Silent = Value
end
})
KillAuraGroup:AddToggle('KillAuraVisualize', {
Text = 'Visualize',
Default = false,
Callback = function(Value)
matchacc.KillAura.Visualize = Value
end
}):AddColorPicker('KAVisColor', {
Default = Color3.new(1, 1, 1),
Title = 'Visualizer Color',
Callback = function(Value)
ka_tracer.Color = Value
end
})
KillAuraGroup:AddToggle('StompAura', {
Text = 'Stomp Aura',
Default = false,
Callback = function(Value)
matchacc.KillAura.StompAura = Value
end
})
local GunModsGroup = Tabs.Main:AddRightGroupbox('Gun Mods')
matchacc.EquipAllGuns = {
Enabled = false,
}
-- Globals (sau các global vars khác)
local EquipAllConnection = nil
local lastEquipTime = 0
local EquipAllConnection
local EquipAddedConnection
-- Function equipAllGuns đã sửa
local function equipAllGuns()
local char = localPlayer.Character
local backpack = localPlayer.Backpack
if not char or not backpack then return end
for _, tool in ipairs(backpack:GetChildren()) do
if tool:IsA("Tool") and tool:FindFirstChild("Ammo") then
tool.Parent = char
end
end
end
local function setupEquipAll()
local char = localPlayer.Character
local backpack = localPlayer.Backpack
if not char or not backpack or not matchacc.EquipAllGuns.Enabled then return end
equipAllGuns()
if EquipAllConnection then
EquipAllConnection:Disconnect()
EquipAllConnection = nil
end
EquipAllConnection = char.ChildRemoved:Connect(function(child)
if matchacc.EquipAllGuns.Enabled and child:IsA("Tool") and child:FindFirstChild("Ammo") and (tick() - lastEquipTime) >= 0.5 then
lastEquipTime = tick()
task.spawn(function()
task.wait(0.1)
equipAllGuns()
end)
end
end)
if EquipAddedConnection then
EquipAddedConnection:Disconnect()
EquipAddedConnection = nil
end
EquipAddedConnection = backpack.ChildAdded:Connect(function(child)
if matchacc.EquipAllGuns.Enabled and child:IsA("Tool") and child:FindFirstChild("Ammo") then
child.Parent = char
end
end)
end
-- Character respawn
localPlayer.CharacterAdded:Connect(function()
task.wait(5)
if matchacc.EquipAllGuns.Enabled then
setupEquipAll()
end
end)
-- Thêm vào GunModsGroup (sau Wallbang)
GunModsGroup:AddToggle('EquipAllGunsEnabled', {
Text = 'Equip All Guns',
Default = false,
Callback = function(Value)
matchacc.EquipAllGuns.Enabled = Value
if Value then
setupEquipAll()
else
if EquipAllConnection then
EquipAllConnection:Disconnect()
EquipAllConnection = nil
end
end
end
}):AddKeyPicker('EquipAllGunsKey', {
Default = 'none',
SyncToggleState = true,
Mode = 'Toggle',
Text = 'Equip All Guns'
})
GunModsGroup:AddToggle('RapidFireEnabled', {
Text = 'Rapid Fire',
Default = false,
Callback = function(Value)
matchacc.RapidFire.Enabled = Value
if not getnamecallmethod then
local iter, tbl, index = ipairs(game:GetDescendants())
while true do
local instance
index, instance = iter(tbl, index)
if index == nil then
break
end
if instance.Name == "ShootingCooldown" and instance:IsA("ValueBase") then
instance.Value = 0
end
end
game.DescendantAdded:Connect(function(newDescendant)
if newDescendant.Name == "ShootingCooldown" and newDescendant:IsA("ValueBase") then
newDescendant.Value = 0
end
end)
local iter2, tbl2, index2 = ipairs(game:GetDescendants())
while true do
local instance2
index2, instance2 = iter2(tbl2, index2)
if index2 == nil then
break
end
if instance2.Name == "ToleranceCooldown" and instance2:IsA("ValueBase") then
instance2.Value = 0
end
end
game.DescendantAdded:Connect(function(newDescendant2)
if newDescendant2.Name == "ToleranceCooldown" and newDescendant2:IsA("ValueBase") then
newDescendant2.Value = 0
end
end)
wait(2)
game.Players.LocalPlayer.Character.Humanoid.Health = 0
end
end
})
GunModsGroup:AddToggle('WallbangEnabled', {
Text = 'Wallbang',
Default = false,
Callback = function(Value)
matchacc.Wallbang.Enabled = Value
if getnamecallmethod then
local Handler = game:FindService("ReplicatedStorage").MainModule
local Module = require(Handler)
if Value == true and workspace:FindFirstChild("Vehicles") then
Module.Ignored = {workspace:WaitForChild("Vehicles"), workspace:WaitForChild("MAP"), workspace:WaitForChild("Ignored")}
else
if workspace:FindFirstChild("Vehicles") then
Module.Ignored = {workspace:WaitForChild("Vehicles"), workspace:WaitForChild("Ignored")}
end
end
else
Library:Notify("Your executor does not support this feature.", 3)
end
end
})
if isDaHood then
getgenv().RemoveShootAnimationsEnabled = false
getgenv().ShootAnimationIds = {
["rbxassetid://2807049953"] = true,
["rbxassetid://2809413000"] = true,
["rbxassetid://2809419094"] = true,
["rbxassetid://507768375"] = true,
["rbxassetid://507755388"] = true,
["rbxassetid://2807049953"] = true,
["rbxassetid://2877910736"] = true
}
getgenv().StopAnimationTracks = function(character)
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
for _, track in ipairs(humanoid:GetPlayingAnimationTracks()) do
if getgenv().ShootAnimationIds[track.Animation.AnimationId] then
track:Stop()
end
end
end
end
getgenv().MonitorCharacter = function(character)
character.DescendantAdded:Connect(function(descendant)
if descendant:IsA("AnimationTrack") and getgenv().RemoveShootAnimationsEnabled then
if getgenv().ShootAnimationIds[descendant.Animation.AnimationId] then
descendant:Stop()
end
end
end)
end
getgenv().MonitorPlayers = function()
for _, player in ipairs(game:GetService("Players"):GetPlayers()) do
local character = player.Character or player.CharacterAdded:Wait()
getgenv().StopAnimationTracks(character)
getgenv().MonitorCharacter(character)
player.CharacterAdded:Connect(function(newCharacter)
getgenv().StopAnimationTracks(newCharacter)
getgenv().MonitorCharacter(newCharacter)
end)
end
game:GetService("Players").PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
getgenv().StopAnimationTracks(character)
getgenv().MonitorCharacter(character)
end)
end)
end
getgenv().MonitorAnimations = function()
game:GetService("RunService").RenderStepped:Connect(function()
if getgenv().RemoveShootAnimationsEnabled then
for _, player in ipairs(game:GetService("Players"):GetPlayers()) do
local character = player.Character
if character then
getgenv().StopAnimationTracks(character)
end
end
end
end)
end
GunModsGroup:AddToggle("AntiflingToggle", {
Text = "remove shoot animations",
Default = false,
Callback = function(enabled)
getgenv().RemoveShootAnimationsEnabled = enabled
if enabled then
getgenv().MonitorPlayers()
task.spawn(getgenv().MonitorAnimations)
end
end
})
end
local HitboxGroup = Tabs.Main:AddRightGroupbox('Hitbox Expander')
HitboxGroup:AddToggle('HitboxEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(Value)
matchacc.HitboxExpander.Enabled = Value
end
})
HitboxGroup:AddToggle('HitboxVisualize', {
Text = 'Visualize',
Default = false,
Callback = function(Value)
matchacc.HitboxExpander.Visualize = Value
end
}):AddColorPicker('HitboxColor', {
Default = matchacc.HitboxExpander.Color,
Title = 'Fill Color',
Callback = function(Value)
matchacc.HitboxExpander.Color = Value
end
}):AddColorPicker('HitboxOutline', {
Default = matchacc.HitboxExpander.OutlineColor,
Title = 'Outline Color',
Callback = function(Value)
matchacc.HitboxExpander.OutlineColor = Value
end
})
HitboxGroup:AddSlider('HitboxFillTrans', {
Text = 'Fill Transparency',
Default = 0.5,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
matchacc.HitboxExpander.FillTransparency = Value
end
})
HitboxGroup:AddSlider('HitboxOutlineTrans', {
Text = 'Outline Transparency',
Default = 0.3,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
matchacc.HitboxExpander.OutlineTransparency = Value
end
})
HitboxGroup:AddSlider('HitboxSize', {
Text = 'Size',
Default = 15,
Min = 1,
Max = 37,
Rounding = 0,
Callback = function(Value)
matchacc.HitboxExpander.Size = Value
end
})
getgenv().Matcha.Legit = {
Aimlock = false,
HitPart = "Head",
Smoothing = false,
SmoothingAmount = 0.1,
SilentAim = false, -- Mới: Toggle cho Silent Aim
SilentAimMethod = "Rival", -- Mới: Default method
Prediction = 0.05,
JumpOffset = 0,
Offset = true,
SilentFOV = 100,
SilentFOVEnabled = false,
Resolver = false,
Triggerbot = {
Enabled = false,
FOV = 20,
Delay = 0, -- ms
OnlyTarget = false,
CheckKO = false,
CheckKnife = false,
CheckGrab = false,
CheckTeam = false,
CheckFriend = false,
}
}
getgenv().Matcha.Legit.Triggerbot.HitParts = {
"Head", "HumanoidRootPart", "UpperTorso", "LowerTorso",
"LeftUpperArm", "RightUpperArm", "LeftLowerArm", "RightLowerArm",
"LeftHand", "RightHand", "LeftUpperLeg", "RightUpperLeg",
"LeftLowerLeg", "RightLowerLeg", "LeftFoot", "RightFoot",
"Torso", "Left Arm", "Right Arm", "Left Leg", "Right Leg"
}
-- Danh sách part được chọn (mặc định chọn hết)
getgenv().Matcha.Legit.Triggerbot.SelectedHitParts = {
"Head", "HumanoidRootPart", "UpperTorso", "LowerTorso",
"LeftUpperArm", "RightUpperArm", "LeftLowerArm", "RightLowerArm",
"LeftHand", "RightHand", "LeftUpperLeg", "RightUpperLeg",
"LeftLowerLeg", "RightLowerLeg", "LeftFoot", "RightFoot",
"Torso", "Left Arm", "Right Arm", "Left Leg", "Right Leg"
}
local LegitBox = Tabs.Main:AddRightTabbox()
local AimlockBox = LegitBox:AddTab('Aimlock')
local TriggerBox = LegitBox:AddTab('TriggerBot(not working)')
TriggerBox:AddToggle('TriggerbotEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(v) getgenv().Matcha.Legit.Triggerbot.Enabled = v end
}):AddKeyPicker('TargetAimKey', {
Default = 'none',
Text = 'Target Aim',
Mode = 'Toggle',
Callback = function(Value) getgenv().Matcha.Legit.Triggerbot.Enabled = Value end
})
TriggerBox:AddToggle('TriggerbotOnlyTarget', {
Text = 'Only Target',
Default = false,
Tooltip = 'Chỉ bắn khi target đang được aimbot lock',
Callback = function(v) getgenv().Matcha.Legit.Triggerbot.OnlyTarget = v end
})
TriggerBox:AddSlider('TriggerbotFOV', {
Text = 'Trigger FOV',
Min = 1,
Max = 200,
Default = 20,
Rounding = 1,
Callback = function(v) getgenv().Matcha.Legit.Triggerbot.FOV = v end
})
TriggerBox:AddDropdown('TriggerbotHitParts', {
Text = 'Hit Parts',
Values = {
"Head", "HumanoidRootPart", "UpperTorso", "LowerTorso",
"LeftUpperArm", "RightUpperArm", "LeftLowerArm", "RightLowerArm",
"LeftHand", "RightHand", "LeftUpperLeg", "RightUpperLeg",
"LeftLowerLeg", "RightLowerLeg", "LeftFoot", "RightFoot",
"Torso", "Left Arm", "Right Arm", "Left Leg", "Right Leg"
},
Default = getgenv().Matcha.Legit.Triggerbot.HitParts, -- chọn hết mặc định
Multi = true,
Callback = function(selected)
getgenv().Matcha.Legit.Triggerbot.SelectedHitParts = selected
end
})
TriggerBox:AddSlider('TriggerbotDelay', {
Text = 'Trigger Delay',
Min = 0,
Max = 4,
Default = 0,
Rounding = 2,
Callback = function(v) getgenv().Matcha.Legit.Triggerbot.Delay = v end
})
TriggerBox:AddDropdown('TriggerbotChecks', {
Text = 'Trigger Checks',
Values = {"KO", "Knife", "Grab", "Team", "Friend" },
Default = {}, -- mặc định tắt hết (bạn có thể đổi thành {"Wall", "Team"} nếu muốn bật sẵn)
Multi = true,
Tooltip = 'Chọn các điều kiện để TriggerBot hoạt động',
Callback = function(selected)
getgenv().Matcha.Legit.Triggerbot.CheckKO = table.find(selected, "KO") ~= nil
getgenv().Matcha.Legit.Triggerbot.CheckKnife = table.find(selected, "Knife") ~= nil
getgenv().Matcha.Legit.Triggerbot.CheckGrab = table.find(selected, "Grab") ~= nil
getgenv().Matcha.Legit.Triggerbot.CheckTeam = table.find(selected, "Team") ~= nil
getgenv().Matcha.Legit.Triggerbot.CheckFriend = table.find(selected, "Friend") ~= nil
end
})
local function isKO(plr)
if not plr.Character then return false end
local be = plr.Character:FindFirstChild("BodyEffects")
return be and be:FindFirstChild("K.O") and be["K.O"].Value
end
local function isGrabbed(plr)
if not plr.Character then return false end
local be = plr.Character:FindFirstChild("BodyEffects")
return be and be:FindFirstChild("GRABBING_CONSTRAINT") and be.GRABBING_CONSTRAINT.Value
end
local function isHoldingKnife()
local char = LocalPlayer.Character
if not char then return false end
local tool = char:FindFirstChildWhichIsA("Tool")
if tool then
local name = tool.Name:lower()
return name:find("knife") or name:find("blade") or name:find("dagger") or name:find("sword")
end
return false
end
local function distToCursor(part)
local screenPos, onScreen = Camera:WorldToViewportPoint(part.Position)
if not onScreen then return math.huge end
local mousePos = UserInputService:GetMouseLocation()
return (Vector2.new(screenPos.X, screenPos.Y) - mousePos).Magnitude
end
local function fireTrigger()
local char = LocalPlayer.Character
if not char then return end
local tool = char:FindFirstChildWhichIsA("Tool")
local ammo = tool and tool:FindFirstChild("Ammo")
if tool and ammo then
pcall(function() tool:Activate() end)
else
-- Mobile/PC click
if UserInputService.TouchEnabled then
local vim = game:GetService("VirtualInputManager")
local pos = UserInputService:GetMouseLocation()
vim:SendTouchEvent(0, Enum.UserInputState.Begin, pos)
task.wait()
vim:SendTouchEvent(0, Enum.UserInputState.End, pos)
else
if mouse1press then
mouse1press()
task.wait()
mouse1release()
elseif mouse1click then
mouse1click()
end
end
end
end
local function isValidTriggerTarget(plr)
if plr == LocalPlayer or not plr.Character then return false end
if not plr.Character:FindFirstChild("HumanoidRootPart") then return false end
if not plr.Character:FindFirstChild("Humanoid") or plr.Character.Humanoid.Health <= 0 then return false end
if getgenv().Matcha.Legit.Triggerbot.OnlyTarget then
if not matchacc.TargetAim.Target or plr.Name ~= matchacc.TargetAim.Target then
return false
end
end
if getgenv().Matcha.Legit.Triggerbot.CheckTeam and plr.Team == LocalPlayer.Team then return false end
if getgenv().Matcha.Legit.Triggerbot.CheckFriend and LocalPlayer:IsFriendsWith(plr.UserId) then return false end
if getgenv().Matcha.Legit.Triggerbot.CheckKO and isKO(plr) then return false end
if getgenv().Matcha.Legit.Triggerbot.CheckGrab and isGrabbed(plr) then return false end
if getgenv().Matcha.Legit.Triggerbot.CheckKnife and isHoldingKnife() then return false end
return true
end
local function GetBestTriggerPart()
local bestPart, bestDist = nil, getgenv().Matcha.Legit.Triggerbot.FOV
for _, plr in Players:GetPlayers() do
if isValidTriggerTarget(plr) and plr.Character then
for _, partName in ipairs(getgenv().Matcha.Legit.Triggerbot.SelectedHitParts) do
local part = plr.Character:FindFirstChild(partName)
if part and part:IsA("BasePart") then
local dist = distToCursor(part)
if dist < bestDist then
bestPart = part
bestDist = dist
end
end
end
end
end
return bestPart, bestDist
end
RunService.RenderStepped:Connect(function()
local trigCfg = getgenv().Matcha.Legit.Triggerbot
if not trigCfg.Enabled then return end
local part, dist = GetBestTriggerPart()
if not part then return end
if dist > trigCfg.FOV then return end
-- Raycast
local origin = Camera.CFrame.Position
local direction = (part.Position - origin).Unit * 1000 -- 🔥 max distance ray
local rayParams = RaycastParams.new()
rayParams.FilterType = Enum.RaycastFilterType.Blacklist
rayParams.FilterDescendantsInstances = {LocalPlayer.Character}
local result = workspace:Raycast(origin, direction, rayParams)
if not result then return end
-- if hit same character → valid
if result.Instance and result.Instance:IsDescendantOf(part.Parent) then
task.delay(trigCfg.Delay, function()
fireTrigger()
end)
end
end)
--[[local SilentBox = LegitBox:AddTab('SilentAim')
SilentBox:AddToggle('SilentAimEnabled', {
Text = 'Silent Aim',
Default = false,
Callback = function(Value)
getgenv().Matcha.Legit.SilentAim = Value
end
})
SilentBox:AddDropdown('SilentAimMethod', {
Values = {'Rival', 'Flick'},
Default = 0,
Multi = false,
Text = 'Silent Aim Method',
Callback = function(Value)
getgenv().Matcha.Legit.SilentAimMethod = Value
end
})
SilentBox:AddToggle('SilentAimEnabled', {
Text = 'Silent Fov Enabled',
Default = false,
Callback = function(Value)
getgenv().Matcha.Legit.SilentFOVEnabled = Value
end
})
SilentBox:AddSlider('SilentFOV', {
Text = 'Silent Aim FOV',
Default = 100,
Min = 10,
Max = 1000,
Rounding = 0,
Callback = function(Value)
getgenv().Matcha.Legit.SilentFOV = Value
end
})
local camera = workspace.CurrentCamera
if game.GameId ~= 17625359962 then
local function isLobbyVisible()
return localPlayer.PlayerGui.MainGui.MainFrame.Lobby.Currency.Visible == true
end
local function getClosestPlayerToMouse() -- Hàm closest player từ code Rival
local closestPlayer = nil
local shortestDistance = getgenv().Matcha.Legit.SilentFOVEnabled and getgenv().Matcha.Legit.SilentFOV or 9999
local mousePosition = UserInputService:GetMouseLocation()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild("Head") then
local head = player.Character.Head
local headPosition, onScreen = Camera:WorldToViewportPoint(head.Position)
if not isAlive(player) then continue end
if not isPlayerVisible(player) then continue end
if onScreen then
local screenPosition = Vector2.new(headPosition.X, headPosition.Y)
local distance = (screenPosition - mousePosition).Magnitude
if distance < shortestDistance then
closestPlayer = player
shortestDistance = distance
end
end
end
end
return closestPlayer
end
local isLeftMouseDown = false
local autoClickConnection = nil
local function autoClick()
if autoClickConnection then
autoClickConnection:Disconnect()
end
autoClickConnection = RunService.Heartbeat:Connect(function()
if isLeftMouseDown then
if not isLobbyVisible() then
mouse1click()
end
else
autoClickConnection:Disconnect()
end
end)
end
UserInputService.InputBegan:Connect(function(input, isProcessed)
if input.UserInputType == Enum.UserInputType.MouseButton1 and not isProcessed then
if not isLeftMouseDown then
isLeftMouseDown = true
autoClick()
end
end
end)
UserInputService.InputEnded:Connect(function(input, isProcessed)
if input.UserInputType == Enum.UserInputType.MouseButton1 and not isProcessed then
isLeftMouseDown = false
end
end)
local function lockCameraToHead(targetPlayer)
if targetPlayer and targetPlayer.Character and targetPlayer.Character:FindFirstChild("Head") then
local head = targetPlayer.Character.Head
local headPosition = Camera:WorldToViewportPoint(head.Position)
if headPosition.Z > 0 then
local cameraPosition = Camera.CFrame.Position
Camera.CFrame = CFrame.new(cameraPosition, head.Position)
end
end
end
-- RunService cho Rival (chạy khi method là Rival)
RunService.Heartbeat:Connect(function()
if getgenv().Matcha.Legit.SilentAim and getgenv().Matcha.Legit.SilentAimMethod == "Rival" and not isLobbyVisible() then
local targetPlayer = getClosestPlayerToMouse() -- Closest player
if targetPlayer then
lockCameraToHead(targetPlayer)
end
end
end)
end
spawn(function()
local BulletHandler = nil
local OldFire = nil
local function get_closest_target(range)
local closest_part, closest_distance = nil, range
local mousePos = UserInputService:GetMouseLocation()
for _, player in pairs(players:GetPlayers()) do
if player == localPlayer or not player.Character or not player.Character:FindFirstChild("Head") then continue end
local hum = player.Character:FindFirstChildOfClass("Humanoid")
if not isAlive(player) then continue end
if not isPlayerVisible(player) then continue end
local headPos, onScreen = Camera:WorldToViewportPoint(player.Character.Head.Position)
if not onScreen then continue end
local dist = (Vector2.new(headPos.X, headPos.Y) - mousePos).Magnitude
if dist < closest_distance then
closest_distance = dist
closest_part = player.Character.Head
end
end
return closest_part
end
RunService.Heartbeat:Connect(function()
if not getgenv().Matcha.Legit.SilentAim or getgenv().Matcha.Legit.SilentAimMethod ~= "Flick" then
if BulletHandler and OldFire then
BulletHandler.Fire = OldFire
BulletHandler = nil
OldFire = nil
end
return
end
if not BulletHandler then
local success, mod = pcall(function()
return require(ReplicatedStorage:FindFirstChild("ModuleScripts", true):FindFirstChild("GunModules", true).BulletHandler)
end)
if not success then
-- gc fallback cực mạnh cho Rivals
for _, v in pairs(getgc(true)) do
if typeof(v) == "table" and rawget(v, "Fire") and typeof(rawget(v, "Fire")) == "function" then
BulletHandler = v
break
end
end
else
BulletHandler = mod
end
if BulletHandler and BulletHandler.Fire then
OldFire = BulletHandler.Fire
BulletHandler.Fire = newcclosure(function(data, ...)
if not getgenv().Matcha.Legit.SilentAim then
return OldFire(data, ...)
end
local closest = get_closest_target(getgenv().Matcha.Legit.SilentFOVEnabled and getgenv().Matcha.Legit.SilentFOV or 9999)
if closest then
local pred = 0
local predictedPos = closest.Position + (closest.Velocity * pred)
data.Direction = (predictedPos - data.Origin).Unit
data.Force = data.Force * 1000
end
return OldFire(data, ...)
end)
end
end
end)
end)]]
AimlockBox:AddToggle('AimlockEnabled', {
Text = 'Aimlock',
Default = false,
Callback = function(Value)
getgenv().Matcha.Legit.Aimlock = Value
end
})
AimlockBox:AddDropdown('HitPart', {
Values = {'Head', 'UpperTorso', 'HumanoidRootPart'},
Default = 1,
Multi = false,
Text = 'Hit Part',
Callback = function(Value)
getgenv().Matcha.Legit.HitPart = Value
end
})
AimlockBox:AddToggle('SmoothingEnabled', {
Text = 'Smoothing',
Default = false,
Callback = function(Value)
getgenv().Matcha.Legit.Smoothing = Value
end
})
AimlockBox:AddSlider('SmoothingAmount', {
Text = 'Smoothing Amount',
Default = 0.1,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
getgenv().Matcha.Legit.SmoothingAmount = Value
end
})
AimlockBox:AddSlider('Prediction', {
Text = 'Prediction',
Default = 0.05,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
getgenv().Matcha.Legit.Prediction = Value
end
})
AimlockBox:AddSlider('JumpOffset', {
Text = 'Jump Offset',
Default = 0,
Min = -10,
Max = 10,
Rounding = 1,
Callback = function(Value)
getgenv().Matcha.Legit.JumpOffset = Value
end
})
AimlockBox:AddToggle('ResolverToggle', {
Text = 'Resolver',
Default = false,
Callback = function(Value)
getgenv().Matcha.Legit.Resolver = Value
end
})
local VelocityData = {}
RunService.Heartbeat:Connect(function(dT)
if dT > 0.5 then return end -- chống spike
for _, plr in Players:GetPlayers() do
if plr ~= LocalPlayer and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
local hrp = plr.Character.HumanoidRootPart
if not VelocityData[plr] then
VelocityData[plr] = {
PreviousPosition = hrp.Position,
Velocity = Vector3.zero
}
end
local data = VelocityData[plr]
local displacement = hrp.Position - data.PreviousPosition
data.Velocity = displacement / dT
data.PreviousPosition = hrp.Position
end
end
end)
--// CLEANUP KHI PLAYER LEAVE (tùy chọn nhưng nên có)
Players.PlayerRemoving:Connect(function(plr)
VelocityData[plr] = nil
end)
--// UPDATECAMLOCK SAU KHI THÊM RESOLVER (thay toàn bộ function cũ bằng cái này)
local function updateCamlock()
local targetName = matchacc.TargetAim.Target
if not getgenv().Matcha.Legit.Aimlock then return end
local target = players:FindFirstChild(targetName)
if not target or not target.Character then
return
end
local part = target.Character:FindFirstChild(getgenv().Matcha.Legit.HitPart)
if not part or not isAlive(target) or not isPlayerVisible(target) then
return
end
--// LẤY VELOCITY (RESOLVER HOẶC DEFAULT)
local velocity = part.AssemblyLinearVelocity
if getgenv().Matcha.Legit.Resolver and VelocityData[target] then
velocity = VelocityData[target].Velocity
end
local pred = getgenv().Matcha.Legit.Prediction or 0
local pos = part.Position + (velocity * pred)
--// JUMP OFFSET (nếu bật và đang rơi/jump)
if getgenv().Matcha.Legit.Offset and target.Character.Humanoid:GetState() == Enum.HumanoidStateType.Freefall then
pos = pos + Vector3.new(0, getgenv().Matcha.Legit.JumpOffset or 0, 0)
end
local goal = CFrame.new(Camera.CFrame.Position, pos)
if getgenv().Matcha.Legit.Smoothing then
Camera.CFrame = Camera.CFrame:Lerp(goal, getgenv().Matcha.Legit.SmoothingAmount)
else
Camera.CFrame = goal
end
end
RunService.RenderStepped:Connect(function()
if getgenv().Matcha.Legit.Aimlock then
updateCamlock()
end
end)
local ChinaHatGroup = Tabs.Visual:AddRightGroupbox('China Hat')
getgenv().ChinaHatSettings = {
enabled = false,
hatColor = Color3.fromRGB(255, 255, 255),
lightColor = Color3.fromRGB(255, 255, 255),
lightBrightness = 0,
lightRange = 12,
scale = Vector3.new(1.7, 1.1, 1.7),
}
-- Thêm Cone.Name = "ChinaHat" vào function CreateHat để dễ find và destroy
local function CreateHat(Character)
local Head = Character:FindFirstChild("Head")
if not Head then return end
local Cone = Instance.new("Part")
Cone.Name = "ChinaHat" -- Thêm name để dễ quản lý
Cone.Size = Vector3.new(1, 1, 1)
Cone.BrickColor = BrickColor.new("Hot pink")
Cone.Material = Enum.Material.Neon
Cone.Transparency = 0.2
Cone.Anchored = false
Cone.CanCollide = false
Cone.Color = getgenv().ChinaHatSettings.hatColor
local Mesh = Instance.new("SpecialMesh")
Mesh.MeshType = Enum.MeshType.FileMesh
Mesh.MeshId = "rbxassetid://1033714"
Mesh.Scale = getgenv().ChinaHatSettings.scale
Mesh.Parent = Cone
local Weld = Instance.new("Weld")
Weld.Part0 = Head
Weld.Part1 = Cone
Weld.C0 = CFrame.new(0, 0.9, 0)
Weld.Parent = Cone
local Light = Instance.new("PointLight")
Light.Color = getgenv().ChinaHatSettings.lightColor
Light.Brightness = getgenv().ChinaHatSettings.lightBrightness
Light.Range = getgenv().ChinaHatSettings.lightRange
Light.Shadows = true
Light.Parent = Cone
Cone.Parent = Character
end
local function OnCharacterAdded1(Character)
if getgenv().ChinaHatSettings.enabled then
CreateHat(Character)
end
end
-- Kết nối sự kiện CharacterAdded
localPlayer.CharacterAdded:Connect(OnCharacterAdded1)
-- Nếu character đã tồn tại, áp dụng ngay
if localPlayer.Character then
task.wait(3)
OnCharacterAdded1(localPlayer.Character)
end
ChinaHatGroup:AddToggle('ChinaHatEnabled', {
Text = "VietNam Hat",
Default = getgenv().ChinaHatSettings.enabled,
Callback = function(state)
getgenv().ChinaHatSettings.enabled = state
if state then
if localPlayer.Character then
OnCharacterAdded1(localPlayer.Character)
end
else
if localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then
hat:Destroy()
end
end
end
end
}):AddColorPicker('ChinaHatColor', {
Default = getgenv().ChinaHatSettings.hatColor,
Title = "Hat Color",
Callback = function(color)
getgenv().ChinaHatSettings.hatColor = color
-- Realtime update: destroy và recreate nếu enabled
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
}):AddColorPicker('ChinaLightColor', {
Default = getgenv().ChinaHatSettings.lightColor,
Title = "Light Color",
Callback = function(color)
getgenv().ChinaHatSettings.lightColor = color
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
ChinaHatGroup:AddSlider('ChinaLightBrightness', {
Text = "Light Brightness",
Min = 0,
Max = 10,
Default = getgenv().ChinaHatSettings.lightBrightness,
Rounding = 1,
Compact = false,
Callback = function(value)
getgenv().ChinaHatSettings.lightBrightness = value
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
ChinaHatGroup:AddSlider('ChinaLightRange', {
Text = "Light Range",
Min = 0,
Max = 50,
Default = getgenv().ChinaHatSettings.lightRange,
Rounding = 0,
Compact = false,
Callback = function(value)
getgenv().ChinaHatSettings.lightRange = value
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
ChinaHatGroup:AddSlider('ChinaHatScaleX', {
Text = "Hat Scale X",
Min = 0.5,
Max = 3,
Default = getgenv().ChinaHatSettings.scale.X,
Rounding = 2,
Compact = false,
Callback = function(value)
getgenv().ChinaHatSettings.scale = Vector3.new(value, getgenv().ChinaHatSettings.scale.Y, getgenv().ChinaHatSettings.scale.Z)
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
ChinaHatGroup:AddSlider('ChinaHatScaleY', {
Text = "Hat Scale Y",
Min = 0.5,
Max = 3,
Default = getgenv().ChinaHatSettings.scale.Y,
Rounding = 2,
Compact = false,
Callback = function(value)
getgenv().ChinaHatSettings.scale = Vector3.new(getgenv().ChinaHatSettings.scale.X, value, getgenv().ChinaHatSettings.scale.Z)
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
ChinaHatGroup:AddSlider('ChinaHatScaleZ', {
Text = "Hat Scale Z",
Min = 0.5,
Max = 3,
Default = getgenv().ChinaHatSettings.scale.Z,
Rounding = 2,
Compact = false,
Callback = function(value)
getgenv().ChinaHatSettings.scale = Vector3.new(getgenv().ChinaHatSettings.scale.X, getgenv().ChinaHatSettings.scale.Y, value)
if getgenv().ChinaHatSettings.enabled and localPlayer.Character then
local hat = localPlayer.Character:FindFirstChild("ChinaHat")
if hat then hat:Destroy() end
CreateHat(localPlayer.Character)
end
end
})
local MatchaEsp = loadstring(game:HttpGet('https://raw.githubusercontent.com/alebinh60/asmobile/refs/heads/main/esplib'))()
local esp = MatchaEsp
local ESPGroup = Tabs.Visual:AddLeftGroupbox('ESP')
-- Box ESP
ESPGroup:AddToggle('BoxESPToggle', {
Text = 'Box ESP',
Default = false,
Callback = function(Value)
esp.State.BoxEnabled = Value
end,
}):AddColorPicker('BoxColorPicker', {
Default = Color3.new(0.403922, 0.349020, 0.701961),
Title = 'Box Color',
Callback = function(Value)
esp.Config.BoxColor = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.Box.Color = Value
end
end,
})
-- Box Gradient Toggle
ESPGroup:AddToggle('BoxGradientToggle', {
Text = 'Box Gradient',
Default = false,
Callback = function(Value)
esp.Config.BoxGradientEnabled = Value
end,
}):AddColorPicker('BoxGradientColor1', {
Default = Color3.new(0.403922, 0.34902, 0.701961),
Title = 'Gradient Color 1',
Callback = function(Value)
esp.Config.BoxGradientColor1 = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.Gradient.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, esp.Config.BoxGradientColor1),
ColorSequenceKeypoint.new(0.5, esp.Config.BoxGradientColor2),
ColorSequenceKeypoint.new(1, esp.Config.BoxGradientColor1)
})
end
end,
}):AddColorPicker('BoxGradientColor2', {
Default = Color3.new(0.8, 0.4, 1),
Title = 'Gradient Color 2',
Callback = function(Value)
esp.Config.BoxGradientColor2 = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.Gradient.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, esp.Config.BoxGradientColor1),
ColorSequenceKeypoint.new(0.5, esp.Config.BoxGradientColor2),
ColorSequenceKeypoint.new(1, esp.Config.BoxGradientColor1)
})
end
end,
})
ESPGroup:AddSlider('BoxFillTransparencySlider', {
Text = 'Box Fill Transparency',
Default = 0.5,
Min = 0,
Max = 1,
Rounding = 2,
Compact = true,
Callback = function(Value)
esp.Config.BoxFillTransparency = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.FillFrame.BackgroundTransparency = Value
end
end,
})
-- Box Outline
ESPGroup:AddToggle('BoxOutlineToggle', {
Text = 'Box Outline',
Default = true,
Callback = function(Value)
esp.Config.BoxOutlineEnabled = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.Stroke.Enabled = Value
espObj.BoxOutline.Visible = Value and not esp.Config.BoxGradientEnabled
end
end,
}):AddColorPicker('BoxOutlineColor', {
Default = Color3.new(0, 0, 0),
Title = 'Outline Color',
Callback = function(Value)
esp.Config.BoxOutlineColor = Value
for _, espObj in pairs(esp.Caches.BoxCache) do
espObj.Stroke.Color = Value
espObj.BoxOutline.Color = Value
end
end,
})
-- Ring ESP
ESPGroup:AddToggle('RingESPToggle', {
Text = 'Ring ESP',
Default = false,
Callback = function(Value)
if Value then
esp:InitiateRing(Color3.new(1, 1, 1))
else
esp.State.RingEnabled = false
end
end,
}):AddColorPicker('RingColorPicker', {
Default = Color3.new(1, 1, 1),
Title = 'Ring Color',
Callback = function(Value)
esp.Config.RingColor = Value
for _, data in pairs(esp.Caches.RingCache) do
data.Ring.Color3 = Value
end
end,
})
-- Name ESP
ESPGroup:AddToggle('NameESPToggle', {
Text = 'Name ESP',
Default = false,
Callback = function(Value)
esp:InitiateName(Value)
end,
})
-- Distance ESP
ESPGroup:AddToggle('DistanceESPToggle', {
Text = 'Distance ESP',
Default = false,
Callback = function(Value)
esp:InitiateDistance(Value)
end,
})
-- Skeleton ESP
ESPGroup:AddToggle('SkeletonESPToggle', {
Text = 'Skeleton ESP',
Default = false,
Callback = function(Value)
if Value then
esp:InitiateSkeleton(Color3.new(0.403922, 0.349020, 0.701961))
else
esp.State.SkeletonEnabled = false
end
end,
}):AddColorPicker('SkeletonColorPicker', {
Default = Color3.new(0.403922, 0.349020, 0.701961),
Title = 'Skeleton Color',
Callback = function(Value)
esp.Config.SkeletonColor = Value
for _, skeleton in pairs(esp.Caches.SkeletonCache) do
for _, line in pairs(skeleton) do
line.Color = Value
end
end
end,
})
-- Health Bar ESP
ESPGroup:AddToggle('HealthBarESPToggle', {
Text = 'Health Bar',
Default = false,
Callback = function(Value)
esp.State.HealthBarEnabled = Value
end,
})
--[[ESPGroup:AddToggle('ArmorBarESPToggle', {
Text = 'Armor Bar',
Default = false,
Callback = function(Value)
esp.State.ArmorBarEnabled = Value
end,
})]]
-- Health Text ESP
ESPGroup:AddToggle('HealthTextESPToggle', {
Text = 'Health Text',
Default = false,
Callback = function(Value)
esp.State.HealthTextEnabled = Value
end,
})
-- Health Bar Lerp Speed
ESPGroup:AddSlider('HealthBarLerpSpeed', {
Text = 'Health Bar Smoothness',
Default = 0.15,
Min = 0.05,
Max = 0.5,
Rounding = 2,
Compact = true,
Callback = function(Value)
esp.Config.HealthBarLerpSpeed = Value
end,
})
-- Tracer ESP
ESPGroup:AddToggle('TracerESPToggle', {
Text = 'Tracer ESP',
Default = false,
Callback = function(Value)
if Value then
esp:InitiateTracer(Color3.new(0.403922, 0.349020, 0.701961), esp.Config.TracerOrigin)
else
esp.State.TracerEnabled = false
end
end,
}):AddColorPicker('TracerColorPicker', {
Default = Color3.new(0.403922, 0.349020, 0.701961),
Title = 'Tracer Color',
Callback = function(Value)
esp.Config.TracerColor = Value
for _, tracer in pairs(esp.Caches.TracerCache) do
tracer.Color = Value
end
end,
})
ESPGroup:AddDropdown('TracerOriginDropdown', {
Text = 'Tracer Origin',
Default = 'Bottom Screen',
Values = {'Bottom Screen', 'Cursor', 'Top Screen'},
Compact = true,
Callback = function(Value)
esp.Config.TracerOrigin = Value
end,
})
-- Chams ESP
ESPGroup:AddToggle('ChamsToggle', {
Text = 'Chams',
Default = false,
Callback = function(Value)
if Value then
esp:InitiateChams(Color3.new(0.403922, 0.34902, 0.701961))
else
esp.State.ChamsEnabled = false
end
end,
}):AddColorPicker('ChamsColorPicker', {
Default = Color3.new(0.403922, 0.34902, 0.701961),
Title = 'Fill Color',
Callback = function(Value)
esp.Config.ChamsColor = Value
for _, chams in pairs(esp.Caches.ChamsCache) do
chams.FillColor = Value
end
end,
}):AddColorPicker('ChamsOutlineColorPicker', {
Default = Color3.new(1, 1, 1),
Title = 'Outline Color',
Callback = function(Value)
esp.Config.ChamsOutlineColor = Value
for _, chams in pairs(esp.Caches.ChamsCache) do
chams.OutlineColor = Value
end
end,
})
ESPGroup:AddSlider('ChamFillTransparency', {
Text = 'Chams Transparency',
Default = 0.5,
Min = 0,
Max = 1,
Rounding = 2,
Compact = true,
Callback = function(Value)
esp.Config.ChamsFillTransparency = Value
for _, chams in pairs(esp.Caches.ChamsCache) do
chams.FillTransparency = Value
end
end,
})
-- Team Check
ESPGroup:AddToggle('TeamCheckToggle', {
Text = 'Team Check',
Default = true,
Callback = function(Value)
esp:TeamCheck(Value)
end,
})
-- ESP Distance
ESPGroup:AddSlider('ESPDistanceSlider', {
Text = 'ESP Distance',
Default = 1000,
Min = 100,
Max = 1000,
Rounding = 0,
Suffix = ' studs',
Compact = true,
Callback = function(Value)
esp:SetDistance(Value)
end,
})
-- Initialize ESP
esp:Initialize()
task.wait(1)
coroutine.wrap(function()
-- Màu chung cho tất cả aura
local AuraColor = Color3.new(1, 1, 1) -- Default white
local AuraColors = {
Safe = Color3.fromRGB(255, 255, 255)
}
-- Function để attach Aura Safe (mới, đầy đủ thuộc tính từ XML)
local function AttachAuraSafe(character)
local torso = character:FindFirstChild("UpperTorso") or character:FindFirstChild("Torso")
if not torso then return end
-- Destroy old
for _, child in ipairs(torso:GetChildren()) do
if child.Name == "AuraSafe" then child:Destroy() end
end
local container = Instance.new("Folder")
container.Name = "AuraSafe"
container.Parent = torso
local pointLight = Instance.new("PointLight")
pointLight.Range = 5
pointLight.Brightness = 3
pointLight.Color = AuraColors.Safe
pointLight.Enabled = true
pointLight.Shadows = false
pointLight.Parent = container
local glowAttach = Instance.new("Attachment")
glowAttach.Name = "Glow"
glowAttach.CFrame = CFrame.new(0, 0, 0)
glowAttach.Parent = container
local particleGlow = Instance.new("ParticleEmitter")
particleGlow.Acceleration = Vector3.new(0, 0, 0)
particleGlow.Brightness = 1
particleGlow.Color = ColorSequence.new(AuraColors.Safe)
particleGlow.Drag = 0
particleGlow.EmissionDirection = Enum.NormalId.Back
particleGlow.Enabled = true
particleGlow.FlipbookFramerate = NumberRange.new(1, 1)
particleGlow.FlipbookLayout = Enum.ParticleFlipbookLayout.None
particleGlow.FlipbookMode = Enum.ParticleFlipbookMode.OneShot
particleGlow.Lifetime = NumberRange.new(1, 1)
particleGlow.LightEmission = 1
particleGlow.LightInfluence = 1
particleGlow.LockedToPart = true
particleGlow.Orientation = Enum.ParticleOrientation.FacingCamera
particleGlow.Rate = 4
particleGlow.RotSpeed = NumberRange.new(0, 0)
particleGlow.Rotation = NumberRange.new(0, 0)
particleGlow.Shape = Enum.ParticleEmitterShape.Box
particleGlow.ShapeInOut = Enum.ParticleEmitterShapeInOut.Outward
particleGlow.ShapePartial = 1
particleGlow.ShapeStyle = Enum.ParticleEmitterShapeStyle.Volume
particleGlow.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 4.25), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 3.375)})
particleGlow.Speed = NumberRange.new(0.001, 0.001)
particleGlow.SpreadAngle = Vector2.new(0, 0)
particleGlow.Squash = NumberSequence.new(0, 0)
particleGlow.Texture = "rbxassetid://1075864321"
particleGlow.TimeScale = 1
particleGlow.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 1)})
particleGlow.VelocityInheritance = 0
particleGlow.WindAffectsDrag = false
particleGlow.ZOffset = -1
particleGlow.Parent = glowAttach
local attach2Upper = Instance.new("Attachment")
attach2Upper.Name = "2"
attach2Upper.CFrame = CFrame.new(0, 2.125, 0)
attach2Upper.Parent = container
local attach2Lower = Instance.new("Attachment")
attach2Lower.Name = "2"
attach2Lower.CFrame = CFrame.new(0, -3, 0)
attach2Lower.Parent = container
local beamSafe1 = Instance.new("Beam")
beamSafe1.Attachment0 = attach2Lower
beamSafe1.Attachment1 = attach2Upper
beamSafe1.Brightness = 1
beamSafe1.Color = ColorSequence.new(AuraColors.Safe)
beamSafe1.CurveSize0 = 0
beamSafe1.CurveSize1 = 0
beamSafe1.Enabled = true
beamSafe1.FaceCamera = true
beamSafe1.LightEmission = 1
beamSafe1.LightInfluence = 1
beamSafe1.Segments = 10
beamSafe1.Texture = "rbxassetid://7673945506"
beamSafe1.TextureLength = 0.3
beamSafe1.TextureMode = Enum.TextureMode.Stretch
beamSafe1.TextureSpeed = 2
beamSafe1.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 1)})
beamSafe1.Width0 = 6
beamSafe1.Width1 = 6
beamSafe1.ZOffset = 1
beamSafe1.Parent = container
local beamSafe2 = Instance.new("Beam")
beamSafe2.Attachment0 = attach2Lower
beamSafe2.Attachment1 = attach2Upper
beamSafe2.Brightness = 1
beamSafe2.Color = ColorSequence.new(AuraColors.Safe)
beamSafe2.CurveSize0 = 0
beamSafe2.CurveSize1 = 0
beamSafe2.Enabled = true
beamSafe2.FaceCamera = true
beamSafe2.LightEmission = 1
beamSafe2.LightInfluence = 1
beamSafe2.Segments = 10
beamSafe2.Texture = "http://www.roblox.com/asset/?id=6045867277"
beamSafe2.TextureLength = 0.1
beamSafe2.TextureMode = Enum.TextureMode.Stretch
beamSafe2.TextureSpeed = 1
beamSafe2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 1)})
beamSafe2.Width0 = 5
beamSafe2.Width1 = 5
beamSafe2.ZOffset = 1
beamSafe2.Parent = container
local beamSafe3 = Instance.new("Beam")
beamSafe3.Attachment0 = attach2Lower
beamSafe3.Attachment1 = attach2Upper
beamSafe3.Brightness = 1
beamSafe3.Color = ColorSequence.new(AuraColors.Safe)
beamSafe3.CurveSize0 = 0
beamSafe3.CurveSize1 = 0
beamSafe3.Enabled = true
beamSafe3.FaceCamera = true
beamSafe3.LightEmission = 1
beamSafe3.LightInfluence = 1
beamSafe3.Segments = 10
beamSafe3.Texture = "rbxassetid://1849531275"
beamSafe3.TextureLength = 0.1
beamSafe3.TextureMode = Enum.TextureMode.Stretch
beamSafe3.TextureSpeed = 1
beamSafe3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 1)})
beamSafe3.Width0 = 6
beamSafe3.Width1 = 6
beamSafe3.ZOffset = 1
beamSafe3.Parent = container
local topSymbolAttach = Instance.new("Attachment")
topSymbolAttach.Name = "1TopSymbol"
topSymbolAttach.CFrame = CFrame.new(0, 5.75001049, 1) * CFrame.fromMatrix(Vector3.zero, Vector3.new(0, 0, -1), Vector3.new(-1, 0, 0), Vector3.new(0, 1, 0))
topSymbolAttach.Parent = container
local bottomSymbolAttach = Instance.new("Attachment")
bottomSymbolAttach.Name = "1BottomSymbol"
bottomSymbolAttach.CFrame = CFrame.new(0, -1.24998808, 1) * CFrame.fromMatrix(Vector3.zero, Vector3.new(0, 0, -1), Vector3.new(-1, 0, 0), Vector3.new(0, 1, 0))
bottomSymbolAttach.Parent = container
local beamSymbol = Instance.new("Beam")
beamSymbol.Attachment0 = topSymbolAttach
beamSymbol.Attachment1 = bottomSymbolAttach
beamSymbol.Brightness = 1
beamSymbol.Color = ColorSequence.new(AuraColors.Safe)
beamSymbol.CurveSize0 = 0.5
beamSymbol.CurveSize1 = 0.5
beamSymbol.Enabled = true
beamSymbol.FaceCamera = false
beamSymbol.LightEmission = 1
beamSymbol.LightInfluence = 1
beamSymbol.Segments = 100
beamSymbol.Texture = "rbxassetid://8285797183"
beamSymbol.TextureLength = 1
beamSymbol.TextureMode = Enum.TextureMode.Stretch
beamSymbol.TextureSpeed = 0
beamSymbol.Transparency = NumberSequence.new(0, 0)
beamSymbol.Width0 = 7
beamSymbol.Width1 = 7
beamSymbol.ZOffset = 0
beamSymbol.Parent = container
end
-- Config global cho Aura (nếu cần, nhưng mỗi aura có color riêng từ picker)
local ToggledAuras = {} -- Track auras bật: {name = true}
-- Function chung để attach và re-attach khi reset character (100 năm kinh nghiệm fix leak memory)
local function SetupAura(character, auraName)
if not character then return end
local AuraColor = AuraColors[auraName] -- Lấy color từ picker
if auraName == "Safe" then
AttachAuraSafe(character)
end
end
-- Listen CharacterAdded để re-attach (an toàn, không loop vô tận)
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
LocalPlayer.CharacterAdded:Connect(function(newChar)
for auraName, toggled in pairs(ToggledAuras) do
if toggled then
task.wait(0.5) -- Đợi char load đầy đủ (fix error nil torso)
SetupAura(newChar, auraName)
end
end
end)
local AuraGroup = Tabs.Visual:AddLeftGroupbox('AuraGroup')
AuraGroup:AddToggle('SafeToggle', {
Text = 'Safe',
Default = false,
Tooltip = 'Toggle Safe Aura',
Callback = function(Value)
ToggledAuras["Safe"] = Value
if Value then
SetupAura(LocalPlayer.Character, "Safe")
else
local torso = LocalPlayer.Character and (LocalPlayer.Character:FindFirstChild("UpperTorso") or LocalPlayer.Character:FindFirstChild("Torso"))
if torso then
local aura = torso:FindFirstChild("AuraSafe")
if aura then aura:Destroy() end
end
end
end
}):AddColorPicker('SafeColor', {
Default = AuraColors.Safe,
Title = 'Aura Color',
Callback = function(Value)
AuraColors.Safe = Value
if ToggledAuras["Safe"] then
SetupAura(LocalPlayer.Character, "Safe")
end
end
})
-- Init nếu char đã tồn tại (fix khi inject muộn)
if LocalPlayer.Character then
for auraName in pairs(ToggledAuras) do
SetupAura(LocalPlayer.Character, auraName)
end
end
end)()
task.wait(1)
coroutine.wrap(function()
local SelfGroup = Tabs.Visual:AddRightGroupbox('Self')
utility = utility or {}
local Settings = {
Visuals = {
SelfESP = {
Trail = {
Color = Color3.fromRGB(113, 221, 75),
Color2 = Color3.fromRGB(0, 0, 0),
LifeTime = 1.6,
Width = 0.1
},
},
Character_Trail = {
Trail_Color = Color3.fromRGB(255, 255, 255),
Trail_Life = 1.6
}
}
}
Settings.Visuals.Character_Chams = {
Enabled = false,
Color = Color3.fromRGB(255, 255, 255),
Material = Enum.Material.ForceField
}
Settings.Visuals.Weapon_Chams = {
Enabled = false,
Color = Color3.fromRGB(255, 255, 255),
Material = Enum.Material.Neon
}
local function applyChams(character)
if Settings.Visuals.Character_Chams.Enabled and character then
for i, v in pairs(character:GetDescendants()) do
if (v.Parent:IsA('Tool') and (v:IsA('MeshPart') or v:IsA('BasePart'))) then continue end
if v:IsA('MeshPart') then
v.Material = Settings.Visuals.Character_Chams.Material
v.Color = Settings.Visuals.Character_Chams.Color
v.TextureID = ''
end
if v:IsA('BasePart') then
v.Material = Settings.Visuals.Character_Chams.Material
v.Color = Settings.Visuals.Character_Chams.Color
end
end
end
if Settings.Visuals.Weapon_Chams.Enabled and character then
local Gun = character:FindFirstChildOfClass("Tool")
if Gun then
for i, v in pairs(Gun:GetChildren()) do
if v:IsA('MeshPart') then
v.Material = Settings.Visuals.Weapon_Chams.Material
v.Color = Settings.Visuals.Weapon_Chams.Color
v.TextureID = ''
end
if v:IsA('BasePart') then
v.Material = Settings.Visuals.Weapon_Chams.Material
v.Color = Settings.Visuals.Weapon_Chams.Color
end
end
end
end
end
local function onChamsCharacter(character)
task.wait(2)
applyChams(character)
character.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
applyChams(character)
end
end)
end
localPlayer.CharacterAdded:Connect(onChamsCharacter)
if localPlayer.Character then
onChamsCharacter(localPlayer.Character)
end
SelfGroup:AddToggle('WeaponChamsEnabled', {
Text = 'Weapon Enabled',
Default = false,
Callback = function(Value)
Settings.Visuals.Weapon_Chams.Enabled = Value
applyChams(localPlayer.Character)
end
}):AddColorPicker('WeaponChamsColor', {
Default = Settings.Visuals.Weapon_Chams.Color,
Title = 'Weapon Color',
Callback = function(Value)
Settings.Visuals.Weapon_Chams.Color = Value
applyChams(localPlayer.Character)
end
})
SelfGroup:AddDropdown('WeaponChamsType', {
Values = {'Neon', 'ForceField'},
Default = 'Neon',
Multi = false,
Text = 'Weapon Cham Type',
Callback = function(Value)
if Value == 'Neon' then
Settings.Visuals.Weapon_Chams.Material = Enum.Material.Neon
elseif Value == 'ForceField' then
Settings.Visuals.Weapon_Chams.Material = Enum.Material.ForceField
end
applyChams(localPlayer.Character)
end
})
SelfGroup:AddToggle('ClientChamsEnabled', {
Text = 'Client Enabled',
Default = false,
Callback = function(Value)
Settings.Visuals.Character_Chams.Enabled = Value
applyChams(localPlayer.Character)
end
}):AddColorPicker('ClientChamsColor', {
Default = Settings.Visuals.Character_Chams.Color,
Title = 'Client Color',
Callback = function(Value)
Settings.Visuals.Character_Chams.Color = Value
applyChams(localPlayer.Character)
end
})
SelfGroup:AddDropdown('ClientChamsType', {
Values = {'Force Field', 'Neon'},
Default = 'Force Field',
Multi = false,
Text = 'Client Cham Type',
Callback = function(Value)
if Value == 'Force Field' then
Settings.Visuals.Character_Chams.Material = Enum.Material.ForceField
elseif Value == 'Neon' then
Settings.Visuals.Character_Chams.Material = Enum.Material.Neon
end
applyChams(localPlayer.Character)
end
})
local function ToggleTrail(Bool)
for i,v in pairs(game.Players.LocalPlayer.Character:GetChildren()) do
if v:IsA("BasePart") then
if Bool then
local BlaBla = Instance.new("Trail", v)
BlaBla.Texture = "rbxassetid://1390780157"
BlaBla.Parent = v
local Pointer1 = Instance.new("Attachment", v)
Pointer1.Name = "Pointer1"
local Pointer2 = Instance.new("Attachment", game.Players.LocalPlayer.Character.HumanoidRootPart)
Pointer2.Name = "Pointer2"
BlaBla.Attachment0 = Pointer1
BlaBla.Attachment1 = Pointer2
BlaBla.Color = ColorSequence.new({ColorSequenceKeypoint.new(0, Settings.Visuals.Character_Trail.Trail_Color), ColorSequenceKeypoint.new(1, Settings.Visuals.Character_Trail.Trail_Color)});
BlaBla.Lifetime = Settings.Visuals.Character_Trail.Trail_Life
BlaBla.Name = "BlaBla" -- Set the name
else
for _, child in ipairs(v:GetChildren()) do
if child:IsA("Trail") and child.Name == 'BlaBla' then -- Corrected the condition
child:Destroy()
end
end
end
end
end
end
localPlayer.CharacterAdded:Connect(function()
task.wait(2)
if getgenv().trailEnabled then
ToggleTrail(true)
end
end)
if localPlayer.Character then
if getgenv().trailEnabled then
ToggleTrail(true)
end
end
SelfGroup:AddToggle("TrailToggle", {
Text = "Trail",
Default = false,
Callback = function(state)
getgenv().trailEnabled = state
ToggleTrail(state)
end
}):AddColorPicker("TrailColor", {
Default = Settings.Visuals.Character_Trail.Trail_Color,
Title = "Trail Color",
Callback = function(color)
Settings.Visuals.Character_Trail.Trail_Color = color
if getgenv().trailEnabled then
ToggleTrail(false)
ToggleTrail(true)
end
end
})
SelfGroup:AddSlider("TrailLifetime", {
Text = "Trail Lifetime",
Default = 1.6,
Min = 0.1,
Max = 5,
Rounding = 1,
Callback = function(value)
Settings.Visuals.Character_Trail.Trail_Life = value
if getgenv().trailEnabled then
ToggleTrail(false)
ToggleTrail(true)
end
end
})
utility.trail_character = function(Bool)
local character = localPlayer.Character or localPlayer.CharacterAdded:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
if Bool then
if not humanoidRootPart:FindFirstChild("Baba") then
local Baba = Instance.new("Trail", humanoidRootPart)
Baba.Name = "Baba"
humanoidRootPart.Material = Enum.Material.Neon
local attachment0 = Instance.new("Attachment", humanoidRootPart)
attachment0.Position = Vector3.new(0, 1, 0)
local attachment1 = Instance.new("Attachment", humanoidRootPart)
attachment1.Position = Vector3.new(0, -1, 0)
Baba.Attachment0 = attachment0
Baba.Attachment1 = attachment1
Baba.Color = ColorSequence.new(Settings.Visuals.SelfESP.Trail.Color, Settings.Visuals.SelfESP.Trail.Color2) -- Gradient effect
Baba.Lifetime = Settings.Visuals.SelfESP.Trail.LifeTime
Baba.Transparency = NumberSequence.new(0, 0)
Baba.LightEmission = 0.2
Baba.Brightness = 10
Baba.WidthScale = NumberSequence.new{
NumberSequenceKeypoint.new(0, Settings.Visuals.SelfESP.Trail.Width),
NumberSequenceKeypoint.new(1, 0)
}
end
else
for _, child in ipairs(humanoidRootPart:GetChildren()) do
if child:IsA("Trail") and child.Name == 'Baba' then
child:Destroy()
end
end
end
end
local function onCharacterAdded(character)
if getgenv().trailEnabled then
utility.trail_character(true)
end
end
localPlayer.CharacterAdded:Connect(onCharacterAdded)
if localPlayer.Character then onCharacterAdded(localPlayer.Character) end
SelfGroup:AddToggle("TrailTogglev2", {
Text = "Trailv2",
Default = false,
Callback = function(state)
getgenv().trailEnabled = state
utility.trail_character(state)
end
}):AddColorPicker("TrailColorv2", {
Default = Settings.Visuals.SelfESP.Trail.Color,
Title = "Trail Color",
Callback = function(color)
Settings.Visuals.SelfESP.Trail.Color = color
if getgenv().trailEnabled then
utility.trail_character(false)
utility.trail_character(true)
end
end
}):AddColorPicker("TrailColor2v2", {
Default = Settings.Visuals.SelfESP.Trail.Color2,
Title = "Trail Color 2",
Callback = function(color)
Settings.Visuals.SelfESP.Trail.Color2 = color
if getgenv().trailEnabled then
utility.trail_character(false)
utility.trail_character(true)
end
end
})
SelfGroup:AddSlider("TrailLifetimev2", {
Text = "Trail Lifetime v2",
Default = 1.6,
Min = 0.1,
Max = 5,
Rounding = 1,
Callback = function(value)
Settings.Visuals.SelfESP.Trail.LifeTime = value
if getgenv().trailEnabled then
utility.trail_character(false)
utility.trail_character(true)
end
end
})
end)()
task.wait(1)
coroutine.wrap(function()
local BulletTracerGroup = Tabs.Visual:AddLeftGroupbox('BulletTracer')
matchacc.BulletTracers = {
Enabled = false,
TextureID = "rbxassetid://12781852245",
Color = Color3.new(255, 255, 255),
Size = 0.4,
Transparency = 0,
TimeAlive = 3,
}
-- // Bullet Tracers
local function bullettracerlol(startPos, endPos)
local startPart = Instance.new("Part")
startPart.Name = "BulletStart"
startPart.Anchored = true
startPart.CanCollide = false
startPart.Transparency = 1
startPart.Size = Vector3.new(0.2, 0.2, 0.2)
startPart.Material = Enum.Material.ForceField
startPart.Color = Color3.new(1, 0, 0)
startPart.Transparency = 1
startPart.CanTouch = false
startPart.CanQuery = false
startPart.Massless = true
startPart.CollisionGroupId = 0
startPart.Position = startPos
startPart.Parent = workspace
local endPart = Instance.new("Part")
endPart.Name = "BulletEnd"
endPart.Anchored = true
endPart.CanCollide = false
endPart.Size = Vector3.new(0.2, 0.2, 0.2)
endPart.Material = Enum.Material.ForceField
endPart.Color = Color3.new(1, 0, 0)
endPart.Transparency = 1
endPart.CanTouch = false
endPart.CanQuery = false
endPart.Massless = true
endPart.CollisionGroupId = 0
endPart.Position = endPos
endPart.Parent = workspace
local beam = Instance.new("Beam")
beam.Attachment0 = Instance.new("Attachment", startPart)
beam.Attachment1 = Instance.new("Attachment", endPart)
beam.Parent = startPart
beam.FaceCamera = true
beam.Color = ColorSequence.new(matchacc.BulletTracers.Color)
beam.Texture = matchacc.BulletTracers.TextureID
beam.LightEmission = 1
beam.Transparency = NumberSequence.new(matchacc.BulletTracers.Transparency)
beam.Width0 = matchacc.BulletTracers.Size
beam.Width1 = matchacc.BulletTracers.Size
task.delay(matchacc.BulletTracers.TimeAlive, function()
if beam and beam.Parent then
local tweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local tween = TweenService:Create(beam, tweenInfo, { Width0 = 0, Width1 = 0 })
tween:Play()
tween.Completed:Wait()
end
if startPart and startPart.Parent then startPart:Destroy() end
if endPart and endPart.Parent then endPart:Destroy() end
if beam and beam.Parent then beam:Destroy() end
end)
return startPart, endPart, beam
end
if getnamecallmethod and MainEvent ~= nil then
local mt = getrawmetatable(MainEvent)
setreadonly(mt, false)
local cloned_mt = table.clone(mt)
local oldnamecall = cloned_mt.__namecall
setrawmetatable(MainEvent, {
__namecall = (function(self, ...)
local args = { ... }
if getnamecallmethod() == "FireServer" then
if args[1] == "ShootGun" then
-- Bullet Tracers
if matchacc.BulletTracers.Enabled then
bullettracerlol(args[3], args[4])
end
end
end
return oldnamecall(self, unpack(args))
end),
__index = cloned_mt.__index,
__newindex = cloned_mt.__newindex,
__call = cloned_mt.__call,
__tostring = cloned_mt.__tostring,
})
end
BulletTracerGroup:AddToggle('BulletTracersEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(Value)
matchacc.BulletTracers.Enabled = Value
if not getnamecallmethod then
Library:Notify("Your executor does not support this feature")
end
end
}):AddColorPicker('BulletTracersColor', {
Default = matchacc.BulletTracers.Color,
Title = 'Color',
Callback = function(Value)
matchacc.BulletTracers.Color = Value
end
})
BulletTracerGroup:AddDropdown('BulletTracersTexture', {
Values = {"Beam", "Lightning", "Heartrate", "Chain", "Glitch", "Swirl"},
Default = "Beam",
Multi = false,
Text = 'Texture',
Callback = function(Value)
if Value == "Beam" then
matchacc.BulletTracers.TextureID = "rbxassetid://12781852245"
elseif Value == "Lightning" then
matchacc.BulletTracers.TextureID = "rbxassetid://446111271"
elseif Value == "Heartrate" then
matchacc.BulletTracers.TextureID = "rbxassetid://5830549480"
elseif Value == "Chain" then
matchacc.BulletTracers.TextureID = "rbxassetid://9632168658"
elseif Value == "Glitch" then
matchacc.BulletTracers.TextureID = "rbxassetid://8089467613"
elseif Value == "Swirl" then
matchacc.BulletTracers.TextureID = "rbxassetid://5638168605"
end
end
})
BulletTracerGroup:AddSlider('BulletTracersSize', {
Text = 'Size',
Default = 0.4,
Min = 0.1,
Max = 3,
Rounding = 2,
Callback = function(Value)
matchacc.BulletTracers.Size = Value
end
})
BulletTracerGroup:AddSlider('BulletTracersTransparency', {
Text = 'Transparency',
Default = 0,
Min = 0,
Max = 1,
Rounding = 2,
Callback = function(Value)
matchacc.BulletTracers.Transparency = Value
end
})
BulletTracerGroup:AddSlider('BulletTracersTimeAlive', {
Text = 'Time Alive',
Default = 3,
Min = 1,
Max = 10,
Rounding = 0,
Callback = function(Value)
matchacc.BulletTracers.TimeAlive = Value
end
})
local HudUi = Tabs.Visual:AddLeftGroupbox('Hud Changer')
local defaultTextHP = " Health "
local defaultTextArmor = " Armor"
local defaultTextEnergy = "Dark Energy "
local defaultColorHP = Color3.new(0.941176, 0.031373, 0.819608)
local defaultColorArmor = Color3.new(0.376471, 0.031373, 0.933333)
local defaultColorEnergy = Color3.new(0.768627, 0.039216, 0.952941)
local textHP, textArmor, textEnergy = defaultTextHP, defaultTextArmor, defaultTextEnergy
local colorHP, colorArmor, colorEnergy = defaultColorHP, defaultColorArmor, defaultColorEnergy
local toggleHP, toggleArmor, toggleEnergy = false, false, false
local function skibiditoilet()
local player = game.Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local gui = playerGui:WaitForChild("MainScreenGui").Bar
if toggleHP then
gui.HP.TextLabel.Text = textHP
gui.HP.bar.BackgroundColor3 = colorHP
end
if toggleArmor then
gui.Armor.TextLabel.Text = textArmor
gui.Armor.bar.BackgroundColor3 = colorArmor
end
if toggleEnergy then
gui.Energy.TextLabel.Text = textEnergy
gui.Energy.bar.BackgroundColor3 = colorEnergy
end
end
HudUi:AddToggle('ToggleHP', {
Text = 'Customize Health',
Default = false,
Callback = function(state)
toggleHP = state
skibiditoilet()
end
}):AddColorPicker('ColorHP', {
Text = 'Health Color',
Default = defaultColorHP,
Callback = function(value)
if toggleHP then colorHP = value skibiditoilet() end
end
})
HudUi:AddInput('TextHP', {
Text = 'Health Text',
Default = defaultTextHP,
Callback = function(value)
if toggleHP then textHP = value skibiditoilet() end
end
})
HudUi:AddToggle('ToggleArmor', {
Text = 'Customize Armor',
Default = false,
Callback = function(state)
toggleArmor = state
skibiditoilet()
end
}):AddColorPicker('ColorArmor', {
Text = 'Armor Color',
Default = defaultColorArmor,
Callback = function(value)
if toggleArmor then colorArmor = value skibiditoilet() end
end
})
HudUi:AddInput('TextArmor', {
Text = 'Armor Text',
Default = defaultTextArmor,
Callback = function(value)
if toggleArmor then textArmor = value skibiditoilet() end
end
})
HudUi:AddToggle('ToggleEnergy', {
Text = 'Customize Energy',
Default = false,
Callback = function(state)
toggleEnergy = state
skibiditoilet()
end
}):AddColorPicker('ColorEnergy', {
Text = 'Energy Color',
Default = defaultColorEnergy,
Callback = function(value)
if toggleEnergy then colorEnergy = value skibiditoilet() end
end
})
HudUi:AddInput('TextEnergy', {
Text = 'Energy Text',
Default = defaultTextEnergy,
Callback = function(value)
if toggleEnergy then textEnergy = value skibiditoilet() end
end
})
local player = game.Players.LocalPlayer
player.CharacterAdded:Connect(function()
if toggleHP or toggleArmor or toggleEnergy then
player:WaitForChild("PlayerGui")
skibiditoilet()
end
end)
end)()
local MovementGroup = Tabs.Character:AddLeftGroupbox('Movement')
task.wait(1)
coroutine.wrap(function()
local CrosshairGroup = Tabs.Visual:AddRightGroupbox('Crosshair')
local Client = players.LocalPlayer
local mouse = Client:GetMouse()
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
-- Visual state storage (parameters only)
local visualState = {
time = 0,
rotationProgress = 0,
currentRotationSpeed = 0.8,
smoothedRotation = 5,
lines = {
top = {Size = UDim2.new(0, 3, 0, 25), Position = UDim2.new(0.5, -1.5, 0, 0), Color = Color3.new(1,1,1)},
bottom = {Size = UDim2.new(0, 3, 0, 25), Position = UDim2.new(0.5, -1.5, 1, -25), Color = Color3.new(1,1,1)},
left = {Size = UDim2.new(0, 25, 0, 3), Position = UDim2.new(0, 0, 0.5, -1.5), Color = Color3.new(1,1,1)},
right = {Size = UDim2.new(0, 25, 0, 3), Position = UDim2.new(1, -25, 0.5, -1.5), Color = Color3.new(1,1,1)},
},
-- Text params
text = {
Text = "Matcha.cc",
Position = UDim2.new(0, 0, 0, 0),
Color = Color3.new(1,1,1),
Font = Enum.Font.Arcade,
TextScaled = true,
}
}
local screenGui
local aimContainer
local topLine, bottomLine, leftLine, rightLine
local textLabel
local lineLength = 25
local lineThickness = 3
local baseRotationSpeed = 0.8
local pulseSpeed = 2.5
local minLength = -10
local maxLength = -30
local time = 0
local rotationProgress = 0
local currentRotationSpeed = baseRotationSpeed
local smoothedRotation = 5
local isCrosshairEnabled = false
local isTextEnabled = true
local isRainbowEnabled = false
local isFollowTargetEnabled = false
local fixedColor = Color3.new(1,1,1)
local targetAim = nil
-- Function to get the closest target
local function getClosestTarget()
local closestPlayer = nil
local shortestDistance = math.huge
for _, player in pairs(players:GetPlayers()) do
if player ~= Client and player.Character then
local character = player.Character
local humanoid = character:FindFirstChild("Humanoid")
local upperTorso = character:FindFirstChild("UpperTorso")
local torso = character:FindFirstChild("Torso") or character:FindFirstChild("HumanoidRootPart")
if humanoid and humanoid.Health > 0 and (upperTorso or torso) then
local targetPart = upperTorso or torso
local screenPos, onScreen = Camera:WorldToScreenPoint(targetPart.Position)
if onScreen then
local mousePos = Vector2.new(mouse.X, mouse.Y)
local targetPos = Vector2.new(screenPos.X, screenPos.Y)
local distance = (mousePos - targetPos).Magnitude
if distance < shortestDistance then
shortestDistance = distance
closestPlayer = targetPart
end
end
end
end
end
return closestPlayer
end
local function createLine(parent, size, position, color)
local frame = Instance.new("Frame")
frame.Size = size
frame.Position = position
frame.BackgroundColor3 = color
frame.BorderSizePixel = 0
frame.ZIndex = 5
frame.Parent = parent
local stroke = Instance.new("UIStroke")
stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
stroke.Color = Color3.new(0,0,0)
stroke.Thickness = 1
stroke.Parent = frame
return frame
end
-- Helper to create text with outline
local function createTextLabel(parent, text, position, color, font, scaled)
local label = Instance.new("TextLabel")
label.Text = text
label.Position = position
label.TextColor3 = color
label.Font = font
label.TextScaled = scaled
label.BackgroundTransparency = 1
label.Size = UDim2.new(0, 150, 0, 23)
label.ZIndex = 10
label.Parent = parent
local stroke = Instance.new("UIStroke")
stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Contextual
stroke.Color = Color3.new(0,0,0)
stroke.Thickness = 1
stroke.LineJoinMode = Enum.LineJoinMode.Round
stroke.Parent = label
return label
end
-- Clear previous GUI if exists
local function clearGui()
if screenGui then
screenGui:Destroy()
screenGui = nil
end
end
-- Create GUI elements fresh and restore from visualState parameters
local function createGui()
clearGui()
screenGui = Instance.new("ScreenGui")
screenGui.Name = "AimSightGUI"
screenGui.ResetOnSpawn = false
screenGui.Parent = Client:WaitForChild("PlayerGui")
aimContainer = Instance.new("Frame")
aimContainer.BackgroundTransparency = 1
aimContainer.Size = UDim2.new(0, 25, 0, 25)
aimContainer.AnchorPoint = Vector2.new(0.5, 0.5)
aimContainer.Parent = screenGui
-- Create lines with saved params
topLine = createLine(aimContainer, visualState.lines.top.Size, visualState.lines.top.Position, visualState.lines.top.Color)
bottomLine = createLine(aimContainer, visualState.lines.bottom.Size, visualState.lines.bottom.Position, visualState.lines.bottom.Color)
leftLine = createLine(aimContainer, visualState.lines.left.Size, visualState.lines.left.Position, visualState.lines.left.Color)
rightLine = createLine(aimContainer, visualState.lines.right.Size, visualState.lines.right.Position, visualState.lines.right.Color)
-- Create text label with saved params
textLabel = createTextLabel(screenGui, visualState.text.Text, visualState.text.Position, visualState.text.Color, visualState.text.Font, visualState.text.TextScaled)
textLabel.Visible = isTextEnabled
end
local function saveVisualState()
visualState.time = time
visualState.rotationProgress = rotationProgress
visualState.currentRotationSpeed = currentRotationSpeed
visualState.smoothedRotation = smoothedRotation
visualState.lines.top.Size = topLine.Size
visualState.lines.top.Position = topLine.Position
visualState.lines.top.Color = topLine.BackgroundColor3
visualState.lines.bottom.Size = bottomLine.Size
visualState.lines.bottom.Position = bottomLine.Position
visualState.lines.bottom.Color = bottomLine.BackgroundColor3
visualState.lines.left.Size = leftLine.Size
visualState.lines.left.Position = leftLine.Position
visualState.lines.left.Color = leftLine.BackgroundColor3
visualState.lines.right.Size = rightLine.Size
visualState.lines.right.Position = rightLine.Position
visualState.lines.right.Color = rightLine.BackgroundColor3
visualState.text.Text = textLabel.Text
visualState.text.Position = textLabel.Position
visualState.text.Color = textLabel.TextColor3
visualState.text.Font = textLabel.Font
visualState.text.TextScaled = textLabel.TextScaled
end
local function restoreVisualState()
if not (topLine and bottomLine and leftLine and rightLine and textLabel) then
return
end
time = visualState.time or 0
rotationProgress = visualState.rotationProgress or 0
currentRotationSpeed = visualState.currentRotationSpeed or baseRotationSpeed
smoothedRotation = visualState.smoothedRotation or 5
topLine.Size = visualState.lines.top.Size or topLine.Size
topLine.Position = visualState.lines.top.Position or topLine.Position
topLine.BackgroundColor3 = visualState.lines.top.Color or topLine.BackgroundColor3
bottomLine.Size = visualState.lines.bottom.Size or bottomLine.Size
bottomLine.Position = visualState.lines.bottom.Position or bottomLine.Position
bottomLine.BackgroundColor3 = visualState.lines.bottom.Color or bottomLine.BackgroundColor3
leftLine.Size = visualState.lines.left.Size or leftLine.Size
leftLine.Position = visualState.lines.left.Position or leftLine.Position
leftLine.BackgroundColor3 = visualState.lines.left.Color or leftLine.BackgroundColor3
rightLine.Size = visualState.lines.right.Size or rightLine.Size
rightLine.Position = visualState.lines.right.Position or rightLine.Position
rightLine.BackgroundColor3 = visualState.lines.right.Color or rightLine.BackgroundColor3
textLabel.Text = visualState.text.Text or textLabel.Text
textLabel.Position = visualState.text.Position or textLabel.Position
textLabel.TextColor3 = visualState.text.Color or textLabel.TextColor3
textLabel.Font = visualState.text.Font or textLabel.Font
textLabel.TextScaled = visualState.text.TextScaled or textLabel.TextScaled
end
-- Function to get rainbow color by time
local function getRainbowColor(t)
local r = math.sin(t * 0.6) * 0.5 + 0.5
local g = math.sin(t * 0.6 + 2) * 0.5 + 0.5
local b = math.sin(t * 0.6 + 4) * 0.5 + 0.5
return Color3.new(r, g, b)
end
local function calculateRotationSpeed(progress)
local slowdownStart = 0.6
local slowdownDuration = 0.35
local minSlowdownSpeed = 0.3
local baseRotationSpeedLocal = baseRotationSpeed
if progress >= slowdownStart then
local slowdownProgress = (progress - slowdownStart) / slowdownDuration
local easedProgress = slowdownProgress * slowdownProgress
local slowdownFactor = 1 - (easedProgress * (1 - minSlowdownSpeed))
return baseRotationSpeedLocal * math.max(slowdownFactor, minSlowdownSpeed)
else
return baseRotationSpeedLocal
end
end
local function smoothRotation(currentRot, targetRot, smoothing)
return currentRot + (targetRot - currentRot) * smoothing
end
local function smoothPulse(t, speed)
local rawPulse = math.sin(t * speed) * 0.5 + 0.5
return rawPulse * rawPulse
end
-- On character added, recreate GUI and restore state
local function onCharacterAdded(character)
if isCrosshairEnabled then
createGui()
restoreVisualState()
end
local humanoid = character:WaitForChild("Humanoid")
humanoid.Died:Connect(function()
saveVisualState()
end)
end
Client.CharacterAdded:Connect(onCharacterAdded)
if Client.Character then
onCharacterAdded(Client.Character)
end
RunService.RenderStepped:Connect(function(deltaTime)
if not (aimContainer and topLine and bottomLine and leftLine and rightLine and textLabel) then
return
end
time = time + deltaTime
-- fallback mouse position always safe
local mouseX = mouse.X
local mouseY = mouse.Y
-- default (no follow target)
local targetX = mouseX
local targetY = mouseY
-- if following target, try override
if isFollowTargetEnabled and matchacc and matchacc.TargetAim and matchacc.TargetAim.Target ~= "None" then
local targetPlayer = Players:FindFirstChild(matchacc.TargetAim.Target)
if targetPlayer and targetPlayer.Character then
local aimPart =
targetPlayer.Character:FindFirstChild("UpperTorso")
or targetPlayer.Character:FindFirstChild("HumanoidRootPart")
or targetPlayer.Character:FindFirstChild("Torso")
if aimPart then
local screenPos, onScreen = Camera:WorldToScreenPoint(aimPart.Position)
if onScreen then
targetX = screenPos.X
targetY = screenPos.Y
end
end
end
end
-- ALWAYS SAFE NOW
aimContainer.Position = UDim2.new(0,targetX,0,targetY)
textLabel.Position = UDim2.new(0,targetX - 70,0,targetY + 50)
rotationProgress = (rotationProgress + currentRotationSpeed * deltaTime) % 1
currentRotationSpeed = calculateRotationSpeed(rotationProgress)
local targetRotation = rotationProgress * 360
smoothedRotation = smoothRotation(smoothedRotation, targetRotation, 1)
aimContainer.Rotation = smoothedRotation
local pulse = smoothPulse(time, pulseSpeed)
local currentLength = minLength + (maxLength - minLength) * pulse
topLine.Size = UDim2.new(0, lineThickness, 0, currentLength)
bottomLine.Size = UDim2.new(0, lineThickness, 0, currentLength)
leftLine.Size = UDim2.new(0, currentLength, 0, lineThickness)
rightLine.Size = UDim2.new(0, currentLength, 0, lineThickness)
topLine.Position = UDim2.new(0.5, -lineThickness / 2, 0, 0)
bottomLine.Position = UDim2.new(0.5, -lineThickness / 2, 1, -currentLength)
leftLine.Position = UDim2.new(0, 0, 0.5, -lineThickness / 2)
rightLine.Position = UDim2.new(1, -currentLength, 0.5, -lineThickness / 2)
local color = isRainbowEnabled and getRainbowColor(time) or fixedColor
topLine.BackgroundColor3 = color
bottomLine.BackgroundColor3 = color
leftLine.BackgroundColor3 = color
rightLine.BackgroundColor3 = color
textLabel.TextColor3 = color
end)
-- UI Controls
CrosshairGroup:AddToggle('CrosshairEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(Value)
isCrosshairEnabled = Value
if Value then
createGui()
restoreVisualState()
else
clearGui()
end
end
}):AddColorPicker('CrosshairColor', {
Default = Color3.fromRGB(255, 255, 255),
Title = 'Color',
Callback = function(Value)
fixedColor = Value
if not isRainbowEnabled and topLine and bottomLine and leftLine and rightLine and textLabel then
topLine.BackgroundColor3 = Value
bottomLine.BackgroundColor3 = Value
leftLine.BackgroundColor3 = Value
rightLine.BackgroundColor3 = Value
textLabel.TextColor3 = Value
end
end
})
CrosshairGroup:AddToggle('CrosshairFollowTarget', {
Text = 'Follow Target',
Default = false,
Tooltip = 'Crosshair will follow the closest enemy on screen',
Callback = function(Value)
isFollowTargetEnabled = Value
end
})
CrosshairGroup:AddToggle('CrosshairText', {
Text = 'Text',
Default = true,
Callback = function(Value)
isTextEnabled = Value
if textLabel then
textLabel.Visible = Value
end
end
})
CrosshairGroup:AddSlider('CrosshairSpinSpeed', {
Text = 'Spin Speed',
Default = 0.8,
Min = 0.1,
Max = 2,
Rounding = 2,
Callback = function(Value)
baseRotationSpeed = Value
end
})
CrosshairGroup:AddSlider('CrosshairLineLength', {
Text = 'Line Length',
Default = 25,
Min = 5,
Max = 100,
Rounding = 1,
Callback = function(Value)
lineLength = Value
-- Update initial line sizes in visualState
visualState.lines.top.Size = UDim2.new(0, 3, 0, Value)
visualState.lines.bottom.Size = UDim2.new(0, 3, 0, Value)
visualState.lines.left.Size = UDim2.new(0, Value, 0, 3)
visualState.lines.right.Size = UDim2.new(0, Value, 0, 3)
-- Update the pulse range
minLength = -Value * 0.4
maxLength = -Value * 1.2
end
})
CrosshairGroup:AddToggle('CrosshairRainbow', {
Text = 'Rainbow',
Default = false,
Callback = function(Value)
isRainbowEnabled = Value
end
})
local RainGroup = Tabs.Visual:AddRightGroupbox('Rain')
getgenv().RainSettings = {
Enabled = false,
Color = Color3.fromRGB(255, 255, 255),
Lifetime = 5,
Rate = 1000,
Speed = 100,
}
getgenv().SnowSettings = {
Enabled = false,
Color = Color3.fromRGB(255, 255, 255),
Lifetime = 100, -- Default max lifetime, min fixed at 5 as per XML
Rate = 100,
Speed = 10,
}
local rainPart = nil
local rainEmitter = nil
local rainConnection = nil
local snowPart = nil
local snowEmitter = nil
local snowConnection = nil
local function rainParticleEmitter()
if rainPart then
rainPart:Destroy()
rainPart = nil
rainEmitter = nil
end
rainPart = Instance.new("Part")
rainPart.Size = Vector3.new(51.8, 0.001, 52.084)
rainPart.CanCollide = false
rainPart.Anchored = true
rainPart.Transparency = 1
rainPart.Parent = workspace
rainEmitter = Instance.new("ParticleEmitter")
rainEmitter.Color = ColorSequence.new(RainSettings.Color)
rainEmitter.LightEmission = 1
rainEmitter.Orientation = Enum.ParticleOrientation.FacingCameraWorldUp
rainEmitter.Size = NumberSequence.new(0.4)
rainEmitter.Squash = NumberSequence.new(4)
rainEmitter.Texture = "rbxassetid://129110349"
rainEmitter.EmissionDirection = Enum.NormalId.Bottom
rainEmitter.Lifetime = NumberRange.new(RainSettings.Lifetime)
rainEmitter.Rate = RainSettings.Rate
rainEmitter.Speed = NumberRange.new(RainSettings.Speed)
rainEmitter.LockedToPart = true
rainEmitter.Enabled = true
rainEmitter.Parent = rainPart
end
local function snowParticleEmitter()
if snowPart then
snowPart:Destroy()
snowPart = nil
snowEmitter = nil
end
snowPart = Instance.new("Part")
snowPart.Name = "SnowEmitterPart"
snowPart.Size = Vector3.new(51.8, 0.001, 52.084)
snowPart.Anchored = true
snowPart.CanCollide = false
snowPart.CanQuery = true
snowPart.CanTouch = true
snowPart.CastShadow = true
snowPart.CollisionGroup = "Default"
snowPart.CollisionGroupId = 0
snowPart.Material = Enum.Material.Plastic
snowPart.PivotOffset = CFrame.new(0,0,0)
snowPart.Reflectance = 0
snowPart.RootPriority = 0
snowPart.RotVelocity = Vector3.new(0,0,0)
snowPart.Transparency = 1
snowPart.Velocity = Vector3.new(0,0,0)
snowPart.Parent = workspace
snowEmitter = Instance.new("ParticleEmitter")
snowEmitter.Acceleration = Vector3.new(0,0,0)
snowEmitter.Brightness = 1
snowEmitter.Color = ColorSequence.new(SnowSettings.Color)
snowEmitter.Drag = 0
snowEmitter.EmissionDirection = Enum.NormalId.Bottom
snowEmitter.Enabled = true
snowEmitter.FlipbookFramerate = NumberRange.new(1,1)
snowEmitter.FlipbookLayout = Enum.ParticleFlipbookLayout.None
snowEmitter.FlipbookMode = Enum.ParticleFlipbookMode.Loop
snowEmitter.Lifetime = NumberRange.new(5, 100) -- Min 5, Max from settings
snowEmitter.LightEmission = 0
snowEmitter.LightInfluence = 0
snowEmitter.LockedToPart = false
snowEmitter.Orientation = Enum.ParticleOrientation.FacingCamera
snowEmitter.Rate = SnowSettings.Rate
snowEmitter.RotSpeed = NumberRange.new(360,360)
snowEmitter.Rotation = NumberRange.new(20,20)
snowEmitter.Shape = Enum.ParticleEmitterShape.Box
snowEmitter.ShapeInOut = Enum.ParticleEmitterShapeInOut.Outward
snowEmitter.ShapePartial = 1
snowEmitter.ShapeStyle = Enum.ParticleEmitterShapeStyle.Volume
snowEmitter.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.2, 0.4), -- Lúc bắt đầu hạt có size random 0.2–0.4
NumberSequenceKeypoint.new(1, 0.2, 0.4) -- Lúc kết thúc hạt cũng random 0.2–0.4
})
snowEmitter.Speed = NumberRange.new(SnowSettings.Speed)
snowEmitter.SpreadAngle = Vector2.new(90,90)
snowEmitter.Squash = NumberSequence.new(0)
snowEmitter.Texture = "rbxassetid://129110349"
snowEmitter.TimeScale = 1
snowEmitter.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.8625),
NumberSequenceKeypoint.new(0.15, 0),
NumberSequenceKeypoint.new(0.196326, 0.70625),
NumberSequenceKeypoint.new(1, 0),
})
snowEmitter.VelocityInheritance = 0
snowEmitter.WindAffectsDrag = false
snowEmitter.ZOffset = 0
snowEmitter.Parent = snowPart
end
RainGroup:AddToggle('RainEnabled', {
Text = 'Enabled',
Default = false,
Callback = function(Value)
RainSettings.Enabled = Value
if Value then
rainParticleEmitter()
rainConnection = RunService.Heartbeat:Connect(function()
local camPos = Camera.CFrame.Position
rainPart.CFrame = CFrame.new(camPos + Vector3.new(0, 30, 0))
end)
else
if rainConnection then
rainConnection:Disconnect()
rainConnection = nil
end
if rainPart then
rainPart:Destroy()
rainPart = nil
rainEmitter = nil
end
end
end
}):AddColorPicker('RainColor', {
Default = RainSettings.Color,
Title = 'Rain Color',
Callback = function(Value)
RainSettings.Color = Value
if RainSettings.Enabled then
rainParticleEmitter()
end
end
})
RainGroup:AddInput('RainLifetime', {
Default = tostring(RainSettings.Lifetime),
Numeric = true,
Finished = true,
Text = 'Lifetime',
Callback = function(Value)
local num = tonumber(Value)
if num then
RainSettings.Lifetime = num
if RainSettings.Enabled then
rainParticleEmitter()
end
end
end
})
RainGroup:AddSlider('RainRate', {
Text = 'Amount',
Default = RainSettings.Rate,
Min = 1,
Max = 10000,
Rounding = 0,
Callback = function(Value)
RainSettings.Rate = Value
if RainSettings.Enabled then
rainParticleEmitter()
end
end
})
RainGroup:AddSlider('RainSpeed', {
Text = 'Speed',
Default = RainSettings.Speed,
Min = 10,
Max = 1000,
Rounding = 0,
Callback = function(Value)
RainSettings.Speed = Value
if RainSettings.Enabled then
rainParticleEmitter()
end
end
})
RainGroup:AddToggle('SnowEnabled', {
Text = 'Snow Enabled',
Default = false,
Callback = function(Value)
SnowSettings.Enabled = Value
if Value then
snowParticleEmitter()
snowConnection = RunService.Heartbeat:Connect(function()
local camPos = Camera.CFrame.Position
snowPart.CFrame = CFrame.new(camPos + Vector3.new(0, 5, 0))
end)
else
if snowConnection then
snowConnection:Disconnect()
snowConnection = nil
end
if snowPart then
snowPart:Destroy()
snowPart = nil
snowEmitter = nil
end
end
end
}):AddColorPicker('SnowColor', {
Default = SnowSettings.Color,
Title = 'Snow Color',
Callback = function(Value)
SnowSettings.Color = Value
if SnowSettings.Enabled then
snowParticleEmitter()
end
end
})
RainGroup:AddSlider('SnowRate', {
Text = 'Snow Amount',
Default = SnowSettings.Rate,
Min = 1,
Max = 1000,
Rounding = 0,
Callback = function(Value)
SnowSettings.Rate = Value
if SnowSettings.Enabled then
snowParticleEmitter()
end
end
})
RainGroup:AddSlider('SnowSpeed', {
Text = 'Snow Speed',
Default = SnowSettings.Speed,
Min = 1,
Max = 1000,
Rounding = 0,
Callback = function(Value)
SnowSettings.Speed = Value
if SnowSettings.Enabled then
snowParticleEmitter()
end
end
})
matchacc.Movement = {
Speed = {
Enabled = false,
Keybind = false,
Speed = 20,
},
Fly = {
Enabled = false,
Keybind = false,
Speed = 20,
},
}
MovementGroup:AddToggle('SpeedEnabled', {
Text = 'Speed Enabled',
Default = false,
Callback = function(Value)
matchacc.Movement.Speed.Enabled = Value
end
}):AddKeyPicker('SpeedKey', {
Default = 'none',
SyncToggleState = true,
Mode = 'Toggle',
Text = 'Speed Key',
Callback = function(Value)
matchacc.Movement.Speed.Keybind = Value
end
})
MovementGroup:AddSlider('SpeedValue', {
Text = 'Speed',
Default = 20,
Min = 1,
Max = 100,
Rounding = 0,
Callback = function(Value)
matchacc.Movement.Speed.Speed = Value
end
})
MovementGroup:AddToggle('FlyEnabled', {
Text = 'Fly Cframe',
Default = false,
Callback = function(Value)
matchacc.Movement.Fly.Enabled = Value
end
}):AddKeyPicker('FlyKey', {
Default = 'none',
SyncToggleState = true,
Mode = 'Toggle',
Text = 'Fly Key',
Callback = function(Value)
matchacc.Movement.Fly.Keybind = Value
end
})
MovementGroup:AddSlider('FlySpeed', {
Text = 'Fly Speed',
Default = 20,
Min = 1,
Max = 100,
Rounding = 0,
Callback = function(Value)
matchacc.Movement.Fly.Speed = Value
end
})
getgenv().FlySpeed = 150
getgenv().FlightEnabled = false
getgenv().Flying = false
local IdleAnim = Instance.new("Animation")
IdleAnim.AnimationId = "rbxassetid://3541114300"
local IdleTrack, FlyTrack
local FlyAnim = Instance.new("Animation")
FlyAnim.AnimationId = "rbxassetid://3541044388"
local function CreateCore()
if workspace:FindFirstChild("Core") then workspace.Core:Destroy() end
local Core = Instance.new("Part")
Core.Name = "Core"
Core.Size = Vector3.new(0.05, 0.05, 0.05)
Core.CanCollide = false
Core.Transparency = 1
Core.Parent = workspace
local Weld = Instance.new("Weld", Core)
Weld.Part0 = Core
Weld.Part1 = localPlayer.Character.HumanoidRootPart
Weld.C0 = CFrame.new(0, 0, 0)
return Core
end
local currentMove = Vector3.zero
-- Kiểm tra có đang di chuyển không
local function IsMoving()
return currentObfuscated. The code is scrambled, so you can't read what it does. Common for key systems, but take care.
Loads code from the internet. It downloads more code when it runs (loadstring + HttpGet), which can change after it was posted. From: dsc.gg, raw.githubusercontent.com, github.com, www.roblox.com.
Everything ud (ultra detected) niggas just left their source on github😭

Universal