Run it
Copy the script and paste it into your executor.
Players = :()
RunService = :()
UserInputService = :()
VirtualUser = :()
Camera = .CurrentCamera
Mouse = Players.LocalPlayer:()
player = Players.LocalPlayer
cursorIsForced =
savedMouseBehavior =
savedMouseIconEnabled =
CURSOR_RENDER_STEP =
(visible)
visible
cursorIsForced
savedMouseBehavior = UserInputService.MouseBehavior
savedMouseIconEnabled = UserInputService.MouseIconEnabled
cursorIsForced =
(()
RunService:(CURSOR_RENDER_STEP)
RunService:(CURSOR_RENDER_STEP, .RenderPriority.Last.Value, ()
cursorIsForced
UserInputService.MouseBehavior = .MouseBehavior.Default
UserInputService.MouseIconEnabled =
)
)
UserInputService.MouseBehavior = .MouseBehavior.Default
UserInputService.MouseIconEnabled =
cursorIsForced
cursorIsForced =
(()
RunService:(CURSOR_RENDER_STEP)
)
savedMouseBehavior
UserInputService.MouseBehavior = savedMouseBehavior
savedMouseIconEnabled ~=
UserInputService.MouseIconEnabled = savedMouseIconEnabled
WINDOW_BACKGROUND_IMAGE =
BUTTON_BACKGROUND_IMAGE =
(button)
button button:()
button:()
button.BackgroundTransparency = .(button.BackgroundTransparency, )
button.ZIndex =
background = .()
background.Name =
background.Size = .(, )
background.Position = .(, )
background.BackgroundTransparency =
background.Image = BUTTON_BACKGROUND_IMAGE
background.ImageTransparency =
background.ScaleType = .ScaleType.Crop
background.BorderSizePixel =
background.Active =
background.Selectable =
background.ZIndex =
background.Parent = button
button:()
button.TextTransparency =
button.TextStrokeTransparency =
textLabel = .()
textLabel.Name =
textLabel.Size = .(, )
textLabel.Position = .(, )
textLabel.BackgroundTransparency =
textLabel.Text = button.Text
textLabel.TextColor3 = button.TextColor3
textLabel.TextStrokeColor3 = .(, , )
textLabel.TextStrokeTransparency =
textLabel.TextTransparency =
textLabel.Font = button.Font
textLabel.TextSize = button.TextSize
textLabel.TextScaled = button.TextScaled
textLabel.TextWrapped = button.TextWrapped
textLabel.TextXAlignment = button.TextXAlignment
textLabel.TextYAlignment = button.TextYAlignment
textLabel.RichText = button.RichText
textLabel.Active =
textLabel.Selectable =
textLabel.ZIndex =
textLabel.Parent = button
button:():(()
textLabel.Parent
textLabel.Text = button.Text
)
button:():(()
textLabel.Parent
textLabel.TextColor3 = button.TextColor3
)
(frame)
frame frame:()
frame:()
frame.BackgroundTransparency =
background = .()
background.Name =
background.Size = .(, )
background.Position = .(, )
background.BackgroundTransparency =
background.Image = WINDOW_BACKGROUND_IMAGE
background.ImageTransparency =
background.ScaleType = .ScaleType.Crop
background.BorderSizePixel =
background.Active =
background.Selectable =
background.ZIndex =
background.Parent = frame
_, obj (frame:())
obj:() obj ~= background
obj.ZIndex = .(obj.ZIndex + , )
_, obj (frame:())
obj:()
(obj)
()
(()
_, v (:():())
(v.Name) == (v.Name:() v.Name:() v.Name:())
v.Name = .. .(, )
)
()
PassGui = .()
PassGui.Name = .. .(, )
PassGui.ResetOnSpawn =
PassGui.Parent = player:()
()
PassFrame = .()
PassFrame.Size = .(, , , )
PassFrame.Position = .(, -, , -)
PassFrame.BackgroundColor3 = .(, , )
PassFrame.Parent = PassGui
.(, PassFrame).CornerRadius = .(, )
.(, PassFrame).Color = .(, , )
PassTitle = .()
PassTitle.Size = .(, , , )
PassTitle.BackgroundColor3 = .(, , )
PassTitle.Text =
PassTitle.TextColor3 = .(, , )
PassTitle.Font = .Font.GothamBlack
PassTitle.TextSize =
PassTitle.Parent = PassFrame
.(, PassTitle).CornerRadius = .(, )
PassLabel = .()
PassLabel.Size = .(, -, , )
PassLabel.Position = .(, , , )
PassLabel.BackgroundTransparency =
PassLabel.Text =
PassLabel.TextColor3 = .(, , )
PassLabel.Font = .Font.Gotham
PassLabel.TextSize =
PassLabel.TextXAlignment = .TextXAlignment.Left
PassLabel.Parent = PassFrame
PassBox = .()
PassBox.Size = .(, -, , )
PassBox.Position = .(, , , )
PassBox.BackgroundColor3 = .(, , )
PassBox.PlaceholderText =
PassBox.Text =
PassBox.TextColor3 = .(, , )
PassBox.Font = .Font.GothamBold
PassBox.TextSize =
PassBox.Parent = PassFrame
.(, PassBox).CornerRadius = .(, )
PassBtn = .()
PassBtn.Size = .(, -, , )
PassBtn.Position = .(, , , )
PassBtn.BackgroundColor3 = .(, , )
PassBtn.Text =
PassBtn.TextColor3 = .(, , )
PassBtn.Font = .Font.GothamBold
PassBtn.TextSize =
PassBtn.Parent = PassFrame
.(, PassBtn).CornerRadius = .(, )
DevBtn = .()
DevBtn.Size = .(, -, , )
DevBtn.Position = .(, , , )
DevBtn.BackgroundColor3 = .(, , )
DevBtn.Text =
DevBtn.TextColor3 = .(, , )
DevBtn.Font = .Font.GothamBold
DevBtn.TextSize =
DevBtn.Parent = PassFrame
.(, DevBtn).CornerRadius = .(, )
ErrorLabel = .()
ErrorLabel.Size = .(, -, , )
ErrorLabel.Position = .(, , , -)
ErrorLabel.BackgroundTransparency =
ErrorLabel.Text =
ErrorLabel.TextColor3 = .(, , )
ErrorLabel.Font = .Font.Gotham
ErrorLabel.TextSize =
ErrorLabel.Parent = PassFrame
(PassFrame)
StaffFrame = .()
StaffFrame.Size = .(, , , )
StaffFrame.BackgroundColor3 = .(, , )
StaffFrame.ZIndex =
StaffFrame.Visible =
StaffFrame.Parent = PassFrame
.(, StaffFrame).CornerRadius = .(, )
StaffTitle = .()
StaffTitle.Size = .(, , , )
StaffTitle.ZIndex =
StaffTitle.BackgroundColor3 = .(, , )
StaffTitle.Text =
StaffTitle.TextColor3 = .(, , )
StaffTitle.Font = .Font.GothamBlack
StaffTitle.TextSize =
StaffTitle.Parent = StaffFrame
.(, StaffTitle).CornerRadius = .(, )
StaffLabel = .()
StaffLabel.Size = .(, -, , )
StaffLabel.ZIndex =
StaffLabel.Position = .(, , , )
StaffLabel.BackgroundTransparency =
StaffLabel.Text =
StaffLabel.TextColor3 = .(, , )
StaffLabel.Font = .Font.Gotham
StaffLabel.TextSize =
StaffLabel.TextXAlignment = .TextXAlignment.Left
StaffLabel.Parent = StaffFrame
StaffBox = .()
StaffBox.Size = .(, -, , )
StaffBox.ZIndex =
StaffBox.Position = .(, , , )
StaffBox.BackgroundColor3 = .(, , )
StaffBox.PlaceholderText =
StaffBox.Text =
StaffBox.TextColor3 = .(, , )
StaffBox.Font = .Font.GothamBold
StaffBox.TextSize =
StaffBox.Parent = StaffFrame
.(, StaffBox).CornerRadius = .(, )
StaffBtn = .()
StaffBtn.Size = .(, -, , )
StaffBtn.ZIndex =
StaffBtn.Position = .(, , , )
StaffBtn.BackgroundColor3 = .(, , )
StaffBtn.Text =
StaffBtn.TextColor3 = .(, , )
StaffBtn.Font = .Font.GothamBold
StaffBtn.TextSize =
StaffBtn.Parent = StaffFrame
.(, StaffBtn).CornerRadius = .(, )
StaffBackBtn = .()
StaffBackBtn.Size = .(, -, , )
StaffBackBtn.ZIndex =
StaffBackBtn.Position = .(, , , )
StaffBackBtn.BackgroundColor3 = .(, , )
StaffBackBtn.Text =
StaffBackBtn.TextColor3 = .(, , )
StaffBackBtn.Font = .Font.GothamBold
StaffBackBtn.TextSize =
StaffBackBtn.Parent = StaffFrame
.(, StaffBackBtn).CornerRadius = .(, )
StaffError = .()
StaffError.Size = .(, -, , )
StaffError.ZIndex =
StaffError.Position = .(, , , -)
StaffError.BackgroundTransparency =
StaffError.Text =
StaffError.TextColor3 = .(, , )
StaffError.Font = .Font.Gotham
StaffError.TextSize =
StaffError.Parent = StaffFrame
correctPassword =
developerPassword =
scriptLoaded =
(ctx)
ScreenGui, Main, Content, Sidebar = ctx.ScreenGui, ctx.Main, ctx.Content, ctx.Sidebar
Background, categoryButtons, pages = ctx.Background, ctx.categoryButtons, ctx.pages
player, RunService, HttpService, SearchBox, ContentTitle = ctx.player, ctx.RunService, ctx.HttpService, ctx.SearchBox, ctx.ContentTitle
INITIAL_MAIN_POSITION = ctx.InitialMainPosition
Title = ctx.Title
WindowHeader = ctx.WindowHeader
WINDOW_BACKGROUND_IMAGE, BUTTON_BACKGROUND_IMAGE = ctx.WINDOW_BACKGROUND_IMAGE, ctx.BUTTON_BACKGROUND_IMAGE
State = {
primary = .(, , ), transparency = ,
background = WINDOW_BACKGROUND_IMAGE, buttonImage = BUTTON_BACKGROUND_IMAGE,
skyRGB = , skyColor = .(, , ), skyImage = ,
_skyBackup = , _skyWasCreated = , _skyName = , _skyObject = , _skyTint = ,
_skyEnvBackup = ,
_memoryPresets = {}, _connections = {},
}
skyRGBConnection, activeModal, pickerCallback = , ,
presetFolder =
(value)
id = (value ):()
id ( .. id)
(c, amount) c:(.(,,), amount)
()
activeModal activeModal:(); activeModal =
pickerCallback =
(frame, handle)
handle = handle frame
dragging, dragStart, startPos = , ,
handle.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging, dragStart, startPos = , input.Position, frame.Position
input.Changed:(()
input.UserInputState == .UserInputState.End dragging =
)
)
UserInputService.InputChanged:((input)
dragging
input.UserInputType ~= .UserInputType.MouseMovement input.UserInputType ~= .UserInputType.Touch
delta = input.Position - dragStart
frame.Position = .(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
)
(message, good)
toast = .()
toast.Name = ; toast.Size = .(, )
toast.AnchorPoint = .(, ); toast.Position = .(, , , -)
toast.BackgroundColor3 = good .(, , ) .(, , )
toast.TextColor3 = .(,,); toast.Font = .Font.GothamBold; toast.TextSize =
toast.Text = message; toast.ZIndex = ; toast.Parent = ScreenGui
.(, toast).CornerRadius = .(, )
.(, () toast.Parent toast:() )
(color)
State.primary = color
dark = (color, )
darker = (color, )
border = color:(.(,,), )
bright = color:(.(,,), )
Main.BackgroundColor3 = darker
Background Background.BackgroundColor3 = darker
Sidebar.BackgroundColor3 = (color, )
Content.BackgroundColor3 = (color, )
SearchBox.BackgroundColor3 = (color, )
SearchBox.PlaceholderColor3 = bright
Title Title.TextColor3 = bright
ContentTitle ContentTitle.TextColor3 = bright
WindowHeader WindowHeader.BackgroundColor3 = (color, )
_, btn (categoryButtons) btn.BackgroundColor3 = dark
_, root ({Main, ScreenGui})
_, obj (root:())
obj:()
obj.Color = border
obj.Transparency =
obj:()
obj.ScrollBarImageColor3 = color
obj.ScrollBarImageTransparency =
obj:()
obj.BackgroundColor3 = dark
obj.AutoButtonColor =
obj:()
obj.BackgroundColor3 = dark
obj:() obj.BorderSizePixel >
obj.BorderColor3 = border
(value)
State.transparency = .((value) State.transparency, , )
Main.Position = INITIAL_MAIN_POSITION
Main.BackgroundTransparency = State.transparency
Content.BackgroundTransparency = State.transparency
Sidebar.BackgroundTransparency = State.transparency
SearchBox.BackgroundTransparency = State.transparency
Background
Background.BackgroundTransparency =
Background.ImageTransparency = State.transparency
_, obj (Main:())
obj:() obj ~= Background
obj.BackgroundTransparency = State.transparency
obj:() obj:()
obj.ImageTransparency = State.transparency
Background
Background.BackgroundTransparency =
_, obj (Main:())
obj:() obj:() obj:()
obj.BackgroundTransparency = State.transparency
(image)
id = (image); id
State.background = id; Background.Image = id;
(image)
id = (image); id
State.buttonImage = id
_, obj (Main:())
obj:() obj.Name == obj.Image = id
()
Lighting = :()
sky = State._skyObject
sky sky.Parent
sky = Lighting:()
sky
sky = .()
sky.Name =
sky.Parent = Lighting
State._skyWasCreated =
State._skyBackup
State._skyBackup = {sky.SkyboxBk, sky.SkyboxDn, sky.SkyboxFt, sky.SkyboxLf, sky.SkyboxRt, sky.SkyboxUp}
State._skyName = sky.Name
State._skyWasCreated =
State._skyObject = sky
sky
()
Lighting = :()
State._skyEnvBackup
State._skyEnvBackup = {
Ambient = Lighting.Ambient,
OutdoorAmbient = Lighting.OutdoorAmbient,
ColorShiftTop = Lighting.ColorShift_Top,
ColorShiftBottom = Lighting.ColorShift_Bottom,
}
()
Lighting = :()
fx = Lighting:()
fx fx:()
fx fx:()
fx = .()
fx.Name =
fx.Parent = Lighting
fx
(color)
fx = ()
fx.TintColor = .(,,):(color, )
fx.Saturation =
fx.Contrast =
fx.Brightness =
(color)
State.skyColor = color
Lighting = :()
()
strength =
tint = .(,,):(color, strength)
base = State._skyEnvBackup
base
Lighting.Ambient = base.Ambient:(tint, strength)
Lighting.OutdoorAmbient = base.OutdoorAmbient:(tint, strength)
Lighting.ColorShift_Top = base.ColorShiftTop:(color, )
Lighting.ColorShift_Bottom = base.ColorShiftBottom:(color, )
(color)
()
Lighting = :()
State._skyEnvBackup
Lighting.Ambient = State._skyEnvBackup.Ambient
Lighting.OutdoorAmbient = State._skyEnvBackup.OutdoorAmbient
Lighting.ColorShift_Top = State._skyEnvBackup.ColorShiftTop
Lighting.ColorShift_Bottom = State._skyEnvBackup.ColorShiftBottom
State._skyEnvBackup =
fx = Lighting:()
fx fx:()
tint = Lighting:()
tint tint:()
State._skyTint =
()
skyRGBConnection skyRGBConnection:(); skyRGBConnection =
()
()
State.skyRGB =
()
skyRGBConnection = RunService.RenderStepped:(()
State.skyRGB
Lighting = :()
c = .((.() * ) % , , )
base = State._skyEnvBackup
base
strength =
tint = .(,,):(c, strength)
Lighting.Ambient = base.Ambient:(tint, strength)
Lighting.OutdoorAmbient = base.OutdoorAmbient:(tint, strength)
Lighting.ColorShift_Top = base.ColorShiftTop:(c, )
Lighting.ColorShift_Bottom = base.ColorShiftBottom:(c, )
(c)
)
()
Lighting = :()
tint = Lighting:()
tint tint:()
atmosphere = Lighting:()
atmosphere atmosphere:()
fx = Lighting:()
fx fx:()
(titleText, initialColor, callback)
(); pickerCallback = callback
current = initialColor .(,,)
h, ss, v = .(current)
f = .(); f.Name = ; f.Size = .(, )
f.Position = .(, -, , -); f.BackgroundColor3 = .(,,); f.ZIndex = ; f.Parent = ScreenGui
.(, f).CornerRadius = .(,); fs=.(,f); fs.Color=State.primary; fs.Thickness=
activeModal=f
head=.(); head.Size=.(,-,,); head.BackgroundColor3=(State.primary,); head.Text=titleText; head.TextColor3=.(,,); head.Font=.Font.GothamBlack; head.TextSize=; head.ZIndex=; head.Parent=f; .(,head).CornerRadius=.(,); (f,head)
close=.(); close.Size=.(,); close.Position=.(,-,,); close.Text=; close.TextColor3=.(,,); close.BackgroundColor3=(State.primary,); close.ZIndex=; close.Parent=f; .(,close).CornerRadius=.(,); close.MouseButton1Click:(closeModal)
sv=.(); sv.Size=.(,); sv.Position=.(,); sv.BorderSizePixel=; sv.BackgroundColor3=.(h,,); sv.ZIndex=; sv.Parent=f
w=.(); w.Size=.(,); w.BackgroundColor3=.(,,); w.ZIndex=; w.Parent=sv; wg=.(,w); wg.Transparency=NumberSequence.{NumberSequenceKeypoint.(,),NumberSequenceKeypoint.(,)}
b=.(); b.Size=.(,); b.BackgroundColor3=.(,,); b.ZIndex=; b.Parent=sv; bg=.(,b); bg.Transparency=NumberSequence.{NumberSequenceKeypoint.(,),NumberSequenceKeypoint.(,)}; bg.Rotation=
hue=.(); hue.Size=.(,); hue.Position=.(,); hue.BorderSizePixel=; hue.ZIndex=; hue.Parent=f
hg=.(,hue); hg.Color=ColorSequence.{ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,)),ColorSequenceKeypoint.(,.(,,))}; hg.Rotation=
svMarker=.(); svMarker.Name=; svMarker.Size=.(,); svMarker.AnchorPoint=.(,); svMarker.BackgroundTransparency=; svMarker.BorderSizePixel=; svMarker.ZIndex=; svMarker.Parent=sv
svRing=.(,svMarker); svRing.Thickness=; svRing.Color=.(,,)
.(,svMarker).CornerRadius=.(,)
hueMarker=.(); hueMarker.Name=; hueMarker.Size=.(,,,); hueMarker.AnchorPoint=.(,); hueMarker.BackgroundColor3=.(,,); hueMarker.BorderSizePixel=; hueMarker.ZIndex=; hueMarker.Parent=hue
.(,hueMarker).CornerRadius=.(,)
preview=.(); preview.Size=.(,); preview.Position=.(,); preview.BackgroundColor3=current; preview.ZIndex=; preview.Parent=f; .(,preview).CornerRadius=.(,)
(pos)
ap, sz = sv.AbsolutePosition, sv.AbsoluteSize; ss=.((pos.X-ap.X)/sz.X,,); v=-.((pos.Y-ap.Y)/sz.Y,,); current=.(h,ss,v); sv.BackgroundColor3=.(h,,); preview.BackgroundColor3=current; svMarker.Position=.(ss,,-v,)
(pos)
ap, sz = hue.AbsolutePosition, hue.AbsoluteSize; h=.((pos.Y-ap.Y)/sz.Y,,); current=.(h,ss,v); sv.BackgroundColor3=.(h,,); preview.BackgroundColor3=current; svMarker.Position=.(ss,,-v,)
svMarker.Position=.(ss,,-v,); hueMarker.Position=.(,,h,)
mode=
sv.InputBegan:((i) i.UserInputType==.UserInputType.MouseButton1 i.UserInputType==.UserInputType.Touch mode=; (i.Position) )
hue.InputBegan:((i) i.UserInputType==.UserInputType.MouseButton1 i.UserInputType==.UserInputType.Touch mode=; (i.Position) )
UserInputService.InputChanged:((i) activeModal activeModal~=f mode ; i.UserInputType==.UserInputType.MouseMovement i.UserInputType==.UserInputType.Touch mode== (i.Position) (i.Position) )
UserInputService.InputEnded:((i) i.UserInputType==.UserInputType.MouseButton1 i.UserInputType==.UserInputType.Touch mode= )
apply=.(); apply.Size=.(,); apply.Position=.(,); apply.BackgroundColor3=State.primary; apply.Text=; apply.TextColor3=.(,,); apply.Font=.Font.GothamBold; apply.ZIndex=; apply.Parent=f; .(,apply).CornerRadius=.(,)
apply.MouseButton1Click:(() pickerCallback (current) ; () )
(titleText, currentValue, callback)
(); f=.(); f.Size=.(,); f.Position=.(,-,,-); f.BackgroundColor3=.(,,); f.ZIndex=; f.Parent=ScreenGui; .(,f).CornerRadius=.(,); .(,f).Color=State.primary; activeModal=f
t=.(); t.Size=.(,-,,); t.BackgroundColor3=(State.primary,); t.Text=titleText; t.TextColor3=.(,,); t.Font=.Font.GothamBlack; t.TextSize=; t.ZIndex=; t.Parent=f; .(,t).CornerRadius=.(,); (f,t)
x=.(); x.Size=.(,); x.Position=.(,-,,); x.Text=; x.BackgroundColor3=(State.primary,); x.TextColor3=.(,,); x.ZIndex=; x.Parent=f; x.MouseButton1Click:(closeModal)
box=.(); box.Size=.(,-,,); box.Position=.(,); box.Text=(currentValue ):(,); box.PlaceholderText=; box.TextColor3=.(,,); box.BackgroundColor3=(State.primary,); box.Font=.Font.Gotham; box.TextSize=; box.ZIndex=; box.Parent=f; .(,box).CornerRadius=.(,)
ok=.(); ok.Size=.(,-,,); ok.Position=.(,); ok.BackgroundColor3=State.primary; ok.Text=; ok.TextColor3=.(,,); ok.Font=.Font.GothamBold; ok.ZIndex=; ok.Parent=f; .(,ok).CornerRadius=.(,); ok.MouseButton1Click:(() (box.Text) (,) ; () )
()
{primary={State.primary.R,State.primary.G,State.primary.B},transparency=State.transparency,background=State.background,buttonImage=State.buttonImage,skyRGB=State.skyRGB,skyColor={State.skyColor.R,State.skyColor.G,State.skyColor.B},skyImage=State.skyImage}
(name)
name = (name ):(, ); name== name=..os.()
data=(); ok,json=(() HttpService:(data) ); ok (,);
State._memoryPresets[name]=json
wrote=
(makefolder)== (() (presetFolder) )
(writefile)== wrote=(() (presetFolder....name..,json) )
(..name..(wrote ),)
(data)
data.primary (.(data.primary[] ,data.primary[] ,data.primary[] ))
data.transparency (data.transparency)
data.background (data.background)
data.buttonImage (data.buttonImage)
State.skyRGB=data.skyRGB==
data.skyColor (.(data.skyColor[] ,data.skyColor[] ,data.skyColor[] ))
State.skyRGB data.skyColor == ()
data.skyImage
sky=(); State.skyImage=data.skyImage
sky.SkyboxBk=data.skyImage; sky.SkyboxDn=data.skyImage; sky.SkyboxFt=data.skyImage; sky.SkyboxLf=data.skyImage; sky.SkyboxRt=data.skyImage; sky.SkyboxUp=data.skyImage
State.skyRGB () ()
(name)
json=State._memoryPresets[name]
json (readfile)== (() json=(presetFolder....name..) )
json (,);
ok,data=(() HttpService:(json) ); ok (data)== (data); (..name,) (,)
()
out={}; n (State._memoryPresets) .(out,n)
(listfiles)==
ok,files=(() (presetFolder) )
ok (files)== _,path (files) n=(path):(); n seen=; _,x (out) x==n seen= ; seen .(out,n)
.(out); out
()
(); f=.(); f.Size=.(,); f.Position=.(,-,,-); f.BackgroundColor3=.(,,); f.ZIndex=; f.Parent=ScreenGui; .(,f).CornerRadius=.(,); .(,f).Color=State.primary; activeModal=f
t=.(); t.Size=.(,-,,); t.BackgroundColor3=(State.primary,); t.Text=; t.TextColor3=.(,,); t.Font=.Font.GothamBlack; t.TextSize=; t.ZIndex=; t.Parent=f; .(,t).CornerRadius=.(,); (f,t)
x=.(); x.Size=.(,); x.Position=.(,-,,); x.Text=; x.BackgroundColor3=(State.primary,); x.TextColor3=.(,,); x.ZIndex=; x.Parent=f; x.MouseButton1Click:(closeModal)
list=.(); list.Size=.(,-,,-); list.Position=.(,); list.BackgroundColor3=(State.primary,); list.ScrollBarImageColor3=State.primary; list.ScrollBarThickness=; list.ZIndex=; list.Parent=f; .(,list).CornerRadius=.(,); layout=.(,list); layout.Padding=.(,)
names=()
#names== empty=.(); empty.Size=.(,-,,); empty.BackgroundTransparency=; empty.Text=; empty.TextColor3=.(,,); empty.Font=.Font.Gotham; empty.TextSize=; empty.ZIndex=; empty.Parent=list
_,name (names) b=.(); b.Size=.(,-,,); b.BackgroundColor3=(State.primary,); b.Text=..name; b.TextColor3=.(,,); b.Font=.Font.GothamBold; b.TextSize=; b.ZIndex=; b.Parent=list; .(,b).CornerRadius=.(,); b.MouseButton1Click:(() (name); () )
save=.(); save.Size=.(,-,,); save.Position=.(,,,-); save.BackgroundColor3=State.primary; save.Text=; save.TextColor3=.(,,); save.Font=.Font.GothamBold; save.ZIndex=; save.Parent=f; .(,save).CornerRadius=.(,)
save.MouseButton1Click:(()
box=.(); box.Size=.(,-,,); box.Position=.(,,,-); box.BackgroundColor3=(State.primary,); box.Text=; box.TextColor3=.(,,); box.ZIndex=; box.Parent=f; .(,box).CornerRadius=.(,); save.Visible=
ok=.(); ok.Size=.(,); ok.Position=.(,-,,-); ok.Text=; ok.BackgroundColor3=State.primary; ok.TextColor3=.(,,); ok.ZIndex=; ok.Parent=f; .(,ok).CornerRadius=.(,); ok.MouseButton1Click:(() (box.Text); () )
)
(target, color)
char=player.Character; char
target==
_,obj (char:()) obj:() obj:() obj.Color=color
target== tool=char:(); h=tool tool:(); h h:() h.Color=color ;
aliases={Head={},Torso={,,},[]={,,,},[]={,,,},[]={,,,},[]={,,,}}
_,n (aliases[target] {}) p=char:(n,); p p:() p.Color=color
()
(); f=.(); f.Size=.(,); f.Position=.(,-,,-); f.BackgroundColor3=.(,,); f.ZIndex=; f.Parent=ScreenGui; .(,f).CornerRadius=.(,); .(,f).Color=State.primary; activeModal=f
t=.(); t.Size=.(,-,,); t.BackgroundColor3=(State.primary,); t.Text=; t.TextColor3=.(,,); t.Font=.Font.GothamBlack; t.TextSize=; t.ZIndex=; t.Parent=f; .(,t).CornerRadius=.(,); (f,t)
x=.(); x.Size=.(,); x.Position=.(,-,,); x.Text=; x.BackgroundColor3=(State.primary,); x.TextColor3=.(,,); x.ZIndex=; x.Parent=f; x.MouseButton1Click:(closeModal)
selected=; parts={,,,,,,,}
list=.(); list.Size=.(,); list.Position=.(,); list.BackgroundColor3=(State.primary,); list.ScrollBarImageColor3=State.primary; list.ZIndex=; list.Parent=f; .(,list).CornerRadius=.(,); ll=.(,list); ll.Padding=.(,)
_,name (parts) b=.(); b.Size=.(,-,,); b.BackgroundColor3=(State.primary,); b.Text=name; b.TextColor3=.(,,); b.Font=.Font.GothamBold; b.TextSize=; b.ZIndex=; b.Parent=list; .(,b).CornerRadius=.(,); b.MouseButton1Click:(() selected=name )
info=.(); info.Size=.(,-,,); info.Position=.(,); info.BackgroundTransparency=; info.Text=; info.TextColor3=.(,,); info.Font=.Font.Gotham; info.TextSize=; info.TextWrapped=; info.ZIndex=; info.Parent=f
pick=.(); pick.Size=.(,-,,); pick.Position=.(,); pick.BackgroundColor3=State.primary; pick.Text=; pick.TextColor3=.(,,); pick.Font=.Font.GothamBold; pick.ZIndex=; pick.Parent=f; .(,pick).CornerRadius=.(,); pick.MouseButton1Click:(() (..selected,.(,,),(c) (selected,c) ) )
(page,text)
l=.(); l.Size=.(,-,,); l.BackgroundTransparency=; l.Text=text; l.TextColor3=State.primary; l.Font=.Font.GothamBlack; l.TextSize=; l.TextXAlignment=.TextXAlignment.Left; l.ZIndex=; l.Parent=page
(page,text,callback)
b=.(); b.Size=.(,-,,); b.BackgroundColor3=(State.primary,); b.BackgroundTransparency=; b.Text=text; b.TextColor3=.(,,); b.Font=.Font.GothamBold; b.TextSize=; b.AutoButtonColor=; b.ZIndex=; b.Parent=page; .(,b).CornerRadius=.(,); st=.(,b); st.Color=State.primary; b.MouseButton1Click:(callback); b
page=pages[]
(page,)
(page,,() (,State.primary,applyPrimaryColor) )
(page,,()
(); f=.(); f.Size=.(,); f.Position=.(,-,,-); f.BackgroundColor3=.(,,); f.ZIndex=; f.Parent=ScreenGui; .(,f).CornerRadius=.(,); .(,f).Color=State.primary; activeModal=f
t=.(); t.Size=.(,-,,); t.BackgroundColor3=(State.primary,); t.Text=; t.TextColor3=.(,,); t.Font=.Font.GothamBlack; t.ZIndex=; t.Parent=f; .(,t).CornerRadius=.(,); (f,t)
box=.(); box.Size=.(,-,,); box.Position=.(,); box.Text=(State.transparency); box.TextColor3=.(,,); box.BackgroundColor3=(State.primary,); box.ZIndex=; box.Parent=f
ok=.(); ok.Size=.(,-,,); ok.Position=.(,); ok.Text=; ok.BackgroundColor3=State.primary; ok.TextColor3=.(,,); ok.ZIndex=; ok.Parent=f; ok.MouseButton1Click:(() (box.Text); () )
)
(page,,() (,State.background,(id) (id) ) )
(page,,() (,State.buttonImage,(id) (id) ) )
(page,,()
(); f=.(); f.Size=.(,); f.Position=.(,-,,-); f.BackgroundColor3=.(,,); f.ZIndex=; f.Parent=ScreenGui; .(,f).CornerRadius=.(,); .(,f).Color=State.primary; activeModal=f
t=.(); t.Size=.(,-,,); t.BackgroundColor3=(State.primary,); t.Text=; t.TextColor3=.(,,); t.Font=.Font.GothamBlack; t.ZIndex=; t.Parent=f; (f,t)
box=.(); box.Size=.(,-,,); box.Position=.(,); box.Text=; box.TextColor3=.(,,); box.BackgroundColor3=(State.primary,); box.ZIndex=; box.Parent=f
ok=.(); ok.Size=.(,-,,); ok.Position=.(,); ok.Text=; ok.BackgroundColor3=State.primary; ok.TextColor3=.(,,); ok.ZIndex=; ok.Parent=f; ok.MouseButton1Click:(() (box.Text); () )
)
(page,,openPresetWindow)
(page,)
(page,,() (,State.skyColor,applySkyColor) )
(page,,()
State.skyRGB
(); State.skyRGB=; ()
()
)
(page,,() (,,(id)
u=(id); u
sky=()
State._skyObject=sky
sky.SkyboxBk=u; sky.SkyboxDn=u; sky.SkyboxFt=u; sky.SkyboxLf=u; sky.SkyboxRt=u; sky.SkyboxUp=u
State.skyImage=u
) )
(page,,()
Lighting=:()
sky=State._skyObject
sky sky.Parent
State._skyWasCreated
sky:()
State._skyBackup
sky.SkyboxBk=State._skyBackup[] ; sky.SkyboxDn=State._skyBackup[] ; sky.SkyboxFt=State._skyBackup[]
sky.SkyboxLf=State._skyBackup[] ; sky.SkyboxRt=State._skyBackup[] ; sky.SkyboxUp=State._skyBackup[]
ymSky=Lighting:()
ymSky ymSky:() ymSky:()
State.skyImage=; State._skyBackup=; State._skyWasCreated=; State._skyName=; State._skyObject=
(,)
)
(page,)
(page,,openSkinEditor)
State
()
scriptLoaded
scriptLoaded =
PassGui:()
()
flying, flySpeed, walkSpeed = , ,
godmode, invisible, noclip, rgb = , , ,
glue, aimbot, esp = , ,
aimScope =
aiming =
spinning, spinSpeed = ,
spinning90, spinSpeed90 = ,
moveObjects =
clickTP, killAura, bringAll = , ,
infiniteJump, noFallDamage, antiAFK, ragdoll = , , ,
skeletonESP, nameGlitch = ,
fakeLagTP, fakeLagAngles = ,
superForce =
autoClick =
forcePower =
jumpPower =
fpsCap =
fpsCounterEnabled =
crosshairEnabled =
FPSGui = .()
FPSGui.Name =
FPSGui.ResetOnSpawn =
FPSGui.Parent = player:()
FPSLabel = .()
FPSLabel.Name =
FPSLabel.Size = .(, , , )
FPSLabel.Position = .(, , , )
FPSLabel.BackgroundTransparency =
FPSLabel.Text =
FPSLabel.TextColor3 = .(, , )
FPSLabel.Font = .Font.GothamBold
FPSLabel.TextSize =
FPSLabel.TextXAlignment = .TextXAlignment.Left
FPSLabel.Active =
FPSLabel.Parent = FPSGui
fpsDragging, fpsDragStart, fpsStartPos
FPSLabel.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
fpsDragging =
fpsDragStart = input.Position
fpsStartPos = FPSLabel.Position
input.Changed:(()
input.UserInputState == .UserInputState.End fpsDragging =
)
)
UserInputService.InputChanged:((input)
fpsDragging (input.UserInputType == .UserInputType.MouseMovement input.UserInputType == .UserInputType.Touch)
delta = input.Position - fpsDragStart
FPSLabel.Position = .(fpsStartPos.X.Scale, fpsStartPos.X.Offset + delta.X, fpsStartPos.Y.Scale, fpsStartPos.Y.Offset + delta.Y)
)
()
(setfpscap) ==
(() (fpsCap) )
()
.(()
last = ()
frames =
FPSGui.Parent
RunService.RenderStepped:()
frames +=
now = ()
now - last >=
FPSLabel.Text = .(frames / (now - last) + ) ..
frames =
last = now
)
bodyGyro, bodyVelocity
rgbConnection, glueConnection, spinConnection, spin90Connection
moveConnection, clickTPConnection, killAuraConnection
bringConnection, jumpConnection, fallConnection, antiAFKConnection
skeletonConnection, nameGlitchConnection
fakeLagTPConnection, fakeLagAnglesConnection
forceConnections = {}
autoClickConnection
autoClickHeld =
gluedTarget, selectedPart
guiVisible =
highlights = {}
ragdollConstraints = {}
skeletonDrawings = {}
nameGlitchBillboard =
boxESP =
boxESPConnection =
boxESPObjects = {}
teamCheckEnabled =
visibilityCheckEnabled =
fovEnabled =
fovRadius =
debugVisible =
bigHeadEnabled =
tinyCharacterEnabled =
headlessEnabled =
characterVisualBackup = {}
(char)
characterVisualBackup.char == char
characterVisualBackup = {char = char, parts = {}, scales = {}}
head = char:()
head head:()
characterVisualBackup.parts.HeadSize = head.Size
characterVisualBackup.parts.HeadTransparency = head.Transparency
_, obj (head:())
obj:() obj:()
characterVisualBackup.parts[obj] = obj.Transparency
_, name ({, , , , })
part = char:(name)
part part:() characterVisualBackup.parts[name] = part.Size
_, obj (char:())
obj:() (obj.Name == obj.Name == obj.Name == obj.Name == )
characterVisualBackup.scales[obj.Name] = obj.Value
()
char = player.Character
char characterVisualBackup.char ~= char
head = char:()
head characterVisualBackup.parts.HeadSize
head.Size = characterVisualBackup.parts.HeadSize
head.Transparency = characterVisualBackup.parts.HeadTransparency
_, obj (head:())
(obj:() obj:()) characterVisualBackup.parts[obj] ~=
obj.Transparency = characterVisualBackup.parts[obj]
_, name ({, , , , })
part = char:(name)
original = characterVisualBackup.parts[name]
part original part.Size = original
name, value (characterVisualBackup.scales)
obj = char:(name, )
obj obj:() obj.Value = value
()
char = player.Character
char
(char)
()
head = char:()
hum = char:()
bigHeadEnabled head head:()
head.Size = characterVisualBackup.parts.HeadSize *
tinyCharacterEnabled
_, name ({, , , })
obj = char:(name, )
obj obj:() obj.Value = (characterVisualBackup.scales[name] ) *
char:(, )
_, name ({, , , , })
part = char:(name)
part part:()
original = characterVisualBackup.parts[name] part.Size
characterVisualBackup.parts[name] = original
part.Size = original *
headlessEnabled head
head.Transparency =
_, obj (head:())
obj:() obj:() obj.Transparency =
waypointSlots = {}
i = , waypointSlots[i] = {name = .. i, cframe = }
WaypointFrame
CrosshairGui = .()
CrosshairGui.Name =
CrosshairGui.ResetOnSpawn =
CrosshairGui.IgnoreGuiInset =
CrosshairGui.Parent = player:()
CrosshairDot = .()
CrosshairDot.Name =
CrosshairDot.Size = .(, )
CrosshairDot.AnchorPoint = .(, )
CrosshairDot.Position = .(, , , )
CrosshairDot.BorderSizePixel =
CrosshairDot.ZIndex =
CrosshairDot.Visible = crosshairEnabled
CrosshairDot.Parent = CrosshairGui
.(, CrosshairDot).CornerRadius = .(, )
.(()
CrosshairGui.Parent
CrosshairDot.Visible = crosshairEnabled
crosshairEnabled CrosshairDot.BackgroundColor3 = .((() * ) % , , )
RunService.RenderStepped:()
)
VisibilityESP = {}
isTeammate
isVisibleFromCamera
(plr)
obj = VisibilityESP[plr]
obj
obj.box (() obj.box:() )
VisibilityESP[plr] =
(plr)
plr == player VisibilityESP[plr]
char = plr.Character
char
highlight = .()
highlight.Name =
highlight.Adornee = char
highlight.FillTransparency =
highlight.OutlineTransparency =
highlight.DepthMode = .HighlightDepthMode.AlwaysOnTop
highlight.Enabled = visibilityCheckEnabled
highlight.Parent = char
VisibilityESP[plr] = {highlight = highlight}
()
_, plr (Players:())
plr ~= player plr.Character (plr)
char = plr.Character
root = char:()
head = char:()
hum = char:()
root head hum hum.Health >
(plr)
d = VisibilityESP[plr]
d d.highlight
visible = (root, char)
d.highlight.FillColor = visible .(, , ) .(, , )
d.highlight.Enabled = visibilityCheckEnabled
(plr)
(plr)
Players.PlayerRemoving:(removeVisibilityESP)
RunService.RenderStepped:(()
visibilityCheckEnabled
()
_, obj (VisibilityESP)
obj.highlight obj.highlight.Enabled =
)
FOVGui = .()
FOVGui.Name =
FOVGui.IgnoreGuiInset =
FOVGui.ResetOnSpawn =
FOVGui.Parent = player:()
FOVCircle = .()
FOVCircle.Name =
FOVCircle.AnchorPoint = .(, )
FOVCircle.Position = .(, )
FOVCircle.Size = .(fovRadius * , fovRadius * )
FOVCircle.BackgroundTransparency =
FOVCircle.Visible = fovEnabled
FOVCircle.ZIndex =
FOVCircle.Parent = FOVGui
fovCorner = .()
fovCorner.CornerRadius = .(, )
fovCorner.Parent = FOVCircle
fovStroke = .()
fovStroke.Thickness =
fovStroke.Parent = FOVCircle
.(()
FOVGui.Parent
FOVCircle.Visible = fovEnabled
FOVCircle.Size = .(fovRadius * , fovRadius * )
fovEnabled
fovStroke.Color = .((() * ) % , , )
RunService.RenderStepped:()
)
() player.Character
() c = () c c:()
() c = () c c:()
antiFlingEnabled =
antiFlingConnection
ANTI_FLING_SPEED =
ANTI_FLING_ANGULAR =
()
antiFlingConnection
antiFlingConnection = RunService.Heartbeat:(()
antiFlingEnabled
char = player.Character
root = char char:()
root root:()
velocity = root.AssemblyLinearVelocity
angular = root.AssemblyAngularVelocity
velocity.Magnitude > ANTI_FLING_SPEED angular.Magnitude > ANTI_FLING_ANGULAR
root.AssemblyLinearVelocity = .zero
root.AssemblyAngularVelocity = .zero
hum = char:()
hum
hum:(.HumanoidStateType.GettingUp)
)
()
antiFlingConnection
antiFlingConnection:()
antiFlingConnection =
isTeammate = (plr)
teamCheckEnabled
player.Team ~= plr.Team ~=
player.Team == plr.Team
isVisibleFromCamera = (part, char)
visibilityCheckEnabled
currentCamera = .CurrentCamera
currentCamera char false end
local origin = currentCamera.CFrame.Position
local points = {}
-- Plusieurs points évitent les faux rouges quand seule la tête est derrière un petit obstacle.
local head = char:FindFirstChild("Head")
local root = char:FindFirstChild("HumanoidRootPart")
local upper = char:FindFirstChild("UpperTorso") or char:FindFirstChild("Torso")
local lower = char:FindFirstChild("LowerTorso")
local leftArm = char:FindFirstChild("LeftUpperArm") or char:FindFirstChild("Left Arm")
local rightArm = char:FindFirstChild("RightUpperArm") or char:FindFirstChild("Right Arm")
for _, obj in ipairs({head, upper, lower, root, leftArm, rightArm, part}) do
if obj and obj:IsA("BasePart") then
table.insert(points, obj.Position)
end
end
local params = RaycastParams.new()
params.FilterType = Enum.RaycastFilterType.Exclude
params.FilterDescendantsInstances = {player.Character, char}
params.IgnoreWater = true
for _, targetPosition in ipairs(points) do
local direction = targetPosition - origin
if direction.Magnitude <= 0.01 then
return true
end
local result = workspace:Raycast(origin, direction, params)
if result == nil then
return true
end
end
return false
end
local function setWalkSpeed(v)
walkSpeed = v
local h = getHumanoid()
if h then
h.WalkSpeed = v
h:SetStateEnabled(Enum.HumanoidStateType.Running, true)
end
end
local gameSprintSpeed = nil
local function startFly()
if flying then return end
flying = true
local root, hum = getRoot(), getHumanoid()
if not root or not hum then return end
bodyGyro = Instance.new("BodyGyro")
bodyGyro.P = 9e4
bodyGyro.MaxTorque = Vector3.new(9e9, 9e9, 9e9)
bodyGyro.CFrame = root.CFrame
bodyGyro.Parent = root
bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.MaxForce = Vector3.new(9e9, 9e9, 9e9)
bodyVelocity.Parent = root
hum.PlatformStand = true
end
local function stopFly()
if not flying then return end
flying = false
if bodyGyro then bodyGyro:Destroy() end
if bodyVelocity then bodyVelocity:Destroy() end
local hum = getHumanoid()
if hum then hum.PlatformStand = false end
end
local function setInvisible(state)
local char = getChar()
if not char then return end
for _, v in pairs(char:GetDescendants()) do
if v:IsA("BasePart") then
v.Transparency = state and 1 or 0
if state then v.CanCollide = false end
elseif v:IsA("Decal") or v:IsA("Texture") then
v.Transparency = state and 1 or 0
elseif v:IsA("ParticleEmitter") or v:IsA("Trail") or v:IsA("Beam") then
v.Enabled = not state
end
end
end
local function startRGB()
if rgbConnection then rgbConnection:Disconnect() end
rgbConnection = RunService.Heartbeat:Connect(function()
if not rgb then return end
local char = getChar()
if not char then return end
local color = Color3.fromHSV((tick() % 5)/5, 1, 1)
for _, p in pairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" and p.Transparency < 0.1 then
p.Color = color
end
end
end)
end
local function stopRGB() if rgbConnection then rgbConnection:Disconnect() rgbConnection = nil end end
local function getClosestPlayer()
local closest, shortest, myRoot = nil, math.huge, getRoot()
if not myRoot then return end
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
local d = (myRoot.Position - plr.Character.HumanoidRootPart.Position).Magnitude
if d < shortest then shortest = d closest = plr end
end
end
return closest
end
local function startGlue()
if glueConnection then return end
local t = getClosestPlayer()
if not t then return end
gluedTarget = t
glueConnection = RunService.Heartbeat:Connect(function()
if not glue or not gluedTarget then return end
local myRoot = getRoot()
local tr = gluedTarget.Character and gluedTarget.Character:FindFirstChild("HumanoidRootPart")
if myRoot and tr then myRoot.CFrame = tr.CFrame * CFrame.new(0, 0, 1.5)
else stopGlue() if glue then task.wait(0.2) startGlue() end end
end)
end
local function stopGlue() if glueConnection then glueConnection:Disconnect() glueConnection = nil end gluedTarget = nil end
local function startSpin()
if spinConnection then return end
spinConnection = RunService.Heartbeat:Connect(function()
if not spinning then return end
local r = getRoot()
if r then r.CFrame = r.CFrame * CFrame.Angles(0, math.rad(spinSpeed), 0) end
end)
end
local function stopSpin() if spinConnection then spinConnection:Disconnect() spinConnection = nil end end
local function startSpin90()
if spin90Connection then return end
spin90Connection = RunService.Heartbeat:Connect(function()
if not spinning90 then return end
local r = getRoot()
if r then
r.CFrame = CFrame.new(r.Position) * CFrame.Angles(math.rad(90), math.rad(tick() * spinSpeed90), 0)
end
end)
end
local function stopSpin90() if spin90Connection then spin90Connection:Disconnect() spin90Connection = nil end end
local function startMoveObjects()
if moveConnection then return end
moveConnection = Mouse.Button1Down:Connect(function()
if not moveObjects then return end
local t = Mouse.Target
if t and t:IsA("BasePart") and not t:IsDescendantOf(player.Character) then
selectedPart = t
if selectedPart:FindFirstChild("YM_Select") then selectedPart.YM_Select:Destroy() end
local s = Instance.new("SelectionBox")
s.Name = "YM_Select"
s.Adornee = selectedPart
s.Color3 = Color3.fromRGB(255, 50, 50)
s.Parent = selectedPart
end
end)
RunService.Heartbeat:Connect(function()
if moveObjects and selectedPart and selectedPart.Parent and UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) then
selectedPart.CFrame = CFrame.new(Mouse.Hit.Position)
end
end)
end
local function stopMoveObjects()
if selectedPart and selectedPart:FindFirstChild("YM_Select") then selectedPart.YM_Select:Destroy() end
selectedPart = nil
if moveConnection then moveConnection:Disconnect() moveConnection = nil end
end
local function getPlayerUnderMouse()
local target = Mouse.Target
if not target then return nil end
local character = target:FindFirstAncestorOfClass("Model")
if not character then return nil end
local plr = Players:GetPlayerFromCharacter(character)
if not plr or plr == player or isTeammate(plr) then return nil end
local hum = character:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then return nil end
if visibilityCheckEnabled and not isVisibleFromCamera(target, character) then return nil end
return plr
end
local function stopAutoClick()
if autoClickHeld then
pcall(function()
VirtualUser:Button1Up(Vector2.new(Mouse.X, Mouse.Y), Camera.CFrame)
end)
autoClickHeld = false
end
if autoClickConnection then autoClickConnection:Disconnect() autoClickConnection = nil end
end
local function startAutoClick()
if autoClickConnection then return end
autoClickConnection = RunService.RenderStepped:Connect(function()
if not autoClick then return end
local targetPlayer = getPlayerUnderMouse()
if targetPlayer then
if not autoClickHeld then
autoClickHeld = true
pcall(function()
VirtualUser:Button1Down(Vector2.new(Mouse.X, Mouse.Y), Camera.CFrame)
end)
end
elseif autoClickHeld then
pcall(function()
VirtualUser:Button1Up(Vector2.new(Mouse.X, Mouse.Y), Camera.CFrame)
end)
autoClickHeld = false
end
end)
end
local function startClickTP()
if clickTPConnection then return end
clickTPConnection = Mouse.Button1Down:Connect(function()
if not clickTP then return end
local r = getRoot()
if r then r.CFrame = CFrame.new(Mouse.Hit.Position + Vector3.new(0, 3, 0)) end
end)
end
local function stopClickTP() if clickTPConnection then clickTPConnection:Disconnect() clickTPConnection = nil end end
local function startKillAura()
if killAuraConnection then return end
killAuraConnection = RunService.Heartbeat:Connect(function()
if not killAura then return end
local myRoot = getRoot()
if not myRoot then return end
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and not isTeammate(plr) and plr.Character then
local hum = plr.Character:FindFirstChildOfClass("Humanoid")
local root = plr.Character:FindFirstChild("HumanoidRootPart")
if hum and root and hum.Health > 0 and (myRoot.Position - root.Position).Magnitude < 15 then
pcall(function() hum.Health = 0 end)
end
end
end
end)
end
local function stopKillAura() if killAuraConnection then killAuraConnection:Disconnect() killAuraConnection = nil end end
local function startBringAll()
if bringConnection then return end
bringConnection = RunService.Heartbeat:Connect(function()
if not bringAll then return end
local myRoot = getRoot()
if not myRoot then return end
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Character then
local root = plr.Character:FindFirstChild("HumanoidRootPart")
if root then root.CFrame = myRoot.CFrame * CFrame.new(0, 0, 5) end
end
end
end)
end
local function stopBringAll() if bringConnection then bringConnection:Disconnect() bringConnection = nil end end
local function startInfiniteJump()
if jumpConnection then return end
jumpConnection = UserInputService.JumpRequest:Connect(function()
if not infiniteJump then return end
local h = getHumanoid()
if h then h:ChangeState(Enum.HumanoidStateType.Jumping) end
end)
end
local function stopInfiniteJump() if jumpConnection then jumpConnection:Disconnect() jumpConnection = nil end end
local function startNoFallDamage()
if fallConnection then return end
fallConnection = RunService.Heartbeat:Connect(function()
if not noFallDamage then return end
local h = getHumanoid()
if h and h:GetState() == Enum.HumanoidStateType.Freefall then
h:ChangeState(Enum.HumanoidStateType.GettingUp)
end
end)
end
local function stopNoFallDamage() if fallConnection then fallConnection:Disconnect() fallConnection = nil end end
local function startAntiAFK()
if antiAFKConnection then return end
antiAFKConnection = player.Idled:Connect(function()
VirtualUser:CaptureController()
VirtualUser:ClickButton2(Vector2.new())
end)
end
local function stopAntiAFK() if antiAFKConnection then antiAFKConnection:Disconnect() antiAFKConnection = nil end end
local function startRagdoll()
local char = getChar()
local hum = getHumanoid()
if not char or not hum then return end
hum.PlatformStand = true
hum:ChangeState(Enum.HumanoidStateType.Physics)
for _, v in pairs(char:GetDescendants()) do
if v:IsA("Motor6D") and v.Part0 and v.Part1 then
local att0 = Instance.new("Attachment")
att0.Name = "YM_RagA0"
att0.CFrame = v.C0
att0.Parent = v.Part0
local att1 = Instance.new("Attachment")
att1.Name = "YM_RagA1"
att1.CFrame = v.C1
att1.Parent = v.Part1
local ball = Instance.new("BallSocketConstraint")
ball.Name = "YM_Ragdoll"
ball.Attachment0 = att0
ball.Attachment1 = att1
ball.LimitsEnabled = false
ball.Parent = v.Part0
table.insert(ragdollConstraints, {motor = v, ball = ball, att0 = att0, att1 = att1})
v.Enabled = false
end
end
end
local function stopRagdoll()
local hum = getHumanoid()
if hum then
hum.PlatformStand = false
hum:ChangeState(Enum.HumanoidStateType.GettingUp)
end
for _, data in pairs(ragdollConstraints) do
if data.motor then data.motor.Enabled = true end
if data.ball then data.ball:Destroy() end
if data.att0 then data.att0:Destroy() end
if data.att1 then data.att1:Destroy() end
end
table.clear(ragdollConstraints)
end
-- ========== FORCE x1000 CORRIGÉE ==========
local function setupSuperForce(char)
for _, conn in pairs(forceConnections) do
conn:Disconnect()
end
table.clear(forceConnections)
if not superForce or not char then return end
for _, part in pairs(char:GetDescendants()) do
if part:IsA("BasePart") then
local conn = part.Touched:Connect(function(hit)
if not superForce then return end
local enemyChar = hit:FindFirstAncestorOfClass("Model")
if not enemyChar or enemyChar == char then return end
local enemyHum = enemyChar:FindFirstChildOfClass("Humanoid")
local enemyRoot = enemyChar:FindFirstChild("HumanoidRootPart")
local myRoot = getRoot()
if enemyHum and enemyRoot and myRoot and enemyHum.Health > 0 then
local direction = (enemyRoot.Position - myRoot.Position)
if direction.Magnitude < 0.8 then
direction = myRoot.CFrame.LookVector
else
direction = direction.Unit
end
local power = forcePower
enemyRoot.AssemblyLinearVelocity = direction * power + Vector3.new(0, power * 0.55, 0)
local bv = Instance.new("BodyVelocity")
bv.Velocity = direction * power + Vector3.new(0, power * 0.5, 0)
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Parent = enemyRoot
game:GetService("Debris"):AddItem(bv, 0.45)
end
end)
table.insert(forceConnections, conn)
end
end
end
-- ESP Squelette
local function clearSkeleton()
for _, drawings in pairs(skeletonDrawings) do
for _, d in pairs(drawings) do if d and d.Remove then d:Remove() end end
end
table.clear(skeletonDrawings)
end
local function startSkeletonESP()
if skeletonConnection then return end
skeletonConnection = RunService.RenderStepped:Connect(function()
if not skeletonESP then return end
clearSkeleton()
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and not isTeammate(plr) and plr.Character then
local char = plr.Character
local bones = {
{"Head","UpperTorso"},{"UpperTorso","LowerTorso"},
{"UpperTorso","LeftUpperArm"},{"LeftUpperArm","LeftLowerArm"},{"LeftLowerArm","LeftHand"},
{"UpperTorso","RightUpperArm"},{"RightUpperArm","RightLowerArm"},{"RightLowerArm","RightHand"},
{"LowerTorso","LeftUpperLeg"},{"LeftUpperLeg","LeftLowerLeg"},{"LeftLowerLeg","LeftFoot"},
{"LowerTorso","RightUpperLeg"},{"RightUpperLeg","RightLowerLeg"},{"RightLowerLeg","RightFoot"}
}
if not char:FindFirstChild("UpperTorso") then
bones = {{"Head","Torso"},{"Torso","Left Arm"},{"Torso","Right Arm"},{"Torso","Left Leg"},{"Torso","Right Leg"}}
end
local drawings = {}
for _, pair in pairs(bones) do
local p1 = char:FindFirstChild(pair[1])
local p2 = char:FindFirstChild(pair[2])
if p1 and p2 then
local pos1, on1 = Camera:WorldToViewportPoint(p1.Position)
local pos2, on2 = Camera:WorldToViewportPoint(p2.Position)
if on1 or on2 then
local line = Drawing.new("Line")
line.From = Vector2.new(pos1.X, pos1.Y)
line.To = Vector2.new(pos2.X, pos2.Y)
line.Color = Color3.fromRGB(255, 50, 50)
line.Thickness = 1.5
line.Visible = true
table.insert(drawings, line)
end
end
end
skeletonDrawings[plr] = drawings
end
end
end)
end
local function stopSkeletonESP()
if skeletonConnection then skeletonConnection:Disconnect() skeletonConnection = nil end
clearSkeleton()
end
local function clearNameHealth()
for _, bb in pairs(nameHealthBillboards) do if bb then bb:Destroy() end end
table.clear(nameHealthBillboards)
end
local function startNameGlitch()
if nameGlitchConnection then return end
local char = getChar()
if not char then return end
local head = char:FindFirstChild("Head")
if not head then return end
if nameGlitchBillboard then nameGlitchBillboard:Destroy() end
local bb = Instance.new("BillboardGui")
bb.Name = "YM_NameGlitch"
bb.Adornee = head
bb.Size = UDim2.new(0, 260, 0, 40)
bb.StudsOffset = Vector3.new(0, 3.3, 0)
bb.AlwaysOnTop = true
bb.Parent = head
local label = Instance.new("TextLabel")
label.Size = UDim2.new(1, 0, 1, 0)
label.BackgroundTransparency = 1
label.Font = Enum.Font.GothamBlack
label.TextSize = 18
label.TextStrokeTransparency = 0.3
label.Parent = bb
nameGlitchBillboard = bb
local chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#$%&*!?"
nameGlitchConnection = RunService.Heartbeat:Connect(function()
if not nameGlitch or not label or not label.Parent then return end
local glitchText = ""
for i = 1, 14 do
glitchText = glitchText .. string.sub(chars, math.random(1, #chars), math.random(1, #chars))
end
label.Text = glitchText
label.TextColor3 = Color3.fromHSV((tick() * 3) % 1, 1, 1)
end)
end
local function stopNameGlitch()
if nameGlitchConnection then nameGlitchConnection:Disconnect() nameGlitchConnection = nil end
if nameGlitchBillboard then nameGlitchBillboard:Destroy() nameGlitchBillboard = nil end
end
local function startFakeLagTP()
if fakeLagTPConnection then return end
fakeLagTPConnection = RunService.Heartbeat:Connect(function()
if not fakeLagTP then return end
local root = getRoot()
if root and math.random(1, 8) == 1 then
local offset = Vector3.new(math.random(-4, 4), 0, math.random(-4, 4))
root.CFrame = root.CFrame + offset
task.wait(0.05)
root.CFrame = root.CFrame - offset
end
end)
end
local function stopFakeLagTP() if fakeLagTPConnection then fakeLagTPConnection:Disconnect() fakeLagTPConnection = nil end end
local function startFakeLagAngles()
if fakeLagAnglesConnection then return end
fakeLagAnglesConnection = RunService.Heartbeat:Connect(function()
if not fakeLagAngles then return end
local root = getRoot()
if root then
root.CFrame = CFrame.new(root.Position) * CFrame.Angles(
math.rad(math.random(-60, 60)),
math.rad(math.random(0, 360)),
math.rad(math.random(-40, 40))
)
end
end)
end
local function stopFakeLagAngles() if fakeLagAnglesConnection then fakeLagAnglesConnection:Disconnect() fakeLagAnglesConnection = nil end end
-- ========== ESP BOX RGB + LIGNE CENTRALE + VIE + NOM + DISTANCE ==========
local function removeBoxESP(plr)
local data = boxESPObjects[plr]
if data then
for _, obj in pairs(data) do if obj and obj.Remove then pcall(function() obj:Remove() end) end end
boxESPObjects[plr] = nil
end
end
local function clearBoxESP() for plr in pairs(boxESPObjects) do removeBoxESP(plr) end end
local function startBoxESP()
if boxESPConnection then return end
boxESPConnection = RunService.RenderStepped:Connect(function()
if not boxESP then return end
local rgbColor = Color3.fromHSV((tick() * 0.25) % 1, 1, 1)
local currentCamera = workspace.CurrentCamera or Camera
if not currentCamera then return end
Camera = currentCamera
local viewport = currentCamera.ViewportSize
local screenCenter = Vector2.new(viewport.X / 2, viewport.Y / 2)
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and not isTeammate(plr) and plr.Character then
local char = plr.Character
local root, head = char:FindFirstChild("HumanoidRootPart"), char:FindFirstChild("Head")
local hum = char:FindFirstChildOfClass("Humanoid")
if root and head and hum and hum.Health > 0 then
local top3, topOn = currentCamera:WorldToViewportPoint(head.Position + Vector3.new(0, 0.35, 0))
local bot3, botOn = currentCamera:WorldToViewportPoint(root.Position - Vector3.new(0, 3, 0))
if (topOn or botOn) and top3.Z > 0 and bot3.Z > 0 then
local h = math.max(12, math.abs(bot3.Y - top3.Y)); local w = math.max(8, h * 0.55)
local x, y = top3.X - w/2, top3.Y
local d = boxESPObjects[plr]
if not d then
d = {box=Drawing.new("Square"), line=Drawing.new("Line"), healthBG=Drawing.new("Square"), health=Drawing.new("Square"), name=Drawing.new("Text"), distance=Drawing.new("Text")}
d.box.Filled=false; d.box.Thickness=2; d.line.Thickness=1.5; d.healthBG.Filled=true; d.health.Filled=true
d.name.Center=true; d.name.Outline=true; d.name.Size=13; d.name.Font=2
d.distance.Center=true; d.distance.Outline=true; d.distance.Size=11; d.distance.Font=2
boxESPObjects[plr]=d
end
d.box.Position=Vector2.new(x,y); d.box.Size=Vector2.new(w,h)
d.box.Color = rgbColor
d.box.Visible=true
d.line.From=screenCenter; d.line.To=Vector2.new(x+w/2,y+h/2)
d.line.Color = rgbColor
d.line.Visible = boxESP
d.healthBG.Visible=true
d.health.Visible=true
d.name.Visible=true
d.distance.Visible=true
local ratio=math.clamp(hum.Health/math.max(hum.MaxHealth,1),0,1); local bx=x+w+4
d.healthBG.Position=Vector2.new(bx,y); d.healthBG.Size=Vector2.new(4,h); d.healthBG.Color=Color3.fromRGB(25,25,25); d.healthBG.Visible=true
d.health.Position=Vector2.new(bx,y+h*(1-ratio)); d.health.Size=Vector2.new(4,h*ratio); d.health.Color=Color3.fromHSV(math.clamp(ratio*.33,0,.33),1,1); d.health.Visible=true
d.name.Position=Vector2.new(top3.X, y-16); d.name.Text=plr.DisplayName; d.name.Color=rgbColor; d.name.Visible=true
local myRoot=getRoot(); local dist=myRoot and (myRoot.Position-root.Position).Magnitude or 0
d.distance.Position=Vector2.new(top3.X, y+h+3); d.distance.Text=string.format("%dm", math.floor(dist+0.5)); d.distance.Color=rgbColor; d.distance.Visible=true
else removeBoxESP(plr) end
else removeBoxESP(plr) end
end
end
end)
end
local function stopBoxESP() if boxESPConnection then boxESPConnection:Disconnect(); boxESPConnection=nil end; clearBoxESP() end
local function createESP(plr)
if plr == player or highlights[plr] or isTeammate(plr) then return end
local char = plr.Character
if not char then return end
local h = Instance.new("Highlight")
h.FillColor = Color3.fromRGB(180, 0, 0)
h.OutlineColor = Color3.fromRGB(255, 40, 40)
h.FillTransparency = 0.45
h.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
h.Parent = char
highlights[plr] = h
end
local function removeESP(plr)
if highlights[plr] then highlights[plr]:Destroy() highlights[plr] = nil end
end
local function updateESP()
for _, plr in pairs(Players:GetPlayers()) do
if esp and plr.Character and not isTeammate(plr) then
createESP(plr)
else
removeESP(plr)
end
end
end
local function getClosestHead()
local closest, shortest = nil, math.huge
local currentCamera = workspace.CurrentCamera
if not currentCamera then return end
local screenCenter = currentCamera.ViewportSize * 0.5
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Character then
local head = plr.Character:FindFirstChild("Head")
local hum = plr.Character:FindFirstChildOfClass("Humanoid")
if head and hum and hum.Health > 0 then
local pos, onScreen = currentCamera:WorldToViewportPoint(head.Position)
if onScreen and pos.Z > 0 then
local d = (Vector2.new(pos.X, pos.Y) - screenCenter).Magnitude
if d < shortest then shortest = d closest = head end
end
end
end
end
return closest
end
local function teleportToPlayer(target)
if not target or target == player then return end
local myRoot = getRoot()
local tr = target.Character and target.Character:FindFirstChild("HumanoidRootPart")
if myRoot and tr then myRoot.CFrame = tr.CFrame * CFrame.new(0, 0, 3.5) end
end
local function spectatePlayer(target)
if not target or not target.Character then return end
local hum = target.Character:FindFirstChildOfClass("Humanoid")
if hum then Camera.CameraSubject = hum end
end
local function stopSpectate()
local hum = getHumanoid()
if hum then Camera.CameraSubject = hum end
end
-------------------------------------------------
-- INTERFACE - CARTOGRAPHIE 0.6 / OUTILS 0.5
-------------------------------------------------
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "Core" .. math.random(100000, 999999)
ScreenGui.ResetOnSpawn = false
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
ScreenGui.Parent = player:WaitForChild("PlayerGui")
local WINDOW_BACKGROUND_IMAGE = "rbxassetid://100446752830441"
local BUTTON_BACKGROUND_IMAGE = "rbxassetid://115507210213862"
local Main = Instance.new("Frame")
Main.Name = "Main"
Main.Size = UDim2.new(0, 720, 0, 520)
Main.Position = UDim2.new(0.5, -360, 0.5, -260)
Main.BackgroundColor3 = Color3.fromRGB(15, 5, 5)
Main.BackgroundTransparency = 0.15
Main.BorderSizePixel = 0
Main.Active = true
Main.Parent = ScreenGui
local INITIAL_MAIN_POSITION = Main.Position
Instance.new("UICorner", Main).CornerRadius = UDim.new(0, 10)
local Background = Instance.new("ImageLabel")
Background.Name = "YM_WindowBackground"
Background.Size = UDim2.fromScale(1, 1)
Background.BackgroundTransparency = 1
Background.Image = WINDOW_BACKGROUND_IMAGE
Background.ImageTransparency = 0.08
Background.ScaleType = Enum.ScaleType.Crop
Background.BorderSizePixel = 0
Background.ZIndex = 1
Background.Parent = Main
Instance.new("UICorner", Background).CornerRadius = UDim.new(0, 10)
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -30, 0, 42)
Title.Position = UDim2.new(0, 15, 0, 8)
Title.BackgroundTransparency = 1
Title.Text = "YM TOOL"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.TextStrokeTransparency = 0.15
Title.Font = Enum.Font.GothamBold
Title.TextSize = 24
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.ZIndex = 20
Title.Parent = Main
local SearchBox = Instance.new("TextBox")
SearchBox.Size = UDim2.new(1, -30, 0, 34)
SearchBox.Position = UDim2.new(0, 15, 0, 54)
SearchBox.BackgroundColor3 = Color3.fromRGB(20, 5, 5)
SearchBox.BackgroundTransparency = 0.2
SearchBox.Text = ""
SearchBox.PlaceholderText = "🔎 Rechercher un onglet / une option..."
SearchBox.PlaceholderColor3 = Color3.fromRGB(190, 170, 170)
SearchBox.TextColor3 = Color3.fromRGB(255, 255, 255)
SearchBox.Font = Enum.Font.Gotham
SearchBox.TextSize = 13
SearchBox.ClearTextOnFocus = false
SearchBox.ZIndex = 20
SearchBox.Parent = Main
Instance.new("UICorner", SearchBox).CornerRadius = UDim.new(0, 6)
local Sidebar = Instance.new("Frame")
Sidebar.Size = UDim2.new(0, 185, 1, -110)
Sidebar.Position = UDim2.new(0, 15, 0, 100)
Sidebar.BackgroundColor3 = Color3.fromRGB(10, 3, 3)
Sidebar.BackgroundTransparency = 0.2
Sidebar.BorderSizePixel = 0
Sidebar.ZIndex = 10
Sidebar.Parent = Main
Instance.new("UICorner", Sidebar).CornerRadius = UDim.new(0, 8)
-- Zone scrollable uniquement pour les boutons de catégories.
-- La fenêtre principale et la Sidebar gardent exactement leur taille.
local CategoryScroll = Instance.new("ScrollingFrame")
CategoryScroll.Name = "CategoryScroll"
CategoryScroll.Size = UDim2.new(1, -16, 1, -20)
CategoryScroll.Position = UDim2.new(0, 8, 0, 10)
CategoryScroll.BackgroundTransparency = 1
CategoryScroll.BorderSizePixel = 0
CategoryScroll.ScrollBarThickness = 5
CategoryScroll.ScrollBarImageColor3 = Color3.fromRGB(180, 0, 0)
CategoryScroll.ScrollingDirection = Enum.ScrollingDirection.Y
CategoryScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
CategoryScroll.CanvasSize = UDim2.new(0, 0, 0, 0)
CategoryScroll.Active = true
CategoryScroll.ZIndex = 20
CategoryScroll.Parent = Sidebar
local SidebarLayout = Instance.new("UIListLayout")
SidebarLayout.Padding = UDim.new(0, 7)
SidebarLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
SidebarLayout.SortOrder = Enum.SortOrder.LayoutOrder
SidebarLayout.Parent = CategoryScroll
local SidebarPadding = Instance.new("UIPadding")
SidebarPadding.PaddingTop = UDim.new(0, 0)
SidebarPadding.PaddingLeft = UDim.new(0, 0)
SidebarPadding.PaddingRight = UDim.new(0, 0)
SidebarPadding.PaddingBottom = UDim.new(0, 10)
SidebarPadding.Parent = CategoryScroll
local Content = Instance.new("Frame")
Content.Size = UDim2.new(1, -220, 1, -110)
Content.Position = UDim2.new(0, 205, 0, 100)
Content.BackgroundColor3 = Color3.fromRGB(10, 3, 3)
Content.BackgroundTransparency = 0.25
Content.BorderSizePixel = 0
Content.ZIndex = 10
Content.Parent = Main
Instance.new("UICorner", Content).CornerRadius = UDim.new(0, 8)
local ContentTitle = Instance.new("TextLabel")
ContentTitle.Size = UDim2.new(1, -24, 0, 40)
ContentTitle.Position = UDim2.new(0, 12, 0, 10)
ContentTitle.BackgroundTransparency = 1
ContentTitle.Text = "ACCUEIL"
ContentTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
ContentTitle.TextStrokeTransparency = 0.2
ContentTitle.Font = Enum.Font.GothamBold
ContentTitle.TextSize = 20
ContentTitle.TextXAlignment = Enum.TextXAlignment.Left
ContentTitle.ZIndex = 30
ContentTitle.Parent = Content
local Description = Instance.new("TextLabel")
Description.Size = UDim2.new(1, -24, 0, 82)
Description.Position = UDim2.new(0, 12, 0, 55)
Description.BackgroundTransparency = 1
Description.Text = "Bonjour, nous sommes YM TOOL ! Un tool universel pour chaque jeu et utilisation.\nNous ne sommes pas responsable de vos bannissement et nous respectons les mentions de ScriptBlox."
Description.TextColor3 = Color3.fromRGB(235, 220, 220)
Description.Font = Enum.Font.Gotham
Description.TextSize = 14
Description.TextWrapped = true
Description.TextXAlignment = Enum.TextXAlignment.Left
Description.TextYAlignment = Enum.TextYAlignment.Top
Description.ZIndex = 30
Description.Parent = Content
local ScriptBloxCounter = Instance.new("TextLabel")
ScriptBloxCounter.Size = UDim2.new(1, -24, 0, 26)
ScriptBloxCounter.Position = UDim2.new(0, 12, 0, 145)
ScriptBloxCounter.BackgroundTransparency = 1
ScriptBloxCounter.Text = "ScriptBlox • chargement..."
ScriptBloxCounter.TextColor3 = Color3.fromRGB(180, 180, 180)
ScriptBloxCounter.Font = Enum.Font.GothamBold
ScriptBloxCounter.TextSize = 12
ScriptBloxCounter.TextXAlignment = Enum.TextXAlignment.Left
ScriptBloxCounter.ZIndex = 30
ScriptBloxCounter.Parent = Content
local DiscHome = Instance.new("TextButton")
DiscHome.Size = UDim2.new(1, -24, 0, 34)
DiscHome.Position = UDim2.new(0, 12, 0, 185)
DiscHome.BackgroundColor3 = Color3.fromRGB(60, 20, 100)
DiscHome.Text = "Discord : discord.gg/cKPHdt99WG"
DiscHome.TextColor3 = Color3.fromRGB(220, 200, 255)
DiscHome.Font = Enum.Font.GothamBold
DiscHome.TextSize = 13
DiscHome.ZIndex = 30
DiscHome.Parent = Content
Instance.new("UICorner", DiscHome).CornerRadius = UDim.new(0, 6)
DiscHome.MouseButton1Click:Connect(function()
if setclipboard then
setclipboard("https://discord.gg/cKPHdt99WG")
DiscHome.Text = "✅ Lien copié !"
task.wait(1.5)
DiscHome.Text = "Discord : discord.gg/cKPHdt99WG"
end
end)
local HttpService = game:GetService("HttpService")
local function refreshScriptBloxCounter()
local ok, result = pcall(function()
return game:HttpGet("https://scriptblox.com/api/script/search?q=YM%20TOOL&max=20")
end)
if not ok then ScriptBloxCounter.Text = "ScriptBlox • indisponible" return end
local decodedOk, data = pcall(function() return HttpService:JSONDecode(result) end)
if not decodedOk or not data or not data.result or not data.result.scripts then
ScriptBloxCounter.Text = "ScriptBlox • données indisponibles"
return
end
for _, scriptData in ipairs(data.result.scripts) do
if string.lower(scriptData.title or "") == "ym tool" then
local views = tonumber(scriptData.views) or 0
ScriptBloxCounter.Text = string.format("Powered by ScriptBlox.com • %s vues", tostring(views):reverse():gsub("(%d%d%d)", "%1 "):reverse():gsub("^ ", ""))
return
end
end
ScriptBloxCounter.Text = "Powered by ScriptBlox.com • YM TOOL introuvable"
end
task.spawn(function()
while ScreenGui.Parent do
refreshScriptBloxCounter()
task.wait(60)
end
end)
local PageHolder = Instance.new("Frame")
PageHolder.Size = UDim2.new(1, -16, 1, -62)
PageHolder.Position = UDim2.new(0, 8, 0, 52)
PageHolder.BackgroundTransparency = 1
PageHolder.ZIndex = 20
PageHolder.Parent = Content
local categories = {"ACCUEIL", "VALEURS MODIFIABLE", "FUN", "PVP", "RAGEBAIT", "ONLY YOUR EYES", "BOUTONS", "PRESET", "THEME EDITOR"}
local pages = {}
local categoryButtons = {}
local activePage = nil
local searchTargets = {}
local function makePage(name)
local page = Instance.new("ScrollingFrame")
page.Name = "Page_" .. name:gsub("%W", "_")
page.Size = UDim2.fromScale(1, 1)
page.BackgroundTransparency = 1
page.BorderSizePixel = 0
page.ScrollBarThickness = 5
page.ScrollBarImageColor3 = Color3.fromRGB(180, 0, 0)
page.AutomaticCanvasSize = Enum.AutomaticSize.Y
page.Visible = false
page.ZIndex = 25
page.Parent = PageHolder
local pad = Instance.new("UIPadding")
pad.PaddingTop = UDim.new(0, 4)
pad.PaddingBottom = UDim.new(0, 10)
pad.PaddingLeft = UDim.new(0, 4)
pad.PaddingRight = UDim.new(0, 4)
pad.Parent = page
local list = Instance.new("UIListLayout")
list.Padding = UDim.new(0, 5)
list.SortOrder = Enum.SortOrder.LayoutOrder
list.Parent = page
pages[name] = page
return page
end
for _, name in ipairs(categories) do makePage(name) end
local function showCategory(name)
for n, page in pairs(pages) do page.Visible = (n == name) end
for n, btn in pairs(categoryButtons) do
btn.BackgroundTransparency = (n == name) and 0.02 or 0.15
end
ContentTitle.Text = name
Description.Visible = (name == "ACCUEIL")
ScriptBloxCounter.Visible = (name == "ACCUEIL")
DiscHome.Visible = (name == "ACCUEIL")
end
for _, name in ipairs(categories) do
local Button = Instance.new("TextButton")
Button.Size = UDim2.new(1, -16, 0, 42)
Button.BackgroundColor3 = Color3.fromRGB(25, 7, 7)
Button.BackgroundTransparency = 0.15
Button.Text = name
Button.TextColor3 = Color3.fromRGB(245, 225, 225)
Button.TextStrokeTransparency = 0.15
Button.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
Button.Font = Enum.Font.GothamBold
Button.TextSize = 12
Button.AutoButtonColor = true
Button.ZIndex = 30
Button.Parent = CategoryScroll
Instance.new("UICorner", Button).CornerRadius = UDim.new(0, 6)
categoryButtons[name] = Button
Button.MouseButton1Click:Connect(function() showCategory(name) end)
end
-- THEME EDITOR
-- Construit seulement après la création des pages et boutons.
local ThemeState = {animations = true}
local themeOk, themeResult = pcall(buildThemeEditor, {
ScreenGui = ScreenGui, Main = Main, Content = Content, Sidebar = Sidebar, Background = Background,
categoryButtons = categoryButtons, pages = pages, player = player, RunService = RunService, HttpService = HttpService,
SearchBox = SearchBox, ContentTitle = ContentTitle, Title = Title, WindowHeader = Title, InitialMainPosition = INITIAL_MAIN_POSITION,
WINDOW_BACKGROUND_IMAGE = WINDOW_BACKGROUND_IMAGE, BUTTON_BACKGROUND_IMAGE = BUTTON_BACKGROUND_IMAGE,
})
if themeOk and type(themeResult) == "table" then
ThemeState = themeResult
else
warn("YM TOOL | Theme Editor désactivé : " .. tostring(themeResult))
end
local dragging = false
local dragStart
local startPosition
Title.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPosition = Main.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then dragging = false end
end)
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
local delta = input.Position - dragStart
Main.Position = UDim2.new(startPosition.X.Scale, startPosition.X.Offset + delta.X, startPosition.Y.Scale, startPosition.Y.Offset + delta.Y)
end
end)
-- Fenêtre DEBUG séparée (créée après ScreenGui/Main pour garantir son affichage)
local DebugFrame = Instance.new("Frame")
DebugFrame.Name = "YM_DEBUG"
DebugFrame.Size = UDim2.fromOffset(300, 360)
DebugFrame.AnchorPoint = Vector2.new(0, 0.5)
DebugFrame.Position = UDim2.new(0.5, 165, 0.5, 0)
DebugFrame.BackgroundColor3 = Color3.fromRGB(8, 8, 10)
DebugFrame.Visible = false
DebugFrame.Active = true
DebugFrame.Draggable = true
DebugFrame.Parent = ScreenGui
Instance.new("UICorner", DebugFrame).CornerRadius = UDim.new(0, 10)
local debugStroke = Instance.new("UIStroke")
debugStroke.Color = Color3.fromRGB(160, 0, 0)
debugStroke.Parent = DebugFrame
local DebugTitle = Instance.new("TextLabel")
DebugTitle.Size = UDim2.new(1, -40, 0, 40)
DebugTitle.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
DebugTitle.Text = "YM TOOL | DEBUG"
DebugTitle.TextColor3 = Color3.fromRGB(220, 20, 20)
DebugTitle.Font = Enum.Font.GothamBlack
DebugTitle.TextSize = 16
DebugTitle.Parent = DebugFrame
Instance.new("UICorner", DebugTitle).CornerRadius = UDim.new(0, 10)
local DebugClose = Instance.new("TextButton")
DebugClose.Size = UDim2.fromOffset(40, 40)
DebugClose.Position = UDim2.new(1, -38, 0, 0)
DebugClose.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
DebugClose.Text = "X"
DebugClose.TextColor3 = Color3.fromRGB(255,255,255)
DebugClose.Font = Enum.Font.GothamBlack
DebugClose.TextSize = 17
DebugClose.Parent = DebugFrame
Instance.new("UICorner", DebugClose).CornerRadius = UDim.new(0, 10)
DebugClose.MouseButton1Click:Connect(function()
DebugFrame.Visible = false
debugVisible = false
end)
DebugFrame.Visible = false
DebugFrame.ZIndex = 100
local DebugStatus = Instance.new("TextLabel")
DebugStatus.Size = UDim2.new(1, -20, 0, 22)
DebugStatus.Position = UDim2.fromOffset(10, 42)
DebugStatus.BackgroundTransparency = 1
DebugStatus.Text = "● LIVE DEBUG"
DebugStatus.TextColor3 = Color3.fromRGB(0, 255, 100)
DebugStatus.Font = Enum.Font.GothamBold
DebugStatus.TextSize = 12
DebugStatus.TextXAlignment = Enum.TextXAlignment.Left
DebugStatus.Parent = DebugFrame
local DebugLabel = Instance.new("TextLabel")
DebugLabel.Size = UDim2.new(1, -20, 1, -60)
DebugLabel.Position = UDim2.fromOffset(10, 54)
DebugLabel.BackgroundTransparency = 1
DebugLabel.TextColor3 = Color3.fromRGB(220,220,220)
DebugLabel.Font = Enum.Font.Code
DebugLabel.TextSize = 13
DebugLabel.TextXAlignment = Enum.TextXAlignment.Left
DebugLabel.TextYAlignment = Enum.TextYAlignment.Top
DebugLabel.TextWrapped = false
DebugLabel.Text = "FPS : ...\nPing : ...\nPosition : ...\nVelocity : ...\nHumanoid : ...\nCamera FOV : ...\nServer : ...\nClient : LocalScript"
DebugLabel.Parent = DebugFrame
-- Tous les éléments DEBUG restent au-dessus de la fenêtre
DebugTitle.ZIndex = 101
DebugClose.ZIndex = 102
DebugStatus.ZIndex = 101
DebugLabel.ZIndex = 101
task.spawn(function()
local last = tick()
local frames = 0
local shownFPS = 0
while DebugFrame.Parent do
RunService.RenderStepped:Wait()
frames += 1
local now = tick()
if now - last >= 0.5 then
shownFPS = math.floor(frames / (now-last) + 0.5)
frames = 0
last = now
end
if debugVisible then
local currentCamera = workspace.CurrentCamera
local root = getRoot()
local hum = getHumanoid()
local pos = root and root.Position or Vector3.zero
local vel = root and root.AssemblyLinearVelocity or Vector3.zero
local state = hum and hum:GetState().Name or "N/A"
local ping = "N/A"
pcall(function()
local stats = game:GetService("Stats")
local network = stats:FindFirstChild("Network")
local serverStats = network and network:FindFirstChild("ServerStatsItem")
local item = serverStats and serverStats:FindFirstChild("Data Ping")
if item then ping = tostring(math.floor(item:GetValue())) .. " ms" end
end)
DebugLabel.Text = string.format(
"FPS : %d\nPing : %s\nPosition : %.1f, %.1f, %.1f\nVelocity : %.1f, %.1f, %.1f\nHumanoid : %s\nCamera FOV : %.1f\nServer : %s\nClient : %s",
shownFPS, ping,
pos.X, pos.Y, pos.Z,
vel.X, vel.Y, vel.Z,
state,
currentCamera and currentCamera.FieldOfView or 0,
game.JobId ~= "" and game.JobId or "N/A",
"LocalScript"
)
end
end
end)
local function buildDirectButtonUI()
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, 0, 0, 48)
Title.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
Title.Text = "YM TOOL | P pour cacher"
Title.TextColor3 = Color3.fromRGB(220, 20, 20)
Title.Font = Enum.Font.GothamBlack
Title.TextSize = 20
Title.Parent = Main
Instance.new("UICorner", Title).CornerRadius = UDim.new(0, 10)
-- Recherche rapide + compteur ScriptBlox
local function setActivePage(name)
activePage = pages[name]
return activePage
end
setActivePage("FUN")
local toggleRegistry = {}
local function createToggle(text, callback)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -10, 0, 34)
btn.BackgroundColor3 = Color3.fromRGB(20, 5, 5)
btn.Text = text .. " | OFF"
btn.TextColor3 = Color3.fromRGB(255, 55, 55)
btn.Font = Enum.Font.GothamBold
btn.TextSize = 13
btn.TextTransparency = 0
btn.TextStrokeTransparency = 0
btn.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
btn.TextXAlignment = Enum.TextXAlignment.Center
btn.TextYAlignment = Enum.TextYAlignment.Center
btn.BackgroundTransparency = 0.58
btn.BorderSizePixel = 0
btn.AutoButtonColor = false
btn.ZIndex = 20
btn.Parent = activePage
table.insert(searchTargets, {button = btn, text = text})
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 6)
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(90, 0, 0)
stroke.Parent = btn
local on = false
local function setState(state)
state = state == true
if on == state then return end
on = state
if on then
btn.Text = text .. " | ON"
btn.TextColor3 = Color3.fromRGB(90, 255, 120)
btn.BackgroundColor3 = Color3.fromRGB(10, 35, 15)
stroke.Color = Color3.fromRGB(0, 120, 40)
else
btn.Text = text .. " | OFF"
btn.TextColor3 = Color3.fromRGB(255, 55, 55)
btn.BackgroundColor3 = Color3.fromRGB(20, 5, 5)
stroke.Color = Color3.fromRGB(90, 0, 0)
end
callback(on)
end
toggleRegistry[text] = setState
btn.MouseButton1Click:Connect(function() setState(not on) end)
return setState
end
local function setToggle(name, state)
local setter = toggleRegistry[name]
if setter then setter(state) end
end
setActivePage("FUN")
createToggle("Fly", function(s) if s then startFly() else stopFly() end end)
createToggle("Anti Fling", function(s)
antiFlingEnabled = s
if s then startAntiFling() else stopAntiFling() end
end)
createToggle("Invincible", function(s) godmode = s end)
createToggle("Invisible", function(s) invisible = s setInvisible(s) end)
createToggle("Noclip", function(s) noclip = s end)
createToggle("Crosshair RGB", function(s) crosshairEnabled = s CrosshairDot.Visible = s end)
createToggle("Skin RGB", function(s) rgb = s if s then startRGB() else stopRGB() end end)
createToggle("Click TP", function(s) clickTP = s if s then startClickTP() else stopClickTP() end end)
createToggle("Pseudo Glitch", function(s) nameGlitch = s if s then startNameGlitch() else stopNameGlitch() end end)
createToggle("Infinite Jump", function(s) infiniteJump = s if s then startInfiniteJump() else stopInfiniteJump() end end)
createToggle("No Fall Damage", function(s) noFallDamage = s if s then startNoFallDamage() else stopNoFallDamage() end end)
createToggle("Anti-AFK", function(s) antiAFK = s if s then startAntiAFK() else stopAntiAFK() end end)
createToggle("Ragdoll", function(s) ragdoll = s if s then startRagdoll() else stopRagdoll() end end)
createToggle("Force x1000", function(s)
superForce = s
local char = getChar()
if char then setupSuperForce(char) end
end)
setActivePage("PVP")
createToggle("Aimbot", function(s) aimbot = s end)
createToggle("AIMSCOPE", function(s) aimScope = s end)
createToggle("FOV Circle", function(s) fovEnabled = s FOVCircle.Visible = s end)
createToggle("ESP Rouge", function(s) esp = s updateESP() end)
createToggle("ESP Box RGB + Ligne + Vie", function(s) boxESP=s if s then startBoxESP() else stopBoxESP() end end)
createToggle("ESP Squelette", function(s) skeletonESP = s if s then startSkeletonESP() else stopSkeletonESP() end end)
createToggle("Team Check", function(s)
teamCheckEnabled = s
if s then
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= player and isTeammate(plr) then
removeVisibilityESP(plr)
end
end
end
end)
createToggle("Visibility Check", function(s)
visibilityCheckEnabled = s
for _, obj in pairs(VisibilityESP) do
if obj.highlight then obj.highlight.Enabled = s end
end
if s then updateVisibilityESP() end
end)
createToggle("Autoclick", function(s) autoClick = s if s then startAutoClick() else stopAutoClick() end end)
setActivePage("RAGEBAIT")
createToggle("Toupie", function(s) spinning = s if s then startSpin() else stopSpin() end end)
createToggle("Toupie 90°", function(s) spinning90 = s if s then startSpin90() else stopSpin90() end end)
createToggle("Fake Lag TP", function(s) fakeLagTP = s if s then startFakeLagTP() else stopFakeLagTP() end end)
createToggle("Fake Lag Angles", function(s) fakeLagAngles = s if s then startFakeLagAngles() else stopFakeLagAngles() end end)
createToggle("Glue", function(s) glue = s if s then startGlue() else stopGlue() end end)
setActivePage("ONLY YOUR EYES")
createToggle("Big Head", function(s) bigHeadEnabled = s updateCharacterVisuals() end)
createToggle("Tiny Character", function(s) tinyCharacterEnabled = s updateCharacterVisuals() end)
createToggle("Headless Effect", function(s) headlessEnabled = s updateCharacterVisuals() end)
createToggle("Bring All", function(s) bringAll = s if s then startBringAll() else stopBringAll() end end)
createToggle("Kill Aura", function(s) killAura = s if s then startKillAura() else stopKillAura() end end)
createToggle("Move Objects", function(s) moveObjects = s if s then startMoveObjects() else stopMoveObjects() end end)
local function createBigBtn(text, color, callback)
local b = Instance.new("TextButton")
b.Size = UDim2.new(1, -10, 0, 34)
b.BackgroundColor3 = color
b.Text = text
b.TextColor3 = Color3.fromRGB(255, 55, 55)
b.Font = Enum.Font.GothamBold
b.TextSize = 13
b.TextTransparency = 0
b.TextStrokeTransparency = 0
b.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
b.TextXAlignment = Enum.TextXAlignment.Center
b.TextYAlignment = Enum.TextYAlignment.Center
b.BackgroundTransparency = 0.58
b.BorderSizePixel = 0
b.AutoButtonColor = false
b.ZIndex = 20
b.Parent = activePage
table.insert(searchTargets, {button = b, text = text})
Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6)
b.MouseButton1Click:Connect(callback)
end
-- Fenêtres Liste / TP / Spectate
local ListFrame = Instance.new("Frame")
ListFrame.Size = UDim2.new(0, 300, 0, 380)
ListFrame.Position = UDim2.new(0.5, -460, 0.2, 0)
ListFrame.BackgroundColor3 = Color3.fromRGB(8, 8, 10)
ListFrame.Visible = false
ListFrame.Active = true
ListFrame.Draggable = true
ListFrame.Parent = ScreenGui
Instance.new("UICorner", ListFrame).CornerRadius = UDim.new(0, 10)
Instance.new("UIStroke", ListFrame).Color = Color3.fromRGB(160, 0, 0)
local ListTitle = Instance.new("TextLabel")
ListTitle.Size = UDim2.new(1, -40, 0, 40)
ListTitle.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
ListTitle.Text = "YM TOOL | JOUEURS"
ListTitle.TextColor3 = Color3.fromRGB(220, 20, 20)
ListTitle.Font = Enum.Font.GothamBlack
ListTitle.TextSize = 15
ListTitle.Parent = ListFrame
Instance.new("UICorner", ListTitle).CornerRadius = UDim.new(0, 10)
local CloseList = Instance.new("TextButton")
CloseList.Size = UDim2.new(0, 40, 0, 40)
CloseList.Position = UDim2.new(1, -40, 0, 0)
CloseList.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
CloseList.Text = "X"
CloseList.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseList.Font = Enum.Font.GothamBlack
CloseList.TextSize = 18
CloseList.Parent = ListFrame
Instance.new("UICorner", CloseList).CornerRadius = UDim.new(0, 10)
CloseList.MouseButton1Click:Connect(function() ListFrame.Visible = false end)
local RefreshList = Instance.new("TextButton")
RefreshList.Size = UDim2.new(0.9, 0, 0, 28)
RefreshList.Position = UDim2.new(0.05, 0, 0, 48)
RefreshList.BackgroundColor3 = Color3.fromRGB(90, 0, 0)
RefreshList.Text = "🔄 Actualiser"
RefreshList.TextColor3 = Color3.fromRGB(255, 220, 220)
RefreshList.Font = Enum.Font.GothamBold
RefreshList.TextSize = 13
RefreshList.Parent = ListFrame
Instance.new("UICorner", RefreshList).CornerRadius = UDim.new(0, 5)
local ListScroll = Instance.new("ScrollingFrame")
ListScroll.Size = UDim2.new(0.9, 0, 0, 290)
ListScroll.Position = UDim2.new(0.05, 0, 0, 85)
ListScroll.BackgroundColor3 = Color3.fromRGB(15, 5, 5)
ListScroll.ScrollBarThickness = 5
ListScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
ListScroll.Parent = ListFrame
Instance.new("UICorner", ListScroll).CornerRadius = UDim.new(0, 6)
Instance.new("UIListLayout", ListScroll).Padding = UDim.new(0, 5)
local function refreshPlayerList()
for _, c in pairs(ListScroll:GetChildren()) do if c:IsA("Frame") then c:Destroy() end end
for _, plr in ipairs(Players:GetPlayers()) do
local row = Instance.new("Frame")
row.Size = UDim2.new(1, -8, 0, 48)
row.BackgroundColor3 = Color3.fromRGB(25, 8, 8)
row.Parent = ListScroll
Instance.new("UICorner", row).CornerRadius = UDim.new(0, 5)
local nameL = Instance.new("TextLabel")
nameL.Size = UDim2.new(1, -10, 0, 22)
nameL.Position = UDim2.new(0, 6, 0, 3)
nameL.BackgroundTransparency = 1
nameL.Text = plr.DisplayName .. " (@" .. plr.Name .. ")"
nameL.TextColor3 = Color3.fromRGB(255, 200, 200)
nameL.Font = Enum.Font.GothamBold
nameL.TextSize = 13
nameL.TextXAlignment = Enum.TextXAlignment.Left
nameL.Parent = row
local infoL = Instance.new("TextLabel")
infoL.Size = UDim2.new(1, -10, 0, 18)
infoL.Position = UDim2.new(0, 6, 0, 26)
infoL.BackgroundTransparency = 1
infoL.Text = "ID: " .. plr.UserId .. " | Âge: " .. plr.AccountAge .. "j"
infoL.TextColor3 = Color3.fromRGB(180, 120, 120)
infoL.Font = Enum.Font.Gotham
infoL.TextSize = 12
infoL.TextXAlignment = Enum.TextXAlignment.Left
infoL.Parent = row
end
end
RefreshList.MouseButton1Click:Connect(refreshPlayerList)
local TPFrame = Instance.new("Frame")
TPFrame.Size = UDim2.new(0, 280, 0, 360)
TPFrame.Position = UDim2.new(0.5, 170, 0.2, 0)
TPFrame.BackgroundColor3 = Color3.fromRGB(8, 8, 10)
TPFrame.Visible = false
TPFrame.Active = true
TPFrame.Draggable = true
TPFrame.Parent = ScreenGui
Instance.new("UICorner", TPFrame).CornerRadius = UDim.new(0, 10)
Instance.new("UIStroke", TPFrame).Color = Color3.fromRGB(160, 0, 0)
local TPTitle = Instance.new("TextLabel")
TPTitle.Size = UDim2.new(1, -40, 0, 40)
TPTitle.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
TPTitle.Text = "YM TOOL | TP"
TPTitle.TextColor3 = Color3.fromRGB(220, 20, 20)
TPTitle.Font = Enum.Font.GothamBlack
TPTitle.TextSize = 15
TPTitle.Parent = TPFrame
Instance.new("UICorner", TPTitle).CornerRadius = UDim.new(0, 10)
local CloseTP = Instance.new("TextButton")
CloseTP.Size = UDim2.new(0, 40, 0, 40)
CloseTP.Position = UDim2.new(1, -40, 0, 0)
CloseTP.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
CloseTP.Text = "X"
CloseTP.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseTP.Font = Enum.Font.GothamBlack
CloseTP.TextSize = 18
CloseTP.Parent = TPFrame
Instance.new("UICorner", CloseTP).CornerRadius = UDim.new(0, 10)
CloseTP.MouseButton1Click:Connect(function() TPFrame.Visible = false end)
local RefreshTP = Instance.new("TextButton")
RefreshTP.Size = UDim2.new(0.9, 0, 0, 28)
RefreshTP.Position = UDim2.new(0.05, 0, 0, 48)
RefreshTP.BackgroundColor3 = Color3.fromRGB(90, 0, 0)
RefreshTP.Text = "🔄 Actualiser"
RefreshTP.TextColor3 = Color3.fromRGB(255, 220, 220)
RefreshTP.Font = Enum.Font.GothamBold
RefreshTP.TextSize = 13
RefreshTP.Parent = TPFrame
Instance.new("UICorner", RefreshTP).CornerRadius = UDim.new(0, 5)
local TPScroll = Instance.new("ScrollingFrame")
TPScroll.Size = UDim2.new(0.9, 0, 0, 270)
TPScroll.Position = UDim2.new(0.05, 0, 0, 85)
TPScroll.BackgroundColor3 = Color3.fromRGB(15, 5, 5)
TPScroll.ScrollBarThickness = 5
TPScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
TPScroll.Parent = TPFrame
Instance.new("UICorner", TPScroll).CornerRadius = UDim.new(0, 6)
Instance.new("UIListLayout", TPScroll).Padding = UDim.new(0, 4)
local function refreshTPList()
for _, c in pairs(TPScroll:GetChildren()) do if c:IsA("TextButton") then c:Destroy() end end
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= player then
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -8, 0, 32)
btn.BackgroundColor3 = Color3.fromRGB(30, 8, 8)
btn.Text = plr.DisplayName .. " (@" .. plr.Name .. ")"
btn.TextColor3 = Color3.fromRGB(255, 200, 200)
btn.Font = Enum.Font.GothamBold
btn.TextSize = 13
btn.Parent = TPScroll
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 5)
btn.MouseButton1Click:Connect(function() teleportToPlayer(plr) end)
end
end
end
RefreshTP.MouseButton1Click:Connect(refreshTPList)
local SpecFrame = Instance.new("Frame")
SpecFrame.Size = UDim2.new(0, 280, 0, 400)
SpecFrame.Position = UDim2.new(0.5, 170, 0.18, 0)
SpecFrame.BackgroundColor3 = Color3.fromRGB(8, 8, 10)
SpecFrame.Visible = false
SpecFrame.Active = true
SpecFrame.Draggable = true
SpecFrame.Parent = ScreenGui
Instance.new("UICorner", SpecFrame).CornerRadius = UDim.new(0, 10)
Instance.new("UIStroke", SpecFrame).Color = Color3.fromRGB(160, 0, 0)
local SpecTitle = Instance.new("TextLabel")
SpecTitle.Size = UDim2.new(1, -40, 0, 40)
SpecTitle.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
SpecTitle.Text = "YM TOOL | SPECTATE"
SpecTitle.TextColor3 = Color3.fromRGB(220, 20, 20)
SpecTitle.Font = Enum.Font.GothamBlack
SpecTitle.TextSize = 15
SpecTitle.Parent = SpecFrame
Instance.new("UICorner", SpecTitle).CornerRadius = UDim.new(0, 10)
local CloseSpec = Instance.new("TextButton")
CloseSpec.Size = UDim2.new(0, 40, 0, 40)
CloseSpec.Position = UDim2.new(1, -40, 0, 0)
CloseSpec.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
CloseSpec.Text = "X"
CloseSpec.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseSpec.Font = Enum.Font.GothamBlack
CloseSpec.TextSize = 18
CloseSpec.Parent = SpecFrame
Instance.new("UICorner", CloseSpec).CornerRadius = UDim.new(0, 10)
CloseSpec.MouseButton1Click:Connect(function() SpecFrame.Visible = false end)
local StopSpecBtn = Instance.new("TextButton")
StopSpecBtn.Size = UDim2.new(0.9, 0, 0, 32)
StopSpecBtn.Position = UDim2.new(0.05, 0, 0, 48)
StopSpecBtn.BackgroundColor3 = Color3.fromRGB(160, 40, 40)
StopSpecBtn.Text = "⏹ ARRÊTER SPECTATE"
StopSpecBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
StopSpecBtn.Font = Enum.Font.GothamBold
StopSpecBtn.TextSize = 13
StopSpecBtn.Parent = SpecFrame
Instance.new("UICorner", StopSpecBtn).CornerRadius = UDim.new(0, 6)
StopSpecBtn.MouseButton1Click:Connect(stopSpectate)
local RefreshSpec = Instance.new("TextButton")
RefreshSpec.Size = UDim2.new(0.9, 0, 0, 28)
RefreshSpec.Position = UDim2.new(0.05, 0, 0, 88)
RefreshSpec.BackgroundColor3 = Color3.fromRGB(90, 0, 0)
RefreshSpec.Text = "🔄 Actualiser"
RefreshSpec.TextColor3 = Color3.fromRGB(255, 220, 220)
RefreshSpec.Font = Enum.Font.GothamBold
RefreshSpec.TextSize = 13
RefreshSpec.Parent = SpecFrame
Instance.new("UICorner", RefreshSpec).CornerRadius = UDim.new(0, 5)
local SpecScroll = Instance.new("ScrollingFrame")
SpecScroll.Size = UDim2.new(0.9, 0, 0, 265)
SpecScroll.Position = UDim2.new(0.05, 0, 0, 125)
SpecScroll.BackgroundColor3 = Color3.fromRGB(15, 5, 5)
SpecScroll.ScrollBarThickness = 5
SpecScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
SpecScroll.Parent = SpecFrame
Instance.new("UICorner", SpecScroll).CornerRadius = UDim.new(0, 6)
Instance.new("UIListLayout", SpecScroll).Padding = UDim.new(0, 4)
local function refreshSpecList()
for _, c in pairs(SpecScroll:GetChildren()) do if c:IsA("TextButton") then c:Destroy() end end
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= player then
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, -8, 0, 32)
btn.BackgroundColor3 = Color3.fromRGB(30, 8, 8)
btn.Text = plr.DisplayName .. " (@" .. plr.Name .. ")"
btn.TextColor3 = Color3.fromRGB(255, 200, 200)
btn.Font = Enum.Font.GothamBold
btn.TextSize = 13
btn.Parent = SpecScroll
Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 5)
btn.MouseButton1Click:Connect(function() spectatePlayer(plr) end)
end
end
end
RefreshSpec.MouseButton1Click:Connect(refreshSpecList)
-- FLING WINDOW : script séparé lancé depuis BOUTONS
local flingWindowStop = nil
local function launchFlingWindow()
-- Services
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Player = Players.LocalPlayer
-- GUI Setup
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "KilasikFlingGUI"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = game:GetService("CoreGui")
-- Main Frame
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 300, 0, 350)
MainFrame.Position = UDim2.new(0.5, -150, 0.5, -175)
MainFrame.BackgroundColor3 = Color3.fromRGB(15, 5, 5)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Parent = ScreenGui
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 6)
MainCorner.Parent = MainFrame
local MainStroke = Instance.new("UIStroke")
MainStroke.Color = Color3.fromRGB(100, 0, 0)
MainStroke.Thickness = 1
MainStroke.Transparency = 0.15
MainStroke.Parent = MainFrame
-- Title Bar
local TitleBar = Instance.new("Frame")
TitleBar.Size = UDim2.new(1, 0, 0, 30)
TitleBar.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
TitleBar.BorderSizePixel = 0
TitleBar.Parent = MainFrame
local TitleCorner = Instance.new("UICorner")
TitleCorner.CornerRadius = UDim.new(0, 6)
TitleCorner.Parent = TitleBar
-- Title
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -30, 1, 0)
Title.BackgroundTransparency = 1
Title.Text = "YM MULTI-FLING"
Title.TextColor3 = Color3.fromRGB(255, 70, 70)
Title.Font = Enum.Font.SourceSansBold
Title.TextSize = 18
Title.Parent = TitleBar
-- Close Button
local CloseButton = Instance.new("TextButton")
CloseButton.Position = UDim2.new(1, -30, 0, 0)
CloseButton.Size = UDim2.new(0, 30, 0, 30)
CloseButton.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
CloseButton.BorderSizePixel = 0
CloseButton.Text = "X"
CloseButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseButton.Font = Enum.Font.SourceSansBold
CloseButton.TextSize = 18
CloseButton.Parent = TitleBar
local CloseButtonCorner = Instance.new("UICorner")
CloseButtonCorner.CornerRadius = UDim.new(0, 4)
CloseButtonCorner.Parent = CloseButton
-- Status Label
local StatusLabel = Instance.new("TextLabel")
StatusLabel.Position = UDim2.new(0, 10, 0, 40)
StatusLabel.Size = UDim2.new(1, -20, 0, 25)
StatusLabel.BackgroundTransparency = 1
StatusLabel.Text = "Select targets to fling"
StatusLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
StatusLabel.Font = Enum.Font.SourceSans
StatusLabel.TextSize = 16
StatusLabel.TextXAlignment = Enum.TextXAlignment.Left
StatusLabel.Parent = MainFrame
-- Player Selection Frame
local SelectionFrame = Instance.new("Frame")
SelectionFrame.Position = UDim2.new(0, 10, 0, 70)
SelectionFrame.Size = UDim2.new(1, -20, 0, 200)
SelectionFrame.BackgroundColor3 = Color3.fromRGB(10, 3, 3)
SelectionFrame.BorderSizePixel = 0
SelectionFrame.Parent = MainFrame
local SelectionCorner = Instance.new("UICorner")
SelectionCorner.CornerRadius = UDim.new(0, 4)
SelectionCorner.Parent = SelectionFrame
local SelectionStroke = Instance.new("UIStroke")
SelectionStroke.Color = Color3.fromRGB(70, 0, 0)
SelectionStroke.Thickness = 1
SelectionStroke.Transparency = 0.25
SelectionStroke.Parent = SelectionFrame
-- Player List ScrollFrame
local PlayerScrollFrame = Instance.new("ScrollingFrame")
PlayerScrollFrame.Position = UDim2.new(0, 5, 0, 5)
PlayerScrollFrame.Size = UDim2.new(1, -10, 1, -10)
PlayerScrollFrame.BackgroundTransparency = 1
PlayerScrollFrame.BorderSizePixel = 0
PlayerScrollFrame.ScrollBarThickness = 6
PlayerScrollFrame.CanvasSize = UDim2.new(0, 0, 0, 0)
PlayerScrollFrame.Parent = SelectionFrame
-- Start Fling Button
local StartButton = Instance.new("TextButton")
StartButton.Position = UDim2.new(0, 10, 0, 280)
StartButton.Size = UDim2.new(0.5, -15, 0, 40)
StartButton.BackgroundColor3 = Color3.fromRGB(25, 7, 7)
StartButton.BorderSizePixel = 0
StartButton.Text = "START FLING"
StartButton.TextColor3 = Color3.fromRGB(255, 255, 255)
StartButton.Font = Enum.Font.SourceSansBold
StartButton.TextSize = 18
StartButton.Parent = MainFrame
local StartButtonCorner = Instance.new("UICorner")
StartButtonCorner.CornerRadius = UDim.new(0, 4)
StartButtonCorner.Parent = StartButton
-- Stop Fling Button
local StopButton = Instance.new("TextButton")
StopButton.Position = UDim2.new(0.5, 5, 0, 280)
StopButton.Size = UDim2.new(0.5, -15, 0, 40)
StopButton.BackgroundColor3 = Color3.fromRGB(110, 0, 0)
StopButton.BorderSizePixel = 0
StopButton.Text = "STOP FLING"
StopButton.TextColor3 = Color3.fromRGB(255, 255, 255)
StopButton.Font = Enum.Font.SourceSansBold
StopButton.TextSize = 18
StopButton.Parent = MainFrame
local StopButtonCorner = Instance.new("UICorner")
StopButtonCorner.CornerRadius = UDim.new(0, 4)
StopButtonCorner.Parent = StopButton
-- Select/Deselect Buttons
local SelectAllButton = Instance.new("TextButton")
SelectAllButton.Position = UDim2.new(0, 10, 0, 330)
SelectAllButton.Size = UDim2.new(0.5, -15, 0, 30)
SelectAllButton.BackgroundColor3 = Color3.fromRGB(25, 7, 7)
SelectAllButton.BorderSizePixel = 0
SelectAllButton.Text = "SELECT ALL"
SelectAllButton.TextColor3 = Color3.fromRGB(255, 255, 255)
SelectAllButton.Font = Enum.Font.SourceSans
SelectAllButton.TextSize = 14
SelectAllButton.Parent = MainFrame
local SelectAllButtonCorner = Instance.new("UICorner")
SelectAllButtonCorner.CornerRadius = UDim.new(0, 4)
SelectAllButtonCorner.Parent = SelectAllButton
local DeselectAllButton = Instance.new("TextButton")
DeselectAllButton.Position = UDim2.new(0.5, 5, 0, 330)
DeselectAllButton.Size = UDim2.new(0.5, -15, 0, 30)
DeselectAllButton.BackgroundColor3 = Color3.fromRGB(25, 7, 7)
DeselectAllButton.BorderSizePixel = 0
DeselectAllButton.Text = "DESELECT ALL"
DeselectAllButton.TextColor3 = Color3.fromRGB(255, 255, 255)
DeselectAllButton.Font = Enum.Font.SourceSans
DeselectAllButton.TextSize = 14
DeselectAllButton.Parent = MainFrame
for _, button in ipairs({CloseButton, StartButton, StopButton, SelectAllButton, DeselectAllButton}) do
button.AutoButtonColor = false
button.MouseEnter:Connect(function()
button.BackgroundTransparency = 0.12
end)
button.MouseLeave:Connect(function()
button.BackgroundTransparency = 0
end)
end
local DeselectAllButtonCorner = Instance.new("UICorner")
DeselectAllButtonCorner.CornerRadius = UDim.new(0, 4)
DeselectAllButtonCorner.Parent = DeselectAllButton
-- Variables
local SelectedTargets = {}
local PlayerCheckboxes = {}
local FlingActive = false
local FlingConnection = nil
getgenv().OldPos = nil
getgenv().FPDH = workspace.FallenPartsDestroyHeight
-- Function to update player list
local function RefreshPlayerList()
-- Clear existing player entries
for _, child in pairs(PlayerScrollFrame:GetChildren()) do
child:Destroy()
end
PlayerCheckboxes = {}
-- Get players and sort them
local PlayerList = Players:GetPlayers()
table.sort(PlayerList, function(a, b) return a.Name:lower() < b.Name:lower() end)
-- Create entries for each player
local yPosition = 5
for _, player in ipairs(PlayerList) do
if player ~= Player then -- Don't include yourself
-- Create player entry frame
local PlayerEntry = Instance.new("Frame")
PlayerEntry.Size = UDim2.new(1, -10, 0, 30)
PlayerEntry.Position = UDim2.new(0, 5, 0, yPosition)
PlayerEntry.BackgroundColor3 = Color3.fromRGB(20, 5, 5)
PlayerEntry.BorderSizePixel = 0
PlayerEntry.Parent = PlayerScrollFrame
-- Create checkbox
local Checkbox = Instance.new("TextButton")
Checkbox.Size = UDim2.new(0, 24, 0, 24)
Checkbox.Position = UDim2.new(0, 3, 0.5, -12)
Checkbox.BackgroundColor3 = Color3.fromRGB(25, 8, 8)
Checkbox.BorderSizePixel = 0
Checkbox.Text = ""
Checkbox.Parent = PlayerEntry
-- Checkmark (initially invisible)
local Checkmark = Instance.new("TextLabel")
Checkmark.Size = UDim2.new(1, 0, 1, 0)
Checkmark.BackgroundTransparency = 1
Checkmark.Text = "✓"
Checkmark.TextColor3 = Color3.fromRGB(0, 255, 0)
Checkmark.TextSize = 18
Checkmark.Font = Enum.Font.SourceSansBold
Checkmark.Visible = SelectedTargets[player.Name] ~= nil
Checkmark.Parent = Checkbox
-- Player name label
local NameLabel = Instance.new("TextLabel")
NameLabel.Size = UDim2.new(1, -35, 1, 0)
NameLabel.Position = UDim2.new(0, 30, 0, 0)
NameLabel.BackgroundTransparency = 1
NameLabel.Text = player.Name
NameLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
NameLabel.TextSize = 16
NameLabel.Font = Enum.Font.SourceSans
NameLabel.TextXAlignment = Enum.TextXAlignment.Left
NameLabel.Parent = PlayerEntry
-- Make entire entry clickable
local ClickArea = Instance.new("TextButton")
ClickArea.Size = UDim2.new(1, 0, 1, 0)
ClickArea.BackgroundTransparency = 1
ClickArea.Text = ""
ClickArea.ZIndex = 2
ClickArea.Parent = PlayerEntry
-- Selection toggle on click
ClickArea.MouseButton1Click:Connect(function()
if SelectedTargets[player.Name] then
SelectedTargets[player.Name] = nil
Checkmark.Visible = false
else
SelectedTargets[player.Name] = player
Checkmark.Visible = true
end
UpdateStatus()
end)
-- Store reference to this player's UI
PlayerCheckboxes[player.Name] = {
Entry = PlayerEntry,
Checkmark = Checkmark
}
yPosition = yPosition + 35
end
end
-- Update scrollframe canvas size
PlayerScrollFrame.CanvasSize = UDim2.new(0, 0, 0, yPosition + 5)
end
-- Count selected targets
local function CountSelectedTargets()
local count = 0
for _ in pairs(SelectedTargets) do
count = count + 1
end
return count
end
-- Update status display
local function UpdateStatus()
local count = CountSelectedTargets()
if FlingActive then
StatusLabel.Text = "Flinging " .. count .. " target(s)"
StatusLabel.TextColor3 = Color3.fromRGB(255, 80, 80)
else
StatusLabel.Text = count .. " target(s) selected"
StatusLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
end
end
-- Function to select/deselect all players
local function ToggleAllPlayers(select)
for _, player in ipairs(Players:GetPlayers()) do
if player ~= Player then
local checkboxData = PlayerCheckboxes[player.Name]
if checkboxData then
if select then
SelectedTargets[player.Name] = player
checkboxData.Checkmark.Visible = true
else
SelectedTargets[player.Name] = nil
checkboxData.Checkmark.Visible = false
end
end
end
end
UpdateStatus()
end
-- Show notification
local function Message(Title, Text, Time)
game:GetService("StarterGui"):SetCore("SendNotification", {
Title = Title,
Text = Text,
Duration = Time or 5
})
end
-- The fling function from zqyDSUWX
local function SkidFling(TargetPlayer)
local Character = Player.Character
local Humanoid = Character and Character:FindFirstChildOfClass("Humanoid")
local RootPart = Humanoid and Humanoid.RootPart
local TCharacter = TargetPlayer.Character
if not TCharacter then return end
local THumanoid
local TRootPart
local THead
local Accessory
local Handle
if TCharacter:FindFirstChildOfClass("Humanoid") then
THumanoid = TCharacter:FindFirstChildOfClass("Humanoid")
end
if THumanoid and THumanoid.RootPart then
TRootPart = THumanoid.RootPart
end
if TCharacter:FindFirstChild("Head") then
THead = TCharacter.Head
end
if TCharacter:FindFirstChildOfClass("Accessory") then
Accessory = TCharacter:FindFirstChildOfClass("Accessory")
end
if Accessory and Accessory:FindFirstChild("Handle") then
Handle = Accessory.Handle
end
if Character and Humanoid and RootPart then
if RootPart.Velocity.Magnitude < 50 then
getgenv().OldPos = RootPart.CFrame
end
if THumanoid and THumanoid.Sit then
return Message("Error", TargetPlayer.Name .. " is sitting", 2)
end
if THead then
workspace.CurrentCamera.CameraSubject = THead
elseif Handle then
workspace.CurrentCamera.CameraSubject = Handle
elseif THumanoid and TRootPart then
workspace.CurrentCamera.CameraSubject = THumanoid
end
if not TCharacter:FindFirstChildWhichIsA("BasePart") then
return
end
local FPos = function(BasePart, Pos, Ang)
RootPart.CFrame = CFrame.new(BasePart.Position) * Pos * Ang
Character:SetPrimaryPartCFrame(CFrame.new(BasePart.Position) * Pos * Ang)
RootPart.Velocity = Vector3.new(9e7, 9e7 * 10, 9e7)
RootPart.RotVelocity = Vector3.new(9e8, 9e8, 9e8)
end
local SFBasePart = function(BasePart)
local TimeToWait = 2
local Time = tick()
local Angle = 0
repeat
if RootPart and THumanoid then
if BasePart.Velocity.Magnitude < 50 then
Angle = Angle + 100
FPos(BasePart, CFrame.new(0, 1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle),0 ,0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, 1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle),0 ,0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0) + THumanoid.MoveDirection * BasePart.Velocity.Magnitude / 1.25, CFrame.Angles(math.rad(Angle), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, 1.5, 0) + THumanoid.MoveDirection, CFrame.Angles(math.rad(Angle),0 ,0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0) + THumanoid.MoveDirection, CFrame.Angles(math.rad(Angle), 0, 0))
task.wait()
else
FPos(BasePart, CFrame.new(0, 1.5, THumanoid.WalkSpeed), CFrame.Angles(math.rad(90), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, -THumanoid.WalkSpeed), CFrame.Angles(0, 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, 1.5, THumanoid.WalkSpeed), CFrame.Angles(math.rad(90), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(math.rad(90), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(0, 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(math.rad(90), 0, 0))
task.wait()
FPos(BasePart, CFrame.new(0, -1.5, 0), CFrame.Angles(0, 0, 0))
task.wait()
end
end
until Time + TimeToWait < tick() or not FlingActive
end
workspace.FallenPartsDestroyHeight = 0/0
local BV = Instance.new("BodyVelocity")
BV.Parent = RootPart
BV.Velocity = Vector3.new(0, 0, 0)
BV.MaxForce = Vector3.new(9e9, 9e9, 9e9)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, false)
if TRootPart then
SFBasePart(TRootPart)
elseif THead then
SFBasePart(THead)
elseif Handle then
SFBasePart(Handle)
else
return Message("Error", TargetPlayer.Name .. " has no valid parts", 2)
end
BV:Destroy()
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Seated, true)
workspace.CurrentCamera.CameraSubject = Humanoid
-- Reset character position
if getgenv().OldPos then
repeat
RootPart.CFrame = getgenv().OldPos * CFrame.new(0, .5, 0)
Character:SetPrimaryPartCFrame(getgenv().OldPos * CFrame.new(0, .5, 0))
Humanoid:ChangeState("GettingUp")
for _, part in pairs(Character:GetChildren()) do
if part:IsA("BasePart") then
part.Velocity, part.RotVelocity = Vector3.new(), Vector3.new()
end
end
task.wait()
until (RootPart.Position - getgenv().OldPos.p).Magnitude < 25
workspace.FallenPartsDestroyHeight = getgenv().FPDH
end
else
return Message("Error", "Your character is not ready", 2)
end
end
-- Start flinging selected targets
local function StartFling()
if FlingActive then return end
local count = CountSelectedTargets()
if count == 0 then
StatusLabel.Text = "No targets selected!"
wait(1)
StatusLabel.Text = "Select targets to fling"
return
end
FlingActive = true
UpdateStatus()
Message("Started", "Flinging " .. count .. " targets", 2)
-- Start flinger in separate thread
spawn(function()
while FlingActive do
local validTargets = {}
-- Process all targets first to determine which are valid
for name, player in pairs(SelectedTargets) do
if player and player.Parent then
validTargets[name] = player
else
-- Remove players who left
SelectedTargets[name] = nil
local checkbox = PlayerCheckboxes[name]
if checkbox then
checkbox.Checkmark.Visible = false
end
end
end
-- Then attempt to fling each valid target
for _, player in pairs(validTargets) do
if FlingActive then
SkidFling(player)
-- Brief wait between targets to allow movement to reset
wait(0.1)
else
break
end
end
-- Update status periodically
UpdateStatus()
-- Wait a moment before starting next fling cycle
wait(0.5)
end
end)
end
-- Stop flinging
local function StopFling()
if not FlingActive then return end
FlingActive = false
UpdateStatus()
Message("Stopped", "Fling has been stopped", 2)
end
-- Set up button connections
StartButton.MouseButton1Click:Connect(StartFling)
StopButton.MouseButton1Click:Connect(StopFling)
SelectAllButton.MouseButton1Click:Connect(function() ToggleAllPlayers(true) end)
DeselectAllButton.MouseButton1Click:Connect(function() ToggleAllPlayers(false) end)
CloseButton.MouseButton1Click:Connect(function()
StopFling()
ScreenGui:Destroy()
end)
-- Handle player joining/leaving
Players.PlayerAdded:Connect(RefreshPlayerList)
Players.PlayerRemoving:Connect(function(player)
if SelectedTargets[player.Name] then
SelectedTargets[player.Name] = nil
end
RefreshPlayerList()
UpdateStatus()
end)
-- Initialize
RefreshPlayerList()
UpdateStatus()
-- Success message
Message("Loaded", "YM MULTI-FLING loaded!", 3)
return function()
pcall(function() StopFling() end)
pcall(function() ScreenGui:Destroy() end)
end
end
setActivePage("BOUTONS")
createBigBtn("YM FLING", Color3.fromRGB(110, 0, 0), function()
if flingWindowStop then
pcall(flingWindowStop)
flingWindowStop = nil
end
flingWindowStop = launchFlingWindow()
end)
createBigBtn("📋 LISTE DES JOUEURS", Color3.fromRGB(90, 0, 0), function()
ListFrame.Visible = not ListFrame.Visible
if ListFrame.Visible then refreshPlayerList() end
end)
createBigBtn("📍 TP SUR UN JOUEUR", Color3.fromRGB(110, 0, 0), function()
TPFrame.Visible = not TPFrame.Visible
if TPFrame.Visible then refreshTPList() end
end)
createBigBtn("👁 SPECTATE JOUEUR", Color3.fromRGB(80, 20, 120), function()
SpecFrame.Visible = not SpecFrame.Visible
if SpecFrame.Visible then refreshSpecList() end
end)
createBigBtn("🛠 DEBUG", Color3.fromRGB(90, 0, 0), function()
DebugFrame.Visible = not DebugFrame.Visible
debugVisible = DebugFrame.Visible
end)
-- =====================================================
-- PRESETS RAPIDES
-- Les presets pilotent les vrais toggles existants.
-- =====================================================
local function applyToggleSet(map)
for name, state in pairs(map) do
setToggle(name, state)
end
end
local presetPage = pages["PRESET"]
local presetStates = {}
local presetCards = {}
local function addPresetCard(name, description, onApply, offApply)
local card = Instance.new("Frame")
card.Size = UDim2.new(1, -10, 0, 82)
card.BackgroundColor3 = Color3.fromRGB(18, 5, 5)
card.BackgroundTransparency = 0.15
card.BorderSizePixel = 0
card.ZIndex = 20
card.Parent = presetPage
Instance.new("UICorner", card).CornerRadius = UDim.new(0, 8)
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(90, 0, 0)
stroke.Parent = card
local button = Instance.new("TextButton")
button.Size = UDim2.new(1, -20, 0, 38)
button.Position = UDim2.fromOffset(10, 8)
button.BackgroundColor3 = Color3.fromRGB(28, 7, 7)
button.BackgroundTransparency = 0.05
button.Text = name .. " | OFF"
button.TextColor3 = Color3.fromRGB(255, 70, 70)
button.Font = Enum.Font.GothamBlack
button.TextSize = 13
button.AutoButtonColor = false
button.ZIndex = 21
button.Parent = card
Instance.new("UICorner", button).CornerRadius = UDim.new(0, 6)
local tip = Instance.new("TextLabel")
tip.Size = UDim2.new(1, -20, 0, 25)
tip.Position = UDim2.fromOffset(10, 49)
tip.BackgroundTransparency = 1
tip.Text = description
tip.TextColor3 = Color3.fromRGB(190, 150, 150)
tip.Font = Enum.Font.Gotham
tip.TextSize = 11
tip.TextXAlignment = Enum.TextXAlignment.Left
tip.TextTruncate = Enum.TextTruncate.AtEnd
tip.Visible = false
tip.ZIndex = 22
tip.Parent = card
local state = false
presetStates[name] = function(value)
value = value == true
if state == value then return end
state = value
if state then
button.Text = name .. " | ON"
button.TextColor3 = Color3.fromRGB(90, 255, 120)
button.BackgroundColor3 = Color3.fromRGB(10, 35, 15)
stroke.Color = Color3.fromRGB(0, 120, 40)
onApply()
else
button.Text = name .. " | OFF"
button.TextColor3 = Color3.fromRGB(255, 70, 70)
button.BackgroundColor3 = Color3.fromRGB(28, 7, 7)
stroke.Color = Color3.fromRGB(90, 0, 0)
offApply()
end
end
button.MouseButton1Click:Connect(function() presetStates[name](not state) end)
button.MouseEnter:Connect(function() tip.Visible = true end)
button.MouseLeave:Connect(function() tip.Visible = false end)
presetCards[name] = button
end
addPresetCard("PRESET RGB", "Crosshair RGB + Skin RGB + ESP Box RGB + FOV RGB + Pseudo Glitch",
function()
applyToggleSet({
["Crosshair RGB"] = true,
["Skin RGB"] = true,
["ESP Box RGB + Ligne + Vie"] = true,
["FOV Circle"] = true,
["Pseudo Glitch"] = true,
})
end,
function()
applyToggleSet({["Crosshair RGB"] = false,["Skin RGB"] = false,["ESP Box RGB + Ligne + Vie"] = false,["FOV Circle"] = false,["Pseudo Glitch"] = false})
end)
addPresetCard("PRESET PVP", "AIMSCOPE + FOV + ESP Box RGB + Squelette + Visibility + Autoclick + Anti Fling",
function()
applyToggleSet({
["Aimbot"] = false, ["ESP Rouge"] = false, ["Team Check"] = false,
["AIMSCOPE"] = true, ["FOV Circle"] = true,
["ESP Box RGB + Ligne + Vie"] = true, ["ESP Squelette"] = true,
["Visibility Check"] = true, ["Autoclick"] = true, ["Anti Fling"] = true,
})
end,
function()
applyToggleSet({["AIMSCOPE"] = false,["FOV Circle"] = false,["ESP Box RGB + Ligne + Vie"] = false,["ESP Squelette"] = false,["Visibility Check"] = false,["Autoclick"] = false,["Anti Fling"] = false})
end)
addPresetCard("PRESET RAGEBAIT", "Toupie + Fake Lag TP + ouvre la fenêtre YM FLING",
function()
applyToggleSet({["Toupie"] = true, ["Fake Lag TP"] = true})
if flingWindowStop then pcall(flingWindowStop) end
flingWindowStop = launchFlingWindow()
end,
function()
applyToggleSet({["Toupie"] = false, ["Fake Lag TP"] = false})
if flingWindowStop then pcall(flingWindowStop); flingWindowStop = nil end
end)
addPresetCard("PRESET FUN", "Fly + Toupie + Invisible + Pseudo Glitch + Noclip + Force x1000 + Anti-AFK",
function()
applyToggleSet({
["Fly"] = true, ["Toupie"] = true, ["Invisible"] = true,
["Pseudo Glitch"] = true, ["Noclip"] = true, ["Force x1000"] = true, ["Anti-AFK"] = true,
})
end,
function()
applyToggleSet({["Fly"] = false,["Toupie"] = false,["Invisible"] = false,["Pseudo Glitch"] = false,["Noclip"] = false,["Force x1000"] = false,["Anti-AFK"] = false})
end)
-- Fenêtre WAYPOINTS ajoutée sans modifier les fenêtres existantes
WaypointFrame = Instance.new("Frame")
WaypointFrame.Size = UDim2.new(0, 330, 0, 330)
WaypointFrame.Position = UDim2.new(0.5, 165, 0.15, 0)
WaypointFrame.BackgroundColor3 = Color3.fromRGB(8, 8, 10)
WaypointFrame.Visible = false
WaypointFrame.Active = true
WaypointFrame.Draggable = true
WaypointFrame.Parent = ScreenGui
Instance.new("UICorner", WaypointFrame).CornerRadius = UDim.new(0, 10)
Instance.new("UIStroke", WaypointFrame).Color = Color3.fromRGB(160, 0, 0)
local WaypointTitle = Instance.new("TextLabel")
WaypointTitle.Size = UDim2.new(1, -40, 0, 40)
WaypointTitle.BackgroundColor3 = Color3.fromRGB(18, 0, 0)
WaypointTitle.Text = "YM TOOL | WAYPOINTS"
WaypointTitle.TextColor3 = Color3.fromRGB(220, 20, 20)
WaypointTitle.Font = Enum.Font.GothamBlack
WaypointTitle.TextSize = 15
WaypointTitle.Parent = WaypointFrame
Instance.new("UICorner", WaypointTitle).CornerRadius = UDim.new(0, 10)
local WaypointClose = Instance.new("TextButton")
WaypointClose.Size = UDim2.fromOffset(40, 40)
WaypointClose.Position = UDim2.new(1, -40, 0, 0)
WaypointClose.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
WaypointClose.Text = "X"
WaypointClose.TextColor3 = Color3.fromRGB(255,255,255)
WaypointClose.Font = Enum.Font.GothamBlack
WaypointClose.TextSize = 17
WaypointClose.Parent = WaypointFrame
Instance.new("UICorner", WaypointClose).CornerRadius = UDim.new(0, 10)
WaypointClose.MouseButton1Click:Connect(function() WaypointFrame.Visible = false end)
for i = 1, 6 do
local y = 48 + (i - 1) * 44
local box = Instance.new("TextBox")
box.Size = UDim2.new(0, 125, 0, 32)
box.Position = UDim2.new(0, 10, 0, y)
box.BackgroundColor3 = Color3.fromRGB(25, 8, 8)
box.Text = waypointSlots[i].name
box.TextColor3 = Color3.fromRGB(255, 220, 220)
box.Font = Enum.Font.GothamBold
box.TextSize = 12
box.ClearTextOnFocus = false
box.Parent = WaypointFrame
Instance.new("UICorner", box).CornerRadius = UDim.new(0, 5)
box.FocusLost:Connect(function()
if box.Text ~= "" then waypointSlots[i].name = box.Text end
end)
local setBtn = Instance.new("TextButton")
setBtn.Size = UDim2.new(0, 80, 0, 32)
setBtn.Position = UDim2.new(0, 142, 0, y)
setBtn.BackgroundColor3 = Color3.fromRGB(110, 0, 0)
setBtn.Text = "SET"
setBtn.TextColor3 = Color3.fromRGB(255,255,255)
setBtn.Font = Enum.Font.GothamBold
setBtn.TextSize = 12
setBtn.Parent = WaypointFrame
Instance.new("UICorner", setBtn).CornerRadius = UDim.new(0, 5)
setBtn.MouseButton1Click:Connect(function()
local root = getRoot()
if root then waypointSlots[i].cframe = root.CFrame end
end)
local tpBtn = Instance.new("TextButton")
tpBtn.Size = UDim2.new(0, 80, 0, 32)
tpBtn.Position = UDim2.new(0, 228, 0, y)
tpBtn.BackgroundColor3 = Color3.fromRGB(70, 40, 100)
tpBtn.Text = "TP"
tpBtn.TextColor3 = Color3.fromRGB(255,255,255)
tpBtn.Font = Enum.Font.GothamBold
tpBtn.TextSize = 12
tpBtn.Parent = WaypointFrame
Instance.new("UICorner", tpBtn).CornerRadius = UDim.new(0, 5)
tpBtn.MouseButton1Click:Connect(function()
local root = getRoot()
if root and waypointSlots[i].cframe then root.CFrame = waypointSlots[i].cframe end
end)
end
createBigBtn("📍 WAYPOINTS", Color3.fromRGB(90, 0, 0), function()
WaypointFrame.Visible = not WaypointFrame.Visible
end)
-- Le curseur est forcé uniquement quand la fenêtre PRINCIPALE est visible.
-- Les fenêtres secondaires (Debug, Joueurs, TP, Spectate, Waypoints)
-- ne déclenchent plus le forçage du curseur.
local function updateCursorForWindows()
setCursorForced(Main.Visible)
end
Main:GetPropertyChangedSignal("Visible"):Connect(updateCursorForWindows)
updateCursorForWindows()
createBigBtn("👻 CACHER TOUTES LES FENÊTRES", Color3.fromRGB(70, 20, 20), function()
Main.Visible = false
DebugFrame.Visible = false
ListFrame.Visible = false
TPFrame.Visible = false
SpecFrame.Visible = false
WaypointFrame.Visible = false
guiVisible = false
debugVisible = false
end)
setActivePage("VALEURS MODIFIABLE")
local function createSpeed(label, default, cb)
local f = Instance.new("Frame")
f.Size = UDim2.new(1, -8, 0, 48)
f.BackgroundTransparency = 1
f.Parent = activePage
local l = Instance.new("TextLabel")
l.Size = UDim2.new(1, 0, 0, 16)
l.BackgroundTransparency = 1
l.Text = label
l.TextColor3 = Color3.fromRGB(200, 160, 160)
l.Font = Enum.Font.Gotham
l.TextSize = 12
l.TextXAlignment = Enum.TextXAlignment.Left
l.Parent = f
local box = Instance.new("TextBox")
box.Size = UDim2.new(0.55, 0, 0, 26)
box.Position = UDim2.new(0, 0, 0, 18)
box.BackgroundColor3 = Color3.fromRGB(20, 5, 5)
box.Text = tostring(default)
box.TextColor3 = Color3.fromRGB(255, 200, 200)
box.Font = Enum.Font.GothamBold
box.TextSize = 13
box.Parent = f
Instance.new("UICorner", box).CornerRadius = UDim.new(0, 5)
local ok = Instance.new("TextButton")
ok.Size = UDim2.new(0.35, 0, 0, 26)
ok.Position = UDim2.new(0.6, 0, 0, 18)
ok.BackgroundColor3 = Color3.fromRGB(140, 0, 0)
ok.Text = "OK"
ok.TextColor3 = Color3.fromRGB(255, 255, 255)
ok.Font = Enum.Font.GothamBold
ok.TextSize = 12
ok.Parent = f
Instance.new("UICorner", ok).CornerRadius = UDim.new(0, 5)
ok.MouseButton1Click:Connect(function()
local v = tonumber(box.Text)
if v then cb(v) end
end)
end
createSpeed("Taille Crosshair", 5, function(v) CrosshairDot.Size = UDim2.fromOffset(math.clamp(math.floor(v), 1, 30), math.clamp(math.floor(v), 1, 30)) end)
createSpeed("Rayon FOV", 150, function(v) fovRadius = math.clamp(math.floor(v), 20, 600) end)
createSpeed("Vitesse de marche", 16, setWalkSpeed)
createSpeed("Vitesse de vol", 50, function(v) flySpeed = v end)
createSpeed("Vitesse Toupie", 50, function(v) spinSpeed = v end)
createSpeed("Vitesse Toupie 90°", 5000, function(v) spinSpeed90 = v end)
createSpeed("Force Power (x1000)", 2800, function(v) forcePower = v end)
createSpeed("Force de saut", 50, function(v) jumpPower = math.max(0, v) end)
createSpeed("FPS COUNTER (0 = débride les FPS)", 0, function(v)
fpsCap = math.max(0, math.floor(v))
applyFPSCap()
end)
UserInputService.InputBegan:Connect(function(i, g)
if i.UserInputType == Enum.UserInputType.MouseButton2 then
aiming = true
end
if g then return end
if i.KeyCode == Enum.KeyCode.P then
-- P masque uniquement la fenêtre principale.
-- Les fenêtres secondaires (Debug, Joueurs, TP, Spectate, Waypoints)
-- gardent leur état actuel.
guiVisible = not guiVisible
Main.Visible = guiVisible
end
end)
UserInputService.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton2 then
aiming = false
end
end)
end
buildDirectButtonUI()
RunService:BindToRenderStep("YM_Aimbot", Enum.RenderPriority.Camera.Value + 1, function()
local currentCamera = workspace.CurrentCamera
if currentCamera then Camera = currentCamera end
if (aimbot or (aimScope and aiming)) and currentCamera then
local h = getClosestHead()
if h then
local cameraPos = currentCamera.CFrame.Position
currentCamera.CFrame = CFrame.lookAt(cameraPos, h.Position)
local root = getRoot()
local flatTarget = Vector3.new(h.Position.X, root and root.Position.Y or cameraPos.Y, h.Position.Z)
if root and (flatTarget - root.Position).Magnitude > 0.01 then
root.CFrame = CFrame.lookAt(root.Position, flatTarget)
end
end
end
end)
RunService.RenderStepped:Connect(function()
if flying and bodyVelocity and bodyGyro then
local m = Vector3.zero
if UserInputService:IsKeyDown(Enum.KeyCode.W) then m += Camera.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then m -= Camera.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then m -= Camera.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then m += Camera.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then m += Vector3.new(0, 1, 0) end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then m -= Vector3.new(0, 1, 0) end
bodyVelocity.Velocity = m.Magnitude > 0 and m.Unit * flySpeed or Vector3.zero
bodyGyro.CFrame = Camera.CFrame
end
end)
RunService.Heartbeat:Connect(function()
local hum, char = getHumanoid(), getChar()
if not hum or not char then return end
-- Ne pas casser le sprint natif du jeu : si le jeu augmente la vitesse
-- au-dessus de notre vitesse de base, on la laisse active. Quand le sprint
-- s'arrête et que la vitesse revient à la normale, on reprend walkSpeed.
if hum.WalkSpeed > walkSpeed then
gameSprintSpeed = hum.WalkSpeed
elseif hum.WalkSpeed < walkSpeed then
gameSprintSpeed = nil
hum.WalkSpeed = walkSpeed
end
-- Si un script du jeu a changé la vitesse pendant le sprint, on ne la force pas.
if gameSprintSpeed and hum.WalkSpeed >= gameSprintSpeed then
gameSprintSpeed = hum.WalkSpeed
end
if hum.UseJumpPower then
if hum.JumpPower ~= jumpPower then hum.JumpPower = jumpPower end
else
if hum.JumpHeight ~= jumpPower / 7 then hum.JumpHeight = jumpPower / 7 end
end
if godmode then
hum.MaxHealth = math.huge
hum.Health = math.huge
end
if noclip then
for _, p in pairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = false end
end
end
end)
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function()
task.wait(1)
if esp then createESP(plr) end
end)
end)
Players.PlayerRemoving:Connect(function(plr)
removeESP(plr)
if skeletonDrawings[plr] then
for _, d in pairs(skeletonDrawings[plr]) do if d.Remove then d:Remove() end end
skeletonDrawings[plr] = nil
end
end)
for _, plr in pairs(Players:GetPlayers()) do
plr.CharacterAdded:Connect(function()
task.wait(1)
if esp then createESP(plr) end
end)
end
player.CharacterAdded:Connect(function(char)
task.wait(0.8)
protect()
setWalkSpeed(walkSpeed)
setupSuperForce(char)
if godmode then
local h = char:WaitForChild("Humanoid")
h.MaxHealth = math.huge
h.Health = math.huge
end
if invisible then task.wait(0.3) setInvisible(true) end
if rgb then startRGB() end
if flying then stopFly() task.wait(0.3) startFly() end
if spinning90 then stopSpin90() task.wait(0.3) startSpin90() end
if ragdoll then stopRagdoll() task.wait(0.5) startRagdoll() end
if nameGlitch then stopNameGlitch() task.wait(0.5) startNameGlitch() end
characterVisualBackup = {}
if bigHeadEnabled or tinyCharacterEnabled or headlessEnabled then
task.wait(0.2)
updateCharacterVisuals()
end
end)
if player.Character then
setupSuperForce(player.Character)
end
-- Une seule barre de recherche : celle de la cartographie principale.
-- Elle filtre les boutons déjà enregistrés dans searchTargets.
SearchBox:GetPropertyChangedSignal("Text"):Connect(function()
local query = string.lower(SearchBox.Text or "")
for _, item in ipairs(searchTargets) do
if query == "" then
item.button.Visible = true
else
item.button.Visible = string.find(string.lower(item.text), query, 1, true) ~= nil
end
end
end)
showCategory("ACCUEIL")
-- Fonds des fenêtres : ajoutés une fois toute l'interface créée.
-- Apparence personnalisée UNIQUEMENT pour la fenêtre principale du tool.
-- Les fenêtres TP / Spectate / Liste / Waypoints / Debug gardent leur apparence.
addWindowBackground(Main)
-- Image des boutons : uniquement dans la fenêtre principale du YM TOOL.
-- Les fenêtres TP / Waypoints / Spectate / Liste / Debug restent inchangées.
for _, obj in ipairs(Main:GetDescendants()) do
if obj:IsA("GuiButton") then
addButtonBackground(obj)
end
end
print("✅ YM TOOL PC complet + Anti-Detection")
end
local function openDeveloperPrompt()
PassLabel.Visible = false
PassBox.Visible = false
PassBtn.Visible = false
DevBtn.Visible = false
ErrorLabel.Visible = false
StaffFrame.Visible = true
StaffBox.Text = ""
StaffError.Text = ""
task.defer(function() StaffBox:CaptureFocus() end)
end
local function closeDeveloperPrompt()
StaffFrame.Visible = false
PassLabel.Visible = true
PassBox.Visible = true
PassBtn.Visible = true
DevBtn.Visible = true
ErrorLabel.Visible = true
PassBox.Text = ""
ErrorLabel.Text = ""
end
local function tryDeveloperPassword()
if StaffBox.Text == developerPassword then
loadMainScript()
else
StaffError.Text = "Mot de passe développeur incorrect !"
StaffBox.Text = ""
task.wait(1.5)
StaffError.Text = ""
end
end
DevBtn.MouseButton1Click:Connect(openDeveloperPrompt)
StaffBtn.MouseButton1Click:Connect(tryDeveloperPassword)
StaffBackBtn.MouseButton1Click:Connect(closeDeveloperPrompt)
StaffBox.FocusLost:Connect(function(enter)
if enter and StaffFrame.Visible then
tryDeveloperPassword()
end
end)
PassBtn.MouseButton1Click:Connect(function()
if PassBox.Text == correctPassword then
loadMainScript()
else
ErrorLabel.Text = "Mot de passe incorrect !"
PassBox.Text = ""
task.wait(1.5)
ErrorLabel.Text = ""
end
end)
PassBox.FocusLost:Connect(function(enter)
if enter and not StaffFrame.Visible then
if PassBox.Text == correctPassword then
loadMainScript()
else
ErrorLabel.Text = "Mot de passe incorrect !"
PassBox.Text = ""
task.wait(1.5)
ErrorLabel.Text = ""
end
end
end)Loads code from the internet. It downloads more code when it runs (loadstring + HttpGet), which can change after it was posted. From: discord.gg, scriptblox.com.
UPDATE ON DISCORD the key : ymclxn
Never paste your .ROBLOSECURITY cookie anywhere, and use an alt account with scripts.

Universal