-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] GAS_YT Magic Bullet v21 — BloxStrike Hitbox Expander + Remote Scanner + Raycast hook v21: Neon heart bypass + Redesigned GUI + Drag fix ]] local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local RunService = game:GetService("RunService") local UIS = game:GetService("UserInputService") local Camera = Workspace.CurrentCamera local LP = Players.LocalPlayer local hitboxOn = false local scanOn = false local scanCount = 0 --================================================================== -- GUI PARENT --================================================================== local function getGuiParent() local ok, hui = pcall(function() return gethui and gethui() end) if ok and hui then return hui end local ok2, cg = pcall(function() return game:GetService("CoreGui") end) if ok2 and cg then return cg end return LP:WaitForChild("PlayerGui") end local parent = getGuiParent() local neonGray = Color3.fromRGB(120, 120, 140) local neonGreen = Color3.fromRGB(0, 255, 136) local crimson = Color3.fromRGB(200, 30, 50) --================================================================== -- LOADING SCREEN — NEON HEART + BYPASS (не блокирует скрипт) --================================================================== task.spawn(function() local oldLoad = parent:FindFirstChild("GAS_MB_LOAD") if oldLoad then oldLoad:Destroy() end local loadGui = Instance.new("ScreenGui") loadGui.Name = "GAS_MB_LOAD" loadGui.IgnoreGuiInset = true loadGui.Parent = parent local dim = Instance.new("Frame") dim.Size = UDim2.new(1, 0, 1, 0) dim.BackgroundColor3 = Color3.fromRGB(0, 0, 0) dim.BackgroundTransparency = 0.2 dim.BorderSizePixel = 0 dim.Parent = loadGui local heartBox = Instance.new("Frame") heartBox.Size = UDim2.new(0, 200, 0, 200) heartBox.Position = UDim2.new(0.5, -100, 0.5, -120) heartBox.BackgroundTransparency = 1 heartBox.Parent = dim for i = 3, 1, -1 do local glow = Instance.new("TextLabel") glow.Text = "\u{2665}" glow.Size = UDim2.new(1, 0, 1, 0) glow.Font = Enum.Font.GothamBold glow.TextSize = 110 + i * 18 glow.TextColor3 = neonGreen glow.TextTransparency = 0.55 + i * 0.12 glow.BackgroundTransparency = 1 glow.Parent = heartBox end local heart = Instance.new("TextLabel") heart.Text = "\u{2665}" heart.Size = UDim2.new(1, 0, 1, 0) heart.Font = Enum.Font.GothamBold heart.TextSize = 110 heart.TextColor3 = Color3.fromRGB(12, 12, 12) heart.BackgroundTransparency = 1 heart.Parent = heartBox local stroke = Instance.new("UIStroke") stroke.Color = neonGreen stroke.Thickness = 2.5 stroke.Transparency = 0.15 stroke.Parent = heart local countdown = Instance.new("TextLabel") countdown.Size = UDim2.new(0, 400, 0, 40) countdown.Position = UDim2.new(0.5, -200, 0.5, 60) countdown.BackgroundTransparency = 1 countdown.Text = "Purchasing bypass..." countdown.TextColor3 = neonGreen countdown.Font = Enum.Font.GothamSemibold countdown.TextSize = 20 countdown.Parent = dim local statusLbl = Instance.new("TextLabel") statusLbl.Size = UDim2.new(0, 400, 0, 20) statusLbl.Position = UDim2.new(0.5, -200, 0.5, 95) statusLbl.BackgroundTransparency = 1 statusLbl.Text = "Magic Bullet v21" statusLbl.TextColor3 = Color3.fromRGB(100, 100, 110) statusLbl.Font = Enum.Font.Gotham statusLbl.TextSize = 14 statusLbl.Parent = dim local beatActive = true task.spawn(function() local t = 0 while beatActive do t = t + 0.12 local pulse = 1 + math.sin(t * 3.5) * 0.1 local s = 200 * pulse heartBox.Size = UDim2.new(0, s, 0, s) heartBox.Position = UDim2.new(0.5, -s / 2, 0.5, -s / 2 - 20) task.wait(0.03) end end) task.wait(0.5) countdown.Text = "Purchasing bypass... 3" task.wait(1) countdown.Text = "Purchasing bypass... 2" task.wait(1) countdown.Text = "Purchasing bypass... 1" task.wait(1) countdown.Text = "Your executor paid the pass" statusLbl.Text = "You can use the script" statusLbl.TextColor3 = neonGreen task.wait(5) for t = 0, 1, 0.05 do dim.BackgroundTransparency = 0.2 + t * 0.8 heart.TextTransparency = t stroke.Transparency = 0.15 + t * 0.85 countdown.TextTransparency = t statusLbl.TextTransparency = t for _, c in ipairs(heartBox:GetChildren()) do if c:IsA("TextLabel") and c ~= heart then c.TextTransparency = math.min(1, c.TextTransparency + t * 0.5) end end task.wait(0.03) end beatActive = false loadGui:Destroy() end) --================================================================== -- ПОИСК ПЕРСОНАЖА --================================================================== local function getChar(plr) if not plr then return nil end local chars = Workspace:FindFirstChild("Characters") if chars then local model = chars:FindFirstChild(plr.Name) if model and model:IsA("Model") and model:FindFirstChild("HumanoidRootPart") then return model end for _, sub in ipairs(chars:GetChildren()) do local m = sub:FindFirstChild(plr.Name) if m and m:IsA("Model") and m:FindFirstChild("HumanoidRootPart") then return m end end end local c = plr.Character if c and c:FindFirstChild("HumanoidRootPart") then return c end return nil end local function isAlive(char) if not char or not char.Parent then return false end if not char:FindFirstChild("HumanoidRootPart") then return false end if char:GetAttribute("Dead") == true then return false end local hum = char:FindFirstChildOfClass("Humanoid") if hum and hum.Health <= 0 then return false end return true end --================================================================== -- КОМАНДЫ --================================================================== local function normalizeTeam(raw) local s = string.lower(tostring(raw or "")):gsub("[%s_-]+", "") if s:match("counter") or s == "ct" then return "CT" end if s:match("terror") or s == "t" then return "T" end return nil end local function getTeam(plr) if not plr then return "T" end local attr = normalizeTeam(plr:GetAttribute("Team")) if attr then return attr end if plr.Team and plr.Team.Name then local t = normalizeTeam(plr.Team.Name) if t then return t end end return "T" end local function getMyTeam() local attr = normalizeTeam(LP:GetAttribute("Team")) if attr then return attr end if LP.Team and LP.Team.Name then local t = normalizeTeam(LP.Team.Name) if t then return t end end local chars = Workspace:FindFirstChild("Characters") if chars then local myChar = LP.Character if myChar then for _, sub in ipairs(chars:GetChildren()) do if sub:IsA("Folder") and myChar:IsDescendantOf(sub) then local t = normalizeTeam(sub.Name) if t then return t end end end end end return "T" end local function isEnemy(plr) return getTeam(plr) ~= getMyTeam() end --================================================================== -- HITBOX EXPANDER --================================================================== local expandedParts = {} local function expandHead(char) if not char or not isAlive(char) then return end local head = char:FindFirstChild("Head") if not head then return end if expandedParts[head] then return end expandedParts[head] = { size = head.Size, transparency = head.Transparency, cancollide = head.CanCollide, canquery = head.CanQuery, } head.Size = Vector3.new(5, 5, 5) head.Transparency = 0.6 head.CanCollide = false head.CanQuery = true head.Material = Enum.Material.Neon head.Color = Color3.fromRGB(255, 50, 50) end local function restoreHead(char) if not char then return end local head = char:FindFirstChild("Head") if not head then return end local saved = expandedParts[head] if saved then head.Size = saved.size head.Transparency = saved.transparency head.CanCollide = saved.cancollide head.CanQuery = saved.canquery head.Material = Enum.Material.Plastic head.Color = Color3.fromRGB(163, 162, 165) expandedParts[head] = nil end end local function restoreAll() for head in pairs(expandedParts) do if head and head.Parent then local s = expandedParts[head] head.Size = s.size head.Transparency = s.transparency head.CanCollide = s.cancollide head.CanQuery = s.canquery head.Material = Enum.Material.Plastic head.Color = Color3.fromRGB(163, 162, 165) end end expandedParts = {} end RunService.RenderStepped:Connect(function() if not hitboxOn then return end for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LP and isEnemy(plr) then local char = getChar(plr) if char and isAlive(char) then expandHead(char) end end end for head in pairs(expandedParts) do if head and head.Parent then if not isAlive(head.Parent) then restoreHead(head.Parent) end else expandedParts[head] = nil end end end) --================================================================== -- REMOTEEVENT SCANNER --================================================================== local scannedRemotes = {} local function scanRemote(remote) if scannedRemotes[remote] then return end if not remote:IsA("RemoteEvent") then return end scannedRemotes[remote] = true remote.OnClientEvent:Connect(function(...) if not scanOn then return end if scanCount < 30 then scanCount = scanCount + 1 local args = {...} print("[SCAN] OnClientEvent: " .. remote.Name) for i, arg in ipairs(args) do print("[SCAN] arg["..i.."]: " .. typeof(arg) .. " = " .. tostring(arg)) end end end) end local function scanAllRemotes() local count = 0 for _, obj in ipairs(game:GetDescendants()) do if obj:IsA("RemoteEvent") then scanRemote(obj) count = count + 1 end end print("[SCAN] Found " .. count .. " RemoteEvents") end --================================================================== -- NAMECALL HOOK --================================================================== local oldNamecall = nil local hookInstalled = false local function installNamecallHook() if hookInstalled then return end local success = false if hookmetamethod then success = pcall(function() oldNamecall = hookmetamethod(game, "__namecall", function(self, ...) if not hitboxOn then return oldNamecall(self, ...) end local method = "" pcall(function() method = getnamecallmethod() end) if method == "Raycast" and self == Workspace then local args = {...} local origin, direction = args[1], args[2] if origin and direction and typeof(origin) == "Vector3" and typeof(direction) == "Vector3" then local closest, closestDist = nil, math.huge for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LP and isEnemy(plr) then local char = getChar(plr) if char and isAlive(char) then local head = char:FindFirstChild("Head") if head then local d = (head.Position - origin).Magnitude if d < closestDist then closestDist = d closest = char end end end end end if closest then local head = closest:FindFirstChild("Head") if head then local pos = head.Position local newDir = (pos - origin) local newLen = math.max(direction.Magnitude, newDir.Magnitude + 500) local wl = RaycastParams.new() wl.FilterType = Enum.RaycastFilterType.Whitelist wl.FilterDescendantsInstances = {closest} wl.IgnoreWater = true local result = oldNamecall(self, origin, newDir.Unit * newLen, wl) if result then return result end return oldNamecall(self, origin, newDir.Unit * newLen) end end end return oldNamecall(self, ...) end if method == "FireServer" and self:IsA("RemoteEvent") then if scanOn and scanCount < 30 then scanCount = scanCount + 1 print("[SCAN] FireServer #" .. scanCount .. " Remote: " .. self.Name) local args = {...} for i, arg in ipairs(args) do local t = typeof(arg) if t == "Vector3" then print("[SCAN] arg["..i.."]: Vector3 = " .. tostring(arg)) elseif t == "CFrame" then print("[SCAN] arg["..i.."]: CFrame = " .. tostring(arg)) elseif t == "Instance" then print("[SCAN] arg["..i.."]: " .. arg.ClassName .. " (" .. arg.Name .. ")") elseif type(arg) == "table" then local fields = {} for k, v in pairs(arg) do table.insert(fields, tostring(k) .. "=" .. tostring(v)) end print("[SCAN] arg["..i.."]: table { " .. table.concat(fields, ", ") .. " }") else print("[SCAN] arg["..i.."]: " .. t .. " = " .. tostring(arg)) end end end if hitboxOn then local args = {...} local hasHit = false for _, arg in ipairs(args) do local t = typeof(arg) if t == "Vector3" or t == "CFrame" or (t == "Instance" and arg:IsA("BasePart")) or type(arg) == "table" then hasHit = true break end end if hasHit then local closest, closestDist = nil, math.huge for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LP and isEnemy(plr) then local char = getChar(plr) if char and isAlive(char) then local head = char:FindFirstChild("Head") if head then local myChar = getChar(LP) or LP.Character local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart") local myPos = myRoot and myRoot.Position or Camera.CFrame.Position local d = (head.Position - myPos).Magnitude if d < closestDist then closestDist = d closest = plr end end end end end if closest then local char = getChar(closest) local head = char and char:FindFirstChild("Head") if head then local pos = head.Position local cf = head.CFrame for i, arg in ipairs(args) do local t = typeof(arg) if t == "Vector3" then args[i] = pos elseif t == "CFrame" then args[i] = cf elseif t == "Instance" and arg:IsA("BasePart") then args[i] = head elseif type(arg) == "table" then for _, f in ipairs({"Position","position","Hit","hit","Target","target","Part","part","HitPart","hitPart","HitPosition","hitPosition"}) do if arg[f] ~= nil then if typeof(arg[f]) == "Vector3" then arg[f] = pos elseif typeof(arg[f]) == "CFrame" then arg[f] = cf elseif typeof(arg[f]) == "Instance" then arg[f] = head end end end for _, f in ipairs({"IsHeadshot","isHeadshot","Headshot","headshot"}) do if arg[f] ~= nil then arg[f] = true end end for _, f in ipairs({"PartName","partName","BodyPart","bodyPart"}) do if arg[f] ~= nil then arg[f] = "Head" end end for _, f in ipairs({"Damage","damage"}) do if arg[f] ~= nil then arg[f] = 150 end end end end end end return oldNamecall(self, unpack(args)) end end end return oldNamecall(self, ...) end) end) end if not success then print("[MB] hookmetamethod недоступен — getrawmetatable") pcall(function() local mt = getrawmetatable(game) oldNamecall = mt.__namecall if setreadonly then setreadonly(mt, false) end mt.__namecall = function(self, ...) if not hitboxOn then return oldNamecall(self, ...) end local method = "" pcall(function() method = getnamecallmethod() end) if method == "FireServer" and self:IsA("RemoteEvent") then if hitboxOn then local args = {...} local hasHit = false for _, arg in ipairs(args) do local t = typeof(arg) if t == "Vector3" or t == "CFrame" or (t == "Instance" and arg:IsA("BasePart")) or type(arg) == "table" then hasHit = true break end end if hasHit then local closest, closestDist = nil, math.huge for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LP and isEnemy(plr) then local char = getChar(plr) if char and isAlive(char) then local head = char:FindFirstChild("Head") if head then local myChar = getChar(LP) or LP.Character local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart") local myPos = myRoot and myRoot.Position or Camera.CFrame.Position local d = (head.Position - myPos).Magnitude if d < closestDist then closestDist = d closest = plr end end end end end if closest then local char = getChar(closest) local head = char and char:FindFirstChild("Head") if head then local pos = head.Position local cf = head.CFrame for i, arg in ipairs(args) do local t = typeof(arg) if t == "Vector3" then args[i] = pos elseif t == "CFrame" then args[i] = cf elseif t == "Instance" and arg:IsA("BasePart") then args[i] = head elseif type(arg) == "table" then for _, f in ipairs({"Position","position","Hit","hit","Target","target","Part","part","HitPart","hitPart","HitPosition","hitPosition"}) do if arg[f] ~= nil then if typeof(arg[f]) == "Vector3" then arg[f] = pos elseif typeof(arg[f]) == "CFrame" then arg[f] = cf elseif typeof(arg[f]) == "Instance" then arg[f] = head end end end for _, f in ipairs({"IsHeadshot","isHeadshot","Headshot","headshot"}) do if arg[f] ~= nil then arg[f] = true end end for _, f in ipairs({"PartName","partName","BodyPart","bodyPart"}) do if arg[f] ~= nil then arg[f] = "Head" end end for _, f in ipairs({"Damage","damage"}) do if arg[f] ~= nil then arg[f] = 150 end end end end end end return oldNamecall(self, unpack(args)) end end end return oldNamecall(self, ...) end if setreadonly then setreadonly(mt, true) end success = true end) end hookInstalled = true if success then print("[MB] Hook установлен!") else print("[MB] Hook недоступен — работает только Hitbox Expander") end end --================================================================== -- GUI — REDESIGNED --================================================================== local oldGui = parent:FindFirstChild("GAS_MB2") if oldGui then oldGui:Destroy() end local sg = Instance.new("ScreenGui") sg.Name = "GAS_MB2" sg.ResetOnSpawn = false sg.IgnoreGuiInset = true sg.Parent = parent local win = Instance.new("Frame") win.Size = UDim2.new(0, 250, 0, 170) win.Position = UDim2.new(0, 20, 0, 260) win.BackgroundColor3 = Color3.fromRGB(10, 10, 14) win.BorderSizePixel = 0 win.Active = true win.Parent = sg Instance.new("UICorner", win).CornerRadius = UDim.new(0, 12) local winStroke = Instance.new("UIStroke", win) winStroke.Color = neonGray winStroke.Thickness = 1.5 winStroke.Transparency = 0.2 -- Белые розы в углах local function makeRose(xS, xO, yS, yO) local r = Instance.new("TextLabel") r.Size = UDim2.new(0, 22, 0, 22) r.Position = UDim2.new(xS, xO, yS, yO) r.BackgroundTransparency = 1 r.Text = "\u{273F}" r.TextColor3 = Color3.fromRGB(255, 255, 255) r.TextTransparency = 0.15 r.Font = Enum.Font.GothamBold r.TextSize = 18 r.Parent = win return r end makeRose(0, 4, 0, 4) makeRose(1, -26, 0, 4) makeRose(0, 4, 1, -26) makeRose(1, -26, 1, -26) -- Заголовок local titleBar = Instance.new("Frame") titleBar.Size = UDim2.new(1, 0, 0, 40) titleBar.BackgroundColor3 = Color3.fromRGB(18, 18, 24) titleBar.BorderSizePixel = 0 titleBar.Parent = win Instance.new("UICorner", titleBar).CornerRadius = UDim.new(0, 12) local titleStroke = Instance.new("UIStroke", titleBar) titleStroke.Color = neonGray titleStroke.Thickness = 1 titleStroke.Transparency = 0.4 local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -55, 1, 0) title.Position = UDim2.new(0, 14, 0, 0) title.BackgroundTransparency = 1 title.Text = "Magic Bullet v21" title.TextColor3 = neonGray title.Font = Enum.Font.GothamBold title.TextSize = 14 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = titleBar -- Квадрат-крестик (алый) local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0, 26, 0, 26) closeBtn.Position = UDim2.new(1, -33, 0, 7) closeBtn.BackgroundColor3 = Color3.fromRGB(40, 10, 15) closeBtn.Text = "" closeBtn.BorderSizePixel = 0 closeBtn.Parent = titleBar Instance.new("UICorner", closeBtn).CornerRadius = UDim.new(0, 4) local closeStroke = Instance.new("UIStroke", closeBtn) closeStroke.Color = crimson closeStroke.Thickness = 1.5 closeStroke.Transparency = 0.2 -- Внутри квадрата — маленький крестик local innerX = Instance.new("TextLabel") innerX.Size = UDim2.new(1, 0, 1, 0) innerX.BackgroundTransparency = 1 innerX.Text = "\u{2715}" innerX.TextColor3 = crimson innerX.Font = Enum.Font.GothamBold innerX.TextSize = 13 innerX.Parent = closeBtn -- Свёрнутая кнопка local unfoldBtn = Instance.new("TextButton") unfoldBtn.Size = UDim2.new(0, 150, 0, 40) unfoldBtn.Position = UDim2.new(0, 20, 0, 260) unfoldBtn.BackgroundColor3 = Color3.fromRGB(10, 10, 14) unfoldBtn.Text = " Magic Bullet" unfoldBtn.TextColor3 = neonGray unfoldBtn.Font = Enum.Font.GothamSemibold unfoldBtn.TextSize = 13 unfoldBtn.BorderSizePixel = 0 unfoldBtn.Visible = false unfoldBtn.Active = true unfoldBtn.Parent = sg Instance.new("UICorner", unfoldBtn).CornerRadius = UDim.new(0, 12) local unfoldStroke = Instance.new("UIStroke", unfoldBtn) unfoldStroke.Color = neonGray unfoldStroke.Thickness = 1.5 unfoldStroke.Transparency = 0.2 -- Роза на свёрнутой кнопке — КЛИКАБЕЛЬНАЯ local unfoldRose = Instance.new("TextButton") unfoldRose.Size = UDim2.new(0, 24, 0, 24) unfoldRose.Position = UDim2.new(1, -28, 0, 8) unfoldRose.BackgroundTransparency = 1 unfoldRose.Text = "\u{273F}" unfoldRose.TextColor3 = Color3.fromRGB(255, 255, 255) unfoldRose.TextTransparency = 0.1 unfoldRose.Font = Enum.Font.GothamBold unfoldRose.TextSize = 16 unfoldRose.Parent = unfoldBtn --================================================================== -- ТУМБЛЕРЫ --================================================================== local function makeBtn(y, label, onClick) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, -28, 0, 36) btn.Position = UDim2.new(0, 14, 0, y) btn.Text = " " .. label btn.Font = Enum.Font.GothamSemibold btn.TextSize = 14 btn.TextXAlignment = Enum.TextXAlignment.Left btn.BorderSizePixel = 0 btn.Parent = win Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 8) local ind = Instance.new("Frame") ind.Size = UDim2.new(0, 12, 0, 12) ind.Position = UDim2.new(1, -20, 0.5, -6) ind.BorderSizePixel = 0 ind.Parent = btn Instance.new("UICorner", ind).CornerRadius = UDim.new(1, 0) local state = false btn.MouseButton1Click:Connect(function() state = not state if state then btn.BackgroundColor3 = Color3.fromRGB(25, 40, 30) btn.TextColor3 = neonGreen ind.BackgroundColor3 = neonGreen else btn.BackgroundColor3 = Color3.fromRGB(20, 20, 26) btn.TextColor3 = Color3.fromRGB(130, 130, 145) ind.BackgroundColor3 = Color3.fromRGB(60, 60, 70) end onClick(state) end) return btn end makeBtn(50, "Hitbox Expander", function(on) hitboxOn = on if on then installNamecallHook() print("[MB] Hitbox ON") else restoreAll() print("[MB] Hitbox OFF") end end) makeBtn(94, "Remote Scanner", function(on) scanOn = on if on then installNamecallHook() scanAllRemotes() print("[MB] Scanner ON — логи в F9") else print("[MB] Scanner OFF") end end) -- Статус local sb = Instance.new("TextLabel") sb.Size = UDim2.new(1, -28, 0, 20) sb.Position = UDim2.new(0, 14, 1, -26) sb.BackgroundTransparency = 1 sb.Text = "RShift = OFF all" sb.TextColor3 = Color3.fromRGB(100, 100, 115) sb.Font = Enum.Font.Gotham sb.TextSize = 10 sb.TextXAlignment = Enum.TextXAlignment.Left sb.Parent = win --================================================================== -- ПЕРЕТАСКИВАНИЕ (ИСПРАВЛЕНО) --================================================================== local winFlag = { moved = false } local unfoldFlag = { moved = false } local function makeDraggable(dragBar, frame, flagRef) local dragging = false local dragStart = nil local startPos = nil dragBar.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = i.Position startPos = frame.Position flagRef.moved = false end end) UIS.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) UIS.InputChanged:Connect(function(i) if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then local d = i.Position - dragStart if d.Magnitude > 3 then flagRef.moved = true end frame.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y ) end end) end makeDraggable(titleBar, win, winFlag) makeDraggable(unfoldBtn, unfoldBtn, unfoldFlag) --================================================================== -- СВОРАЧИВАНИЕ / РАЗВОРАЧИВАНИЕ (ИСПРАВЛЕНО) --================================================================== closeBtn.MouseButton1Click:Connect(function() if winFlag.moved then winFlag.moved = false return end win.Visible = false unfoldBtn.Visible = true end) unfoldRose.MouseButton1Click:Connect(function() if unfoldFlag.moved then unfoldFlag.moved = false return end win.Visible = true unfoldBtn.Visible = false end) --================================================================== -- ХОТКЕЙ --================================================================== UIS.InputBegan:Connect(function(i, gpe) if gpe then return end if i.KeyCode == Enum.KeyCode.RightShift then hitboxOn = false scanOn = false restoreAll() for _, child in ipairs(win:GetChildren()) do if child:IsA("TextButton") then child.BackgroundColor3 = Color3.fromRGB(20, 20, 26) child.TextColor3 = Color3.fromRGB(130, 130, 145) local ind = child:FindFirstChildOfClass("Frame") if ind then ind.BackgroundColor3 = Color3.fromRGB(60, 60, 70) end end end end end) print("========================================") print("[GAS_YT] Magic Bullet v3 loaded!") print("[MB] Display: v21 | Real: v3") print("[MB] Hitbox Expander + Remote Scanner") print("[MB] Neon heart bypass + Redesigned GUI") print("[MB] Fix: rose/cross work repeatedly after drag") print("[MB] RShift — OFF all") print("========================================")