Guest User

3232

a guest
Jul 9th, 2025
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 41.28 KB | None | 0 0
  1. --// Eps1llon Hub | Key System
  2. local Players = game:GetService("Players")
  3. local player = Players.LocalPlayer
  4. local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
  5. gui.Name = "Eps1llonBeta"
  6. gui.ResetOnSpawn = false
  7.  
  8. -- Main Key Frame
  9. local keyFrame = Instance.new("Frame", gui)
  10. keyFrame.Size = UDim2.new(0, 350, 0, 180)
  11. keyFrame.Position = UDim2.new(0.5, -175, 0.5, -90)
  12. keyFrame.BackgroundColor3 = Color3.fromRGB(22,24,32)
  13. keyFrame.Active = true
  14. keyFrame.Draggable = true
  15. Instance.new("UICorner", keyFrame).CornerRadius = UDim.new(0, 10)
  16.  
  17. -- Title
  18. local keyTitle = Instance.new("TextLabel", keyFrame)
  19. keyTitle.Size = UDim2.new(1, 0, 0, 44)
  20. keyTitle.Position = UDim2.new(0, 0, 0, 6)
  21. keyTitle.Text = "Eps1llon Hub | Key System"
  22. keyTitle.Font = Enum.Font.GothamBold
  23. keyTitle.TextSize = 22
  24. keyTitle.TextColor3 = Color3.new(1,1,1)
  25. keyTitle.BackgroundTransparency = 1
  26.  
  27. -- Click to Copy Link Button (centered)
  28. local copyBtn = Instance.new("TextButton", keyFrame)
  29. copyBtn.Size = UDim2.new(0, 160, 0, 32)
  30. copyBtn.Position = UDim2.new(0.5, -80, 0, 52)
  31. copyBtn.Text = "Click to Copy Link"
  32. copyBtn.Font = Enum.Font.Gotham
  33. copyBtn.TextSize = 15
  34. copyBtn.TextColor3 = Color3.new(1,1,1)
  35. copyBtn.BackgroundColor3 = Color3.fromRGB(31, 81, 138)
  36. copyBtn.BorderSizePixel = 0
  37. Instance.new("UICorner", copyBtn).CornerRadius = UDim.new(1,0)
  38.  
  39. copyBtn.MouseButton1Click:Connect(function()
  40. setclipboard("https://discord.gg/PBh66R5h")
  41. copyBtn.Text = "Copied!"
  42. wait(1.1)
  43. copyBtn.Text = "Click to Copy Link"
  44. end)
  45.  
  46. -- Key input
  47. local inputBox = Instance.new("TextBox", keyFrame)
  48. inputBox.Size = UDim2.new(1, -100, 0, 36)
  49. inputBox.Position = UDim2.new(0, 50, 0, 105)
  50. inputBox.PlaceholderText = "Enter Key Here"
  51. inputBox.Font = Enum.Font.GothamBold
  52. inputBox.TextSize = 18
  53. inputBox.TextColor3 = Color3.fromRGB(230,230,230)
  54. inputBox.BackgroundColor3 = Color3.fromRGB(40,40,70)
  55. inputBox.Text = ""
  56. inputBox.BorderSizePixel = 0
  57. Instance.new("UICorner", inputBox).CornerRadius = UDim.new(0, 8)
  58.  
  59. -- Unlock button (smaller)
  60. local unlockBtn = Instance.new("TextButton", keyFrame)
  61. unlockBtn.Size = UDim2.new(0, 90, 0, 26)
  62. unlockBtn.Position = UDim2.new(0.5, -45, 0, 148)
  63. unlockBtn.Text = "Unlock"
  64. unlockBtn.Font = Enum.Font.GothamBold
  65. unlockBtn.TextSize = 15
  66. unlockBtn.TextColor3 = Color3.new(1,1,1)
  67. unlockBtn.BackgroundColor3 = Color3.fromRGB(36,139,84)
  68. unlockBtn.BorderSizePixel = 0
  69. Instance.new("UICorner", unlockBtn).CornerRadius = UDim.new(1,0)
  70.  
  71. -- Error label
  72. local wrongLabel = Instance.new("TextLabel", keyFrame)
  73. wrongLabel.Size = UDim2.new(1, 0, 0, 20)
  74. wrongLabel.Position = UDim2.new(0, 0, 0, 134)
  75. wrongLabel.Text = ""
  76. wrongLabel.Font = Enum.Font.Gotham
  77. wrongLabel.TextSize = 15
  78. wrongLabel.TextColor3 = Color3.fromRGB(255, 60, 60)
  79. wrongLabel.BackgroundTransparency = 1
  80.  
  81. local KEY = "Eps1llonBeta"
  82.  
  83. local function notify(title, text)
  84. pcall(function()
  85. game:GetService("StarterGui"):SetCore("SendNotification", {
  86. Title = title;
  87. Text = text;
  88. Duration = 3,
  89. })
  90. end)
  91. end
  92.  
  93. unlockBtn.MouseButton1Click:Connect(function()
  94. if inputBox.Text == KEY then
  95. keyFrame.Visible = false
  96. gui.Enabled = false
  97. wait(0.08)
  98. gui.Enabled = true
  99. keyFrame:Destroy()
  100.  
  101. -- ==== BEGIN FULL GUI ====
  102.  
  103. local RunService = game:GetService("RunService")
  104. local TweenService = game:GetService("TweenService")
  105. local UserInput = game:GetService("UserInputService")
  106. local StarterGui = game:GetService("StarterGui")
  107. local Players = game:GetService("Players")
  108. local player = Players.LocalPlayer
  109. local camera = workspace.CurrentCamera
  110.  
  111. local espSettings = { Name=false, HP=false, Armor=false, Distance=false,
  112. Team=false, Age=false, Holding=false, Highlight=false }
  113. local espObjects = {}
  114. local grabtoolsEnabled
  115. local grabtoolsConnection
  116. local targetToolNames = {}
  117.  
  118. local function parseToolNames(str)
  119. local t = {}
  120. for name in str:gmatch("([^,]+)") do
  121. name = name:match("^%s*(.-)%s*$")
  122. if #name > 0 then table.insert(t, name) end
  123. end
  124. return t
  125. end
  126.  
  127. local function shouldPickupTool(toolName)
  128. if #targetToolNames == 0 then return true end
  129. toolName = toolName:lower()
  130. for _, v in ipairs(targetToolNames) do
  131. if toolName == v:lower() then return true end
  132. end
  133. return false
  134. end
  135.  
  136. local function equipTools()
  137. if not player.Character then return end
  138. local hum = player.Character:FindFirstChildOfClass("Humanoid")
  139. if not hum then return end
  140. for _, obj in ipairs(workspace:GetChildren()) do
  141. if obj:IsA("Tool") and obj:FindFirstChild("Handle") and shouldPickupTool(obj.Name) then
  142. hum:EquipTool(obj)
  143. end
  144. end
  145. end
  146.  
  147. local function enableGrabtools()
  148. if grabtoolsEnabled then return end
  149. grabtoolsEnabled = true
  150. equipTools()
  151. grabtoolsConnection = workspace.ChildAdded:Connect(function(child)
  152. if child:IsA("Tool") and child:FindFirstChild("Handle") and shouldPickupTool(child.Name) then
  153. wait(0.1)
  154. local hum = player.Character and player.Character:FindFirstChildOfClass("Humanoid")
  155. if hum then hum:EquipTool(child) end
  156. end
  157. end)
  158. notify("Grabtools", "Enabled – picking up: " ..
  159. (#targetToolNames>0 and table.concat(targetToolNames, ", ") or "all tools"))
  160. end
  161.  
  162. local function disableGrabtools()
  163. if not grabtoolsEnabled then return end
  164. grabtoolsEnabled = false
  165. if grabtoolsConnection then grabtoolsConnection:Disconnect() end
  166. notify("Grabtools", "Disabled")
  167. end
  168.  
  169. local function notify(title, text)
  170. pcall(function()
  171. StarterGui:SetCore("SendNotification", {
  172. Title = title;
  173. Text = text;
  174. Duration = 3,
  175. })
  176. end)
  177. end
  178.  
  179. -- MAIN GUI
  180. local mainFrame = Instance.new("Frame", gui)
  181. mainFrame.Size = UDim2.new(0, 650, 0, 340)
  182. mainFrame.Position = UDim2.new(0.5, -325, 0.5, -170)
  183. mainFrame.BackgroundColor3 = Color3.fromRGB(25,25,25)
  184. mainFrame.BackgroundTransparency = 0.1
  185. mainFrame.Active = true
  186. mainFrame.Draggable = true
  187. Instance.new("UICorner", mainFrame).CornerRadius = UDim.new(0,8)
  188. local uiScale = Instance.new("UIScale", mainFrame); uiScale.Scale = 1
  189.  
  190. local header = Instance.new("Frame", mainFrame)
  191. header.Size = UDim2.new(1, -20, 0, 30)
  192. header.Position = UDim2.new(0, 10, 0, 0)
  193. header.BackgroundTransparency = 1
  194.  
  195. local title = Instance.new("TextLabel", header)
  196. title.Size = UDim2.new(1, -80, 1, 0)
  197. title.Position = UDim2.new(0, 0, 0, 0)
  198. title.Text = "Eps1llon Hub || Beta"
  199. title.Font = Enum.Font.GothamBold
  200. title.TextSize = 16
  201. title.TextColor3 = Color3.new(1,1,1)
  202. title.BackgroundTransparency = 1
  203. title.TextXAlignment = Enum.TextXAlignment.Left
  204.  
  205. local underline = Instance.new("Frame", mainFrame)
  206. underline.Size = UDim2.new(1, -20, 0, 2)
  207. underline.Position = UDim2.new(0, 10, 0, 30)
  208. underline.BackgroundColor3 = Color3.fromRGB(31,81,138)
  209. underline.BorderSizePixel = 0
  210.  
  211. local closeBtn = Instance.new("TextButton", header)
  212. closeBtn.Size = UDim2.new(0,25,0,25)
  213. closeBtn.Position = UDim2.new(1, -25, 0, 2)
  214. closeBtn.Text = "X"
  215. closeBtn.Font = Enum.Font.GothamBold
  216. closeBtn.TextSize = 16
  217. closeBtn.TextColor3 = Color3.new(1,1,1)
  218. closeBtn.BackgroundTransparency = 1
  219. closeBtn.BorderSizePixel = 0
  220. closeBtn.MouseButton1Click:Connect(function() gui:Destroy() end)
  221.  
  222. local minimizeBtn = Instance.new("TextButton", header)
  223. minimizeBtn.Size = UDim2.new(0,25,0,25)
  224. minimizeBtn.Position = UDim2.new(1, -55, 0, 2)
  225. minimizeBtn.Text = "–"
  226. minimizeBtn.Font = Enum.Font.GothamBold
  227. minimizeBtn.TextSize = 18
  228. minimizeBtn.TextColor3 = Color3.new(1,1,1)
  229. minimizeBtn.BackgroundTransparency = 1
  230. minimizeBtn.BorderSizePixel = 0
  231.  
  232. local restoreBtn = Instance.new("TextButton", gui)
  233. restoreBtn.Name = "Eps1llonMini"
  234. restoreBtn.Size = UDim2.new(0,50,0,50)
  235. restoreBtn.Position = UDim2.new(0,0,0,0)
  236. restoreBtn.Text = "ES"
  237. restoreBtn.Font = Enum.Font.GothamBold
  238. restoreBtn.TextSize = 20
  239. restoreBtn.TextColor3 = Color3.new(1,1,1)
  240. restoreBtn.BackgroundColor3 = Color3.fromRGB(25,25,25)
  241. restoreBtn.BorderSizePixel = 0
  242. restoreBtn.Visible = false
  243. Instance.new("UICorner", restoreBtn).CornerRadius = UDim.new(1,0)
  244.  
  245. RunService.RenderStepped:Once(function()
  246. local p, s = mainFrame.AbsolutePosition, mainFrame.AbsoluteSize
  247. restoreBtn.Position = UDim2.new(0,
  248. p.X + s.X/2 - 25,
  249. 0,
  250. p.Y + s.Y/2 - 25
  251. )
  252. end)
  253.  
  254. do
  255. local dragging, dragInput, dragStart, startPos
  256. restoreBtn.InputBegan:Connect(function(input)
  257. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  258. dragging = true
  259. dragStart = input.Position
  260. startPos = restoreBtn.Position
  261. input.Changed:Connect(function()
  262. if input.UserInputState == Enum.UserInputState.End then
  263. dragging = false
  264. end
  265. end)
  266. end
  267. end)
  268. restoreBtn.InputChanged:Connect(function(input)
  269. if input.UserInputType == Enum.UserInputType.MouseMovement then
  270. dragInput = input
  271. end
  272. end)
  273. UserInput.InputChanged:Connect(function(input)
  274. if input == dragInput and dragging then
  275. local delta = input.Position - dragStart
  276. restoreBtn.Position = UDim2.new(
  277. startPos.X.Scale, startPos.X.Offset + delta.X,
  278. startPos.Y.Scale, startPos.Y.Offset + delta.Y
  279. )
  280. end
  281. end)
  282. end
  283.  
  284. minimizeBtn.MouseButton1Click:Connect(function()
  285. mainFrame.Visible = false
  286. minimizeBtn.Visible = false
  287. closeBtn.Visible = false
  288. restoreBtn.Visible = true
  289. end)
  290. restoreBtn.MouseButton1Click:Connect(function()
  291. mainFrame.Visible = true
  292. minimizeBtn.Visible = true
  293. closeBtn.Visible = true
  294. restoreBtn.Visible = false
  295. end)
  296.  
  297. local sidebar = Instance.new("Frame", mainFrame)
  298. sidebar.Size = UDim2.new(0,140,0,260)
  299. sidebar.Position = UDim2.new(0,10,0,50)
  300. sidebar.BackgroundColor3 = Color3.fromRGB(30,30,30)
  301. sidebar.BackgroundTransparency = 0.1
  302. Instance.new("UICorner", sidebar).CornerRadius = UDim.new(0,6)
  303. Instance.new("UIStroke", sidebar).Color = Color3.fromRGB(31,81,138)
  304.  
  305. local content = Instance.new("Frame", mainFrame)
  306. content.Size = UDim2.new(0,480,0,260)
  307. content.Position = UDim2.new(0,160,0,50)
  308. content.BackgroundColor3 = Color3.fromRGB(40,40,40)
  309. content.BackgroundTransparency = 0.7
  310. Instance.new("UICorner", content).CornerRadius = UDim.new(0,6)
  311. Instance.new("UIStroke", content).Color = Color3.fromRGB(31,81,138)
  312.  
  313. local sections, tabButtons = {}, {}
  314. local tabNames = {"Configuration","ESP","Inventory","Fun","UI Settings"}
  315. for i, name in ipairs(tabNames) do
  316. local sec = Instance.new("Frame", content)
  317. sec.Name = name
  318. sec.Size = UDim2.new(1,0,1,0)
  319. sec.BackgroundTransparency = 1
  320. sec.Visible = false
  321. sections[name] = sec
  322.  
  323. local btn = Instance.new("TextButton", sidebar)
  324. btn.Size = UDim2.new(1,0,0,30)
  325. btn.Position = UDim2.new(0,0,0,10 + (i-1)*35)
  326. btn.Text = " "..name
  327. btn.Font = Enum.Font.Gotham
  328. btn.TextSize = 14
  329. btn.TextColor3 = Color3.new(1,1,1)
  330. btn.BackgroundTransparency = 1
  331. btn.TextXAlignment = Enum.TextXAlignment.Left
  332. tabButtons[name] = btn
  333.  
  334. btn.MouseEnter:Connect(function()
  335. if not sections[name].Visible then
  336. btn.BackgroundTransparency = 0.7
  337. btn.BackgroundColor3 = Color3.fromRGB(31,81,138)
  338. end
  339. end)
  340. btn.MouseLeave:Connect(function()
  341. if not sections[name].Visible then
  342. btn.BackgroundTransparency = 1
  343. end
  344. end)
  345. btn.MouseButton1Click:Connect(function()
  346. for t,b in pairs(tabButtons) do
  347. sections[t].Visible = false
  348. b.BackgroundTransparency = 1
  349. end
  350. sections[name].Visible = true
  351. btn.BackgroundTransparency = 0
  352. btn.BackgroundColor3 = Color3.fromRGB(31,81,138)
  353. end)
  354. end
  355. sections["Configuration"].Visible = true
  356. tabButtons["Configuration"].BackgroundTransparency = 0
  357. tabButtons["Configuration"].BackgroundColor3 = Color3.fromRGB(31,81,138)
  358.  
  359. UserInput.InputBegan:Connect(function(inp, gp)
  360. if not gp and inp.KeyCode == Enum.KeyCode.Insert then
  361. local vis = not mainFrame.Visible
  362. mainFrame.Visible = vis
  363. local bgT = vis and 0.1 or 1
  364. local scT = vis and 1 or 0.8
  365. local pos = vis
  366. and UDim2.new(0.5,-325,0.5,-170)
  367. or UDim2.new(0.5,-325,0.5,-210)
  368. TweenService:Create(mainFrame, TweenInfo.new(0.5,Enum.EasingStyle.Back), {
  369. BackgroundTransparency = bgT,
  370. Position = pos
  371. }):Play()
  372. TweenService:Create(uiScale, TweenInfo.new(0.4), { Scale = scT }):Play()
  373. end
  374. end)
  375.  
  376. -- ESP Tab
  377. do
  378. local espTab = sections["ESP"]
  379. local names = {
  380. "Name","HP","Armor","Distance",
  381. "Team","Age","Holding","Highlight",
  382. }
  383. local perCol, startX, startY, colSpacing, rowSpacing = 4, 40, 20, 220, 35
  384.  
  385. for idx, name in ipairs(names) do
  386. local col = math.floor((idx-1)/perCol)
  387. local row = (idx-1) % perCol
  388.  
  389. local holder = Instance.new("Frame", espTab)
  390. holder.Size = UDim2.new(0,200,0,30)
  391. holder.Position = UDim2.new(0, startX + col*colSpacing, 0, startY + row*rowSpacing)
  392. holder.BackgroundTransparency = 1
  393.  
  394. local sw = Instance.new("TextButton", holder)
  395. sw.Size = UDim2.new(0,40,0,20)
  396. sw.Position = UDim2.new(0,0,0,5)
  397. sw.BackgroundColor3 = Color3.fromRGB(200,225,255)
  398. sw.AutoButtonColor = false
  399. sw.Text = ""
  400. sw.BorderSizePixel = 0
  401. Instance.new("UICorner", sw).CornerRadius = UDim.new(1,0)
  402.  
  403. local circ = Instance.new("Frame", sw)
  404. circ.Size = UDim2.new(0,16,0,16)
  405. circ.Position = UDim2.new(0,2,0,2)
  406. circ.BackgroundColor3 = Color3.new(1,1,1)
  407. circ.BorderSizePixel = 0
  408. Instance.new("UICorner", circ).CornerRadius = UDim.new(1,0)
  409.  
  410. local lbl = Instance.new("TextLabel", holder)
  411. lbl.Size = UDim2.new(0,120,1,0)
  412. lbl.Position = UDim2.new(0,48,0,0)
  413. lbl.Text = name
  414. lbl.Font = Enum.Font.Gotham
  415. lbl.TextSize = 14
  416. lbl.TextColor3 = Color3.new(1,1,1)
  417. lbl.BackgroundTransparency = 1
  418. lbl.TextXAlignment = Enum.TextXAlignment.Left
  419.  
  420. sw.MouseButton1Click:Connect(function()
  421. espSettings[name] = not espSettings[name]
  422. if espSettings[name] then
  423. sw.BackgroundColor3 = Color3.fromRGB(31,81,138)
  424. circ:TweenPosition(UDim2.new(1,-18,0,2),"Out","Quad",0.2,true)
  425. else
  426. sw.BackgroundColor3 = Color3.fromRGB(200,225,255)
  427. circ:TweenPosition(UDim2.new(0,2,0,2),"Out","Quad",0.2,true)
  428. end
  429. end)
  430. end
  431. end
  432.  
  433. -- Inventory Tab (unchanged)
  434. do
  435. local inv = sections["Inventory"]
  436. -- Title
  437. local invTitle = Instance.new("TextLabel", inv)
  438. invTitle.Size = UDim2.new(1,0,0,24)
  439. invTitle.Position = UDim2.new(0,0,0,8)
  440. invTitle.Text = "Selective Grabtools"
  441. invTitle.Font = Enum.Font.GothamBold
  442. invTitle.TextSize = 18
  443. invTitle.TextColor3 = Color3.new(1,1,1)
  444. invTitle.BackgroundTransparency = 1
  445. invTitle.TextXAlignment = Enum.TextXAlignment.Left
  446.  
  447. -- Input label & box
  448. local lbl = Instance.new("TextLabel", inv)
  449. lbl.Size = UDim2.new(1,-20,0,18)
  450. lbl.Position = UDim2.new(0,10,0,40)
  451. lbl.Text = "Tool Names (comma-separated):"
  452. lbl.Font = Enum.Font.SourceSans
  453. lbl.TextSize = 14
  454. lbl.TextColor3 = Color3.fromRGB(200,200,200)
  455. lbl.BackgroundTransparency = 1
  456. lbl.TextXAlignment = Enum.TextXAlignment.Left
  457.  
  458. local txt = Instance.new("TextBox", inv)
  459. txt.Size = UDim2.new(1,-20,0,24)
  460. txt.Position = UDim2.new(0,10,0,60)
  461. txt.PlaceholderText = "e.g. Spear, Stick"
  462. txt.Font = Enum.Font.SourceSans
  463. txt.TextSize = 14
  464. txt.TextColor3 = Color3.new(1,1,1)
  465. txt.BackgroundColor3 = Color3.fromRGB(35,35,35)
  466. txt.BorderSizePixel = 0
  467. Instance.new("UICorner", txt).CornerRadius = UDim.new(0,4)
  468.  
  469. -- Buttons & status
  470. local btnUpd = Instance.new("TextButton", inv)
  471. btnUpd.Size = UDim2.new(0,120,0,24)
  472. btnUpd.Position = UDim2.new(0,10,0,94)
  473. btnUpd.Text = "Update Targets"
  474. btnUpd.Font = Enum.Font.SourceSansBold
  475. btnUpd.TextSize = 14
  476. btnUpd.TextColor3 = Color3.new(1,1,1)
  477. btnUpd.BackgroundColor3 = Color3.fromRGB(70,130,180)
  478. btnUpd.BorderSizePixel = 0
  479. Instance.new("UICorner", btnUpd).CornerRadius = UDim.new(0,4)
  480.  
  481. local btnEn = Instance.new("TextButton", inv)
  482. btnEn.Size = UDim2.new(0,60,0,24)
  483. btnEn.Position = UDim2.new(0,140,0,94)
  484. btnEn.Text = "Enable"
  485. btnEn.Font = Enum.Font.SourceSansBold
  486. btnEn.TextSize = 14
  487. btnEn.TextColor3 = Color3.new(1,1,1)
  488. btnEn.BackgroundColor3 = Color3.fromRGB(34,139,34)
  489. btnEn.BorderSizePixel = 0
  490. Instance.new("UICorner", btnEn).CornerRadius = UDim.new(0,4)
  491.  
  492. local btnDi = Instance.new("TextButton", inv)
  493. btnDi.Size = UDim2.new(0,60,0,24)
  494. btnDi.Position = UDim2.new(0,210,0,94)
  495. btnDi.Text = "Disable"
  496. btnDi.Font = Enum.Font.SourceSansBold
  497. btnDi.TextSize = 14
  498. btnDi.TextColor3 = Color3.new(1,1,1)
  499. btnDi.BackgroundColor3 = Color3.fromRGB(220,20,60)
  500. btnDi.BorderSizePixel = 0
  501. Instance.new("UICorner", btnDi).CornerRadius = UDim.new(0,4)
  502.  
  503. local status = Instance.new("TextLabel", inv)
  504. status.Size = UDim2.new(0,80,0,24)
  505. status.Position = UDim2.new(0,280,0,94)
  506. status.Text = "Disabled"
  507. status.Font = Enum.Font.SourceSansBold
  508. status.TextSize = 14
  509. status.TextColor3 = Color3.fromRGB(220,20,60)
  510. status.BackgroundTransparency = 1
  511. status.TextXAlignment = Enum.TextXAlignment.Left
  512.  
  513. -- Available items list
  514. local listFrame = Instance.new("ScrollingFrame", inv)
  515. listFrame.Size = UDim2.new(1,-20,0,80)
  516. listFrame.Position = UDim2.new(0,10,0,130)
  517. listFrame.CanvasSize = UDim2.new(0,0,0,0)
  518. listFrame.ScrollBarThickness = 6
  519. listFrame.BackgroundColor3 = Color3.fromRGB(40,40,40)
  520. listFrame.BorderSizePixel = 0
  521. Instance.new("UICorner", listFrame).CornerRadius = UDim.new(0,4)
  522. local layout = Instance.new("UIListLayout", listFrame)
  523. layout.Padding = UDim.new(0,4)
  524. layout.SortOrder = Enum.SortOrder.Name
  525.  
  526. local function updateItemList()
  527. for _, c in ipairs(listFrame:GetChildren()) do
  528. if c:IsA("TextLabel") then c:Destroy() end
  529. end
  530. local counts, total = {}, 0
  531. for _, obj in ipairs(workspace:GetChildren()) do
  532. if obj:IsA("Tool") and obj:FindFirstChild("Handle") then
  533. counts[obj.Name] = (counts[obj.Name] or 0) + 1
  534. total += 1
  535. end
  536. end
  537. local header = Instance.new("TextLabel", listFrame)
  538. header.Size = UDim2.new(1,0,0,18)
  539. header.Text = "Total: "..total
  540. header.Font = Enum.Font.SourceSansBold
  541. header.TextSize = 14
  542. header.TextColor3 = Color3.fromRGB(100,200,255)
  543. header.BackgroundTransparency = 1
  544. header.TextXAlignment = Enum.TextXAlignment.Left
  545.  
  546. for name, cnt in pairs(counts) do
  547. local lbl = Instance.new("TextLabel", listFrame)
  548. lbl.Size = UDim2.new(1,0,0,16)
  549. lbl.Text = name.." ×"..cnt
  550. lbl.Font = Enum.Font.SourceSans
  551. lbl.TextSize = 14
  552. lbl.TextColor3 = Color3.fromRGB(220,220,220)
  553. lbl.BackgroundTransparency = 1
  554. lbl.TextXAlignment = Enum.TextXAlignment.Left
  555. end
  556.  
  557. listFrame.CanvasSize = UDim2.new(0,0,0,#listFrame:GetChildren()*22)
  558. end
  559.  
  560. -- Wire up
  561. txt.FocusLost:Connect(function(enter)
  562. if enter then
  563. targetToolNames = parseToolNames(txt.Text)
  564. notify("Grabtools","Targets: "..((#targetToolNames>0 and table.concat(targetToolNames,", ")) or "all"))
  565. updateItemList()
  566. end
  567. end)
  568. btnUpd.MouseButton1Click:Connect(function()
  569. targetToolNames = parseToolNames(txt.Text)
  570. notify("Grabtools","Targets: "..((#targetToolNames>0 and table.concat(targetToolNames,", ")) or "all"))
  571. updateItemList()
  572. end)
  573. btnEn.MouseButton1Click:Connect(function()
  574. enableGrabtools()
  575. status.Text, status.TextColor3 = "Enabled", Color3.fromRGB(34,139,34)
  576. updateItemList()
  577. end)
  578. btnDi.MouseButton1Click:Connect(function()
  579. disableGrabtools()
  580. status.Text, status.TextColor3 = "Disabled", Color3.fromRGB(220,20,60)
  581. updateItemList()
  582. end)
  583. player.CharacterAdded:Connect(function()
  584. if grabtoolsEnabled then wait(1); equipTools() end
  585. updateItemList()
  586. end)
  587.  
  588. updateItemList()
  589. end
  590.  
  591. -- FUN TAB
  592. do
  593. local funTab = sections["Fun"]
  594. local y = 20
  595.  
  596. -- Kill the Carrier toggle
  597. local label1 = Instance.new("TextLabel", funTab)
  598. label1.Size = UDim2.new(0, 160, 0, 28)
  599. label1.Position = UDim2.new(0, 30, 0, y)
  600. label1.Text = "Kill the Carrier"
  601. label1.Font = Enum.Font.GothamBold
  602. label1.TextSize = 16
  603. label1.TextColor3 = Color3.new(1,1,1)
  604. label1.BackgroundTransparency = 1
  605. label1.TextXAlignment = Enum.TextXAlignment.Left
  606.  
  607. local toggle1 = Instance.new("TextButton", funTab)
  608. toggle1.Size = UDim2.new(0, 42, 0, 24)
  609. toggle1.Position = UDim2.new(0, 200, 0, y + 4)
  610. toggle1.Text = ""
  611. toggle1.Font = Enum.Font.GothamBold
  612. toggle1.TextSize = 14
  613. toggle1.TextColor3 = Color3.new(1,1,1)
  614. toggle1.BackgroundColor3 = Color3.fromRGB(200,225,255)
  615. toggle1.BorderSizePixel = 0
  616. Instance.new("UICorner", toggle1).CornerRadius = UDim.new(1,0)
  617.  
  618. local circ1 = Instance.new("Frame", toggle1)
  619. circ1.Size = UDim2.new(0,16,0,16)
  620. circ1.Position = UDim2.new(0,2,0,4)
  621. circ1.BackgroundColor3 = Color3.new(1,1,1)
  622. circ1.BorderSizePixel = 0
  623. Instance.new("UICorner", circ1).CornerRadius = UDim.new(1,0)
  624.  
  625. local killCarrierToggled = false
  626.  
  627. toggle1.MouseButton1Click:Connect(function()
  628. if not killCarrierToggled then
  629. killCarrierToggled = true
  630. toggle1.BackgroundColor3 = Color3.fromRGB(31,81,138)
  631. circ1:TweenPosition(UDim2.new(1,-18,0,4),"Out","Quad",0.2,true)
  632. local Player = game.Players.LocalPlayer
  633. local Old = Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") and Player.Character.HumanoidRootPart.CFrame
  634. local humanoid = Player.Character and Player.Character:FindFirstChildWhichIsA("Humanoid")
  635. if _G.replicatesignal then
  636. _G.replicatesignal(Player.Kill)
  637. elseif humanoid then
  638. humanoid:ChangeState(Enum.HumanoidStateType.Dead)
  639. else
  640. Player.Character:BreakJoints()
  641. end
  642. Player.CharacterAdded:Wait()
  643. for i = 1, 20 do
  644. game:GetService("RunService").Heartbeat:Wait()
  645. if Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then
  646. Player.Character.HumanoidRootPart.CFrame = Old
  647. end
  648. end
  649. notify("Fun", "Kill the Carrier action executed!")
  650. killCarrierToggled = false
  651. toggle1.BackgroundColor3 = Color3.fromRGB(200,225,255)
  652. circ1:TweenPosition(UDim2.new(0,2,0,4),"Out","Quad",0.2,true)
  653. end
  654. end)
  655.  
  656. y = y + 50
  657.  
  658. -- Instant Pickup toggle
  659. local label2 = Instance.new("TextLabel", funTab)
  660. label2.Size = UDim2.new(0, 160, 0, 28)
  661. label2.Position = UDim2.new(0, 30, 0, y)
  662. label2.Text = "Instant Pickup"
  663. label2.Font = Enum.Font.GothamBold
  664. label2.TextSize = 16
  665. label2.TextColor3 = Color3.new(1,1,1)
  666. label2.BackgroundTransparency = 1
  667. label2.TextXAlignment = Enum.TextXAlignment.Left
  668.  
  669. local toggle2 = Instance.new("TextButton", funTab)
  670. toggle2.Size = UDim2.new(0, 42, 0, 24)
  671. toggle2.Position = UDim2.new(0, 200, 0, y + 4)
  672. toggle2.Text = ""
  673. toggle2.Font = Enum.Font.GothamBold
  674. toggle2.TextSize = 14
  675. toggle2.TextColor3 = Color3.new(1,1,1)
  676. toggle2.BackgroundColor3 = Color3.fromRGB(200,225,255)
  677. toggle2.BorderSizePixel = 0
  678. Instance.new("UICorner", toggle2).CornerRadius = UDim.new(1,0)
  679.  
  680. local circ2 = Instance.new("Frame", toggle2)
  681. circ2.Size = UDim2.new(0,16,0,16)
  682. circ2.Position = UDim2.new(0,2,0,4)
  683. circ2.BackgroundColor3 = Color3.new(1,1,1)
  684. circ2.BorderSizePixel = 0
  685. Instance.new("UICorner", circ2).CornerRadius = UDim.new(1,0)
  686.  
  687. local instantPickupEnabled = false
  688. local function setInstantPickup(state)
  689. for _,v in ipairs(workspace:GetDescendants()) do
  690. if v:IsA("ProximityPrompt") then
  691. if state then
  692. v.HoldDuration = 0.01
  693. else
  694. v.HoldDuration = 0.5
  695. end
  696. end
  697. end
  698. end
  699.  
  700. toggle2.MouseButton1Click:Connect(function()
  701. instantPickupEnabled = not instantPickupEnabled
  702. if instantPickupEnabled then
  703. toggle2.BackgroundColor3 = Color3.fromRGB(31,81,138)
  704. circ2:TweenPosition(UDim2.new(1,-18,0,4),"Out","Quad",0.2,true)
  705. setInstantPickup(true)
  706. notify("Fun", "Instant Pickup enabled!")
  707. else
  708. toggle2.BackgroundColor3 = Color3.fromRGB(200,225,255)
  709. circ2:TweenPosition(UDim2.new(0,2,0,4),"Out","Quad",0.2,true)
  710. setInstantPickup(false)
  711. notify("Fun", "Instant Pickup disabled!")
  712. end
  713. end)
  714.  
  715. y = y + 50
  716.  
  717. -- Plant Sapling At Feet button
  718. local btnPlantFeet = Instance.new("TextButton", funTab)
  719. btnPlantFeet.Size = UDim2.new(0, 280, 0, 30)
  720. btnPlantFeet.Position = UDim2.new(0, 30, 0, y)
  721. btnPlantFeet.Text = "Plant Sapling At Feet (must have sapling in hand)"
  722. btnPlantFeet.Font = Enum.Font.GothamBold
  723. btnPlantFeet.TextSize = 15
  724. btnPlantFeet.TextColor3 = Color3.new(1,1,1)
  725. btnPlantFeet.BackgroundColor3 = Color3.fromRGB(80,150,60)
  726. btnPlantFeet.BorderSizePixel = 0
  727. Instance.new("UICorner", btnPlantFeet).CornerRadius = UDim.new(1,0)
  728.  
  729. btnPlantFeet.MouseButton1Click:Connect(function()
  730. local char = game.Players.LocalPlayer.Character
  731. if char and char:FindFirstChild("HumanoidRootPart") then
  732. local pos = char.HumanoidRootPart.Position
  733. local cframe = CFrame.new(pos.X, pos.Y - 3, pos.Z)
  734. local args = {
  735. [1] = "Sapling",
  736. [2] = cframe,
  737. [3] = cframe,
  738. }
  739. game:GetService("ReplicatedStorage"):WaitForChild("Deploy", 9e9):InvokeServer(unpack(args))
  740. notify("Fun", "Sapling planted at your feet!")
  741. else
  742. notify("Fun", "Character not found!")
  743. end
  744. end)
  745.  
  746. y = y + 50
  747.  
  748. -- Plant Sapling at Mouse toggle + set keybind
  749. local labelMouse = Instance.new("TextLabel", funTab)
  750. labelMouse.Size = UDim2.new(0, 170, 0, 28)
  751. labelMouse.Position = UDim2.new(0, 30, 0, y)
  752. labelMouse.Text = "Plant Sapling At Mouse"
  753. labelMouse.Font = Enum.Font.GothamBold
  754. labelMouse.TextSize = 16
  755. labelMouse.TextColor3 = Color3.new(1,1,1)
  756. labelMouse.BackgroundTransparency = 1
  757. labelMouse.TextXAlignment = Enum.TextXAlignment.Left
  758.  
  759. local toggleMouse = Instance.new("TextButton", funTab)
  760. toggleMouse.Size = UDim2.new(0, 42, 0, 24)
  761. toggleMouse.Position = UDim2.new(0, 210, 0, y + 4)
  762. toggleMouse.Text = ""
  763. toggleMouse.Font = Enum.Font.GothamBold
  764. toggleMouse.TextSize = 14
  765. toggleMouse.TextColor3 = Color3.new(1,1,1)
  766. toggleMouse.BackgroundColor3 = Color3.fromRGB(200,225,255)
  767. toggleMouse.BorderSizePixel = 0
  768. Instance.new("UICorner", toggleMouse).CornerRadius = UDim.new(1,0)
  769.  
  770. local circMouse = Instance.new("Frame", toggleMouse)
  771. circMouse.Size = UDim2.new(0,16,0,16)
  772. circMouse.Position = UDim2.new(0,2,0,4)
  773. circMouse.BackgroundColor3 = Color3.new(1,1,1)
  774. circMouse.BorderSizePixel = 0
  775. Instance.new("UICorner", circMouse).CornerRadius = UDim.new(1,0)
  776.  
  777. local plantAtMouseEnabled = false
  778. local plantCooldown = false
  779. local plantKey = Enum.KeyCode.V
  780.  
  781. local mouse = player:GetMouse()
  782.  
  783. UserInput.InputBegan:Connect(function(input, gameProcessed)
  784. if plantAtMouseEnabled and not gameProcessed and input.KeyCode == plantKey and not plantCooldown then
  785. plantCooldown = true
  786. if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
  787. local pos = mouse.Hit.Position
  788. local cframe = CFrame.new(pos.X, pos.Y - 3, pos.Z)
  789. local args = {
  790. [1] = "Sapling",
  791. [2] = cframe,
  792. [3] = cframe,
  793. }
  794. local success, err = pcall(function()
  795. game:GetService("ReplicatedStorage"):WaitForChild("Deploy", 9e9):InvokeServer(unpack(args))
  796. end)
  797. if success then
  798. notify("Fun", "Sapling planted at mouse!")
  799. else
  800. notify("Fun", "Failed to plant sapling!")
  801. end
  802. end
  803. wait(1)
  804. plantCooldown = false
  805. end
  806. end)
  807.  
  808. toggleMouse.MouseButton1Click:Connect(function()
  809. plantAtMouseEnabled = not plantAtMouseEnabled
  810. if plantAtMouseEnabled then
  811. toggleMouse.BackgroundColor3 = Color3.fromRGB(31,81,138)
  812. circMouse:TweenPosition(UDim2.new(1,-18,0,4),"Out","Quad",0.2,true)
  813. notify("Fun", "Plant Sapling at Mouse enabled!\nPress "..plantKey.Name.." to plant.")
  814. else
  815. toggleMouse.BackgroundColor3 = Color3.fromRGB(200,225,255)
  816. circMouse:TweenPosition(UDim2.new(0,2,0,4),"Out","Quad",0.2,true)
  817. notify("Fun", "Plant Sapling at Mouse disabled!")
  818. end
  819. end)
  820.  
  821. y = y + 50
  822.  
  823. local setKeyBtn = Instance.new("TextButton", funTab)
  824. setKeyBtn.Size = UDim2.new(0, 280, 0, 28)
  825. setKeyBtn.Position = UDim2.new(0, 30, 0, y)
  826. setKeyBtn.Text = "Set Keybind: "..plantKey.Name
  827. setKeyBtn.Font = Enum.Font.GothamBold
  828. setKeyBtn.TextSize = 15
  829. setKeyBtn.TextColor3 = Color3.new(1,1,1)
  830. setKeyBtn.BackgroundColor3 = Color3.fromRGB(31,81,138)
  831. setKeyBtn.BorderSizePixel = 0
  832. Instance.new("UICorner", setKeyBtn).CornerRadius = UDim.new(1,0)
  833.  
  834. setKeyBtn.MouseButton1Click:Connect(function()
  835. notify("Fun", "Press any key to set as Plant Sapling Keybind...")
  836. local conn
  837. conn = UserInput.InputBegan:Connect(function(input, gp)
  838. if not gp and input.UserInputType == Enum.UserInputType.Keyboard then
  839. plantKey = input.KeyCode
  840. setKeyBtn.Text = "Set Keybind: "..plantKey.Name
  841. notify("Fun", "Plant Sapling Keybind set to "..plantKey.Name)
  842. conn:Disconnect()
  843. end
  844. end)
  845. end)
  846. end
  847.  
  848. -- UI Settings tab can be empty or extended
  849.  
  850. -- ESP Rendering Loop
  851. local function getArmor(prot)
  852. if prot:IsA("IntValue") or prot:IsA("NumberValue") then return prot.Value end
  853. if prot:IsA("Folder") or prot:IsA("Model") then
  854. local a = prot:FindFirstChild("Armor")
  855. if a and a:IsA("IntValue") then return a.Value end
  856. for _,v in ipairs(prot:GetChildren()) do
  857. if v:IsA("IntValue") then return v.Value end
  858. end
  859. end
  860. return nil
  861. end
  862.  
  863. local function clearESP()
  864. for _, d in pairs(espObjects) do
  865. for _, o in pairs(d) do if o and o.Remove then o:Remove() end end
  866. end
  867. table.clear(espObjects)
  868. end
  869.  
  870. RunService.RenderStepped:Connect(function()
  871. clearESP()
  872. for _, pl in ipairs(Players:GetPlayers()) do
  873. if pl~=player and pl.Character then
  874. local char = pl.Character
  875. local hrp = char:FindFirstChild("HumanoidRootPart")
  876. local head = char:FindFirstChild("Head")
  877. local hum = char:FindFirstChildOfClass("Humanoid")
  878. if hrp and head and hum and hum.Health>0 then
  879. local pos,on = camera:WorldToViewportPoint(head.Position + Vector3.new(0,0.3,0))
  880. if not on then continue end
  881.  
  882. local hl = char:FindFirstChild("ESP_Highlight")
  883. if espSettings.Highlight then
  884. if not hl then
  885. hl = Instance.new("Highlight", char)
  886. hl.Name = "ESP_Highlight"
  887. hl.Adornee = char
  888. hl.FillTransparency = 0.5
  889. hl.OutlineColor = Color3.new(1,1,1)
  890. hl.OutlineTransparency = 0
  891. end
  892. hl.FillColor = (pl.Team and pl.Team.TeamColor.Color) or Color3.new(1,1,1)
  893. elseif hl then hl:Destroy() end
  894.  
  895. local dist = math.floor((hrp.Position - player.Character.HumanoidRootPart.Position).Magnitude)
  896. local hp = math.floor(hum.Health)
  897. local armor = "?"
  898. local vf = char:FindFirstChild("Values")
  899. if vf then
  900. local prot = vf:FindFirstChild("Protection")
  901. if prot then
  902. local a = getArmor(prot)
  903. if type(a)=="number" then armor = tostring(a) end
  904. end
  905. end
  906. local age = char:FindFirstChild("Age") and tostring(char.Age.Value) or "?"
  907. local teamName = pl.Team and pl.Team.Name or "None"
  908. local tool = char:FindFirstChildOfClass("Tool")
  909. local toolName = tool and tool.Name
  910.  
  911. local lines, L1, L2 = {}, {}, {}
  912. if espSettings.Name then table.insert(L1, pl.Name) end
  913. if espSettings.HP then table.insert(L1, hp.." HP") end
  914. if espSettings.Armor then table.insert(L1, armor.." Armor") end
  915. if espSettings.Distance then table.insert(L1, dist.." studs") end
  916. if #L1>0 then table.insert(lines, table.concat(L1," | ")) end
  917. if espSettings.Team then table.insert(L2, "Team: "..teamName) end
  918. if espSettings.Age then table.insert(L2, "Age: "..age) end
  919. if #L2>0 then table.insert(lines, table.concat(L2," | ")) end
  920. if espSettings.Holding and toolName then
  921. table.insert(lines, "Holding: "..toolName)
  922. end
  923.  
  924. local lineH, totalH = 18, #lines*18
  925. local startY = pos.Y - totalH/2
  926. local drawn = {}
  927. for i, txt in ipairs(lines) do
  928. local d = Drawing.new("Text")
  929. d.Text, d.Size, d.Center, d.Font = txt, 16, true, 2
  930. d.Color = (pl.Team and pl.Team.TeamColor.Color) or Color3.new(1,1,1)
  931. d.Outline = true; d.OutlineColor = Color3.new(0,0,0)
  932. d.Position = Vector2.new(pos.X, startY + (i-1)*lineH)
  933. d.Visible = true
  934. table.insert(drawn, d)
  935. end
  936. espObjects[pl] = drawn
  937. end
  938. end
  939. end
  940. end)
  941.  
  942. -- END OF FULL GUI
  943.  
  944. else
  945. wrongLabel.Text = "Incorrect key."
  946. wait(1.5)
  947. wrongLabel.Text = ""
  948. end
  949. end)
  950.  
  951. inputBox.FocusLost:Connect(function(enter)
  952. if enter then unlockBtn:MouseButton1Click() end
  953. end)
  954.  
Advertisement
Add Comment
Please, Sign In to add comment