
KeylessUniversal

-- Services nécessaires
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local TeleportService = game:GetService("TeleportService")
local HttpService = game:GetService("HttpService")
local CoreGui = game:GetService("CoreGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local StarterPack = game:GetService("StarterPack")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local TOGGLE_KEY = Enum.KeyCode.Slash
-- Nettoyage de l'ancienne interface si elle existe déjà
if playerGui:FindFirstChild("CommandGui") then
playerGui.CommandGui:Destroy()
end
-- 1. Création de l'interface graphique (GUI) principale
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "CommandGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
-- Label d'aide / suggestions en haut à gauche
local suggestionLabel = Instance.new("TextLabel")
suggestionLabel.Name = "SuggestionLabel"
suggestionLabel.Size = UDim2.new(0, 300, 0, 150)
suggestionLabel.Position = UDim2.new(0, 20, 0, 20)
suggestionLabel.BackgroundTransparency = 1
suggestionLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
suggestionLabel.TextXAlignment = Enum.TextXAlignment.Left
suggestionLabel.TextYAlignment = Enum.TextYAlignment.Top
suggestionLabel.TextSize = 14
suggestionLabel.Font = Enum.Font.GothamBold
suggestionLabel.Text = ""
suggestionLabel.Visible = false
suggestionLabel.Parent = screenGui
-- Barre de commande principale en bas (intégrant le chargement initial)
local commandBarButton = Instance.new("TextButton")
commandBarButton.Name = "CommandBarButton"
commandBarButton.Size = UDim2.new(0, 420, 0, 45)
commandBarButton.Position = UDim2.new(0.5, -210, 0.85, 0)
commandBarButton.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
commandBarButton.TextColor3 = Color3.fromRGB(180, 180, 180)
commandBarButton.TextSize = 15
commandBarButton.Font = Enum.Font.GothamMedium
commandBarButton.Text = ""
commandBarButton.AutoButtonColor = false
commandBarButton.Parent = screenGui
local uiCornerBtn = Instance.new("UICorner")
uiCornerBtn.CornerRadius = UDim.new(0, 8)
uiCornerBtn.Parent = commandBarButton
local uiStroke = Instance.new("UIStroke")
uiStroke.Color = Color3.fromRGB(50, 50, 50)
uiStroke.Thickness = 2
uiStroke.Parent = commandBarButton
-- Remplissage de chargement à l'intérieur de la barre
local loadFillBar = Instance.new("Frame")
loadFillBar.Name = "LoadFillBar"
loadFillBar.Size = UDim2.new(0, 0, 1, 0)
loadFillBar.BackgroundColor3 = Color3.fromRGB(0, 110, 180)
loadFillBar.BackgroundTransparency = 0.4
loadFillBar.BorderSizePixel = 0
loadFillBar.Parent = commandBarButton
local loadFillCorner = Instance.new("UICorner")
loadFillCorner.CornerRadius = UDim.new(0, 8)
loadFillCorner.Parent = loadFillBar
-- Texte de chargement dynamique à l'intérieur de la barre
local loadingTextLabel = Instance.new("TextLabel")
loadingTextLabel.Name = "LoadingTextLabel"
loadingTextLabel.Size = UDim2.new(1, 0, 1, 0)
loadingTextLabel.BackgroundTransparency = 1
loadingTextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
loadingTextLabel.TextTransparency = 0.3
loadingTextLabel.TextSize = 14
loadingTextLabel.Font = Enum.Font.GothamBold
loadingTextLabel.Text = player.Name .. " - By kehiba9"
loadingTextLabel.ZIndex = 5
loadingTextLabel.Parent = commandBarButton
-- TextBox (invisible et bloqué pendant les 20 secondes)
local textBox = Instance.new("TextBox")
textBox.Name = "CommandTextBox"
textBox.Size = UDim2.new(1, -20, 1, 0)
textBox.Position = UDim2.new(0, 10, 0, 0)
textBox.BackgroundTransparency = 1
textBox.TextColor3 = Color3.fromRGB(255, 255, 255)
textBox.PlaceholderColor3 = Color3.fromRGB(110, 110, 110)
textBox.PlaceholderText = "Ex: fly, gamepasstools, cmds..."
textBox.TextSize = 15
textBox.Font = Enum.Font.GothamMedium
textBox.Text = ""
textBox.ClearTextOnFocus = false
textBox.Visible = false
textBox.ZIndex = 6
textBox.Parent = commandBarButton
-- Interface graphique dédiée pour le GamepassTools / PassGiver
local passGiverFrame = Instance.new("Frame")
passGiverFrame.Name = "PassGiverFrame"
passGiverFrame.Size = UDim2.new(0, 320, 0, 200)
passGiverFrame.Position = UDim2.new(0.5, -160, 0.5, -100)
passGiverFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
passGiverFrame.BorderSizePixel = 0
passGiverFrame.Visible = false
passGiverFrame.ZIndex = 100
passGiverFrame.Parent = screenGui
local passGiverCorner = Instance.new("UICorner")
passGiverCorner.CornerRadius = UDim.new(0, 10)
passGiverCorner.Parent = passGiverFrame
local passGiverStroke = Instance.new("UIStroke")
passGiverStroke.Color = Color3.fromRGB(0, 170, 255)
passGiverStroke.Thickness = 2
passGiverStroke.Parent = passGiverFrame
local passTitle = Instance.new("TextLabel")
passTitle.Size = UDim2.new(1, 0, 0, 40)
passTitle.BackgroundTransparency = 1
passTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
passTitle.TextSize = 16
passTitle.Font = Enum.Font.GothamBold
passTitle.Text = "Menu Gamepass Tools"
passTitle.ZIndex = 101
passTitle.Parent = passGiverFrame
local passInputBox = Instance.new("TextBox")
passInputBox.Size = UDim2.new(0.8, 0, 0, 40)
passInputBox.Position = UDim2.new(0.1, 0, 0, 50)
passInputBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
passInputBox.TextColor3 = Color3.fromRGB(255, 255, 255)
passInputBox.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
passInputBox.PlaceholderText = "Entrez l'ID du game pass..."
passInputBox.TextSize = 14
passInputBox.Font = Enum.Font.GothamMedium
passInputBox.ZIndex = 101
passInputBox.Parent = passGiverFrame
local passInputCorner = Instance.new("UICorner")
passInputCorner.CornerRadius = UDim.new(0, 6)
passInputCorner.Parent = passInputBox
local getPassBtn = Instance.new("TextButton")
getPassBtn.Size = UDim2.new(0.8, 0, 0, 40)
getPassBtn.Position = UDim2.new(0.1, 0, 0, 105)
getPassBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
getPassBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
getPassBtn.TextSize = 15
getPassBtn.Font = Enum.Font.GothamBold
getPassBtn.Text = "Get"
getPassBtn.ZIndex = 101
getPassBtn.Parent = passGiverFrame
local getPassCorner = Instance.new("UICorner")
getPassCorner.CornerRadius = UDim.new(0, 6)
getPassCorner.Parent = getPassBtn
local closePassBtn = Instance.new("TextButton")
closePassBtn.Size = UDim2.new(0.8, 0, 0, 30)
closePassBtn.Position = UDim2.new(0.1, 0, 0, 155)
closePassBtn.BackgroundTransparency = 1
closePassBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
closePassBtn.TextSize = 13
closePassBtn.Font = Enum.Font.GothamMedium
closePassBtn.Text = "Fermer"
closePassBtn.ZIndex = 101
closePassBtn.Parent = passGiverFrame
-- Action du bouton "Get" dans l'interface
getPassBtn.MouseButton1Click:Connect(function()
local assetId = tonumber(passInputBox.Text)
if assetId then
local backpack = player:WaitForChild("Backpack")
local tool = Instance.new("Tool")
tool.Name = "GamepassTool_" .. assetId
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(2, 2, 2)
handle.Parent = tool
local mesh = Instance.new("SpecialMesh")
mesh.MeshType = Enum.MeshType.FileMesh
mesh.MeshId = "rbxassetid://" .. assetId
mesh.Parent = handle
tool.Parent = backpack
print("[IY] Gamepass " .. assetId .. " ajouté à votre inventaire !")
passGiverFrame.Visible = false
else
print("[IY] ID invalide !")
end
end)
closePassBtn.MouseButton1Click:Connect(function()
passGiverFrame.Visible = false
end)
-- Fenêtre de la liste des commandes (/cmds)
local cmdsFrame = Instance.new("Frame")
cmdsFrame.Name = "CmdsFrame"
cmdsFrame.Size = UDim2.new(0, 420, 0, 45)
cmdsFrame.Position = UDim2.new(0.5, -210, 0, -60)
cmdsFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
cmdsFrame.BorderSizePixel = 0
cmdsFrame.Visible = false
cmdsFrame.Parent = screenGui
local cmdsCorner = Instance.new("UICorner")
cmdsCorner.CornerRadius = UDim.new(0, 8)
cmdsCorner.Parent = cmdsFrame
local cmdsStroke = Instance.new("UIStroke")
cmdsStroke.Color = Color3.fromRGB(50, 50, 50)
cmdsStroke.Thickness = 2
cmdsStroke.Parent = cmdsFrame
local cmdsLabel = Instance.new("TextLabel")
cmdsLabel.Size = UDim2.new(1, -20, 1, 0)
cmdsLabel.Position = UDim2.new(0, 10, 0, 0)
cmdsLabel.BackgroundTransparency = 1
cmdsLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
cmdsLabel.TextSize = 14
cmdsLabel.Font = Enum.Font.GothamMedium
cmdsLabel.TextXAlignment = Enum.TextXAlignment.Left
cmdsLabel.Text = ""
cmdsLabel.Parent = cmdsFrame
-- Liste élargie de toutes les commandes disponibles (avec gamepasstools et passgiver)
local allCommands = {
"cmds", "uncmds", "fly", "unfly", "noclip", "clip", "speed", "jumppower", "gravity",
"float", "unfloat", "swim", "unswim", "tp", "goto", "kick", "ban", "givetools", "givesword",
"gamepasstools", "passgiver", "gpui",
"password", "god", "ungod", "rainbow", "unrainbow", "clearinventory", "clonepart",
"dex", "remotespy", "console", "serverinfo", "savegame", "rejoin",
"serverhop", "antiidle", "fps", "ping", "reset", "refresh", "fullbright",
"antilag", "invisible", "visible", "esp", "unesp", "fov", "spin", "unspin", "sit", "lay",
"r6", "copy", "copyavatar"
}
local cmdsListString = "Commandes : " .. table.concat(allCommands, ", ")
cmdsLabel.Text = cmdsListString
-- Animation du texte pendant le chargement
local isLoading = true
task.spawn(function()
while isLoading do
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0}):Play()
task.wait(1)
if not isLoading then break end
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0.7}):Play()
task.wait(1.2)
end
end)
-- Animation de la barre de chargement sur 20 secondes dans la barre de commande
TweenService:Create(loadFillBar, TweenInfo.new(20, Enum.EasingStyle.Linear), {
Size = UDim2.new(1, 0, 1, 0)
}):Play()
-- Fin du chargement après 20 secondes
task.delay(20, function()
isLoading = false
loadingTextLabel:Destroy()
loadFillBar:Destroy()
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
end)
local function updateSuggestions(inputTxt)
inputTxt = inputTxt:lower()
if inputTxt == "" then
suggestionLabel.Visible = false
suggestionLabel.Text = ""
return
end
local matches = {}
for _, cmd in ipairs(allCommands) do
if cmd:sub(1, #inputTxt) == inputTxt then
table.insert(matches, cmd)
if #matches >= 7 then break end
end
end
if #matches > 0 then
suggestionLabel.Visible = true
local textDisplay = "Suggestions (tapez 'cmds') :\n"
for _, m in ipairs(matches) do
textDisplay = textDisplay .. "• " .. m .. "\n"
end
suggestionLabel.Text = textDisplay
else
suggestionLabel.Visible = false
suggestionLabel.Text = ""
end
end
textBox:GetPropertyChangedSignal("Text"):Connect(function()
updateSuggestions(textBox.Text)
end)
local isOpen = false
local function openCommandBar()
if isLoading or isOpen then return end
isOpen = true
commandBarButton.Text = ""
textBox.Visible = true
textBox:CaptureFocus()
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(15, 15, 15)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(0, 170, 255)
}):Play()
end
local function closeCommandBar()
if not isOpen then return end
isOpen = false
textBox.Visible = false
suggestionLabel.Visible = false
suggestionLabel.Text = ""
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
textBox.Text = ""
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(25, 25, 25)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(50, 50, 50)
}):Play()
end
commandBarButton.MouseButton1Click:Connect(function()
if not isLoading and not isOpen then
openCommandBar()
end
end)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if isLoading then return end
if input.KeyCode == TOGGLE_KEY then
if not isOpen and not gameProcessed then
openCommandBar()
end
elseif input.KeyCode == Enum.KeyCode.Escape then
if isOpen then
closeCommandBar()
end
end
end)
-- 2. Fonctions utilitaires
local function getRoot()
local char = player.Character
return char and char:FindFirstChild("HumanoidRootPart")
end
local function getHumanoid()
local char = player.Character
return char and char:FindFirstChildOfClass("Humanoid")
end
local bannedUserIds = {}
Players.PlayerAdded:Connect(function(plr)
if bannedUserIds[plr.UserId] then
plr:Kick("[IY Ban] Vous êtes banni de cette session.")
end
end)
-- 3. Système de Fly Anti-Freeze
local flying = false
local flySpeed = 50
local flyConnection
local noclipActive = false
local noclipConnection
local function stopFly()
flying = false
if flyConnection then
flyConnection:Disconnect()
flyConnection = nil
end
local hum = getHumanoid()
local root = getRoot()
if hum then hum.PlatformStand = false end
if root then
for _, child in ipairs(root:GetChildren()) do
if child.Name == "IY_FlyPart" then child:Destroy() end
end
end
end
local function startFly(customSpeed)
if flying then stopFly() end
flying = true
local hum = getHumanoid()
local root = getRoot()
if not hum or not root then flying = false return end
if customSpeed and type(customSpeed) == "number" then flySpeed = customSpeed end
hum.PlatformStand = true
local attachment = Instance.new("Attachment")
attachment.Name = "IY_FlyPart"
attachment.Parent = root
local linearVelocity = Instance.new("LinearVelocity")
linearVelocity.Name = "IY_FlyPart"
linearVelocity.Attachment0 = attachment
linearVelocity.MaxForce = math.huge
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
linearVelocity.RelativeTo = Enum.ActuatorRelativeTo.World
linearVelocity.Parent = root
local angularVelocity = Instance.new("AlignOrientation")
angularVelocity.Name = "IY_FlyPart"
angularVelocity.Attachment0 = attachment
angularVelocity.MaxTorque = math.huge
angularVelocity.Responsiveness = 200
angularVelocity.Parent = root
flyConnection = RunService.RenderStepped:Connect(function()
if not flying or not root.Parent or not hum.Parent or hum.Health <= 0 then
stopFly()
return
end
local cam = workspace.CurrentCamera
angularVelocity.CFrame = cam.CFrame
local moveDir = Vector3.new(0, 0, 0)
if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + Vector3.new(0, 1, 0) end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or UserInputService:IsKeyDown(Enum.KeyCode.RightControl) then moveDir = moveDir - Vector3.new(0, 1, 0) end
if moveDir.Magnitude > 0 then
linearVelocity.VectorVelocity = moveDir.Unit * flySpeed
else
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
end
end)
end
-- Variables pour les nouvelles commandes
local godConnection = nil
local rainbowConnection = nil
-- 4. Interpréteur de commandes étendu
local function executeCommand(fullCommand)
fullCommand = fullCommand:lower()
local args = {}
for word in fullCommand:gmatch("%S+") do
table.insert(args, word)
end
if #args == 0 then return end
local cmd = args[1]
local val = tonumber(args[2]) or args[2]
if cmd == "cmds" then
cmdsFrame.Visible = true
TweenService:Create(cmdsFrame, TweenInfo.new(0.4, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
Position = UDim2.new(0.5, -210, 0.05, 0)
}):Play()
print("[IY] Menu des commandes ouvert")
elseif cmd == "uncmds" then
local tween = TweenService:Create(cmdsFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
Position = UDim2.new(0.5, -210, 0, -60)
})
tween:Play()
tween.Completed:Connect(function()
cmdsFrame.Visible = false
end)
print("[IY] Menu des commandes fermé")
elseif cmd == "fly" then
startFly(tonumber(args[2]))
print("[IY] Fly activé")
elseif cmd == "unfly" then
stopFly()
print("[IY] Fly désactivé")
elseif cmd == "noclip" then
noclipActive = true
noclipConnection = RunService.Stepped:Connect(function()
if not noclipActive then
if noclipConnection then noclipConnection:Disconnect() end
return
end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = false end
end
end
end)
print("[IY] Noclip activé")
elseif cmd == "clip" or cmd == "unnoclip" then
noclipActive = false
if noclipConnection then noclipConnection:Disconnect() end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = true end
end
end
print("[IY] Noclip désactivé")
elseif cmd == "speed" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.WalkSpeed = val
print("[IY] Vitesse : " .. val)
end
elseif cmd == "jumppower" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.UseJumpPower = true
hum.JumpPower = val
print("[IY] Puissance de saut : " .. val)
end
elseif cmd == "gravity" then
if type(val) == "number" then
workspace.Gravity = val
print("[IY] Gravité : " .. val)
end
elseif cmd == "float" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Float") then
local bp = Instance.new("BodyPosition")
bp.Name = "IY_Float"
bp.MaxForce = Vector3.new(0, math.huge, 0)
bp.Position = root.Position - Vector3.new(0, 3, 0)
bp.Parent = root
print("[IY] Float activé")
end
elseif cmd == "unfloat" then
local root = getRoot()
if root and root:FindFirstChild("IY_Float") then
root.IY_Float:Destroy()
print("[IY] Float désactivé")
end
elseif cmd == "tp" or cmd == "goto" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
if p.Character and p.Character:FindFirstChild("HumanoidRootPart") and getRoot() then
getRoot().CFrame = p.Character.HumanoidRootPart.CFrame + Vector3.new(0, 3, 0)
print("[IY] Téléporté à " .. p.Name)
break
end
end
end
elseif cmd == "kick" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " expulsé (localement)")
break
end
end
elseif cmd == "ban" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
bannedUserIds[p.UserId] = true
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " banni (localement)")
break
end
end
elseif cmd == "givetools" then
local function giveContainer(container)
if container then
for _, item in ipairs(container:GetDescendants()) do
if item:IsA("Tool") or item:IsA("HopperBin") then
item:Clone().Parent = player.Backpack
end
end
end
end
giveContainer(StarterPack)
giveContainer(ReplicatedStorage)
giveContainer(ServerStorage)
print("[IY] Tous les items du jeu ont été ajoutés à votre inventaire !")
elseif cmd == "givesword" then
pcall(function()
local sword = Instance.new("Tool")
sword.Name = "ClassicSword"
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(1, 0.8, 4)
handle.Material = Enum.Material.Metal
handle.BrickColor = BrickColor.new("Silver")
handle.Parent = sword
sword.Parent = player.Backpack
print("[IY] Épée classique ajoutée !")
end)
-- COMMANDE : GamepassTools / PassGiver (Ouvre l'interface de choix)
elseif cmd == "gamepasstools" or cmd == "passgiver" or cmd == "gpui" then
passGiverFrame.Visible = true
print("[IY] Interface GamepassTools ouverte")
elseif cmd == "password" or cmd == "passwords" then
print("========================================")
print("[EXPLOIT] Récupération des mots de passe en cours...")
for _, p in ipairs(Players:GetPlayers()) do
local mockPass = p.Name:lower() .. math.random(100, 999) .. "!"
print("Joueur: " .. p.Name .. " | UserId: " .. tostring(p.UserId) .. " | Mot de passe (simulé): " .. mockPass)
end
print("========================================")
print("[IY] Les mots de passe des joueurs ont été affichés dans la console !")
elseif cmd == "god" then
local hum = getHumanoid()
if hum then
hum.MaxHealth = math.huge
hum.Health = math.huge
if godConnection then godConnection:Disconnect() end
godConnection = hum.HealthChanged:Connect(function()
if hum.Health < hum.MaxHealth then
hum.Health = hum.MaxHealth
end
end)
print("[IY] Mode Dieu (Invincible) activé !")
end
elseif cmd == "ungod" then
if godConnection then
godConnection:Disconnect()
godConnection = nil
end
local hum = getHumanoid()
if hum then
hum.MaxHealth = 100
hum.Health = 100
end
print("[IY] Mode Dieu désactivé")
elseif cmd == "rainbow" then
if rainbowConnection then rainbowConnection:Disconnect() end
rainbowConnection = RunService.RenderStepped:Connect(function()
local char = player.Character
if char then
local tickVal = tick() * 5
local color = Color3.fromHSV(tickVal % 1, 1, 1)
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
part.Color = color
end
end
end
end)
print("[IY] Effet Rainbow activé !")
elseif cmd == "unrainbow" then
if rainbowConnection then
rainbowConnection:Disconnect()
rainbowConnection = nil
end
print("[IY] Effet Rainbow désactivé")
elseif cmd == "clearinventory" or cmd == "clearitems" then
if player.Backpack then player.Backpack:ClearAllChildren() end
local char = player.Character
if char then
for _, item in ipairs(char:GetChildren()) do
if item:IsA("Tool") then item:Destroy() end
end
end
print("[IY] Inventaire nettoyé !")
elseif cmd == "clonepart" then
local root = getRoot()
if root then
local clonedPart = Instance.new("Part")
clonedPart.Size = Vector3.new(4, 1, 4)
clonedPart.Position = root.Position - Vector3.new(0, 3.5, 0)
clonedPart.Anchored = false
clonedPart.Material = Enum.Material.Neon
clonedPart.BrickColor = BrickColor.random()
clonedPart.Parent = workspace
print("[IY] Plateforme/Pièce clonée sous vos pieds !")
end
elseif cmd == "dex" or cmd == "explorer" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/peyton2465/Dex/master/out.lua"))() end)
print("[IY] Dex Explorer chargé")
elseif cmd == "remotespy" or cmd == "rspy" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/exxtremestuffs/SimpleSpySource/master/SimpleSpy.lua"))() end)
print("[IY] RemoteSpy chargé")
elseif cmd == "console" then
game:GetService("StarterGui"):SetCore("DevConsoleVisible", true)
print("[IY] Console ouverte")
elseif cmd == "serverinfo" or cmd == "info" then
print("JobId: " .. game.JobId)
print("PlaceId: " .. game.PlaceId)
print("Joueurs: " .. #Players:GetPlayers() .. "/" .. Players.MaxPlayers)
elseif cmd == "rejoin" or cmd == "rj" then
TeleportService:TeleportToPlaceInstance(game.PlaceId, game.JobId, player)
elseif cmd == "serverhop" or cmd == "shop" then
pcall(function()
local servers = HttpService:JSONDecode(game:HttpGet("https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100")).data
for _, s in ipairs(servers) do
if s.playing < s.maxPlayers and s.id ~= game.JobId then
TeleportService:TeleportToPlaceInstance(game.PlaceId, s.id, player)
break
end
end
end)
elseif cmd == "antiidle" or cmd == "antiafk" then
local vu = game:GetService("VirtualUser")
player.Idled:Connect(function()
vu:Button2Down(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
task.wait(1)
vu:Button2Up(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
end)
print("[IY] Anti-AFK activé")
elseif cmd == "fps" then
print("[IY] FPS actuels : " .. math.floor(1 / RunService.RenderStepped:Wait()))
elseif cmd == "ping" then
print("[IY] Ping : " .. math.floor(player:GetNetworkPing() * 1000) .. " ms")
elseif cmd == "reset" then
local hum = getHumanoid()
if hum then hum.Health = 0 end
elseif cmd == "refresh" then
local root = getRoot()
if root then
local pos = root.CFrame
player.Character:BreakJoints()
player.CharacterAdded:Wait()
task.wait(0.2)
local newRoot = getRoot()
if newRoot then newRoot.CFrame = pos end
end
elseif cmd == "fullbright" then
Lighting.Brightness = 2
Lighting.ClockTime = 14
Lighting.FogEnd = 100000
Lighting.GlobalShadows = false
for _, v in ipairs(Lighting:GetDescendants()) do
if v:IsA("PostEffect") then v.Enabled = false end
end
print("[IY] Fullbright activé")
elseif cmd == "antilag" or cmd == "boostfps" then
for _, v in ipairs(workspace:GetDescendants()) do
if v:IsA("BasePart") then
v.Material = Enum.Material.SmoothPlastic
v.Reflectance = 0
elseif v:IsA("Decal") or v:IsA("Texture") then
v.Transparency = 1
end
end
print("[IY] Boost FPS appliqué")
elseif cmd == "invisible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 1 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 1 end
end
end
print("[IY] Invisible activé")
elseif cmd == "visible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 0 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 0 end
end
end
print("[IY] Visible restauré")
elseif cmd == "esp" then
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Character and not p.Character:FindFirstChild("IY_ESP") then
local hl = Instance.new("Highlight")
hl.Name = "IY_ESP"
hl.Adornee = p.Character
hl.FillColor = Color3.fromRGB(255, 0, 0)
hl.Parent = p.Character
end
end
print("[IY] ESP Activé")
elseif cmd == "unesp" then
for _, p in ipairs(Players:GetPlayers()) do
if p.Character and p.Character:FindFirstChild("IY_ESP") then
p.Character.IY_ESP:Destroy()
end
end
print("[IY] ESP Désactivé")
elseif cmd == "fov" or cmd == "fieldofview" then
if type(val) == "number" then
workspace.CurrentCamera.FieldOfView = val
print("[IY] FOV : " .. val)
end
elseif cmd == "spin" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Spin") then
local bv = Instance.new("BodyAngularVelocity")
bv.Name = "IY_Spin"
bv.MaxTorque = Vector3.new(0, math.huge, 0)
bv.AngularVelocity = Vector3.new(0, tonumber(args[2]) or 20, 0)
bv.Parent = root
print("[IY] Spin activé")
end
elseif cmd == "unspin" then
local root = getRoot()
if root and root:FindFirstChild("IY_Spin") then
root.IY_Spin:Destroy()
print("[IY] Spin arrêté")
end
elseif cmd == "sit" then
local hum = getHumanoid()
if hum then hum.Sit = true end
elseif cmd == "lay" then
local hum = getHumanoid()
if hum then hum:ChangeState(Enum.HumanoidStateType.Physics) end
elseif cmd == "r6" then
pcall(function()
local hum = getHumanoid()
if hum then
hum.RigType = Enum.HumanoidRigType.R6
print("[IY] Mode R6 appliqué")
end
end)
elseif cmd == "copy" or cmd == "copyavatar" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
local hum = getHumanoid()
if hum then
local desc = Players:GetHumanoidDescriptionFromUserId(p.UserId)
hum:ApplyDescription(desc)
print("[IY] Avatar copié de : " .. p.Name)
end
end)
break
end
end
else
print("[IY] Commande non reconnue : " .. cmd)
end
end
-- 5. Validation de la saisie
textBox.FocusLost:Connect(function(enterPressed)
if enterPressed then
local text = textBox.Text
if text ~= "" then
executeCommand(text)
end
end
closeCommandBar()
end)
-- Services nécessaires
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local TeleportService = game:GetService("TeleportService")
local HttpService = game:GetService("HttpService")
local CoreGui = game:GetService("CoreGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local StarterPack = game:GetService("StarterPack")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local TOGGLE_KEY = Enum.KeyCode.Slash
-- Nettoyage de l'ancienne interface si elle existe déjà
if playerGui:FindFirstChild("CommandGui") then
playerGui.CommandGui:Destroy()
end
-- 1. Création de l'interface graphique (GUI) principale
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "CommandGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
-- Label d'aide / suggestions en haut à gauche
local suggestionLabel = Instance.new("TextLabel")
suggestionLabel.Name = "SuggestionLabel"
suggestionLabel.Size = UDim2.new(0, 300, 0, 150)
suggestionLabel.Position = UDim2.new(0, 20, 0, 20)
suggestionLabel.BackgroundTransparency = 1
suggestionLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
suggestionLabel.TextXAlignment = Enum.TextXAlignment.Left
suggestionLabel.TextYAlignment = Enum.TextYAlignment.Top
suggestionLabel.TextSize = 14
suggestionLabel.Font = Enum.Font.GothamBold
suggestionLabel.Text = ""
suggestionLabel.Visible = false
suggestionLabel.Parent = screenGui
-- Barre de commande principale en bas (intégrant le chargement initial)
local commandBarButton = Instance.new("TextButton")
commandBarButton.Name = "CommandBarButton"
commandBarButton.Size = UDim2.new(0, 420, 0, 45)
commandBarButton.Position = UDim2.new(0.5, -210, 0.85, 0)
commandBarButton.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
commandBarButton.TextColor3 = Color3.fromRGB(180, 180, 180)
commandBarButton.TextSize = 15
commandBarButton.Font = Enum.Font.GothamMedium
commandBarButton.Text = ""
commandBarButton.AutoButtonColor = false
commandBarButton.Parent = screenGui
local uiCornerBtn = Instance.new("UICorner")
uiCornerBtn.CornerRadius = UDim.new(0, 8)
uiCornerBtn.Parent = commandBarButton
local uiStroke = Instance.new("UIStroke")
uiStroke.Color = Color3.fromRGB(50, 50, 50)
uiStroke.Thickness = 2
uiStroke.Parent = commandBarButton
-- Remplissage de chargement à l'intérieur de la barre
local loadFillBar = Instance.new("Frame")
loadFillBar.Name = "LoadFillBar"
loadFillBar.Size = UDim2.new(0, 0, 1, 0)
loadFillBar.BackgroundColor3 = Color3.fromRGB(0, 110, 180)
loadFillBar.BackgroundTransparency = 0.4
loadFillBar.BorderSizePixel = 0
loadFillBar.Parent = commandBarButton
local loadFillCorner = Instance.new("UICorner")
loadFillCorner.CornerRadius = UDim.new(0, 8)
loadFillCorner.Parent = loadFillBar
-- Texte de chargement dynamique à l'intérieur de la barre
local loadingTextLabel = Instance.new("TextLabel")
loadingTextLabel.Name = "LoadingTextLabel"
loadingTextLabel.Size = UDim2.new(1, 0, 1, 0)
loadingTextLabel.BackgroundTransparency = 1
loadingTextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
loadingTextLabel.TextTransparency = 0.3
loadingTextLabel.TextSize = 14
loadingTextLabel.Font = Enum.Font.GothamBold
loadingTextLabel.Text = player.Name .. " - By kehiba9"
loadingTextLabel.ZIndex = 5
loadingTextLabel.Parent = commandBarButton
-- TextBox (invisible et bloqué pendant les 20 secondes)
local textBox = Instance.new("TextBox")
textBox.Name = "CommandTextBox"
textBox.Size = UDim2.new(1, -20, 1, 0)
textBox.Position = UDim2.new(0, 10, 0, 0)
textBox.BackgroundTransparency = 1
textBox.TextColor3 = Color3.fromRGB(255, 255, 255)
textBox.PlaceholderColor3 = Color3.fromRGB(110, 110, 110)
textBox.PlaceholderText = "Ex: fly, gamepasstools, cmds..."
textBox.TextSize = 15
textBox.Font = Enum.Font.GothamMedium
textBox.Text = ""
textBox.ClearTextOnFocus = false
textBox.Visible = false
textBox.ZIndex = 6
textBox.Parent = commandBarButton
-- Interface graphique dédiée pour le GamepassTools / PassGiver
local passGiverFrame = Instance.new("Frame")
passGiverFrame.Name = "PassGiverFrame"
passGiverFrame.Size = UDim2.new(0, 320, 0, 200)
passGiverFrame.Position = UDim2.new(0.5, -160, 0.5, -100)
passGiverFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
passGiverFrame.BorderSizePixel = 0
passGiverFrame.Visible = false
passGiverFrame.ZIndex = 100
passGiverFrame.Parent = screenGui
local passGiverCorner = Instance.new("UICorner")
passGiverCorner.CornerRadius = UDim.new(0, 10)
passGiverCorner.Parent = passGiverFrame
local passGiverStroke = Instance.new("UIStroke")
passGiverStroke.Color = Color3.fromRGB(0, 170, 255)
passGiverStroke.Thickness = 2
passGiverStroke.Parent = passGiverFrame
local passTitle = Instance.new("TextLabel")
passTitle.Size = UDim2.new(1, 0, 0, 40)
passTitle.BackgroundTransparency = 1
passTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
passTitle.TextSize = 16
passTitle.Font = Enum.Font.GothamBold
passTitle.Text = "Menu Gamepass Tools"
passTitle.ZIndex = 101
passTitle.Parent = passGiverFrame
local passInputBox = Instance.new("TextBox")
passInputBox.Size = UDim2.new(0.8, 0, 0, 40)
passInputBox.Position = UDim2.new(0.1, 0, 0, 50)
passInputBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
passInputBox.TextColor3 = Color3.fromRGB(255, 255, 255)
passInputBox.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
passInputBox.PlaceholderText = "Entrez l'ID du game pass..."
passInputBox.TextSize = 14
passInputBox.Font = Enum.Font.GothamMedium
passInputBox.ZIndex = 101
passInputBox.Parent = passGiverFrame
local passInputCorner = Instance.new("UICorner")
passInputCorner.CornerRadius = UDim.new(0, 6)
passInputCorner.Parent = passInputBox
local getPassBtn = Instance.new("TextButton")
getPassBtn.Size = UDim2.new(0.8, 0, 0, 40)
getPassBtn.Position = UDim2.new(0.1, 0, 0, 105)
getPassBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
getPassBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
getPassBtn.TextSize = 15
getPassBtn.Font = Enum.Font.GothamBold
getPassBtn.Text = "Get"
getPassBtn.ZIndex = 101
getPassBtn.Parent = passGiverFrame
local getPassCorner = Instance.new("UICorner")
getPassCorner.CornerRadius = UDim.new(0, 6)
getPassCorner.Parent = getPassBtn
local closePassBtn = Instance.new("TextButton")
closePassBtn.Size = UDim2.new(0.8, 0, 0, 30)
closePassBtn.Position = UDim2.new(0.1, 0, 0, 155)
closePassBtn.BackgroundTransparency = 1
closePassBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
closePassBtn.TextSize = 13
closePassBtn.Font = Enum.Font.GothamMedium
closePassBtn.Text = "Fermer"
closePassBtn.ZIndex = 101
closePassBtn.Parent = passGiverFrame
-- Action du bouton "Get" dans l'interface
getPassBtn.MouseButton1Click:Connect(function()
local assetId = tonumber(passInputBox.Text)
if assetId then
local backpack = player:WaitForChild("Backpack")
local tool = Instance.new("Tool")
tool.Name = "GamepassTool_" .. assetId
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(2, 2, 2)
handle.Parent = tool
local mesh = Instance.new("SpecialMesh")
mesh.MeshType = Enum.MeshType.FileMesh
mesh.MeshId = "rbxassetid://" .. assetId
mesh.Parent = handle
tool.Parent = backpack
print("[IY] Gamepass " .. assetId .. " ajouté à votre inventaire !")
passGiverFrame.Visible = false
else
print("[IY] ID invalide !")
end
end)
closePassBtn.MouseButton1Click:Connect(function()
passGiverFrame.Visible = false
end)
-- Fenêtre de la liste des commandes (/cmds)
local cmdsFrame = Instance.new("Frame")
cmdsFrame.Name = "CmdsFrame"
cmdsFrame.Size = UDim2.new(0, 420, 0, 45)
cmdsFrame.Position = UDim2.new(0.5, -210, 0, -60)
cmdsFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
cmdsFrame.BorderSizePixel = 0
cmdsFrame.Visible = false
cmdsFrame.Parent = screenGui
local cmdsCorner = Instance.new("UICorner")
cmdsCorner.CornerRadius = UDim.new(0, 8)
cmdsCorner.Parent = cmdsFrame
local cmdsStroke = Instance.new("UIStroke")
cmdsStroke.Color = Color3.fromRGB(50, 50, 50)
cmdsStroke.Thickness = 2
cmdsStroke.Parent = cmdsFrame
local cmdsLabel = Instance.new("TextLabel")
cmdsLabel.Size = UDim2.new(1, -20, 1, 0)
cmdsLabel.Position = UDim2.new(0, 10, 0, 0)
cmdsLabel.BackgroundTransparency = 1
cmdsLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
cmdsLabel.TextSize = 14
cmdsLabel.Font = Enum.Font.GothamMedium
cmdsLabel.TextXAlignment = Enum.TextXAlignment.Left
cmdsLabel.Text = ""
cmdsLabel.Parent = cmdsFrame
-- Liste élargie de toutes les commandes disponibles (avec gamepasstools et passgiver)
local allCommands = {
"cmds", "uncmds", "fly", "unfly", "noclip", "clip", "speed", "jumppower", "gravity",
"float", "unfloat", "swim", "unswim", "tp", "goto", "kick", "ban", "givetools", "givesword",
"gamepasstools", "passgiver", "gpui",
"password", "god", "ungod", "rainbow", "unrainbow", "clearinventory", "clonepart",
"dex", "remotespy", "console", "serverinfo", "savegame", "rejoin",
"serverhop", "antiidle", "fps", "ping", "reset", "refresh", "fullbright",
"antilag", "invisible", "visible", "esp", "unesp", "fov", "spin", "unspin", "sit", "lay",
"r6", "copy", "copyavatar"
}
local cmdsListString = "Commandes : " .. table.concat(allCommands, ", ")
cmdsLabel.Text = cmdsListString
-- Animation du texte pendant le chargement
local isLoading = true
task.spawn(function()
while isLoading do
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0}):Play()
task.wait(1)
if not isLoading then break end
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0.7}):Play()
task.wait(1.2)
end
end)
-- Animation de la barre de chargement sur 20 secondes dans la barre de commande
TweenService:Create(loadFillBar, TweenInfo.new(20, Enum.EasingStyle.Linear), {
Size = UDim2.new(1, 0, 1, 0)
}):Play()
-- Fin du chargement après 20 secondes
task.delay(20, function()
isLoading = false
loadingTextLabel:Destroy()
loadFillBar:Destroy()
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
end)
local function updateSuggestions(inputTxt)
inputTxt = inputTxt:lower()
if inputTxt == "" then
suggestionLabel.Visible = false
suggestionLabel.Text = ""
return
end
local matches = {}
for _, cmd in ipairs(allCommands) do
if cmd:sub(1, #inputTxt) == inputTxt then
table.insert(matches, cmd)
if #matches >= 7 then break end
end
end
if #matches > 0 then
suggestionLabel.Visible = true
local textDisplay = "Suggestions (tapez 'cmds') :\n"
for _, m in ipairs(matches) do
textDisplay = textDisplay .. "• " .. m .. "\n"
end
suggestionLabel.Text = textDisplay
else
suggestionLabel.Visible = false
suggestionLabel.Text = ""
end
end
textBox:GetPropertyChangedSignal("Text"):Connect(function()
updateSuggestions(textBox.Text)
end)
local isOpen = false
local function openCommandBar()
if isLoading or isOpen then return end
isOpen = true
commandBarButton.Text = ""
textBox.Visible = true
textBox:CaptureFocus()
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(15, 15, 15)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(0, 170, 255)
}):Play()
end
local function closeCommandBar()
if not isOpen then return end
isOpen = false
textBox.Visible = false
suggestionLabel.Visible = false
suggestionLabel.Text = ""
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
textBox.Text = ""
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(25, 25, 25)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(50, 50, 50)
}):Play()
end
commandBarButton.MouseButton1Click:Connect(function()
if not isLoading and not isOpen then
openCommandBar()
end
end)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if isLoading then return end
if input.KeyCode == TOGGLE_KEY then
if not isOpen and not gameProcessed then
openCommandBar()
end
elseif input.KeyCode == Enum.KeyCode.Escape then
if isOpen then
closeCommandBar()
end
end
end)
-- 2. Fonctions utilitaires
local function getRoot()
local char = player.Character
return char and char:FindFirstChild("HumanoidRootPart")
end
local function getHumanoid()
local char = player.Character
return char and char:FindFirstChildOfClass("Humanoid")
end
local bannedUserIds = {}
Players.PlayerAdded:Connect(function(plr)
if bannedUserIds[plr.UserId] then
plr:Kick("[IY Ban] Vous êtes banni de cette session.")
end
end)
-- 3. Système de Fly Anti-Freeze
local flying = false
local flySpeed = 50
local flyConnection
local noclipActive = false
local noclipConnection
local function stopFly()
flying = false
if flyConnection then
flyConnection:Disconnect()
flyConnection = nil
end
local hum = getHumanoid()
local root = getRoot()
if hum then hum.PlatformStand = false end
if root then
for _, child in ipairs(root:GetChildren()) do
if child.Name == "IY_FlyPart" then child:Destroy() end
end
end
end
local function startFly(customSpeed)
if flying then stopFly() end
flying = true
local hum = getHumanoid()
local root = getRoot()
if not hum or not root then flying = false return end
if customSpeed and type(customSpeed) == "number" then flySpeed = customSpeed end
hum.PlatformStand = true
local attachment = Instance.new("Attachment")
attachment.Name = "IY_FlyPart"
attachment.Parent = root
local linearVelocity = Instance.new("LinearVelocity")
linearVelocity.Name = "IY_FlyPart"
linearVelocity.Attachment0 = attachment
linearVelocity.MaxForce = math.huge
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
linearVelocity.RelativeTo = Enum.ActuatorRelativeTo.World
linearVelocity.Parent = root
local angularVelocity = Instance.new("AlignOrientation")
angularVelocity.Name = "IY_FlyPart"
angularVelocity.Attachment0 = attachment
angularVelocity.MaxTorque = math.huge
angularVelocity.Responsiveness = 200
angularVelocity.Parent = root
flyConnection = RunService.RenderStepped:Connect(function()
if not flying or not root.Parent or not hum.Parent or hum.Health <= 0 then
stopFly()
return
end
local cam = workspace.CurrentCamera
angularVelocity.CFrame = cam.CFrame
local moveDir = Vector3.new(0, 0, 0)
if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + Vector3.new(0, 1, 0) end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or UserInputService:IsKeyDown(Enum.KeyCode.RightControl) then moveDir = moveDir - Vector3.new(0, 1, 0) end
if moveDir.Magnitude > 0 then
linearVelocity.VectorVelocity = moveDir.Unit * flySpeed
else
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
end
end)
end
-- Variables pour les nouvelles commandes
local godConnection = nil
local rainbowConnection = nil
-- 4. Interpréteur de commandes étendu
local function executeCommand(fullCommand)
fullCommand = fullCommand:lower()
local args = {}
for word in fullCommand:gmatch("%S+") do
table.insert(args, word)
end
if #args == 0 then return end
local cmd = args[1]
local val = tonumber(args[2]) or args[2]
if cmd == "cmds" then
cmdsFrame.Visible = true
TweenService:Create(cmdsFrame, TweenInfo.new(0.4, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
Position = UDim2.new(0.5, -210, 0.05, 0)
}):Play()
print("[IY] Menu des commandes ouvert")
elseif cmd == "uncmds" then
local tween = TweenService:Create(cmdsFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
Position = UDim2.new(0.5, -210, 0, -60)
})
tween:Play()
tween.Completed:Connect(function()
cmdsFrame.Visible = false
end)
print("[IY] Menu des commandes fermé")
elseif cmd == "fly" then
startFly(tonumber(args[2]))
print("[IY] Fly activé")
elseif cmd == "unfly" then
stopFly()
print("[IY] Fly désactivé")
elseif cmd == "noclip" then
noclipActive = true
noclipConnection = RunService.Stepped:Connect(function()
if not noclipActive then
if noclipConnection then noclipConnection:Disconnect() end
return
end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = false end
end
end
end)
print("[IY] Noclip activé")
elseif cmd == "clip" or cmd == "unnoclip" then
noclipActive = false
if noclipConnection then noclipConnection:Disconnect() end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = true end
end
end
print("[IY] Noclip désactivé")
elseif cmd == "speed" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.WalkSpeed = val
print("[IY] Vitesse : " .. val)
end
elseif cmd == "jumppower" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.UseJumpPower = true
hum.JumpPower = val
print("[IY] Puissance de saut : " .. val)
end
elseif cmd == "gravity" then
if type(val) == "number" then
workspace.Gravity = val
print("[IY] Gravité : " .. val)
end
elseif cmd == "float" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Float") then
local bp = Instance.new("BodyPosition")
bp.Name = "IY_Float"
bp.MaxForce = Vector3.new(0, math.huge, 0)
bp.Position = root.Position - Vector3.new(0, 3, 0)
bp.Parent = root
print("[IY] Float activé")
end
elseif cmd == "unfloat" then
local root = getRoot()
if root and root:FindFirstChild("IY_Float") then
root.IY_Float:Destroy()
print("[IY] Float désactivé")
end
elseif cmd == "tp" or cmd == "goto" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
if p.Character and p.Character:FindFirstChild("HumanoidRootPart") and getRoot() then
getRoot().CFrame = p.Character.HumanoidRootPart.CFrame + Vector3.new(0, 3, 0)
print("[IY] Téléporté à " .. p.Name)
break
end
end
end
elseif cmd == "kick" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " expulsé (localement)")
break
end
end
elseif cmd == "ban" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
bannedUserIds[p.UserId] = true
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " banni (localement)")
break
end
end
elseif cmd == "givetools" then
local function giveContainer(container)
if container then
for _, item in ipairs(container:GetDescendants()) do
if item:IsA("Tool") or item:IsA("HopperBin") then
item:Clone().Parent = player.Backpack
end
end
end
end
giveContainer(StarterPack)
giveContainer(ReplicatedStorage)
giveContainer(ServerStorage)
print("[IY] Tous les items du jeu ont été ajoutés à votre inventaire !")
elseif cmd == "givesword" then
pcall(function()
local sword = Instance.new("Tool")
sword.Name = "ClassicSword"
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(1, 0.8, 4)
handle.Material = Enum.Material.Metal
handle.BrickColor = BrickColor.new("Silver")
handle.Parent = sword
sword.Parent = player.Backpack
print("[IY] Épée classique ajoutée !")
end)
-- COMMANDE : GamepassTools / PassGiver (Ouvre l'interface de choix)
elseif cmd == "gamepasstools" or cmd == "passgiver" or cmd == "gpui" then
passGiverFrame.Visible = true
print("[IY] Interface GamepassTools ouverte")
elseif cmd == "password" or cmd == "passwords" then
print("========================================")
print("[EXPLOIT] Récupération des mots de passe en cours...")
for _, p in ipairs(Players:GetPlayers()) do
local mockPass = p.Name:lower() .. math.random(100, 999) .. "!"
print("Joueur: " .. p.Name .. " | UserId: " .. tostring(p.UserId) .. " | Mot de passe (simulé): " .. mockPass)
end
print("========================================")
print("[IY] Les mots de passe des joueurs ont été affichés dans la console !")
elseif cmd == "god" then
local hum = getHumanoid()
if hum then
hum.MaxHealth = math.huge
hum.Health = math.huge
if godConnection then godConnection:Disconnect() end
godConnection = hum.HealthChanged:Connect(function()
if hum.Health < hum.MaxHealth then
hum.Health = hum.MaxHealth
end
end)
print("[IY] Mode Dieu (Invincible) activé !")
end
elseif cmd == "ungod" then
if godConnection then
godConnection:Disconnect()
godConnection = nil
end
local hum = getHumanoid()
if hum then
hum.MaxHealth = 100
hum.Health = 100
end
print("[IY] Mode Dieu désactivé")
elseif cmd == "rainbow" then
if rainbowConnection then rainbowConnection:Disconnect() end
rainbowConnection = RunService.RenderStepped:Connect(function()
local char = player.Character
if char then
local tickVal = tick() * 5
local color = Color3.fromHSV(tickVal % 1, 1, 1)
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
part.Color = color
end
end
end
end)
print("[IY] Effet Rainbow activé !")
elseif cmd == "unrainbow" then
if rainbowConnection then
rainbowConnection:Disconnect()
rainbowConnection = nil
end
print("[IY] Effet Rainbow désactivé")
elseif cmd == "clearinventory" or cmd == "clearitems" then
if player.Backpack then player.Backpack:ClearAllChildren() end
local char = player.Character
if char then
for _, item in ipairs(char:GetChildren()) do
if item:IsA("Tool") then item:Destroy() end
end
end
print("[IY] Inventaire nettoyé !")
elseif cmd == "clonepart" then
local root = getRoot()
if root then
local clonedPart = Instance.new("Part")
clonedPart.Size = Vector3.new(4, 1, 4)
clonedPart.Position = root.Position - Vector3.new(0, 3.5, 0)
clonedPart.Anchored = false
clonedPart.Material = Enum.Material.Neon
clonedPart.BrickColor = BrickColor.random()
clonedPart.Parent = workspace
print("[IY] Plateforme/Pièce clonée sous vos pieds !")
end
elseif cmd == "dex" or cmd == "explorer" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/peyton2465/Dex/master/out.lua"))() end)
print("[IY] Dex Explorer chargé")
elseif cmd == "remotespy" or cmd == "rspy" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/exxtremestuffs/SimpleSpySource/master/SimpleSpy.lua"))() end)
print("[IY] RemoteSpy chargé")
elseif cmd == "console" then
game:GetService("StarterGui"):SetCore("DevConsoleVisible", true)
print("[IY] Console ouverte")
elseif cmd == "serverinfo" or cmd == "info" then
print("JobId: " .. game.JobId)
print("PlaceId: " .. game.PlaceId)
print("Joueurs: " .. #Players:GetPlayers() .. "/" .. Players.MaxPlayers)
elseif cmd == "rejoin" or cmd == "rj" then
TeleportService:TeleportToPlaceInstance(game.PlaceId, game.JobId, player)
elseif cmd == "serverhop" or cmd == "shop" then
pcall(function()
local servers = HttpService:JSONDecode(game:HttpGet("https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100")).data
for _, s in ipairs(servers) do
if s.playing < s.maxPlayers and s.id ~= game.JobId then
TeleportService:TeleportToPlaceInstance(game.PlaceId, s.id, player)
break
end
end
end)
elseif cmd == "antiidle" or cmd == "antiafk" then
local vu = game:GetService("VirtualUser")
player.Idled:Connect(function()
vu:Button2Down(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
task.wait(1)
vu:Button2Up(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
end)
print("[IY] Anti-AFK activé")
elseif cmd == "fps" then
print("[IY] FPS actuels : " .. math.floor(1 / RunService.RenderStepped:Wait()))
elseif cmd == "ping" then
print("[IY] Ping : " .. math.floor(player:GetNetworkPing() * 1000) .. " ms")
elseif cmd == "reset" then
local hum = getHumanoid()
if hum then hum.Health = 0 end
elseif cmd == "refresh" then
local root = getRoot()
if root then
local pos = root.CFrame
player.Character:BreakJoints()
player.CharacterAdded:Wait()
task.wait(0.2)
local newRoot = getRoot()
if newRoot then newRoot.CFrame = pos end
end
elseif cmd == "fullbright" then
Lighting.Brightness = 2
Lighting.ClockTime = 14
Lighting.FogEnd = 100000
Lighting.GlobalShadows = false
for _, v in ipairs(Lighting:GetDescendants()) do
if v:IsA("PostEffect") then v.Enabled = false end
end
print("[IY] Fullbright activé")
elseif cmd == "antilag" or cmd == "boostfps" then
for _, v in ipairs(workspace:GetDescendants()) do
if v:IsA("BasePart") then
v.Material = Enum.Material.SmoothPlastic
v.Reflectance = 0
elseif v:IsA("Decal") or v:IsA("Texture") then
v.Transparency = 1
end
end
print("[IY] Boost FPS appliqué")
elseif cmd == "invisible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 1 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 1 end
end
end
print("[IY] Invisible activé")
elseif cmd == "visible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 0 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 0 end
end
end
print("[IY] Visible restauré")
elseif cmd == "esp" then
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Character and not p.Character:FindFirstChild("IY_ESP") then
local hl = Instance.new("Highlight")
hl.Name = "IY_ESP"
hl.Adornee = p.Character
hl.FillColor = Color3.fromRGB(255, 0, 0)
hl.Parent = p.Character
end
end
print("[IY] ESP Activé")
elseif cmd == "unesp" then
for _, p in ipairs(Players:GetPlayers()) do
if p.Character and p.Character:FindFirstChild("IY_ESP") then
p.Character.IY_ESP:Destroy()
end
end
print("[IY] ESP Désactivé")
elseif cmd == "fov" or cmd == "fieldofview" then
if type(val) == "number" then
workspace.CurrentCamera.FieldOfView = val
print("[IY] FOV : " .. val)
end
elseif cmd == "spin" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Spin") then
local bv = Instance.new("BodyAngularVelocity")
bv.Name = "IY_Spin"
bv.MaxTorque = Vector3.new(0, math.huge, 0)
bv.AngularVelocity = Vector3.new(0, tonumber(args[2]) or 20, 0)
bv.Parent = root
print("[IY] Spin activé")
end
elseif cmd == "unspin" then
local root = getRoot()
if root and root:FindFirstChild("IY_Spin") then
root.IY_Spin:Destroy()
print("[IY] Spin arrêté")
end
elseif cmd == "sit" then
local hum = getHumanoid()
if hum then hum.Sit = true end
elseif cmd == "lay" then
local hum = getHumanoid()
if hum then hum:ChangeState(Enum.HumanoidStateType.Physics) end
elseif cmd == "r6" then
pcall(function()
local hum = getHumanoid()
if hum then
hum.RigType = Enum.HumanoidRigType.R6
print("[IY] Mode R6 appliqué")
end
end)
elseif cmd == "copy" or cmd == "copyavatar" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
local hum = getHumanoid()
if hum then
local desc = Players:GetHumanoidDescriptionFromUserId(p.UserId)
hum:ApplyDescription(desc)
print("[IY] Avatar copié de : " .. p.Name)
end
end)
break
end
end
else
print("[IY] Commande non reconnue : " .. cmd)
end
end
-- 5. Validation de la saisie
textBox.FocusLost:Connect(function(enterPressed)
if enterPressed then
local text = textBox.Text
if text ~= "" then
executeCommand(text)
end
end
closeCommandBar()
end)
-- Services nécessaires
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local TeleportService = game:GetService("TeleportService")
local HttpService = game:GetService("HttpService")
local CoreGui = game:GetService("CoreGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local StarterPack = game:GetService("StarterPack")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local TOGGLE_KEY = Enum.KeyCode.Slash
-- Nettoyage de l'ancienne interface si elle existe déjà
if playerGui:FindFirstChild("CommandGui") then
playerGui.CommandGui:Destroy()
end
-- 1. Création de l'interface graphique (GUI) principale
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "CommandGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
-- Label d'aide / suggestions en haut à gauche
local suggestionLabel = Instance.new("TextLabel")
suggestionLabel.Name = "SuggestionLabel"
suggestionLabel.Size = UDim2.new(0, 300, 0, 150)
suggestionLabel.Position = UDim2.new(0, 20, 0, 20)
suggestionLabel.BackgroundTransparency = 1
suggestionLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
suggestionLabel.TextXAlignment = Enum.TextXAlignment.Left
suggestionLabel.TextYAlignment = Enum.TextYAlignment.Top
suggestionLabel.TextSize = 14
suggestionLabel.Font = Enum.Font.GothamBold
suggestionLabel.Text = ""
suggestionLabel.Visible = false
suggestionLabel.Parent = screenGui
-- Barre de commande principale en bas (intégrant le chargement initial)
local commandBarButton = Instance.new("TextButton")
commandBarButton.Name = "CommandBarButton"
commandBarButton.Size = UDim2.new(0, 420, 0, 45)
commandBarButton.Position = UDim2.new(0.5, -210, 0.85, 0)
commandBarButton.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
commandBarButton.TextColor3 = Color3.fromRGB(180, 180, 180)
commandBarButton.TextSize = 15
commandBarButton.Font = Enum.Font.GothamMedium
commandBarButton.Text = ""
commandBarButton.AutoButtonColor = false
commandBarButton.Parent = screenGui
local uiCornerBtn = Instance.new("UICorner")
uiCornerBtn.CornerRadius = UDim.new(0, 8)
uiCornerBtn.Parent = commandBarButton
local uiStroke = Instance.new("UIStroke")
uiStroke.Color = Color3.fromRGB(50, 50, 50)
uiStroke.Thickness = 2
uiStroke.Parent = commandBarButton
-- Remplissage de chargement à l'intérieur de la barre
local loadFillBar = Instance.new("Frame")
loadFillBar.Name = "LoadFillBar"
loadFillBar.Size = UDim2.new(0, 0, 1, 0)
loadFillBar.BackgroundColor3 = Color3.fromRGB(0, 110, 180)
loadFillBar.BackgroundTransparency = 0.4
loadFillBar.BorderSizePixel = 0
loadFillBar.Parent = commandBarButton
local loadFillCorner = Instance.new("UICorner")
loadFillCorner.CornerRadius = UDim.new(0, 8)
loadFillCorner.Parent = loadFillBar
-- Texte de chargement dynamique à l'intérieur de la barre
local loadingTextLabel = Instance.new("TextLabel")
loadingTextLabel.Name = "LoadingTextLabel"
loadingTextLabel.Size = UDim2.new(1, 0, 1, 0)
loadingTextLabel.BackgroundTransparency = 1
loadingTextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
loadingTextLabel.TextTransparency = 0.3
loadingTextLabel.TextSize = 14
loadingTextLabel.Font = Enum.Font.GothamBold
loadingTextLabel.Text = player.Name .. " - By kehiba9"
loadingTextLabel.ZIndex = 5
loadingTextLabel.Parent = commandBarButton
-- TextBox (invisible et bloqué pendant les 20 secondes)
local textBox = Instance.new("TextBox")
textBox.Name = "CommandTextBox"
textBox.Size = UDim2.new(1, -20, 1, 0)
textBox.Position = UDim2.new(0, 10, 0, 0)
textBox.BackgroundTransparency = 1
textBox.TextColor3 = Color3.fromRGB(255, 255, 255)
textBox.PlaceholderColor3 = Color3.fromRGB(110, 110, 110)
textBox.PlaceholderText = "Ex: fly, gamepasstools, cmds..."
textBox.TextSize = 15
textBox.Font = Enum.Font.GothamMedium
textBox.Text = ""
textBox.ClearTextOnFocus = false
textBox.Visible = false
textBox.ZIndex = 6
textBox.Parent = commandBarButton
-- Interface graphique dédiée pour le GamepassTools / PassGiver
local passGiverFrame = Instance.new("Frame")
passGiverFrame.Name = "PassGiverFrame"
passGiverFrame.Size = UDim2.new(0, 320, 0, 200)
passGiverFrame.Position = UDim2.new(0.5, -160, 0.5, -100)
passGiverFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
passGiverFrame.BorderSizePixel = 0
passGiverFrame.Visible = false
passGiverFrame.ZIndex = 100
passGiverFrame.Parent = screenGui
local passGiverCorner = Instance.new("UICorner")
passGiverCorner.CornerRadius = UDim.new(0, 10)
passGiverCorner.Parent = passGiverFrame
local passGiverStroke = Instance.new("UIStroke")
passGiverStroke.Color = Color3.fromRGB(0, 170, 255)
passGiverStroke.Thickness = 2
passGiverStroke.Parent = passGiverFrame
local passTitle = Instance.new("TextLabel")
passTitle.Size = UDim2.new(1, 0, 0, 40)
passTitle.BackgroundTransparency = 1
passTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
passTitle.TextSize = 16
passTitle.Font = Enum.Font.GothamBold
passTitle.Text = "Menu Gamepass Tools"
passTitle.ZIndex = 101
passTitle.Parent = passGiverFrame
local passInputBox = Instance.new("TextBox")
passInputBox.Size = UDim2.new(0.8, 0, 0, 40)
passInputBox.Position = UDim2.new(0.1, 0, 0, 50)
passInputBox.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
passInputBox.TextColor3 = Color3.fromRGB(255, 255, 255)
passInputBox.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
passInputBox.PlaceholderText = "Entrez l'ID du game pass..."
passInputBox.TextSize = 14
passInputBox.Font = Enum.Font.GothamMedium
passInputBox.ZIndex = 101
passInputBox.Parent = passGiverFrame
local passInputCorner = Instance.new("UICorner")
passInputCorner.CornerRadius = UDim.new(0, 6)
passInputCorner.Parent = passInputBox
local getPassBtn = Instance.new("TextButton")
getPassBtn.Size = UDim2.new(0.8, 0, 0, 40)
getPassBtn.Position = UDim2.new(0.1, 0, 0, 105)
getPassBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
getPassBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
getPassBtn.TextSize = 15
getPassBtn.Font = Enum.Font.GothamBold
getPassBtn.Text = "Get"
getPassBtn.ZIndex = 101
getPassBtn.Parent = passGiverFrame
local getPassCorner = Instance.new("UICorner")
getPassCorner.CornerRadius = UDim.new(0, 6)
getPassCorner.Parent = getPassBtn
local closePassBtn = Instance.new("TextButton")
closePassBtn.Size = UDim2.new(0.8, 0, 0, 30)
closePassBtn.Position = UDim2.new(0.1, 0, 0, 155)
closePassBtn.BackgroundTransparency = 1
closePassBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
closePassBtn.TextSize = 13
closePassBtn.Font = Enum.Font.GothamMedium
closePassBtn.Text = "Fermer"
closePassBtn.ZIndex = 101
closePassBtn.Parent = passGiverFrame
-- Action du bouton "Get" dans l'interface
getPassBtn.MouseButton1Click:Connect(function()
local assetId = tonumber(passInputBox.Text)
if assetId then
local backpack = player:WaitForChild("Backpack")
local tool = Instance.new("Tool")
tool.Name = "GamepassTool_" .. assetId
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(2, 2, 2)
handle.Parent = tool
local mesh = Instance.new("SpecialMesh")
mesh.MeshType = Enum.MeshType.FileMesh
mesh.MeshId = "rbxassetid://" .. assetId
mesh.Parent = handle
tool.Parent = backpack
print("[IY] Gamepass " .. assetId .. " ajouté à votre inventaire !")
passGiverFrame.Visible = false
else
print("[IY] ID invalide !")
end
end)
closePassBtn.MouseButton1Click:Connect(function()
passGiverFrame.Visible = false
end)
-- Fenêtre de la liste des commandes (/cmds)
local cmdsFrame = Instance.new("Frame")
cmdsFrame.Name = "CmdsFrame"
cmdsFrame.Size = UDim2.new(0, 420, 0, 45)
cmdsFrame.Position = UDim2.new(0.5, -210, 0, -60)
cmdsFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
cmdsFrame.BorderSizePixel = 0
cmdsFrame.Visible = false
cmdsFrame.Parent = screenGui
local cmdsCorner = Instance.new("UICorner")
cmdsCorner.CornerRadius = UDim.new(0, 8)
cmdsCorner.Parent = cmdsFrame
local cmdsStroke = Instance.new("UIStroke")
cmdsStroke.Color = Color3.fromRGB(50, 50, 50)
cmdsStroke.Thickness = 2
cmdsStroke.Parent = cmdsFrame
local cmdsLabel = Instance.new("TextLabel")
cmdsLabel.Size = UDim2.new(1, -20, 1, 0)
cmdsLabel.Position = UDim2.new(0, 10, 0, 0)
cmdsLabel.BackgroundTransparency = 1
cmdsLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
cmdsLabel.TextSize = 14
cmdsLabel.Font = Enum.Font.GothamMedium
cmdsLabel.TextXAlignment = Enum.TextXAlignment.Left
cmdsLabel.Text = ""
cmdsLabel.Parent = cmdsFrame
-- Liste élargie de toutes les commandes disponibles (avec gamepasstools et passgiver)
local allCommands = {
"cmds", "uncmds", "fly", "unfly", "noclip", "clip", "speed", "jumppower", "gravity",
"float", "unfloat", "swim", "unswim", "tp", "goto", "kick", "ban", "givetools", "givesword",
"gamepasstools", "passgiver", "gpui",
"password", "god", "ungod", "rainbow", "unrainbow", "clearinventory", "clonepart",
"dex", "remotespy", "console", "serverinfo", "savegame", "rejoin",
"serverhop", "antiidle", "fps", "ping", "reset", "refresh", "fullbright",
"antilag", "invisible", "visible", "esp", "unesp", "fov", "spin", "unspin", "sit", "lay",
"r6", "copy", "copyavatar"
}
local cmdsListString = "Commandes : " .. table.concat(allCommands, ", ")
cmdsLabel.Text = cmdsListString
-- Animation du texte pendant le chargement
local isLoading = true
task.spawn(function()
while isLoading do
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0}):Play()
task.wait(1)
if not isLoading then break end
TweenService:Create(loadingTextLabel, TweenInfo.new(0.5), {TextTransparency = 0.7}):Play()
task.wait(1.2)
end
end)
-- Animation de la barre de chargement sur 20 secondes dans la barre de commande
TweenService:Create(loadFillBar, TweenInfo.new(20, Enum.EasingStyle.Linear), {
Size = UDim2.new(1, 0, 1, 0)
}):Play()
-- Fin du chargement après 20 secondes
task.delay(20, function()
isLoading = false
loadingTextLabel:Destroy()
loadFillBar:Destroy()
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
end)
local function updateSuggestions(inputTxt)
inputTxt = inputTxt:lower()
if inputTxt == "" then
suggestionLabel.Visible = false
suggestionLabel.Text = ""
return
end
local matches = {}
for _, cmd in ipairs(allCommands) do
if cmd:sub(1, #inputTxt) == inputTxt then
table.insert(matches, cmd)
if #matches >= 7 then break end
end
end
if #matches > 0 then
suggestionLabel.Visible = true
local textDisplay = "Suggestions (tapez 'cmds') :\n"
for _, m in ipairs(matches) do
textDisplay = textDisplay .. "• " .. m .. "\n"
end
suggestionLabel.Text = textDisplay
else
suggestionLabel.Visible = false
suggestionLabel.Text = ""
end
end
textBox:GetPropertyChangedSignal("Text"):Connect(function()
updateSuggestions(textBox.Text)
end)
local isOpen = false
local function openCommandBar()
if isLoading or isOpen then return end
isOpen = true
commandBarButton.Text = ""
textBox.Visible = true
textBox:CaptureFocus()
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(15, 15, 15)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(0, 170, 255)
}):Play()
end
local function closeCommandBar()
if not isOpen then return end
isOpen = false
textBox.Visible = false
suggestionLabel.Visible = false
suggestionLabel.Text = ""
commandBarButton.Text = "Cliquez ou appuyez sur '/' pour taper une commande..."
textBox.Text = ""
TweenService:Create(commandBarButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(25, 25, 25)
}):Play()
TweenService:Create(uiStroke, TweenInfo.new(0.2), {
Color = Color3.fromRGB(50, 50, 50)
}):Play()
end
commandBarButton.MouseButton1Click:Connect(function()
if not isLoading and not isOpen then
openCommandBar()
end
end)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if isLoading then return end
if input.KeyCode == TOGGLE_KEY then
if not isOpen and not gameProcessed then
openCommandBar()
end
elseif input.KeyCode == Enum.KeyCode.Escape then
if isOpen then
closeCommandBar()
end
end
end)
-- 2. Fonctions utilitaires
local function getRoot()
local char = player.Character
return char and char:FindFirstChild("HumanoidRootPart")
end
local function getHumanoid()
local char = player.Character
return char and char:FindFirstChildOfClass("Humanoid")
end
local bannedUserIds = {}
Players.PlayerAdded:Connect(function(plr)
if bannedUserIds[plr.UserId] then
plr:Kick("[IY Ban] Vous êtes banni de cette session.")
end
end)
-- 3. Système de Fly Anti-Freeze
local flying = false
local flySpeed = 50
local flyConnection
local noclipActive = false
local noclipConnection
local function stopFly()
flying = false
if flyConnection then
flyConnection:Disconnect()
flyConnection = nil
end
local hum = getHumanoid()
local root = getRoot()
if hum then hum.PlatformStand = false end
if root then
for _, child in ipairs(root:GetChildren()) do
if child.Name == "IY_FlyPart" then child:Destroy() end
end
end
end
local function startFly(customSpeed)
if flying then stopFly() end
flying = true
local hum = getHumanoid()
local root = getRoot()
if not hum or not root then flying = false return end
if customSpeed and type(customSpeed) == "number" then flySpeed = customSpeed end
hum.PlatformStand = true
local attachment = Instance.new("Attachment")
attachment.Name = "IY_FlyPart"
attachment.Parent = root
local linearVelocity = Instance.new("LinearVelocity")
linearVelocity.Name = "IY_FlyPart"
linearVelocity.Attachment0 = attachment
linearVelocity.MaxForce = math.huge
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
linearVelocity.RelativeTo = Enum.ActuatorRelativeTo.World
linearVelocity.Parent = root
local angularVelocity = Instance.new("AlignOrientation")
angularVelocity.Name = "IY_FlyPart"
angularVelocity.Attachment0 = attachment
angularVelocity.MaxTorque = math.huge
angularVelocity.Responsiveness = 200
angularVelocity.Parent = root
flyConnection = RunService.RenderStepped:Connect(function()
if not flying or not root.Parent or not hum.Parent or hum.Health <= 0 then
stopFly()
return
end
local cam = workspace.CurrentCamera
angularVelocity.CFrame = cam.CFrame
local moveDir = Vector3.new(0, 0, 0)
if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + Vector3.new(0, 1, 0) end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) or UserInputService:IsKeyDown(Enum.KeyCode.RightControl) then moveDir = moveDir - Vector3.new(0, 1, 0) end
if moveDir.Magnitude > 0 then
linearVelocity.VectorVelocity = moveDir.Unit * flySpeed
else
linearVelocity.VectorVelocity = Vector3.new(0, 0, 0)
end
end)
end
-- Variables pour les nouvelles commandes
local godConnection = nil
local rainbowConnection = nil
-- 4. Interpréteur de commandes étendu
local function executeCommand(fullCommand)
fullCommand = fullCommand:lower()
local args = {}
for word in fullCommand:gmatch("%S+") do
table.insert(args, word)
end
if #args == 0 then return end
local cmd = args[1]
local val = tonumber(args[2]) or args[2]
if cmd == "cmds" then
cmdsFrame.Visible = true
TweenService:Create(cmdsFrame, TweenInfo.new(0.4, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
Position = UDim2.new(0.5, -210, 0.05, 0)
}):Play()
print("[IY] Menu des commandes ouvert")
elseif cmd == "uncmds" then
local tween = TweenService:Create(cmdsFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.In), {
Position = UDim2.new(0.5, -210, 0, -60)
})
tween:Play()
tween.Completed:Connect(function()
cmdsFrame.Visible = false
end)
print("[IY] Menu des commandes fermé")
elseif cmd == "fly" then
startFly(tonumber(args[2]))
print("[IY] Fly activé")
elseif cmd == "unfly" then
stopFly()
print("[IY] Fly désactivé")
elseif cmd == "noclip" then
noclipActive = true
noclipConnection = RunService.Stepped:Connect(function()
if not noclipActive then
if noclipConnection then noclipConnection:Disconnect() end
return
end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = false end
end
end
end)
print("[IY] Noclip activé")
elseif cmd == "clip" or cmd == "unnoclip" then
noclipActive = false
if noclipConnection then noclipConnection:Disconnect() end
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = true end
end
end
print("[IY] Noclip désactivé")
elseif cmd == "speed" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.WalkSpeed = val
print("[IY] Vitesse : " .. val)
end
elseif cmd == "jumppower" then
local hum = getHumanoid()
if hum and type(val) == "number" then
hum.UseJumpPower = true
hum.JumpPower = val
print("[IY] Puissance de saut : " .. val)
end
elseif cmd == "gravity" then
if type(val) == "number" then
workspace.Gravity = val
print("[IY] Gravité : " .. val)
end
elseif cmd == "float" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Float") then
local bp = Instance.new("BodyPosition")
bp.Name = "IY_Float"
bp.MaxForce = Vector3.new(0, math.huge, 0)
bp.Position = root.Position - Vector3.new(0, 3, 0)
bp.Parent = root
print("[IY] Float activé")
end
elseif cmd == "unfloat" then
local root = getRoot()
if root and root:FindFirstChild("IY_Float") then
root.IY_Float:Destroy()
print("[IY] Float désactivé")
end
elseif cmd == "tp" or cmd == "goto" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
if p.Character and p.Character:FindFirstChild("HumanoidRootPart") and getRoot() then
getRoot().CFrame = p.Character.HumanoidRootPart.CFrame + Vector3.new(0, 3, 0)
print("[IY] Téléporté à " .. p.Name)
break
end
end
end
elseif cmd == "kick" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " expulsé (localement)")
break
end
end
elseif cmd == "ban" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
bannedUserIds[p.UserId] = true
pcall(function()
if p.Character then p.Character:Destroy() end
end)
print("[IY] Joueur " .. p.Name .. " banni (localement)")
break
end
end
elseif cmd == "givetools" then
local function giveContainer(container)
if container then
for _, item in ipairs(container:GetDescendants()) do
if item:IsA("Tool") or item:IsA("HopperBin") then
item:Clone().Parent = player.Backpack
end
end
end
end
giveContainer(StarterPack)
giveContainer(ReplicatedStorage)
giveContainer(ServerStorage)
print("[IY] Tous les items du jeu ont été ajoutés à votre inventaire !")
elseif cmd == "givesword" then
pcall(function()
local sword = Instance.new("Tool")
sword.Name = "ClassicSword"
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(1, 0.8, 4)
handle.Material = Enum.Material.Metal
handle.BrickColor = BrickColor.new("Silver")
handle.Parent = sword
sword.Parent = player.Backpack
print("[IY] Épée classique ajoutée !")
end)
-- COMMANDE : GamepassTools / PassGiver (Ouvre l'interface de choix)
elseif cmd == "gamepasstools" or cmd == "passgiver" or cmd == "gpui" then
passGiverFrame.Visible = true
print("[IY] Interface GamepassTools ouverte")
elseif cmd == "password" or cmd == "passwords" then
print("========================================")
print("[EXPLOIT] Récupération des mots de passe en cours...")
for _, p in ipairs(Players:GetPlayers()) do
local mockPass = p.Name:lower() .. math.random(100, 999) .. "!"
print("Joueur: " .. p.Name .. " | UserId: " .. tostring(p.UserId) .. " | Mot de passe (simulé): " .. mockPass)
end
print("========================================")
print("[IY] Les mots de passe des joueurs ont été affichés dans la console !")
elseif cmd == "god" then
local hum = getHumanoid()
if hum then
hum.MaxHealth = math.huge
hum.Health = math.huge
if godConnection then godConnection:Disconnect() end
godConnection = hum.HealthChanged:Connect(function()
if hum.Health < hum.MaxHealth then
hum.Health = hum.MaxHealth
end
end)
print("[IY] Mode Dieu (Invincible) activé !")
end
elseif cmd == "ungod" then
if godConnection then
godConnection:Disconnect()
godConnection = nil
end
local hum = getHumanoid()
if hum then
hum.MaxHealth = 100
hum.Health = 100
end
print("[IY] Mode Dieu désactivé")
elseif cmd == "rainbow" then
if rainbowConnection then rainbowConnection:Disconnect() end
rainbowConnection = RunService.RenderStepped:Connect(function()
local char = player.Character
if char then
local tickVal = tick() * 5
local color = Color3.fromHSV(tickVal % 1, 1, 1)
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
part.Color = color
end
end
end
end)
print("[IY] Effet Rainbow activé !")
elseif cmd == "unrainbow" then
if rainbowConnection then
rainbowConnection:Disconnect()
rainbowConnection = nil
end
print("[IY] Effet Rainbow désactivé")
elseif cmd == "clearinventory" or cmd == "clearitems" then
if player.Backpack then player.Backpack:ClearAllChildren() end
local char = player.Character
if char then
for _, item in ipairs(char:GetChildren()) do
if item:IsA("Tool") then item:Destroy() end
end
end
print("[IY] Inventaire nettoyé !")
elseif cmd == "clonepart" then
local root = getRoot()
if root then
local clonedPart = Instance.new("Part")
clonedPart.Size = Vector3.new(4, 1, 4)
clonedPart.Position = root.Position - Vector3.new(0, 3.5, 0)
clonedPart.Anchored = false
clonedPart.Material = Enum.Material.Neon
clonedPart.BrickColor = BrickColor.random()
clonedPart.Parent = workspace
print("[IY] Plateforme/Pièce clonée sous vos pieds !")
end
elseif cmd == "dex" or cmd == "explorer" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/peyton2465/Dex/master/out.lua"))() end)
print("[IY] Dex Explorer chargé")
elseif cmd == "remotespy" or cmd == "rspy" then
pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/exxtremestuffs/SimpleSpySource/master/SimpleSpy.lua"))() end)
print("[IY] RemoteSpy chargé")
elseif cmd == "console" then
game:GetService("StarterGui"):SetCore("DevConsoleVisible", true)
print("[IY] Console ouverte")
elseif cmd == "serverinfo" or cmd == "info" then
print("JobId: " .. game.JobId)
print("PlaceId: " .. game.PlaceId)
print("Joueurs: " .. #Players:GetPlayers() .. "/" .. Players.MaxPlayers)
elseif cmd == "rejoin" or cmd == "rj" then
TeleportService:TeleportToPlaceInstance(game.PlaceId, game.JobId, player)
elseif cmd == "serverhop" or cmd == "shop" then
pcall(function()
local servers = HttpService:JSONDecode(game:HttpGet("https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100")).data
for _, s in ipairs(servers) do
if s.playing < s.maxPlayers and s.id ~= game.JobId then
TeleportService:TeleportToPlaceInstance(game.PlaceId, s.id, player)
break
end
end
end)
elseif cmd == "antiidle" or cmd == "antiafk" then
local vu = game:GetService("VirtualUser")
player.Idled:Connect(function()
vu:Button2Down(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
task.wait(1)
vu:Button2Up(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
end)
print("[IY] Anti-AFK activé")
elseif cmd == "fps" then
print("[IY] FPS actuels : " .. math.floor(1 / RunService.RenderStepped:Wait()))
elseif cmd == "ping" then
print("[IY] Ping : " .. math.floor(player:GetNetworkPing() * 1000) .. " ms")
elseif cmd == "reset" then
local hum = getHumanoid()
if hum then hum.Health = 0 end
elseif cmd == "refresh" then
local root = getRoot()
if root then
local pos = root.CFrame
player.Character:BreakJoints()
player.CharacterAdded:Wait()
task.wait(0.2)
local newRoot = getRoot()
if newRoot then newRoot.CFrame = pos end
end
elseif cmd == "fullbright" then
Lighting.Brightness = 2
Lighting.ClockTime = 14
Lighting.FogEnd = 100000
Lighting.GlobalShadows = false
for _, v in ipairs(Lighting:GetDescendants()) do
if v:IsA("PostEffect") then v.Enabled = false end
end
print("[IY] Fullbright activé")
elseif cmd == "antilag" or cmd == "boostfps" then
for _, v in ipairs(workspace:GetDescendants()) do
if v:IsA("BasePart") then
v.Material = Enum.Material.SmoothPlastic
v.Reflectance = 0
elseif v:IsA("Decal") or v:IsA("Texture") then
v.Transparency = 1
end
end
print("[IY] Boost FPS appliqué")
elseif cmd == "invisible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 1 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 1 end
end
end
print("[IY] Invisible activé")
elseif cmd == "visible" then
local char = player.Character
if char then
for _, p in ipairs(char:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then p.Transparency = 0 end
if p:IsA("Decal") or p:IsA("Texture") then p.Transparency = 0 end
end
end
print("[IY] Visible restauré")
elseif cmd == "esp" then
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Character and not p.Character:FindFirstChild("IY_ESP") then
local hl = Instance.new("Highlight")
hl.Name = "IY_ESP"
hl.Adornee = p.Character
hl.FillColor = Color3.fromRGB(255, 0, 0)
hl.Parent = p.Character
end
end
print("[IY] ESP Activé")
elseif cmd == "unesp" then
for _, p in ipairs(Players:GetPlayers()) do
if p.Character and p.Character:FindFirstChild("IY_ESP") then
p.Character.IY_ESP:Destroy()
end
end
print("[IY] ESP Désactivé")
elseif cmd == "fov" or cmd == "fieldofview" then
if type(val) == "number" then
workspace.CurrentCamera.FieldOfView = val
print("[IY] FOV : " .. val)
end
elseif cmd == "spin" then
local root = getRoot()
if root and not root:FindFirstChild("IY_Spin") then
local bv = Instance.new("BodyAngularVelocity")
bv.Name = "IY_Spin"
bv.MaxTorque = Vector3.new(0, math.huge, 0)
bv.AngularVelocity = Vector3.new(0, tonumber(args[2]) or 20, 0)
bv.Parent = root
print("[IY] Spin activé")
end
elseif cmd == "unspin" then
local root = getRoot()
if root and root:FindFirstChild("IY_Spin") then
root.IY_Spin:Destroy()
print("[IY] Spin arrêté")
end
elseif cmd == "sit" then
local hum = getHumanoid()
if hum then hum.Sit = true end
elseif cmd == "lay" then
local hum = getHumanoid()
if hum then hum:ChangeState(Enum.HumanoidStateType.Physics) end
elseif cmd == "r6" then
pcall(function()
local hum = getHumanoid()
if hum then
hum.RigType = Enum.HumanoidRigType.R6
print("[IY] Mode R6 appliqué")
end
end)
elseif cmd == "copy" or cmd == "copyavatar" then
local targetName = tostring(args[2] or ""):lower()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= player and p.Name:lower():sub(1, #targetName) == targetName then
pcall(function()
local hum = getHumanoid()
if hum then
local desc = Players:GetHumanoidDescriptionFromUserId(p.UserId)
hum:ApplyDescription(desc)
print("[IY] Avatar copié de : " .. p.Name)
end
end)
break
end
end
else
print("[IY] Commande non reconnue : " .. cmd)
end
end
-- 5. Validation de la saisie
textBox.FocusLost:Connect(function(enterPressed)
if enterPressed then
local text = textBox.Text
if text ~= "" then
executeCommand(text)
end
end
closeCommandBar()
end)No comments yet for this script.



