
Key RequiredUniversal
-- // skeet-ui v4.2 BUNDLE | gallery rewritten bulletproof + exposed opener
if not game:IsLoaded() then game.Loaded:Wait() end
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local STATE_API = nil
pcall(function() STATE_API = STATE end)
local MenuCfg = {Key = Enum.KeyCode.RightShift}
local FV = {Enabled = false, Value = 90}
local function safecb(cb, ...)
if not cb then return end
local ok, err = pcall(cb, ...)
if not ok then warn("[skeet] " .. tostring(err)) end
end
local function Tween(obj, props, t, style, dir)
pcall(function()
TweenService:Create(obj, TweenInfo.new(t or 0.18, style or Enum.EasingStyle.Quad, dir or Enum.EasingDirection.Out), props):Play()
end)
end
local ACCENT_DEFAULT = Color3.fromRGB(146, 180, 255)
local THEME = {
Main = Color3.fromRGB(16, 16, 19),
Side = Color3.fromRGB(21, 21, 25),
Group = Color3.fromRGB(25, 25, 30),
Element = Color3.fromRGB(30, 30, 36),
Border = Color3.fromRGB(48, 48, 55),
BorderDark = Color3.fromRGB(10, 10, 12),
Text = Color3.fromRGB(225, 225, 225),
DarkText = Color3.fromRGB(135, 135, 145),
}
local function New(class, props)
local o = Instance.new(class)
for k,v in pairs(props) do if k ~= "Parent" then pcall(function() o[k] = v end) end end
o.Parent = props.Parent
return o
end
local function Corner(p, r) return New("UICorner", {CornerRadius = UDim.new(0, r or 4), Parent = p}) end
local function Stroke(p, c, t) return New("UIStroke", {Color = c or THEME.Border, Thickness = t or 1, ApplyStrokeMode = Enum.ApplyStrokeMode.Border, Parent = p}) end
local function Pad(p, l,t,r,b) return New("UIPadding", {PaddingLeft = UDim.new(0,l or 8), PaddingTop = UDim.new(0,t or 6), PaddingRight = UDim.new(0,r or 8), PaddingBottom = UDim.new(0,b or 6), Parent = p}) end
local function Connect(sig, fn)
if STATE_API and STATE_API.connect then return STATE_API.connect(sig, fn) else return sig:Connect(fn) end
end
pcall(function()
local pg = game:GetService("CoreGui")
local gh = nil if gethui then gh = gethui() end
if gh then local o = gh:FindFirstChild("SkeetUI") if o then o:Destroy() end end
local o2 = pg:FindFirstChild("SkeetUI") if o2 then o2:Destroy() end
local rg = nil pcall(function() rg = game:GetService("CoreGui").RobloxGui end)
if rg then local o3 = rg:FindFirstChild("SkeetUI") if o3 then o3:Destroy() end end
end)
local Library = {}
Library.Accent = ACCENT_DEFAULT
function Library:Create(title, accent)
if accent then self.Accent = accent end
local ACCENT = self.Accent
local parentGui = game:GetService("CoreGui")
pcall(function() local gh = nil if gethui then gh = gethui() end if gh then parentGui = gh end end)
pcall(function() local old = parentGui:FindFirstChild("SkeetUI") if old then old:Destroy() end end)
local Gui = New("ScreenGui", {Name = "SkeetUI", ResetOnSpawn = false, ZIndexBehavior = Enum.ZIndexBehavior.Sibling, Parent = parentGui})
pcall(function() if protectgui then protectgui(Gui) end end)
if STATE_API and STATE_API.onCleanup then STATE_API.onCleanup(function() pcall(function() Gui:Destroy() end) end) end
local Main = New("Frame", {Name = "Main", Size = UDim2.new(0, 620, 0, 450), Position = UDim2.new(0.5, -310, 0.5, -225), BackgroundColor3 = THEME.Main, BorderSizePixel = 0, Active = false, Parent = Gui})
Corner(Main, 6) Stroke(Main, THEME.BorderDark, 1)
local UIScale = New("UIScale", {Scale = 0.96, Parent = Main})
Tween(UIScale, {Scale = 1}, 0.25, Enum.EasingStyle.Quint)
New("Frame", {Name = "AccentTop", Size = UDim2.new(1,0,0,2), BackgroundColor3 = ACCENT, BorderSizePixel = 0, Parent = Main})
local TopBar = New("Frame", {Name = "TopBar", Size = UDim2.new(1,0,0,38), BackgroundTransparency = 1, Active = true, Parent = Main})
Pad(TopBar, 12, 0, 12, 0)
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,-60,1,0), Font = Enum.Font.GothamBold, TextSize = 14, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = title or "primordial | lua", Parent = TopBar})
local subTxt = "v4.2 galrewrite" pcall(function() subTxt = "v4.2 | " .. LocalPlayer.DisplayName end)
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,-60,1,0), Position = UDim2.new(0,0,0,14), Font = Enum.Font.Gotham, TextSize = 11, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.DarkText, Text = subTxt, Parent = TopBar})
local Body = New("Frame", {Position = UDim2.new(0,0,0,40), Size = UDim2.new(1,0,1,-40), BackgroundTransparency = 1, Parent = Main})
local Side = New("Frame", {Size = UDim2.new(0,150,1,-12), Position = UDim2.new(0,6,0,6), BackgroundColor3 = THEME.Side, BorderSizePixel = 0, Parent = Body})
Corner(Side, 4) Stroke(Side, THEME.Border, 1)
New("UIListLayout", {Padding = UDim.new(0,4), SortOrder = Enum.SortOrder.LayoutOrder, Parent = Side}) Pad(Side, 8, 8, 8, 8)
local ContentArea = New("Frame", {Size = UDim2.new(1,-168,1,-12), Position = UDim2.new(0,162,0,6), BackgroundTransparency = 1, ClipsDescendants = true, Parent = Body})
do
local drag, startPos, startInput = false, nil, nil
Connect(TopBar.InputBegan, function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then drag = true startPos = Main.Position startInput = i.Position
Connect(i.Changed, function() if i.UserInputState == Enum.UserInputState.End then drag = false end end)
end
end)
Connect(UIS.InputChanged, function(i)
if drag and i.UserInputType == Enum.UserInputType.MouseMovement then
local d = i.Position - startInput
Main.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y)
end
end)
end
Connect(UIS.InputBegan, function(i,g) if not g and i.KeyCode == MenuCfg.Key then Main.Visible = not Main.Visible end end)
local Window = {} Window.Gui = Gui Window.Main = Main Window.GuiRoot = parentGui
local tabs = {} local first = true
local function animatePage(leftCol, rightCol)
ContentArea.Position = UDim2.new(0,162,0,14)
Tween(ContentArea, {Position = UDim2.new(0,162,0,6)}, 0.22, Enum.EasingStyle.Quad)
for _,col in pairs({leftCol, rightCol}) do
for _,box in pairs(col:GetChildren()) do
if box:IsA("Frame") then
box.BackgroundTransparency = 0.7
Tween(box, {BackgroundTransparency = 0}, 0.25, Enum.EasingStyle.Quad)
end
end
end
end
function Window:Tab(name)
local btn = New("TextButton", {Size = UDim2.new(1,0,0,32), BackgroundColor3 = Color3.fromRGB(25,25,30), Font = Enum.Font.GothamBold, TextSize = 12, TextColor3 = THEME.DarkText, Text = " " .. name, TextXAlignment = Enum.TextXAlignment.Left, AutoButtonColor = false, ClipsDescendants = true, Parent = Side})
Corner(btn, 4) Stroke(btn, THEME.Border, 1)
local leftLine = New("Frame", {Size = UDim2.new(0,0,1,-8), Position = UDim2.new(0,0,0,4), BackgroundColor3 = ACCENT, Visible = false, BorderSizePixel = 0, Parent = btn})
Connect(btn.MouseEnter, function() if not leftLine.Visible then Tween(btn, {BackgroundColor3 = Color3.fromRGB(30,30,36)}, 0.12) end end)
Connect(btn.MouseLeave, function() if not leftLine.Visible then Tween(btn, {BackgroundColor3 = Color3.fromRGB(25,25,30)}, 0.12) end end)
local page = New("ScrollingFrame", {Size = UDim2.new(1,0,1,0), BackgroundTransparency = 1, Visible = false, ScrollBarThickness = 2, ScrollBarImageColor3 = ACCENT, AutomaticCanvasSize = Enum.AutomaticSize.Y, CanvasSize = UDim2.new(0,0,0,0), ScrollingDirection = Enum.ScrollingDirection.Y, Parent = ContentArea})
New("UIListLayout", {FillDirection = Enum.FillDirection.Horizontal, Padding = UDim.new(0,8), SortOrder = Enum.SortOrder.LayoutOrder, Parent = page})
local leftCol = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(0.5,-4,0,0), AutomaticSize = Enum.AutomaticSize.Y, Parent = page})
New("UIListLayout", {Padding = UDim.new(0,8), SortOrder = Enum.SortOrder.LayoutOrder, Parent = leftCol})
local rightCol = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(0.5,-4,0,0), AutomaticSize = Enum.AutomaticSize.Y, Parent = page})
New("UIListLayout", {Padding = UDim.new(0,8), SortOrder = Enum.SortOrder.LayoutOrder, Parent = rightCol})
local function select(noAnim)
for _,t in pairs(tabs) do
t.page.Visible = false
Tween(t.btn, {BackgroundColor3 = Color3.fromRGB(25,25,30), TextColor3 = THEME.DarkText}, 0.15)
t.line.Visible = false
Tween(t.line, {Size = UDim2.new(0,0,1,-8)}, 0.15)
end
page.Visible = true
Tween(btn, {BackgroundColor3 = Color3.fromRGB(32,32,38), TextColor3 = THEME.Text}, 0.15)
leftLine.Visible = true
Tween(leftLine, {Size = UDim2.new(0,2,1,-8)}, 0.18, Enum.EasingStyle.Back)
if not noAnim then animatePage(leftCol, rightCol) end
end
Connect(btn.MouseButton1Click, function() select(false) end)
table.insert(tabs, {btn = btn, page = page, line = leftLine})
if first then first = false select(true) task.spawn(function() task.wait(0.05) animatePage(leftCol, rightCol) end) end
local Tab = {}
function Tab:Groupbox(gname, side)
local holder = (side == "right") and rightCol or leftCol
local box = New("Frame", {BackgroundColor3 = THEME.Group, Size = UDim2.new(1,0,0,0), AutomaticSize = Enum.AutomaticSize.Y, ClipsDescendants = true, Parent = holder})
Corner(box, 4) Stroke(box, THEME.Border, 1)
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,-16,0,22), Position = UDim2.new(0,8,0,4), Font = Enum.Font.GothamBold, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = gname, Parent = box})
New("Frame", {Size = UDim2.new(1,-16,0,1), Position = UDim2.new(0,8,0,26), BackgroundColor3 = THEME.Border, BorderSizePixel = 0, Parent = box})
local cont = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,0), Position = UDim2.new(0,0,0,28), AutomaticSize = Enum.AutomaticSize.Y, Parent = box})
New("UIListLayout", {Padding = UDim.new(0,6), SortOrder = Enum.SortOrder.LayoutOrder, Parent = cont}) Pad(cont, 8, 6, 8, 8)
local G = {}
function G:Label(txt)
local l = New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,16), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.DarkText, Text = txt, Parent = cont})
return {Set = function(_, t) l.Text = t end}
end
function G:Toggle(name, def, cb)
local v = def or false
local row = New("TextButton", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,20), Text = "", AutoButtonColor = false, Parent = cont})
local boxF = New("Frame", {Size = UDim2.new(0,14,0,14), Position = UDim2.new(0,0,0,3), BackgroundColor3 = THEME.Element, Parent = row})
Corner(boxF, 3) Stroke(boxF, THEME.Border, 1)
local fill = New("Frame", {Size = UDim2.new(1,-4,1,-4), Position = UDim2.new(0,2,0,2), BackgroundColor3 = ACCENT, Visible = v, BorderSizePixel = 0, Parent = boxF}) Corner(fill, 2)
New("TextLabel", {BackgroundTransparency = 1, Position = UDim2.new(0,22,0,0), Size = UDim2.new(1,-22,1,0), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = row})
Connect(row.MouseButton1Click, function()
v = not v
if v then fill.Visible = true fill.BackgroundTransparency = 1 Tween(fill, {BackgroundTransparency = 0}, 0.15)
else Tween(fill, {BackgroundTransparency = 1}, 0.12) task.spawn(function() task.wait(0.12) if not v then fill.Visible = false end end) end
safecb(cb, v)
end)
if cb and v then safecb(cb, v) end
return {Set = function(_, nv) v = nv fill.Visible = nv end}
end
function G:Slider(name, min, max, def, cb)
min, max = min or 0, max or 100 local v = def or min
local f = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,38), Parent = cont})
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(0.7,0,0,16), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = f})
local valL = New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(0.3,0,0,16), Position = UDim2.new(0.7,0,0,0), Font = Enum.Font.Code, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Right, TextColor3 = THEME.DarkText, Text = tostring(v), Parent = f})
local bar = New("TextButton", {Size = UDim2.new(1,0,0,6), Position = UDim2.new(0,0,0,24), BackgroundColor3 = THEME.Element, Text = "", AutoButtonColor = false, Parent = f})
Corner(bar, 3) Stroke(bar, THEME.Border, 1)
local fillB = New("Frame", {Size = UDim2.new(0,0,1,0), BackgroundColor3 = ACCENT, BorderSizePixel = 0, Parent = bar}) Corner(fillB, 3)
local function upd(nv, instant)
v = math.clamp(math.floor(nv), min, max) valL.Text = tostring(v)
local target = UDim2.new((v-min)/math.max(1,(max-min)),0,1,0)
if instant then fillB.Size = target else Tween(fillB, {Size = target}, 0.08) end
safecb(cb, v)
end
upd(v, true) local down = false
Connect(bar.MouseButton1Down, function() down = true end)
Connect(UIS.InputEnded, function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then down = false end end)
Connect(UIS.InputChanged, function(i) if down and i.UserInputType == Enum.UserInputType.MouseMovement then local p = math.clamp((i.Position.X - bar.AbsolutePosition.X) / math.max(1, bar.AbsoluteSize.X), 0, 1) upd(min + (max-min)*p, true) end end)
end
function G:Dropdown(name, list, def, cb)
local cur = def or list[1]
local f = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,32), AutomaticSize = Enum.AutomaticSize.Y, Parent = cont})
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,16), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = f})
local btn2 = New("TextButton", {Size = UDim2.new(1,0,0,24), Position = UDim2.new(0,0,0,18), BackgroundColor3 = THEME.Element, Font = Enum.Font.Gotham, TextSize = 12, TextColor3 = THEME.Text, Text = " "..tostring(cur).." ▼", TextXAlignment = Enum.TextXAlignment.Left, AutoButtonColor = false, ClipsDescendants = true, Parent = f})
Corner(btn2, 4) Stroke(btn2, THEME.Border, 1)
Connect(btn2.MouseEnter, function() Tween(btn2, {BackgroundColor3 = Color3.fromRGB(36,36,42)}, 0.12) end)
Connect(btn2.MouseLeave, function() Tween(btn2, {BackgroundColor3 = THEME.Element}, 0.12) end)
local open = false local listF = nil
Connect(btn2.MouseButton1Click, function()
open = not open
if listF then pcall(function() listF:Destroy() end) listF = nil end
if open then
listF = New("Frame", {Size = UDim2.new(1,0,0,0), Position = UDim2.new(0,0,0,44), BackgroundColor3 = Color3.fromRGB(20,20,24), ClipsDescendants = true, Parent = f})
Corner(listF, 4) Stroke(listF, THEME.Border, 1) Pad(listF, 3, 3, 3, 3) New("UIListLayout", {Padding = UDim.new(0,2), Parent = listF})
for _,opt in ipairs(list) do
local ob = New("TextButton", {Size = UDim2.new(1,0,0,20), BackgroundColor3 = THEME.Element, Font = Enum.Font.Gotham, TextSize = 12, TextColor3 = THEME.Text, Text = opt, AutoButtonColor = false, Parent = listF}) Corner(ob, 3)
Connect(ob.MouseButton1Click, function() cur = opt btn2.Text = " "..tostring(cur).." ▼" if listF then pcall(function() listF:Destroy() end) listF = nil end open = false safecb(cb, cur) end)
end
Tween(listF, {Size = UDim2.new(1,0,0,#list*22+6)}, 0.18, Enum.EasingStyle.Quint)
end
end)
if cb and cur then safecb(cb, cur) end
return {SetList = function(_, nl, nd)
if type(nl) ~= "table" or #nl == 0 then return end
list = nl
cur = nd or nl[1]
btn2.Text = " " .. tostring(cur) .. " ▼"
if listF then pcall(function() listF:Destroy() end) listF = nil end
open = false
end, Get = function() return cur end}
end
function G:Colorpicker(name, def, cb)
local c = def or ACCENT
local row = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,20), Parent = cont})
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,-30,1,0), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = row})
local prev = New("TextButton", {Size = UDim2.new(0,22,0,14), Position = UDim2.new(1,-22,0,3), BackgroundColor3 = c, Text = "", AutoButtonColor = false, Parent = row})
Corner(prev, 3) Stroke(prev, THEME.Border, 1)
local opened = false local pick = nil
Connect(prev.MouseButton1Click, function()
opened = not opened
if pick then pcall(function() pick:Destroy() end) pick = nil end
if opened then
pick = New("Frame", {Size = UDim2.new(1,0,0,0), BackgroundColor3 = Color3.fromRGB(20,20,24), ClipsDescendants = true, Parent = cont})
Corner(pick, 4) Stroke(pick, THEME.Border, 1) Pad(pick, 8, 8, 8, 8)
Tween(pick, {Size = UDim2.new(1,0,0,86)}, 0.18, Enum.EasingStyle.Quint)
local r = math.floor(c.R*255) local g = math.floor(c.G*255) local b = math.floor(c.B*255)
local function apply() c = Color3.fromRGB(r,g,b) Tween(prev, {BackgroundColor3 = c}, 0.12) safecb(cb, c) end
local function mkRGB(txt, val, fn)
local rr = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,20), Parent = pick})
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(0,14,1,0), Font = Enum.Font.GothamBold, TextSize = 12, TextColor3 = THEME.DarkText, Text = txt, Parent = rr})
local tb = New("TextBox", {Size = UDim2.new(1,-20,1,0), Position = UDim2.new(0,18,0,0), BackgroundColor3 = THEME.Element, Font = Enum.Font.Code, TextSize = 12, TextColor3 = THEME.Text, Text = tostring(val), Parent = rr})
Corner(tb, 3) Stroke(tb, THEME.Border, 1)
Connect(tb.FocusLost, function(ep) if ep then local n = math.clamp(tonumber(tb.Text) or 0, 0, 255) tb.Text = tostring(n) fn(n) end end)
end
mkRGB("R", r, function(n) r=n apply() end) mkRGB("G", g, function(n) g=n apply() end) mkRGB("B", b, function(n) b=n apply() end)
end
end)
safecb(cb, c)
end
function G:Button(name, cb2)
local b2 = New("TextButton", {Size = UDim2.new(1,0,0,26), BackgroundColor3 = THEME.Element, Font = Enum.Font.GothamBold, TextSize = 12, TextColor3 = THEME.Text, Text = name, AutoButtonColor = false, Parent = cont})
Corner(b2, 4) Stroke(b2, THEME.Border, 1)
Connect(b2.MouseEnter, function() Tween(b2, {BackgroundColor3 = Color3.fromRGB(38,38,45)}, 0.12) end)
Connect(b2.MouseLeave, function() Tween(b2, {BackgroundColor3 = THEME.Element}, 0.12) end)
Connect(b2.MouseButton1Click, function() safecb(cb2) end)
end
function G:Textbox(name, holder, cb3)
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,16), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = cont})
local tb = New("TextBox", {Size = UDim2.new(1,0,0,24), BackgroundColor3 = THEME.Element, Font = Enum.Font.Gotham, TextSize = 12, TextColor3 = THEME.Text, PlaceholderText = holder or "...", PlaceholderColor3 = THEME.DarkText, Text = "", ClearTextOnFocus = false, Parent = cont})
Corner(tb, 4) Stroke(tb, THEME.Border, 1) Pad(tb, 6, 0, 0, 0)
Connect(tb.FocusLost, function(ep) if ep and cb3 then safecb(cb3, tb.Text) end end)
end
function G:Keybind(name, def, cb4)
local key = def or Enum.KeyCode.F
local row2 = New("Frame", {BackgroundTransparency = 1, Size = UDim2.new(1,0,0,20), Parent = cont})
New("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1,-60,1,0), Font = Enum.Font.Gotham, TextSize = 12, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = name, Parent = row2})
local kb = New("TextButton", {Size = UDim2.new(0,54,0,20), Position = UDim2.new(1,-54,0,0), BackgroundColor3 = THEME.Element, Font = Enum.Font.Code, TextSize = 11, TextColor3 = THEME.Text, Text = key.Name, AutoButtonColor = false, Parent = row2})
Corner(kb, 4) Stroke(kb, THEME.Border, 1)
local waiting = false
Connect(kb.MouseButton1Click, function() waiting = true kb.Text = "..." end)
Connect(UIS.InputBegan, function(i,g) if waiting and not g then waiting = false key = i.KeyCode kb.Text = key.Name return end if not waiting and not g and i.KeyCode == key and cb4 then safecb(cb4, key) end end)
end
return G
end
return Tab
end
return Window
end
local TP = {Enabled = false, Distance = 12, lastToggle = 0, parts = {}}
local function tpGetHum()
local c = LocalPlayer.Character
return c and c:FindFirstChildOfClass("Humanoid") or nil
end
local function tpAlive()
return LocalPlayer:GetAttribute("Alive") == true
end
local function tpHideOne(d)
pcall(function()
if d:IsA("BasePart") then
if d:GetAttribute("TPO") == nil then d:SetAttribute("TPO", d.Transparency) end
d.Transparency = 1
elseif d:IsA("Decal") or d:IsA("Texture") then
if d:GetAttribute("TPO") == nil then d:SetAttribute("TPO", d.Transparency) end
d.Transparency = 1
elseif d:IsA("ParticleEmitter") or d:IsA("Beam") or d:IsA("Trail") then
if d:GetAttribute("TPOE") == nil then d:SetAttribute("TPOE", d.Enabled) end
d.Enabled = false
end
end)
end
local function tpShowOne(d)
pcall(function()
if d:IsA("BasePart") or d:IsA("Decal") or d:IsA("Texture") then
local o = d:GetAttribute("TPO")
if o ~= nil then d.Transparency = o d:SetAttribute("TPO", nil) end
elseif d:IsA("ParticleEmitter") or d:IsA("Beam") or d:IsA("Trail") then
local o = d:GetAttribute("TPOE")
if o ~= nil then d.Enabled = o d:SetAttribute("TPOE", nil) end
end
end)
end
local function tpHideModel(m)
if not m then return end
for _,d in ipairs(m:GetDescendants()) do tpHideOne(d) end
if not m:GetAttribute("TPWatch") then
m:SetAttribute("TPWatch", true)
Connect(m.DescendantAdded, function(d) if TP.Enabled then tpHideOne(d) end end)
end
end
local function tpShowModel(m)
if not m then return end
for _,d in ipairs(m:GetDescendants()) do tpShowOne(d) end
end
local function tpArms()
local cam = workspace.CurrentCamera
return cam and cam:FindFirstChild("Arms") or nil
end
local function tpCacheParts()
TP.parts = {}
pcall(function()
local c = LocalPlayer.Character
if c then
for _,d in ipairs(c:GetDescendants()) do
if d:IsA("BasePart") or d:IsA("Decal") or d:IsA("Texture") then
table.insert(TP.parts, d)
end
end
end
end)
end
task.spawn(function()
local cam = workspace.CurrentCamera
local waited = 0
while not cam and waited < 30 do
task.wait(1)
waited = waited + 1
cam = workspace.CurrentCamera
end
if cam then
Connect(cam.ChildAdded, function(ch)
if TP.Enabled and ch.Name == "Arms" then
task.defer(function() if TP.Enabled then tpHideModel(ch) end end)
end
end)
end
end)
local function tpEnable()
local a = tpArms()
if a then tpHideModel(a) end
tpCacheParts()
end
local function tpDisable()
tpShowModel(tpArms())
end
Connect(RunService.RenderStepped, function()
if not TP.Enabled then return end
if not tpAlive() then return end
local cam = workspace.CurrentCamera
if not cam or cam.CameraType ~= Enum.CameraType.Custom then return end
local c = LocalPlayer.Character
local head = c and c:FindFirstChild("Head")
if not head then return end
pcall(function()
for _,d in ipairs(TP.parts) do
d.LocalTransparencyModifier = 0
end
end)
pcall(function()
local look = cam.CFrame.LookVector
cam.CFrame = CFrame.new(head.Position - look * TP.Distance + Vector3.new(0, 1, 0), head.Position + look * 20)
end)
end)
Connect(LocalPlayer.CharacterAdded, function()
task.wait(0.4)
tpCacheParts()
if TP.Enabled then tpEnable() end
end)
local GG = (getgenv and getgenv()) or {}
if GG.SkeetRage then GG.SkeetRage.Enabled = false end
if GG.SkeetRage2 then GG.SkeetRage2.Enabled = false end
GG.SkeetMagic = GG.SkeetMagic or {Enabled = false, Hitbox = "Head", Range = 300, Wallbang = false}
GG.SkeetMagicTarget = nil
local MG = GG.SkeetMagic
local GB_Variables, GB_Ambassador = nil, nil
pcall(function()
local RF = game:GetService("ReplicatedFirst")
GB_Variables = require(RF.Variables)
GB_Ambassador = require(RF.Ambassador)
end)
local visRay = RaycastParams.new()
visRay.FilterType = Enum.RaycastFilterType.Exclude
visRay.IgnoreWater = true
local function aimPartOf(char, sel)
if not char then return nil end
if sel == "Head" then return char:FindFirstChild("Head") end
if sel == "Chest" then return char:FindFirstChild("UpperTorso") or char:FindFirstChild("Torso") or char:FindFirstChild("HumanoidRootPart") end
if sel == "Pelvis" then return char:FindFirstChild("LowerTorso") or char:FindFirstChild("HumanoidRootPart") end
if sel == "Legs" then return char:FindFirstChild("RightLowerLeg") or char:FindFirstChild("LeftLowerLeg") or char:FindFirstChild("Right Leg") or char:FindFirstChild("HumanoidRootPart") end
return char:FindFirstChild("Head")
end
local autoFiring = false
local function rageFire(on)
if on == autoFiring then return end
autoFiring = on
pcall(function()
local RF = game:GetService("ReplicatedFirst")
local V = GB_Variables or require(RF.Variables)
local AB = GB_Ambassador or require(RF.Ambassador)
V.mouse1 = on
AB.Fire("CheckMouse1", on)
end)
end
local function rageForce()
autoFiring = true
pcall(function()
local RF = game:GetService("ReplicatedFirst")
local V = GB_Variables or require(RF.Variables)
local AB = GB_Ambassador or require(RF.Ambassador)
V.mouse1 = true
AB.Fire("CheckMouse1", true)
end)
end
local W = workspace
if not GG.SkeetMagicOn then
GG.SkeetMagicOn = true
local GHC = getgenv()
GG.SkeetMagicOrig = hookmetamethod(game, "__namecall", newcclosure(function(self, ...)
local method = getnamecallmethod()
if method == "Raycast" and self == W and not checkcaller() then
local st = GHC.SkeetMagic
if st and st.Enabled then
local tgt = GHC.SkeetMagicTarget
if tgt ~= nil then
local okP = pcall(function() return tgt.Parent end)
if okP and tgt.Parent ~= nil then
local args = {...}
local org, dir = args[1], args[2]
if typeof(org) == "Vector3" and typeof(dir) == "Vector3" and dir.Magnitude > 25 then
return {
Instance = tgt,
Position = tgt.Position,
Material = Enum.Material.SmoothPlastic,
Normal = Vector3.new(0, 1, 0),
}
end
end
end
end
end
return GG.SkeetMagicOrig(self, ...)
end))
end
local rageHalf = false
local semiCache = {}
local function isSemiGun()
local V = GB_Variables
local w = V and V.LastWeapon
if type(w) ~= "string" or w == "" then
local c = LocalPlayer.Character
w = c and c:GetAttribute("WhatGun")
end
if type(w) ~= "string" or w == "" then return false end
if semiCache[w] == nil then
local ok, ww = pcall(function() return game.ReplicatedStorage.Weapons:FindFirstChild(w) end)
local a = ok and ww and ww:GetAttribute("Auto")
semiCache[w] = (a ~= true)
end
return semiCache[w]
end
Connect(RunService.RenderStepped, function()
rageHalf = not rageHalf
if not rageHalf then return end
if not MG.Enabled then
if autoFiring then rageFire(false) end
GG.SkeetMagicTarget = nil
return
end
if not tpAlive() then
if autoFiring then rageFire(false) end
GG.SkeetMagicTarget = nil
return
end
if GB_Variables and GB_Variables.freemouse then
if autoFiring then rageFire(false) end
GG.SkeetMagicTarget = nil
return
end
local cam = workspace.CurrentCamera
if not cam or cam.CameraType ~= Enum.CameraType.Custom then
if autoFiring then rageFire(false) end
GG.SkeetMagicTarget = nil
return
end
local origin = cam.CFrame.Position
local myTeam = LocalPlayer:GetAttribute("Team")
local cands = {}
for _,plr in ipairs(Players:GetPlayers()) do
if plr ~= LocalPlayer then
local tm = plr:GetAttribute("Team")
if tm and tm ~= "Spectator" and tm ~= myTeam then
local c = plr.Character
local hp = plr:GetAttribute("Health")
if hp == nil then local h = c and c:FindFirstChildOfClass("Humanoid") hp = h and h.Health or 0 end
if c and hp > 0 then
local part = aimPartOf(c, MG.Hitbox)
if part then
local d = (part.Position - origin).Magnitude
if d <= MG.Range then
table.insert(cands, {part = part, char = c, dist = d})
end
end
end
end
end
end
local best = nil
if MG.Wallbang then
local bd = math.huge
for _,t in ipairs(cands) do
if t.dist < bd then bd = t.dist best = t.part end
end
else
table.sort(cands, function(a, b) return a.dist < b.dist end)
local checked = 0
for _,t in ipairs(cands) do
if checked >= 3 then break end
checked = checked + 1
visRay.FilterDescendantsInstances = {LocalPlayer.Character, cam}
local hit = workspace:Raycast(origin, t.part.Position - origin, visRay)
if (not hit) or hit.Instance:IsDescendantOf(t.char) then
best = t.part
break
end
end
end
GG.SkeetMagicTarget = best
if best then
if isSemiGun() then rageForce() else rageFire(true) end
else
rageFire(false)
end
end)
local AA = {Enabled = false, Mode = "Spin", Speed = 1080, JAngle = 30}
local jitT, jitDir, swayPh, rndT, crouchT, crouchOn = 0, 1, 0, 0, 0, false
local crookYaw = 0
Connect(RunService.Heartbeat, function(dt)
if not AA.Enabled then jitT, jitDir, swayPh, rndT, crouchT = 0, 1, 0, 0, 0 return end
if not tpAlive() then return end
local hrp = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if not hrp then return end
local step = dt or 0.016
if AA.Mode == "Spin" then
pcall(function()
hrp.CFrame = hrp.CFrame * CFrame.Angles(0, math.rad(AA.Speed) * step, 0)
end)
elseif AA.Mode == "Jitter" then
jitT = jitT + step
if jitT >= 0.09 then jitT = 0 jitDir = -jitDir end
pcall(function()
hrp.CFrame = hrp.CFrame * CFrame.Angles(0, math.rad(AA.JAngle) * jitDir, 0)
end)
elseif AA.Mode == "Sway" then
local prev = math.sin(swayPh)
swayPh = swayPh + step * math.pi * 2 * 1.2
local delta = (math.sin(swayPh) - prev) * math.rad(AA.JAngle)
pcall(function()
hrp.CFrame = hrp.CFrame * CFrame.Angles(0, delta, 0)
end)
elseif AA.Mode == "Random" then
rndT = rndT - step
if rndT <= 0 then
rndT = 0.08 + math.random() * 0.12
local snap = (math.random() * 2 - 1) * AA.JAngle
pcall(function()
hrp.CFrame = hrp.CFrame * CFrame.Angles(0, math.rad(snap), 0)
end)
end
elseif AA.Mode == "Flip" or AA.Mode == "Crooked" then
local roll = math.pi
local yaw = math.atan2(-hrp.CFrame.LookVector.X, -hrp.CFrame.LookVector.Z)
if AA.Mode == "Crooked" then
roll = math.pi / 2
crookYaw = (crookYaw + math.rad(AA.Speed) * step) % (math.pi * 2)
yaw = yaw + crookYaw
end
local pos = hrp.CFrame.Position
pcall(function()
hrp.CFrame = CFrame.new(pos) * CFrame.Angles(0, yaw, 0) * CFrame.Angles(0, 0, roll)
end)
else
crouchT = crouchT + step
if crouchT >= 0.14 then
crouchT = 0
crouchOn = not crouchOn
pcall(function()
local RF = game:GetService("ReplicatedFirst")
local V = GB_Variables or require(RF.Variables)
local AB = GB_Ambassador or require(RF.Ambassador)
V.tocrouch = crouchOn
AB.Fire("Crouched")
end)
end
end
end)
local BH = {Enabled = false, Mode = "Auto"}
local SP = {Value = 16}
Connect(RunService.Heartbeat, function()
if BH.Enabled and tpAlive() then
local c = LocalPlayer.Character
local hum = c and c:FindFirstChildOfClass("Humanoid")
if hum and hum.FloorMaterial ~= Enum.Material.Air then
local go = hum.MoveDirection.Magnitude > 0.1
if BH.Mode == "Hold Space" then
local ok, down = pcall(function() return UIS:IsKeyDown(Enum.KeyCode.Space) end)
go = ok and down
end
if go then pcall(function() hum.Jump = true end) end
end
end
if SP.Value > 16 and tpAlive() then
local hum2 = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
if hum2 then pcall(function()
if hum2.WalkSpeed ~= SP.Value then hum2.WalkSpeed = SP.Value end
end) end
end
end)
local SC = {Enabled = false, Hidden = true}
local function scopeSniperEquipped()
local c = LocalPlayer.Character
local gun = c and c:GetAttribute("WhatGun")
if not gun or gun == "" then return false end
local ok, w = pcall(function() return game.ReplicatedStorage.Weapons:FindFirstChild(gun) end)
if not ok or not w then return false end
local ok2, wt = pcall(function() return w:GetAttribute("WeaponType") end)
return ok2 and wt == "Sniper"
end
local function scopeSet(on)
pcall(function()
local RF = game:GetService("ReplicatedFirst")
local AB = GB_Ambassador or require(RF.Ambassador)
AB.Fire("Scope", on)
end)
end
local lastScopeCheck = 0
Connect(RunService.Heartbeat, function()
if not SC.Enabled then return end
if not tpAlive() then return end
if GB_Variables and GB_Variables.freemouse then return end
if SC.Hidden then
pcall(function()
local hud = LocalPlayer.PlayerGui:FindFirstChild("HUD")
local ch = hud and hud:FindFirstChild("Crosshair")
if ch then
local nr = ch:FindFirstChild("Crosshair")
local sc = ch:FindFirstChild("ScopeCrosshair")
if nr then nr.Visible = true end
if sc then sc.Visible = false end
end
end)
end
local now = os.clock()
if now - lastScopeCheck > 0.5 then
lastScopeCheck = now
local V = GB_Variables
if not V then return end
if FV.Enabled then
local cur = V.fov and V.fov[1]
if cur ~= FV.Value then V.fov = {FV.Value} end
elseif scopeSniperEquipped() then
if not V.scoped then scopeSet(true) end
if V.fov ~= nil then V.fov = nil end
else
if V.scoped then scopeSet(false) end
end
end
end)
local PK = {Enabled = false, Dir = "Right", Dist = 5, alt = false, busy = false}
local function doPeek()
if PK.busy then return end
if not PK.Enabled then return end
if not tpAlive() then return end
if GB_Variables and GB_Variables.freemouse then return end
local c = LocalPlayer.Character
local hum = c and c:FindFirstChildOfClass("Humanoid")
local hrp = c and c:FindFirstChild("HumanoidRootPart")
if not hum or not hrp then return end
PK.busy = true
task.spawn(function()
pcall(function()
local dir = PK.Dir
if dir == "Alternate" then PK.alt = not PK.alt if PK.alt then dir = "Right" else dir = "Left" end end
local rv = hrp.CFrame.RightVector
rv = Vector3.new(rv.X, 0, rv.Z)
if rv.Magnitude < 0.01 then rv = Vector3.new(1, 0, 0) end
rv = rv.Unit
if dir == "Left" then rv = rv * -1 end
local startP = hrp.Position
local outP = startP + rv * PK.Dist
hum:MoveTo(outP)
local t0 = os.clock()
while os.clock() - t0 < 1.2 do
task.wait(0.05)
if not tpAlive() then break end
local hp2 = hrp.Position
local flat = Vector3.new(hp2.X - outP.X, 0, hp2.Z - outP.Z).Magnitude
if flat < 1 then break end
end
task.wait(0.22)
if tpAlive() then hum:MoveTo(startP) end
end)
PK.busy = false
end)
end
local HttpS = game:GetService("HttpService")
local GB_Appear = nil
pcall(function() GB_Appear = require(game.ReplicatedStorage.Modules.Appearance) end)
local SK = {Auto = true, SelWeapon = nil, memory = {}}
pcall(function()
local s = readfile("skeet-skins.json")
if s and s ~= "" then
local t = HttpS:JSONDecode(s)
if type(t) == "table" then SK.memory = t end
end
end)
local function skinsSave()
pcall(function() writefile("skeet-skins.json", HttpS:JSONEncode(SK.memory)) end)
end
local function weaponList()
local t = {}
pcall(function()
for _,w in ipairs(game.ReplicatedStorage.Weapons:GetChildren()) do
if game.ReplicatedStorage.Skins:FindFirstChild(w.Name) then
table.insert(t, w.Name)
end
end
end)
table.sort(t)
return t
end
local function skinList(w)
local t = {}
pcall(function()
local f = game.ReplicatedStorage.Skins:FindFirstChild(w)
if f then
for _,s in ipairs(f:GetChildren()) do
table.insert(t, s.Name)
end
end
end)
table.sort(t)
table.insert(t, 1, "Stock")
return t
end
local function currentWeapon()
local V = GB_Variables
local w = V and V.LastWeapon
if type(w) == "string" and w ~= "" then
local f = game.ReplicatedStorage.Skins:FindFirstChild(w)
if f then return w end
end
local c = LocalPlayer.Character
local wg = c and c:GetAttribute("WhatGun")
if type(wg) == "string" and wg ~= "" then
local f2 = game.ReplicatedStorage.Skins:FindFirstChild(wg)
if f2 then return wg end
end
return nil
end
local function applySkinNow()
local w = currentWeapon()
if not w then return end
local skin = SK.memory[w]
if not skin or skin == "Stock" then return end
if not GB_Appear then return end
local s = w .. "_" .. skin
pcall(function()
local cam = workspace.CurrentCamera
local vm = cam and cam:FindFirstChild("Arms")
if vm then GB_Appear.MapGunSkin(vm, s, false, 0, false, LocalPlayer) end
end)
pcall(function()
local gun = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Gun")
if gun then GB_Appear.MapGunSkin(gun, s, false, 0, true, LocalPlayer) end
end)
end
local lastSkinW, lastSkinArms, lastSkinCheck = nil, nil, 0
Connect(RunService.Heartbeat, function()
if not SK.Auto then return end
local now = os.clock()
if now - lastSkinCheck < 0.5 then return end
lastSkinCheck = now
local w = currentWeapon()
local arms = tpArms()
if w ~= lastSkinW or arms ~= lastSkinArms then
lastSkinW, lastSkinArms = w, arms
if w and arms then
task.defer(function()
task.wait(0.35)
applySkinNow()
end)
end
end
end)
Connect(LocalPlayer.CharacterAdded, function()
lastSkinW, lastSkinArms = nil, nil
tpCacheParts()
end)
local ESP = {Enemies = true, Teammates = false, Box = true, Tracer = false, Dot = false, Chams = true, ChamsMode = "Glow", ThroughWalls = true, Name = true, Health = true,
EnemyColor = Color3.fromRGB(255, 70, 70), TeamColor = Color3.fromRGB(120, 255, 120)}
local espRoot = nil
pcall(function()
local pg = game:GetService("CoreGui")
if gethui then local ok, gh = pcall(function() return gethui() end) if ok and gh then pg = gh end end
espRoot = Instance.new("Folder")
espRoot.Name = "SkeetESP"
espRoot.Parent = pg
end)
local espDraw = {}
local espHL = {}
local function dNew(kind)
local o = nil
pcall(function() o = Drawing.new(kind) end)
return o
end
local function dSet(o, props)
if not o then return end
for k, v in pairs(props) do pcall(function() o[k] = v end) end
end
local function espGetDraw(plr)
local d = espDraw[plr]
if d then return d end
d = {
boxO = dNew("Square"), boxI = dNew("Square"),
hpB = dNew("Square"), hpF = dNew("Square"),
name = dNew("Text"), tracer = dNew("Line"), dot = dNew("Circle"),
}
dSet(d.boxO, {Filled = false, Thickness = 3, Color = Color3.new(0, 0, 0), Visible = false})
dSet(d.boxI, {Filled = false, Thickness = 1, Color = Color3.new(1, 1, 1), Visible = false})
dSet(d.hpB, {Filled = true, Color = Color3.new(0, 0, 0), Visible = false})
dSet(d.hpF, {Filled = true, Color = Color3.new(0, 1, 0), Visible = false})
dSet(d.name, {Size = 14, Color = Color3.new(1, 1, 1), Outline = true, Center = true, Visible = false})
dSet(d.tracer, {Thickness = 1, Color = Color3.new(1, 1, 1), Visible = false})
dSet(d.dot, {Radius = 3, Filled = true, Color = Color3.new(1, 0, 0), Visible = false})
espDraw[plr] = d
return d
end
local function espHide(plr)
local d = espDraw[plr]
if d then for _, o in pairs(d) do pcall(function() o.Visible = false end) end end
local h = espHL[plr]
if h then pcall(function() h.Enabled = false end) end
end
local function espDrop(plr)
local d = espDraw[plr]
if d then for _, o in pairs(d) do pcall(function() o:Remove() end) end espDraw[plr] = nil end
local h = espHL[plr]
if h then pcall(function() h:Destroy() end) espHL[plr] = nil end
end
local function espWipe()
for plr, _ in pairs(espDraw) do espDrop(plr) end
pcall(function() if espRoot then espRoot:Destroy() end end)
end
if STATE_API and STATE_API.onCleanup then
STATE_API.onCleanup(function() espWipe() end)
end
Connect(Players.PlayerRemoving, function(plr) espDrop(plr) end)
local function espHP(plr, char)
local hp = plr:GetAttribute("Health")
if hp == nil then local h = char and char:FindFirstChildOfClass("Humanoid") hp = h and (h.Health / math.max(1, h.MaxHealth) * 100) or 100 end
return math.clamp(hp, 0, 100)
end
local function espApplyChams(hl, col)
pcall(function()
if ESP.ChamsMode == "Solid" then
hl.FillTransparency = 0.1
hl.OutlineTransparency = 1
elseif ESP.ChamsMode == "Outline" then
hl.FillTransparency = 1
hl.OutlineTransparency = 0
else
hl.FillTransparency = 0.55
hl.OutlineTransparency = 0
end
hl.DepthMode = ESP.ThroughWalls and Enum.HighlightDepthMode.AlwaysOnTop or Enum.HighlightDepthMode.Occluded
hl.FillColor = col
if ESP.ChamsMode == "Outline" then
hl.OutlineColor = col
else
hl.OutlineColor = Color3.new(1, 1, 1)
end
hl.Enabled = true
end)
end
local espHalf = false
Connect(RunService.RenderStepped, function()
espHalf = not espHalf
if not espHalf then return end
local cam = workspace.CurrentCamera
if not cam then return end
local myTeam = LocalPlayer:GetAttribute("Team")
local vpx, vpy = cam.ViewportSize.X, cam.ViewportSize.Y
for _,plr in ipairs(Players:GetPlayers()) do
if plr == LocalPlayer then
espHide(plr)
else
local tm = plr:GetAttribute("Team")
local isEnemy = tm and tm ~= "Spectator" and tm ~= myTeam
local want = (isEnemy and ESP.Enemies) or ((not isEnemy) and ESP.Teammates)
local c = plr.Character
local hp = c and espHP(plr, c) or 0
if not want or not c or hp <= 0 then
espHide(plr)
else
local col = isEnemy and ESP.EnemyColor or ESP.TeamColor
local ok, cf, size = pcall(function() return c:GetBoundingBox() end)
if not ok then
espHide(plr)
else
local top3 = (cf * CFrame.new(0, size.Y / 2, 0)).Position
local bot3 = (cf * CFrame.new(0, -size.Y / 2, 0)).Position
local t2, onT = cam:WorldToViewportPoint(top3)
local b2, onB = cam:WorldToViewportPoint(bot3)
if (not onT and not onB) then
espHide(plr)
else
local h = math.abs(b2.Y - t2.Y)
local w = h * 0.62
local x = t2.X - w / 2
local y = math.min(t2.Y, b2.Y)
local d = espGetDraw(plr)
local showBox = ESP.Box
dSet(d.boxO, {Visible = showBox, Position = Vector2.new(x - 2, y - 2), Size = Vector2.new(w + 4, h + 4)})
dSet(d.boxI, {Visible = showBox, Color = col, Position = Vector2.new(x, y), Size = Vector2.new(w, h)})
local showHp = ESP.Health
local frac = hp / 100
dSet(d.hpB, {Visible = showHp, Position = Vector2.new(x - 7, y), Size = Vector2.new(4, h)})
dSet(d.hpF, {Visible = showHp, Color = Color3.fromRGB(math.floor(255 - 255 * frac), math.floor(255 * frac), 40), Position = Vector2.new(x - 7, y + h * (1 - frac)), Size = Vector2.new(4, math.max(1, h * frac))})
local dist = math.floor((bot3 - cam.CFrame.Position).Magnitude)
if ESP.Name then
dSet(d.name, {Visible = true, Text = plr.Name .. " [" .. dist .. "m]", Position = Vector2.new(x + w / 2, y - 16)})
else
dSet(d.name, {Visible = false})
end
if ESP.Tracer then
dSet(d.tracer, {Visible = true, Color = col, From = Vector2.new(vpx / 2, vpy), To = Vector2.new(x + w / 2, y + h)})
else
dSet(d.tracer, {Visible = false})
end
local head = c:FindFirstChild("Head")
if ESP.Dot and head then
local h2, onH = cam:WorldToViewportPoint(head.Position)
dSet(d.dot, {Visible = onH, Color = col, Position = Vector2.new(h2.X, h2.Y)})
else
dSet(d.dot, {Visible = false})
end
if ESP.Chams and espRoot then
local hl = espHL[plr]
if not hl then
hl = nil
pcall(function()
hl = Instance.new("Highlight")
hl.Parent = espRoot
end)
if hl then espHL[plr] = hl end
end
if hl then
pcall(function()
if hl.Adornee ~= c then hl.Adornee = c end
end)
espApplyChams(hl, col)
end
else
local hl = espHL[plr]
if hl then pcall(function() hl.Enabled = false end) end
end
end
end
end
end
end
end)
local function fovWantWrite()
local V = GB_Variables
if not V then return end
local cur = V.fov and V.fov[1]
if cur ~= FV.Value then V.fov = {FV.Value} end
end
local WM = {Enabled = true, obj = nil, frames = 0, t0 = os.clock(), fps = 60}
local function wmTick()
if not WM.Enabled then
if WM.obj then pcall(function() WM.obj.Visible = false end) end
return
end
if not WM.obj then
WM.obj = dNew("Text")
dSet(WM.obj, {Size = 14, Color = Color3.new(1, 1, 1), Outline = true, Visible = true, Position = Vector2.new(10, 10)})
if STATE_API and STATE_API.onCleanup then
STATE_API.onCleanup(function() pcall(function() if WM.obj then WM.obj:Remove() end end) WM.obj = nil end)
end
end
WM.frames = WM.frames + 1
local now = os.clock()
if now - WM.t0 >= 0.5 then
WM.fps = math.floor(WM.frames / (now - WM.t0) + 0.5)
WM.frames = 0
WM.t0 = now
local ms = 0
pcall(function() ms = math.floor(LocalPlayer:GetNetworkPing() * 1000 + 0.5) end)
local nm = "?"
pcall(function() nm = LocalPlayer.DisplayName end)
dSet(WM.obj, {Visible = true, Text = "primordial | " .. tostring(nm) .. " | " .. WM.fps .. " fps | " .. ms .. " ms"})
end
end
Connect(RunService.RenderStepped, function() wmTick() end)
local GM = {Rapid = false, Reload = false, NoRecoil = false, NoSpread = false, AutoReload = false}
local gunOrig = {}
local gunApplied = false
local function gunSet(w, attr, val)
local ok, cur = pcall(function() return w:GetAttribute(attr) end)
if not ok or cur == nil then return end
local gn = w.Name
gunOrig[gn] = gunOrig[gn] or {}
if gunOrig[gn][attr] == nil then gunOrig[gn][attr] = cur end
pcall(function() w:SetAttribute(attr, val) end)
end
local function gunRestoreAll()
for gn, attrs in pairs(gunOrig) do
local w = game.ReplicatedStorage.Weapons:FindFirstChild(gn)
if w then
for attr, val in pairs(attrs) do
pcall(function() w:SetAttribute(attr, val) end)
end
end
end
gunOrig = {}
gunApplied = false
end
local lastGunApply = 0
Connect(RunService.Heartbeat, function()
local any = GM.Rapid or GM.Reload or GM.NoRecoil or GM.NoSpread or GM.AutoReload
if not any then
if gunApplied then gunRestoreAll() end
return
end
local now = os.clock()
if now - lastGunApply > 1 then
lastGunApply = now
gunApplied = true
pcall(function()
for _,w in ipairs(game.ReplicatedStorage.Weapons:GetChildren()) do
if GM.Rapid then
gunSet(w, "FireRate", 0.03)
gunSet(w, "Cooldown", 0.03)
gunSet(w, "ScopedFireRate", 0.03)
end
if GM.Reload then
gunSet(w, "ReloadTime", 0.05)
gunSet(w, "EquipTime", 0.05)
gunSet(w, "SReload", 0.05)
gunSet(w, "AReload", 0.05)
end
if GM.NoRecoil then
gunSet(w, "RecoilX", 0)
gunSet(w, "RecoilY", 0)
end
if GM.NoSpread then
gunSet(w, "FireSpread", 0)
end
end
end)
end
if GM.NoSpread and GB_Variables then
pcall(function() GB_Variables.spread = 0 end)
end
end)
local AR = {Enabled = false, mag = nil, lastW = false, lastRel = 0}
pcall(function()
local AB = GB_Ambassador or require(game:GetService("ReplicatedFirst").Ambassador)
AB.HookEvent("UpdateAmmo", function(data)
if type(data) == "table" and type(data.Ammo) == "number" then
AR.mag = data.Ammo
end
end)
end)
local lastARCheck = 0
Connect(RunService.Heartbeat, function()
if not AR.Enabled then return end
if not tpAlive() then return end
if GB_Variables and GB_Variables.freemouse then return end
local now = os.clock()
if now - lastARCheck < 0.25 then return end
lastARCheck = now
local w = currentWeapon()
if w ~= AR.lastW then AR.lastW = w AR.mag = nil end
if AR.mag == 0 and now - AR.lastRel > 2 then
AR.lastRel = now
pcall(function()
local AB = GB_Ambassador or require(game:GetService("ReplicatedFirst").Ambassador)
AB.Fire("ReloadWeapon")
end)
end
end)
local RAR = {
Stock = Color3.fromRGB(170, 170, 170),
Blue = Color3.fromRGB(90, 140, 255),
Purple = Color3.fromRGB(170, 90, 255),
Pink = Color3.fromRGB(255, 110, 200),
Red = Color3.fromRGB(255, 70, 70),
Yellow = Color3.fromRGB(255, 200, 60),
}
local function rarColor(r)
if type(r) == "string" and RAR[r] then return RAR[r] end
return RAR.Stock
end
local GAL = {win = nil, wList = nil, grid = nil, vp = nil, vcam = nil, vm = nil, vmCenter = nil, weapon = nil, skin = nil, tiles = {}}
local function galSkinRarity(w, s)
local r = nil
pcall(function()
local f = game.ReplicatedStorage.Skins:FindFirstChild(w)
local sf = f and f:FindFirstChild(s)
r = sf and sf:GetAttribute("Rarity")
end)
return r or "Stock"
end
local function galClearPreview()
pcall(function()
if GAL.vm then GAL.vm:Destroy() end
end)
GAL.vm, GAL.vmCenter = nil, nil
end
local function galPreview(w, s)
galClearPreview()
if not GAL.vp then return "no-vp" end
local src = nil
pcall(function()
local wf = game.ReplicatedStorage.Weapons:FindFirstChild(w)
src = wf and (wf:FindFirstChild("Viewmodel") or wf:FindFirstChild("Model"))
end)
if not src then return "no-src" end
local ok, clone = pcall(function() return src:Clone() end)
if not ok or not clone then return "no-clone" end
clone.Parent = GAL.vp
GAL.vm = clone
pcall(function()
local cf, size = clone:GetBoundingBox()
GAL.vmCenter = cf.Position
GAL.vcam.CFrame = CFrame.new(cf.Position + Vector3.new(0, 0.6, size.Magnitude * 1.5), cf.Position)
end)
if s and s ~= "Stock" and GB_Appear then
pcall(function()
GB_Appear.MapGunSkin(clone, w .. "_" .. s, false, 0, false, LocalPlayer)
end)
end
return "ok"
end
local function galRebuildGrid(w)
if not GAL.grid then return "no-grid" end
for _,t in ipairs(GAL.tiles) do
pcall(function() t:Destroy() end)
end
GAL.tiles = {}
local names = skinList(w)
for _,sn in ipairs(names) do
local tile = New("TextButton", {
Size = UDim2.new(0, 104, 0, 40),
BackgroundColor3 = Color3.fromRGB(30, 30, 36),
Font = Enum.Font.GothamBold, TextSize = 11, TextColor3 = THEME.Text,
Text = sn, TextWrapped = true, AutoButtonColor = false, Parent = GAL.grid,
})
Corner(tile, 4)
Stroke(tile, rarColor(galSkinRarity(w, sn)), 2)
if SK.memory[w] == sn then
tile.BackgroundColor3 = Color3.fromRGB(42, 42, 52)
end
Connect(tile.MouseButton1Click, function()
GAL.skin = sn
galPreview(w, sn)
for _,o in ipairs(GAL.tiles) do
pcall(function()
if o == tile then o.BackgroundColor3 = Color3.fromRGB(42, 42, 52)
else o.BackgroundColor3 = Color3.fromRGB(30, 30, 36) end
end)
end
end)
table.insert(GAL.tiles, tile)
end
return "ok:" .. #names
end
local function galBuildInner()
local G = getgenv()
G.SkeetGalLog = {"entry"}
if GAL.win then table.insert(G.SkeetGalLog, "havewin") return "have-win" end
table.insert(G.SkeetGalLog, "pastwin")
G.SkeetGalLog = {"entry", "pastwin"}
local guiRoot = nil
pcall(function()
local pg = game:GetService("CoreGui")
if gethui then local ok, gh = pcall(function() return gethui() end) if ok and gh then pg = gh end end
guiRoot = pg:FindFirstChild("SkeetUI")
if not guiRoot then
local rg = game.CoreGui:FindFirstChild("RobloxGui")
guiRoot = rg and rg:FindFirstChild("SkeetUI")
end
end)
if not guiRoot then error("no-gui-root", 0) end
table.insert(G.SkeetGalLog, "guiroot")
local function mark(n) table.insert(G.SkeetGalLog, n) end
local function mk(class, props, parent)
local o = Instance.new(class)
for k, v in pairs(props) do
local ok, err = pcall(function() o[k] = v end)
if not ok then error("prop:" .. tostring(k) .. ":" .. tostring(err), 0) end
end
o.Parent = parent
return o
end
local win = mk("Frame", {Name = "Gallery", Size = UDim2.new(0, 560, 0, 400), Position = UDim2.new(0.5, -280, 0.5, -200), BackgroundColor3 = THEME.Main, BorderSizePixel = 0, Visible = false, Active = true}, guiRoot)
mark("win")
mk("UICorner", {CornerRadius = UDim.new(0, 6)}, win)
mk("UIStroke", {Color = THEME.BorderDark, Thickness = 1, ApplyStrokeMode = Enum.ApplyStrokeMode.Border}, win)
mark("win-deco")
mk("Frame", {Size = UDim2.new(1, 0, 0, 2), BackgroundColor3 = Library.Accent, BorderSizePixel = 0}, win)
mark("accent")
local bar = mk("Frame", {Size = UDim2.new(1, 0, 0, 34), BackgroundTransparency = 1, Active = true}, win)
mk("TextLabel", {BackgroundTransparency = 1, Size = UDim2.new(1, -70, 1, 0), Position = UDim2.new(0, 10, 0, 0), Font = Enum.Font.GothamBold, TextSize = 14, TextXAlignment = Enum.TextXAlignment.Left, TextColor3 = THEME.Text, Text = "Skin Gallery"}, bar)
local closeB = mk("TextButton", {Size = UDim2.new(0, 26, 0, 26), Position = UDim2.new(1, -32, 0, 4), BackgroundColor3 = Color3.fromRGB(60, 20, 20), Font = Enum.Font.GothamBold, TextSize = 14, TextColor3 = THEME.Text, Text = "X", AutoButtonColor = false}, bar)
mk("UICorner", {CornerRadius = UDim.new(0, 4)}, closeB)
mark("bar")
do
local drag, sp, si = false, nil, nil
bar.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then drag = true sp = win.Position si = i.Position end
end)
UIS.InputChanged:Connect(function(i)
if drag and i.UserInputType == Enum.UserInputType.MouseMovement then
local d = i.Position - si
win.Position = UDim2.new(sp.X.Scale, sp.X.Offset + d.X, sp.Y.Scale, sp.Y.Offset + d.Y)
end
end)
end
mark("drag")
closeB.MouseButton1Click:Connect(function() win.Visible = false end)
mark("close")
local wlist = mk("ScrollingFrame", {Size = UDim2.new(0, 130, 1, -44), Position = UDim2.new(0, 6, 0, 38), BackgroundColor3 = THEME.Side, BorderSizePixel = 0, ScrollBarThickness = 2, ScrollBarImageColor3 = Library.Accent, AutomaticCanvasSize = Enum.AutomaticSize.Y, CanvasSize = UDim2.new(0, 0, 0, 0), ScrollingDirection = Enum.ScrollingDirection.Y}, win)
mk("UICorner", {CornerRadius = UDim.new(0, 4)}, wlist)
mk("UIListLayout", {Padding = UDim.new(0, 3), SortOrder = Enum.SortOrder.LayoutOrder}, wlist)
mk("UIPadding", {PaddingLeft = UDim.new(0, 4), PaddingTop = UDim.new(0, 4), PaddingRight = UDim.new(0, 4), PaddingBottom = UDim.new(0, 4)}, wlist)
mark("wlist")
local vp = mk("ViewportFrame", {Size = UDim2.new(1, -152, 0, 170), Position = UDim2.new(0, 142, 0, 38), BackgroundColor3 = Color3.fromRGB(12, 12, 15), BorderSizePixel = 0}, win)
mk("UICorner", {CornerRadius = UDim.new(0, 4)}, vp)
mk("UIStroke", {Color = THEME.Border, Thickness = 1, ApplyStrokeMode = Enum.ApplyStrokeMode.Border}, vp)
local vcam = mk("Camera", {}, vp)
vp.CurrentCamera = vcam
mark("vp")
local grid = mk("ScrollingFrame", {Size = UDim2.new(1, -152, 1, -222), Position = UDim2.new(0, 142, 0, 214), BackgroundTransparency = 1, ScrollBarThickness = 2, ScrollBarImageColor3 = Library.Accent, AutomaticCanvasSize = Enum.AutomaticSize.Y, CanvasSize = UDim2.new(0, 0, 0, 0), ScrollingDirection = Enum.ScrollingDirection.Y}, win)
mk("UIGridLayout", {CellSize = UDim2.new(0, 104, 0, 40), CellPadding = UDim2.new(0, 6, 0, 6), SortOrder = Enum.SortOrder.LayoutOrder}, grid)
mark("grid")
local eq = mk("TextButton", {Size = UDim2.new(0, 120, 0, 26), Position = UDim2.new(1, -126, 1, -32), BackgroundColor3 = THEME.Element, Font = Enum.Font.GothamBold, TextSize = 12, TextColor3 = THEME.Text, Text = "Equip", AutoButtonColor = false}, win)
mk("UICorner", {CornerRadius = UDim.new(0, 4)}, eq)
mk("UIStroke", {Color = THEME.Border, Thickness = 1, ApplyStrokeMode = Enum.ApplyStrokeMode.Border}, eq)
mark("eq")
GAL.win, GAL.wList, GAL.grid, GAL.vp, GAL.vcam = win, wlist, grid, vp, vcam
eq.MouseButton1Click:Connect(function()
if GAL.weapon and GAL.skin then
SK.memory[GAL.weapon] = GAL.skin
skinsSave()
if GAL.weapon == currentWeapon() then applySkinNow() end
end
end)
local spinConn
spinConn = RunService.RenderStepped:Connect(function()
if not GAL.win or GAL.win.Parent == nil then pcall(function() spinConn:Disconnect() end) return end
if GAL.win.Visible and GAL.vm and GAL.vmCenter then
local c = GAL.vm:GetPivot()
GAL.vm:PivotTo(CFrame.new(GAL.vmCenter) * CFrame.Angles(0, (os.clock() * 0.6) % (math.pi * 2), 0) * (CFrame.new(GAL.vmCenter):Inverse() * c))
end
end)
mark("done")
return "built"
end
local function galVerify()
local w = GAL.win
if not w then return false end
local n = 0
pcall(function()
for _, _ in ipairs(w:GetDescendants()) do n = n + 1 end
end)
return n >= 12
end
local function galOpen()
local ok, err = xpcall(galBuildInner, debug.traceback)
if not ok then
warn("[skeet-gallery] build: " .. tostring(err))
return "build-err:" .. tostring(err):sub(1, 220)
end
if not galVerify() then
pcall(function() if GAL.win then GAL.win:Destroy() end end)
GAL.win, GAL.wList, GAL.grid, GAL.vp, GAL.vcam, GAL.vm, GAL.vmCenter, GAL.tiles = nil, nil, nil, nil, nil, nil, nil, {}
local ok2, err2 = xpcall(galBuildInner, debug.traceback)
if not ok2 then
warn("[skeet-gallery] rebuild: " .. tostring(err2))
return "rebuild-err:" .. tostring(err2):sub(1, 220)
end
if not galVerify() then
warn("[skeet-gallery] incomplete after rebuild")
return "incomplete"
end
end
GAL.wList:ClearAllChildren()
New("UIListLayout", {Padding = UDim.new(0, 3), SortOrder = Enum.SortOrder.LayoutOrder, Parent = GAL.wList})
Pad(GAL.wList, 4, 4, 4, 4)
for _,wn in ipairs(weaponList()) do
local b = New("TextButton", {
Size = UDim2.new(1, -4, 0, 24), BackgroundColor3 = THEME.Element,
Font = Enum.Font.Gotham, TextSize = 12, TextColor3 = THEME.Text,
Text = wn, AutoButtonColor = false, Parent = GAL.wList,
})
Corner(b, 3)
Connect(b.MouseButton1Click, function()
safecb(function()
GAL.weapon = wn
GAL.skin = SK.memory[wn] or "Stock"
galRebuildGrid(wn)
galPreview(wn, GAL.skin)
end)
end)
end
local cw = currentWeapon() or SK.SelWeapon
if cw then
GAL.weapon = cw
GAL.skin = SK.memory[cw] or "Stock"
galRebuildGrid(cw)
galPreview(cw, GAL.skin)
end
GAL.win.Visible = true
return "opened"
end
pcall(function()
local G = getgenv and getgenv() or {}
G.SkeetOpenGallery = galOpen
G.SkeetGalPreview = galPreview
G.SkeetGalGrid = galRebuildGrid
end)
local Window = Library:Create("primordial | lua")
local RageTab = Window:Tab("Rage")
local VisualsTab = Window:Tab("Visuals")
local SkinTab = Window:Tab("Skins")
local PlayersTab = Window:Tab("Players")
local CfgTab = Window:Tab("Config")
local A = RageTab:Groupbox("Ragebot", "left")
local aimToggleRef = nil
local function setAim(v)
MG.Enabled = v
if aimToggleRef then aimToggleRef:Set(v) end
if not v then rageFire(false) GG.SkeetMagicTarget = nil end
print("Ragebot:", v)
end
aimToggleRef = A:Toggle("Enable", MG.Enabled, function(v) setAim(v) end)
A:Dropdown("Hitbox", {"Head","Chest","Pelvis","Legs"}, MG.Hitbox, function(v) MG.Hitbox = v print("Hitbox:", v) end)
A:Slider("Range", 50, 1000, MG.Range, function(v) MG.Range = v end)
A:Toggle("Wallbang", MG.Wallbang, function(v) MG.Wallbang = v print("Wallbang:", v) end)
A:Keybind("Toggle key", Enum.KeyCode.H, function(k) setAim(not MG.Enabled) end)
A:Label("H - вкл/выкл. Полуавто жмётся сам")
local SCB = RageTab:Groupbox("Auto Scope", "left")
SCB:Toggle("Enable", false, function(v) SC.Enabled = v print("AutoScope:", v) if not v then scopeSet(false) end end)
SCB:Toggle("Hidden overlay", true, function(v) SC.Hidden = v end)
SCB:Label("Флаг скоупа есть, зума нет")
local PKB = RageTab:Groupbox("Peek", "left")
PKB:Toggle("Enable", false, function(v) PK.Enabled = v print("Peek:", v) end)
PKB:Keybind("Peek key", Enum.KeyCode.X, function(k) doPeek() end)
PKB:Dropdown("Direction", {"Right","Left","Alternate"}, "Right", function(v) PK.Dir = v end)
PKB:Slider("Distance", 3, 8, 5, function(v) PK.Dist = v end)
PKB:Label("Выглядывает и возвращается")
local GD = RageTab:Groupbox("Gun Mods", "left")
GD:Toggle("Rapid Fire", false, function(v) GM.Rapid = v print("Rapid:", v) end)
GD:Toggle("Fast Reload", false, function(v) GM.Reload = v print("FastReload:", v) end)
GD:Toggle("No Recoil", false, function(v) GM.NoRecoil = v print("NoRecoil:", v) end)
GD:Toggle("No Spread", false, function(v) GM.NoSpread = v if not v and GB_Variables then pcall(function() GB_Variables.spread = nil end) end print("NoSpread:", v) end)
GD:Toggle("Auto Reload", false, function(v) AR.Enabled = v AR.mag = nil print("AutoReload:", v) end)
GD:Label("Урон не меняется (сервер)")
local B = RageTab:Groupbox("Anti-Aim", "right")
local aaToggleRef = nil
local function setAA(v)
AA.Enabled = v
if aaToggleRef then aaToggleRef:Set(v) end
print("AA:", v, AA.Mode)
end
aaToggleRef = B:Toggle("Enable AA", false, function(v) setAA(v) end)
B:Dropdown("Mode", {"Spin","Jitter","Sway","Random","Flip","Crooked","Crouch"}, "Spin", function(v) AA.Mode = v print("AA mode:", v) end)
B:Slider("Spin speed", 180, 2880, 1080, function(v) AA.Speed = v end)
B:Slider("Angle", 5, 90, 30, function(v) AA.JAngle = v end)
B:Label("Flip/Crooked прячут голову")
local M = RageTab:Groupbox("Movement", "right")
M:Toggle("Bunny Hop", false, function(v) BH.Enabled = v print("Bhop:", v) end)
M:Dropdown("Hop mode", {"Auto","Hold Space"}, "Auto", function(v) BH.Mode = v end)
M:Slider("Speed", 16, 60, 16, function(v)
SP.Value = v
print("Speed:", v)
if v <= 16 and tpAlive() then
local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
if hum then pcall(function() hum.WalkSpeed = 16 end) end
end
end)
M:Label("16 = обычная. Выше - палево/кик")
local V = VisualsTab:Groupbox("ESP", "left")
V:Toggle("Enemies", true, function(v) ESP.Enemies = v print("ESP enemies:", v) end)
V:Toggle("Teammates", false, function(v) ESP.Teammates = v end)
V:Toggle("Box", true, function(v) ESP.Box = v end)
V:Toggle("Tracers", false, function(v) ESP.Tracer = v end)
V:Toggle("Head dot", false, function(v) ESP.Dot = v end)
V:Toggle("Chams", true, function(v) ESP.Chams = v end)
V:Toggle("Name", true, function(v) ESP.Name = v end)
V:Toggle("Health", true, function(v) ESP.Health = v end)
local EC = VisualsTab:Groupbox("ESP Colors", "right")
EC:Colorpicker("Enemy", Color3.fromRGB(255,70,70), function(c) ESP.EnemyColor = c end)
EC:Colorpicker("Team", Color3.fromRGB(120,255,120), function(c) ESP.TeamColor = c end)
local CS = VisualsTab:Groupbox("Chams Style", "right")
CS:Dropdown("Mode", {"Glow","Solid","Outline"}, "Glow", function(v) ESP.ChamsMode = v end)
CS:Toggle("Through walls", true, function(v) ESP.ThroughWalls = v end)
local WD = VisualsTab:Groupbox("World", "left")
WD:Toggle("FOV Changer", false, function(v)
FV.Enabled = v
print("FOV:", v)
if not v then
local Vv = GB_Variables
if Vv then pcall(function() Vv.fov = nil end) end
end
end)
WD:Slider("FOV", 60, 120, 90, function(v) FV.Value = v end)
local Cam = VisualsTab:Groupbox("Camera", "right")
local tpToggleRef = nil
local function setTP(v, snap)
local now = os.clock()
if now - TP.lastToggle < 0.3 then return end
TP.lastToggle = now
TP.Enabled = v
if tpToggleRef then tpToggleRef:Set(v) end
if v then tpEnable() else tpDisable() end
print("TP:", v)
end
tpToggleRef = Cam:Toggle("Third Person", false, function(v) setTP(v, true) end)
Cam:Slider("Distance", 6, 18, 12, function(v) TP.Distance = v end)
Cam:Keybind("TP key", Enum.KeyCode.V, function(k) setTP(not TP.Enabled, true) end)
Cam:Label("V - вкл/выкл. Без записи зума")
local C = CfgTab:Groupbox("Menu", "left")
C:Toggle("Watermark", true, function(v) WM.Enabled = v if not v and WM.obj then pcall(function() WM.obj.Visible = false end) end print("Watermark:", v) end)
C:Keybind("Menu key", Enum.KeyCode.RightShift, function(k) if k then MenuCfg.Key = k print("Menu key:", k) end end)
C:Textbox("Config name", "myconfig", function(t) print(t) end)
C:Button("Save", function() print("saved") end)
C:Label("Меню прячется на Menu key")
local SKG = SkinTab:Groupbox("Skinchanger", "left")
local wlist = weaponList()
local defW = currentWeapon()
if not defW then defW = wlist[1] end
SK.SelWeapon = defW
local skinH = nil
SKG:Dropdown("Weapon", wlist, defW, function(v)
SK.SelWeapon = v
if skinH then skinH:SetList(skinList(v), SK.memory[v] or "Stock") end
print("Skin weapon:", v)
end)
skinH = SKG:Dropdown("Skin", skinList(defW), SK.memory[defW] or "Stock", function(v)
SK.memory[SK.SelWeapon] = v
skinsSave()
print("Skin set:", SK.SelWeapon, v)
end)
SKG:Button("Apply", function() applySkinNow() print("Skin applied") end)
SKG:Toggle("Auto-apply", true, function(v) SK.Auto = v print("Skin auto:", v) end)
SKG:Button("Open Gallery", function() galOpen() print("Gallery button") end)
SKG:Label("Видно только тебе")
local SKI = SkinTab:Groupbox("Info", "right")
SKI:Button("Сбросить всё (Stock)", function()
SK.memory = {}
skinsSave()
if skinH and SK.SelWeapon then skinH:SetList(skinList(SK.SelWeapon), "Stock") end
print("Skins cleared")
end)
SKI:Label("Сток вернётся при смене оружия")
local VKG = PlayersTab:Groupbox("Votekick", "left")
local vkPickH = nil
local function vkRefresh()
local t, map = vkPlayerList()
vkMap = map
if vkPickH then
if #t == 0 then vkPickH:SetList({"— нет игроков —"}, "— нет игроков —")
else vkPickH:SetList(t, t[1]) end
VK.target = t[1]
end
end
vkPickH = VKG:Dropdown("Target", {"— обнови список —"}, "— обнови список —", function(v) VK.target = v print("Kick target:", v) end)
VKG:Button("Refresh", function() vkRefresh() print("Players refreshed") end)
VKG:Button("Start Votekick", function()
safecb(function()
local label = VK.target
local plr = label and vkMap[label]
if not plr then vkSetStatus("Выбери цель и жми Refresh") return end
game.ReplicatedStorage.Events.VoteKick:FireServer(plr)
vkSetStatus("Запрос кика: " .. tostring(label))
print("Votekick started vs", label)
end)
end)
vkStatusH = VKG:Label("Нет активного кика")
local AKG = PlayersTab:Groupbox("Anti Kick", "right")
AKG:Toggle("Auto vote NO", true, function(v) VK.AntiKick = v print("AntiKick:", v) end)
AKG:Label("Кикают тебя — жмём Нет сами")
print("SkeetUI v4.2 loaded, magic-hook:", GG.SkeetMagicOn)
pcall(function()
if queue_on_teleport then
queue_on_teleport('local f = loadfile("skeet-bundle.luau"); if f then pcall(f) end')
end
end)No comments yet for this script.


