Advertisement
LeviTheOtaku

Skyblox Gui

May 16th, 2020
127,424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 59.13 KB | None | 0 0
  1. local version = "1.2.0"
  2.  
  3. local player = game:GetService("Players").LocalPlayer
  4. local character = player.Character or player.CharacterAdded:wait()
  5.  
  6. spawn(function() -- anti afk
  7. local vu = game:GetService("VirtualUser")
  8. game:GetService("Players").LocalPlayer.Idled:connect(function()
  9. vu:Button2Down(Vector2.new(0,0),workspace.CurrentCamera.CFrame)
  10. wait(math.random(0.3,1.1))
  11. vu:Button2Up(Vector2.new(0,0),workspace.CurrentCamera.CFrame)
  12. end)
  13. end)
  14.  
  15. local library = {flags = {}, callbacks = {}, rainbowI = 0};
  16.  
  17. local GetService = game.GetService;
  18. local Players = GetService(game, "Players");
  19. local RunService = GetService(game, "RunService");
  20. local CoreGui = GetService(game, "CoreGui");
  21. local TweenService = GetService(game, "TweenService");
  22. local UserInputService = GetService(game, "UserInputService");
  23.  
  24. local LocalPlayer = Players.LocalPlayer;
  25.  
  26. do -- library funcs
  27. coroutine.wrap(function()
  28. while true do
  29. for i = 0, 359 do
  30. library.rainbowI = i / 359;
  31. library.rainbowVal = Color3.fromHSV(i / 359, 1, 1);
  32. wait();
  33. end;
  34. end;
  35. end)();
  36.  
  37. function library:Create(class, data)
  38. local obj = Instance.new(class);
  39. for i, v in next, data do
  40. if i ~= 'Parent' then
  41. if typeof(v) == "Instance" then
  42. v.Parent = obj;
  43. else
  44. obj[i] = v
  45. end
  46. end
  47. end
  48.  
  49. obj.Parent = data.Parent;
  50. return obj;
  51. end;
  52.  
  53. function library:Dragger(main, second)
  54. local dragging;
  55. local dragInput;
  56. local dragStart;
  57. local startPos;
  58.  
  59. local function update(input)
  60. local delta = input.Position - dragStart;
  61. second:TweenPosition(UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y),'Out','Sine',0.01,true);
  62. end;
  63.  
  64. main.InputBegan:Connect(function(input)
  65. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  66. dragging = true;
  67. dragStart = input.Position;
  68. startPos = second.Position;
  69.  
  70. repeat wait() until input.UserInputState == Enum.UserInputState.End;
  71. dragging = false;
  72. end;
  73. end);
  74.  
  75. main.InputChanged:Connect(function(input)
  76. if input.UserInputType == Enum.UserInputType.MouseMovement then
  77. dragInput = input;
  78. end;
  79. end);
  80.  
  81. game:GetService("UserInputService").InputChanged:Connect(function(input)
  82. if input == dragInput and dragging then
  83. update(input);
  84. end;
  85. end);
  86. end;
  87.  
  88. function library:Tween(instance, properties, callback)
  89. local callback = callback or function() end;
  90. local time = properties.time;
  91. properties.time = nil;
  92. local anim = TweenService:Create(instance, TweenInfo.new(time), properties);
  93.  
  94. anim.Completed:Connect(callback);
  95. anim:Play();
  96. return anim;
  97. end;
  98.  
  99. local ui_Settings = {
  100. mainColor = Color3.fromRGB(36, 36, 36);
  101. bottomColor = Color3.fromRGB(34, 34, 34);
  102. borderColor = Color3.fromRGB(42, 42, 42);
  103. scrollingBarColor = Color3.fromRGB(255, 100, 0);
  104. toggleColor = Color3.fromRGB(34, 34, 34);
  105. toggleBorderColor = Color3.fromRGB(255, 100, 0);
  106. boxColor = Color3.fromRGB(32, 32, 32);
  107. boxBorderColor = Color3.fromRGB(255, 100, 0);
  108. gradientColorSection = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 100, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 40, 0))};
  109. gradientColor = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 100, 0)), ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 40, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0))};
  110. shadowGradientColor = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(20, 20, 20)), ColorSequenceKeypoint.new(1, Color3.fromRGB(36, 36, 36))};
  111. };
  112.  
  113. UserInputService.InputBegan:Connect(function(input)
  114. for i, v in next, library.flags do
  115. if(v == input.KeyCode) then
  116. library.callbacks[i]();
  117. elseif(v == input.UserInputType) then
  118. library.callbacks[i]();
  119. end;
  120. end;
  121. end);
  122.  
  123. local gui = Instance.new("ScreenGui", CoreGui);
  124. gui.Enabled = false;
  125. library.gui = gui;
  126.  
  127. local main = library:Create("Frame", {
  128. Name = "main";
  129. Parent = gui;
  130. Position = UDim2.new(0.5, -200, 0.5, -135);
  131. BorderSizePixel = 0;
  132. BackgroundColor3 = ui_Settings.mainColor; -- main color
  133. Size = UDim2.new(0, 400,0, 270);
  134. library:Create("Frame", {
  135. Name = "border";
  136. BackgroundColor3 = ui_Settings.bottomColor;
  137. BorderColor3 = ui_Settings.borderColor;
  138. BorderSizePixel = 1;
  139. Position = UDim2.new(0, 5, 0, 48);
  140. Size = UDim2.new(0, 390, 0, 216);
  141. library:Create("Frame", {
  142. Name = "shadow";
  143. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  144. BackgroundTransparency = 0.100;
  145. BorderSizePixel = 0;
  146. Position = UDim2.new(0, 0, 1, -8);
  147. Size = UDim2.new(1, 0, 0, 8);
  148. library:Create("UIGradient", {
  149. Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(20, 20, 20)), ColorSequenceKeypoint.new(1, Color3.fromRGB(36, 36, 36))};
  150. Rotation = 270;
  151. Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0.00, 0.00), NumberSequenceKeypoint.new(1.00, 1.00)};
  152. });
  153. });
  154. library:Create("Frame", {
  155. Name = "shadow";
  156. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  157. BackgroundTransparency = 0.100;
  158. BorderSizePixel = 0;
  159. Size = UDim2.new(1, 0, 0, 8);
  160. library:Create("UIGradient", {
  161. Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(20, 20, 20)), ColorSequenceKeypoint.new(1, Color3.fromRGB(36, 36, 36))};
  162. Rotation = 90;
  163. Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0.00, 0.00), NumberSequenceKeypoint.new(1.00, 1.00)};
  164. });
  165. });
  166. });
  167. library:Create("Frame", {
  168. Name = "bar";
  169. BorderSizePixel = 0;
  170. BackgroundColor3 = Color3.fromRGB(255, 255, 255); -- bar color
  171. Size = UDim2.new(1, 0,0, 4);
  172. Position = UDim2.new(0, 0, 0, 0);
  173. library:Create("UIGradient", {
  174. Color = ui_Settings.gradientColor;
  175. });
  176. library:Create("Frame", {
  177. Name = "bottom";
  178. BorderSizePixel = 0;
  179. BackgroundColor3 = ui_Settings.bottomColor;
  180. Position = UDim2.new(0, 0, 0, 4);
  181. Size = UDim2.new(1, 0, 0, 34);
  182. library:Create("Frame", {
  183. BackgroundTransparency = 0.1;
  184. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  185. BorderSizePixel = 0;
  186. Name = "shadow";
  187. Position = UDim2.new(0, 0, 1, 0);
  188. });
  189. library:Create("TextLabel", {
  190. Name = "Title";
  191. BackgroundTransparency = 1;
  192. Position = UDim2.new(0, 10, 0.5, -10);
  193. Size = UDim2.new(0, 70, 0, 24);
  194. TextColor3 = Color3.fromRGB(255, 255, 255);
  195. Text = "Skyblox";
  196. Font = "GothamSemibold";
  197. TextSize = 14;
  198. library:Create("UIGradient", {
  199. Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 100, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0))}
  200. });
  201. });
  202. library:Create("Frame", {
  203. Name = "topcontainer";
  204. BackgroundTransparency = 1;
  205. BorderSizePixel = 0;
  206. Position = UDim2.new(0, 88, 0, 9);
  207. Size = UDim2.new(1, -90, 0.73, 0);
  208. library:Create("UIListLayout", {
  209. Padding = UDim.new(0, 2);
  210. FillDirection = "Horizontal";
  211. HorizontalAlignment = "Left";
  212. SortOrder = "LayoutOrder";
  213. VerticalAlignment = "Top";
  214. });
  215. });
  216. });
  217. });
  218. });
  219.  
  220. function library:ToggleVisibility()
  221. if main.Visible == true then
  222. main.Visible = false
  223. else
  224. main.Visible = true
  225. end
  226. end
  227.  
  228. local modal = Instance.new("TextButton", main);
  229. modal.Modal = true;
  230. modal.BackgroundTransparency = 1;
  231. modal.Text = "";
  232.  
  233. library:Dragger(main.bar.bottom, main);
  234. function library:Ready()
  235. gui.Enabled = true;
  236. end;
  237.  
  238. function library:CreateSection(name)
  239. local topContainer = gui.main.bar.bottom.topcontainer;
  240.  
  241. local sectionSelector = library:Create("ImageButton", {
  242. Parent = topContainer;
  243. BackgroundTransparency = 1;
  244. Size = UDim2.new(0, 60, 1, 0);
  245. Image = "rbxassetid://4641155773";
  246. ImageColor3 = Color3.fromRGB(255, 255, 255);
  247. ScaleType = "Slice";
  248. SliceCenter = Rect.new(4, 4, 296, 296);
  249. SliceScale = 1;
  250. Name = "back";
  251. library:Create("UIGradient", {
  252. Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 100, 0)), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0 ,0))}
  253. });
  254. library:Create("TextLabel", {
  255. BackgroundTransparency = 1;
  256. Text = name;
  257. Size = UDim2.new(1, 0, 1, 0);
  258. TextColor3 = Color3.fromRGB(255, 255, 255);
  259. });
  260. });
  261.  
  262. local boxContainer = library:Create("ScrollingFrame", {
  263. Name = "box";
  264. BorderSizePixel = 0;
  265. BackgroundColor3 = Color3.fromRGB(34, 34, 34);
  266. Parent = main.border;
  267. Position = UDim2.new(0, 1, 0, 1);
  268. Size = UDim2.new(1, -2, 1, -2);
  269. BottomImage = "rbxasset://textures/ui/Scroll/scroll-middle.png";
  270. TopImage = "rbxasset://textures/ui/Scroll/scroll-middle.png";
  271. ScrollBarThickness = 4;
  272. CanvasSize = UDim2.new(0, 0, 0, 0);
  273. library:Create("UIPadding", {
  274. PaddingTop = UDim.new(0, 2);
  275. PaddingLeft = UDim.new(0, 2);
  276. });
  277. library:Create("UIListLayout", {
  278. Padding = UDim.new(0, 5);
  279. FillDirection = "Vertical";
  280. HorizontalAlignment = "Left";
  281. VerticalAlignment = "Top";
  282. });
  283. });
  284.  
  285. local section = {};
  286.  
  287. boxContainer.ChildAdded:Connect(function(Obj)
  288. section:Update();
  289. end);
  290.  
  291. if(not library.currentSection) then
  292. library.currentSectionSelector = sectionSelector;
  293. library.currentSection = boxContainer;
  294. library.currentSectionObject = section;
  295.  
  296. library.currentSectionSelector.ImageColor3 = Color3.fromRGB(200, 200, 200);
  297. boxContainer.Visible = true;
  298. else
  299. boxContainer.Visible = false;
  300. end;
  301.  
  302. sectionSelector.MouseButton1Click:Connect(function()
  303. if(library.currentSection) then
  304. library.currentSectionSelector.ImageColor3 = Color3.fromRGB(255, 255, 255);
  305. library.currentSection.Visible = false;
  306. end;
  307.  
  308. sectionSelector.ImageColor3 = Color3.fromRGB(200, 200, 200);
  309. boxContainer.Visible = true;
  310. library.currentSectionSelector = sectionSelector;
  311. library.currentSection = boxContainer;
  312. end);
  313.  
  314. function section:Update()
  315. local CanvasSize = UDim2.new(0, 0, 0, 85)
  316. for i,v in next, boxContainer:GetChildren() do
  317. if(not v:IsA("UIListLayout") and not v:IsA("UIPadding") and v.Visible) then
  318. CanvasSize = CanvasSize + UDim2.new(0, 0, 0, v.AbsoluteSize.Y + 5);
  319. end;
  320. end;
  321.  
  322. library:Tween(boxContainer, {time = 0.1, CanvasSize = CanvasSize});
  323. end;
  324.  
  325. function section:Label(labelName)
  326. local holder = library:Create("Frame", {
  327. Name = "holder";
  328. Parent = boxContainer;
  329. BackgroundColor3 = Color3.fromRGB(25, 25, 25);
  330. BorderSizePixel = 0;
  331. Position = UDim2.new(0, 0, 0, 350);
  332. Size = UDim2.new(1, 0, 0, 18);
  333. library:Create("TextLabel", {
  334. Name = "label";
  335. BackgroundTransparency = 1.000;
  336. Size = UDim2.new(1, 0, 1, 0);
  337. Font = "Gotham";
  338. Text = labelName;
  339. TextColor3 = Color3.fromRGB(255, 255, 255);
  340. TextSize = 12.000;
  341. });
  342. });
  343. end;
  344.  
  345. function section:Toggle(toggleName, callback)
  346. local callback = callback or function() end;
  347. local toggle = false;
  348.  
  349. library.flags[toggleName] = toggle;
  350.  
  351. local holder = library:Create("Frame", {
  352. BackgroundTransparency = 1;
  353. Parent = boxContainer;
  354. Size = UDim2.new(1, -20, 0, 18);
  355. Name = "holder";
  356. library:Create("TextLabel", {
  357. Name = "label";
  358. BackgroundTransparency = 1;
  359. TextColor3 = Color3.fromRGB(255, 255, 255);
  360. Position = UDim2.new(0, 22, 0, 0);
  361. Size = UDim2.new(1, -22, 1, 0);
  362. Font = "Gotham";
  363. TextXAlignment = "Left";
  364. TextSize = 12;
  365. Text = toggleName;
  366. });
  367. library:Create("TextButton", {
  368. Name = "toggle";
  369. AutoButtonColor = false;
  370. BackgroundColor3 = ui_Settings.toggleColor;
  371. BorderColor3 = ui_Settings.toggleBorderColor;
  372. BorderSizePixel = 1;
  373. Size = UDim2.new(0, 16, 0, 16);
  374. Text = "";
  375. library:Create("Frame", {
  376. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  377. Size = toggle and UDim2.new(1, 0, 1, 0) or UDim2.new(0, 0, 0, 0);
  378. Name = "fill";
  379. BorderSizePixel = 0;
  380. library:Create("UIGradient", {
  381. Color = ui_Settings.gradientColorSection;
  382. Rotation = 45;
  383. });
  384. });
  385. library:Create("UIListLayout", {
  386. FillDirection = "Vertical";
  387. HorizontalAlignment = "Center";
  388. VerticalAlignment = "Center";
  389. });
  390. library:Create("UIPadding", {
  391. PaddingBottom = UDim.new(0, 1);
  392. PaddingTop = UDim.new(0, 1);
  393. PaddingLeft = UDim.new(0, 1);
  394. PaddingRight = UDim.new(0, 1);
  395. });
  396. });
  397. });
  398.  
  399. local function onClick()
  400. toggle = not toggle;
  401. library:Tween(holder.toggle.fill, {time = 0.1, Size = toggle and UDim2.new(1, 0, 1, 0) or UDim2.new(0, 0, 0, 0)});
  402. library.flags[toggleName] = toggle;
  403. callback(toggle);
  404. end;
  405.  
  406. holder.toggle.MouseButton1Click:Connect(onClick);
  407. return holder;
  408. end;
  409.  
  410. function section:Box(boxName, callback)
  411. local holder = library:Create("Frame", {
  412. Size = UDim2.new(1, -20, 0, 18);
  413. BackgroundTransparency = 1;
  414. Name = "holder";
  415. Parent = boxContainer;
  416. library:Create("TextLabel", {
  417. BackgroundTransparency = 1;
  418. Name = "label";
  419. TextColor3 = Color3.fromRGB(255, 255, 255);
  420. Text = boxName;
  421. TextSize = 12;
  422. Font = "Gotham";
  423. Size = UDim2.new(1, 0, 1, 0);
  424. TextXAlignment = "Left";
  425. });
  426. library:Create("TextBox", {
  427. BackgroundColor3 = Color3.fromRGB(32, 32, 32);
  428. BorderColor3 = ui_Settings.boxBorderColor;
  429. BorderSizePixel = 1;
  430. Name = "textbox";
  431. TextSize = 14;
  432. Position = UDim2.new(1, -160, 0, 0);
  433. Size = UDim2.new(0, 160, 1, 0);
  434. PlaceholderColor3 = Color3.fromRGB(200, 200, 200);
  435. PlaceholderText = "Value";
  436. Text = "";
  437. TextColor3 = Color3.fromRGB(255, 255, 255);
  438. Font = "SourceSans";
  439. });
  440. });
  441.  
  442. holder.textbox.FocusLost:Connect(function(Enter)
  443. if(Enter) then
  444. library.flags[boxName] = holder.textbox.Text;
  445. callback(holder.textbox.Text);
  446. end;
  447. end);
  448. end;
  449.  
  450. function section:Slider(sliderName, properties, callback)
  451. local callback = callback or function() end;
  452. library.flags[sliderName] = properties.min;
  453.  
  454. local holder = library:Create("Frame", {
  455. Size = UDim2.new(1, -20, 0, 36);
  456. BackgroundTransparency = 1;
  457. Name = "holder";
  458. Parent = boxContainer;
  459. library:Create("TextLabel", {
  460. Name = "label";
  461. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  462. BackgroundTransparency = 1.000;
  463. Size = UDim2.new(1, 0, 0, 17);
  464. Font = "Gotham";
  465. Text = sliderName;
  466. TextColor3 = Color3.fromRGB(255, 255, 255);
  467. TextSize = 12.000;
  468. TextXAlignment = "Left";
  469. });
  470. library:Create("TextButton", {
  471. Name = "slider";
  472. BackgroundColor3 = Color3.fromRGB(34, 34, 34);
  473. BorderColor3 = Color3.fromRGB(255, 100, 0 );
  474. Position = UDim2.new(0, 0, 1, -19);
  475. Size = UDim2.new(1, 0, 0, 16);
  476. AutoButtonColor = false;
  477. Font = "SourceSans";
  478. Text = "";
  479. TextColor3 = Color3.fromRGB(0, 0, 0);
  480. TextSize = 14.000;
  481. library:Create("TextLabel", {
  482. Name = "value";
  483. BackgroundTransparency = 1;
  484. Size = UDim2.new(1, 0, 1, 0);
  485. Font = "SourceSans";
  486. Text = properties.default and tostring(properties.default) or tostring(properties.min);
  487. TextColor3 = Color3.fromRGB(255, 255, 255);
  488. TextSize = 14.000;
  489. ZIndex = 2;
  490. });
  491. library:Create("Frame", {
  492. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  493. Position = UDim2.new(0, 1, 0, 1);
  494. Name = "fill";
  495. Size = UDim2.new(0, 0, 1, -2);
  496. BorderSizePixel = 0;
  497. library:Create("UIGradient", {
  498. Color = ui_Settings.gradientColorSection;
  499. Rotation = 90;
  500. });
  501. });
  502. });
  503. });
  504.  
  505. local Connection;
  506. UserInputService.InputEnded:Connect(function(input)
  507. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  508. if(Connection) then
  509. Connection:Disconnect();
  510. Connection = nil;
  511. end;
  512. end;
  513. end);
  514.  
  515. holder.slider.MouseButton1Down:Connect(function()
  516. if(Connection) then
  517. Connection:Disconnect();
  518. end;
  519.  
  520. Connection = RunService.Heartbeat:Connect(function()
  521. local mouse = UserInputService:GetMouseLocation();
  522. local percent = math.clamp((mouse.X - holder.slider.AbsolutePosition.X) / (holder.slider.AbsoluteSize.X), 0, 1);
  523. local Value = properties.min + (properties.max - properties.min) * percent;
  524.  
  525. if not properties.precise then
  526. Value = math.floor(Value);
  527. end;
  528.  
  529. Value = tonumber(string.format("%.2f", Value));
  530.  
  531. library:Tween(holder.slider.fill, {time = 0.1, Size = UDim2.new(percent, 0, 1, -2)})
  532. holder.slider.value.Text = tostring(Value);
  533. library.flags[sliderName] = Value;
  534.  
  535. callback(Value);
  536. end);
  537. end);
  538. end;
  539.  
  540. function section:Bind(bindName, defaultKey, callback)
  541. local callback = callback or function() end;
  542. local input = defaultKey and tostring(defaultKey):gsub("Enum.", ""):gsub("UserInputType.", ""):gsub("KeyCode.", "") or "None";
  543. library.callbacks[bindName] = callback;
  544. library.flags[bindName] = defaultKey;
  545.  
  546. local holder = library:Create("Frame", {
  547. Name = "holder";
  548. Parent = boxContainer;
  549. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  550. BackgroundTransparency = 1.000;
  551. LayoutOrder = 2;
  552. Position = UDim2.new(0, 10, 0, 76);
  553. Size = UDim2.new(1, -20, 0, 18);
  554. library:Create("TextLabel", {
  555. Name = "label";
  556. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  557. BackgroundTransparency = 1.000;
  558. Size = UDim2.new(1, 0, 1, 0);
  559. Font = "Gotham";
  560. Text = bindName;
  561. TextColor3 = Color3.fromRGB(255, 255, 255);
  562. TextSize = 12.000;
  563. TextXAlignment = "Left";
  564. });
  565. library:Create("TextButton", {
  566. Name = "keybind";
  567. BackgroundColor3 = Color3.fromRGB(34, 34, 34);
  568. BorderColor3 = Color3.fromRGB(255, 100, 0);
  569. ClipsDescendants = true;
  570. Position = UDim2.new(1, -80, 0, 0);
  571. Size = UDim2.new(0, 80, 1, 0);
  572. AutoButtonColor = false;
  573. Font = Enum.Font.SourceSans;
  574. Text = input;
  575. TextColor3 = Color3.fromRGB(255, 255, 255);
  576. TextSize = 14.000;
  577. });
  578. });
  579.  
  580. local whitelistedType = {
  581. [Enum.KeyCode.LeftShift] = "L-Shift",
  582. [Enum.KeyCode.RightShift] = "R-Shift",
  583. [Enum.KeyCode.LeftControl] = "L-Ctrl",
  584. [Enum.KeyCode.RightControl] = "R-Ctrl",
  585. [Enum.KeyCode.LeftAlt] = "L-Alt",
  586. [Enum.KeyCode.RightAlt] = "R-Alt",
  587. [Enum.KeyCode.CapsLock] = "CAPS",
  588. [Enum.KeyCode.One] = "1",
  589. [Enum.KeyCode.Two] = "2",
  590. [Enum.KeyCode.Three] = "3",
  591. [Enum.KeyCode.Four] = "4",
  592. [Enum.KeyCode.Five] = "5",
  593. [Enum.KeyCode.Six] = "6",
  594. [Enum.KeyCode.Seven] = "7",
  595. [Enum.KeyCode.Eight] = "8",
  596. [Enum.KeyCode.Nine] = "9",
  597. [Enum.KeyCode.Zero] = "0",
  598. [Enum.KeyCode.KeypadOne] = "Num-1",
  599. [Enum.KeyCode.KeypadTwo] = "Num-2",
  600. [Enum.KeyCode.KeypadThree] = "Num-3",
  601. [Enum.KeyCode.KeypadFour] = "Num-4",
  602. [Enum.KeyCode.KeypadFive] = "Num-5",
  603. [Enum.KeyCode.KeypadSix] = "Num-6",
  604. [Enum.KeyCode.KeypadSeven] = "Num-7",
  605. [Enum.KeyCode.KeypadEight] = "Num-8",
  606. [Enum.KeyCode.KeypadNine] = "Num-9",
  607. [Enum.KeyCode.KeypadZero] = "Num-0",
  608. [Enum.KeyCode.Minus] = "-",
  609. [Enum.KeyCode.Equals] = "=",
  610. [Enum.KeyCode.Tilde] = "~",
  611. [Enum.KeyCode.LeftBracket] = "[",
  612. [Enum.KeyCode.RightBracket] = "]",
  613. [Enum.KeyCode.RightParenthesis] = ")",
  614. [Enum.KeyCode.LeftParenthesis] = "(",
  615. [Enum.KeyCode.Semicolon] = ";",
  616. [Enum.KeyCode.Quote] = "'",
  617. [Enum.KeyCode.BackSlash] = "\\",
  618. [Enum.KeyCode.Comma] = ",",
  619. [Enum.KeyCode.Period] = ".",
  620. [Enum.KeyCode.Slash] = "/",
  621. [Enum.KeyCode.Asterisk] = "*",
  622. [Enum.KeyCode.Plus] = "+",
  623. [Enum.KeyCode.Period] = ".",
  624. [Enum.KeyCode.Backquote] = "`",
  625. [Enum.UserInputType.MouseButton1] = "Button-1",
  626. [Enum.UserInputType.MouseButton2] = "Button-2",
  627. [Enum.UserInputType.MouseButton3] = "Button-3",
  628. };
  629.  
  630. holder.keybind.MouseButton1Click:Connect(function()
  631. holder.keybind.Text = ". . .";
  632. local connection;
  633. connection = UserInputService.InputBegan:Connect(function(input)
  634. connection:Disconnect();
  635. wait();
  636.  
  637. local KeyCodeName = whitelistedType[input.KeyCode] or whitelistedType[input.UserInputType];
  638.  
  639. holder.keybind.Text = KeyCodeName or tostring(input.KeyCode):gsub("Enum.KeyCode.", "");
  640. if(input.UserInputType == Enum.UserInputType.Keyboard) then
  641. library.flags[bindName] = input.KeyCode;
  642. else
  643. library.flags[bindName] = input.UserInputType;
  644. end;
  645. end);
  646. end);
  647. end;
  648.  
  649. function section:Button(buttonName, callback)
  650. local callback = callback or function() end;
  651. local holder = library:Create("Frame", {
  652. Name = "holder";
  653. Parent = boxContainer;
  654. BackgroundTransparency = 1.000;
  655. Position = UDim2.new(0, 10, 0, 148);
  656. Size = UDim2.new(1, -20, 0, 18);
  657. library:Create("TextButton", {
  658. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  659. Size = UDim2.new(1, 0, 1, 0);
  660. BorderSizePixel = 0;
  661. TextColor3 = Color3.fromRGB(255, 255, 255);
  662. Text = "";
  663. Name = "button";
  664. AutoButtonColor = false;
  665. library:Create("TextLabel", {
  666. Name = "label";
  667. BackgroundTransparency = 1;
  668. Size = UDim2.new(1, 0, 1, 0);
  669. Font = "SourceSans";
  670. TextSize = 14;
  671. TextColor3 = Color3.fromRGB(255, 255, 255);
  672. Text = buttonName;
  673. });
  674. library:Create("UIGradient", {
  675. Rotation = 90;
  676. Color = ui_Settings.gradientColorSection;
  677. });
  678. });
  679. });
  680.  
  681. holder.button.MouseButton1Click:Connect(callback);
  682. end;
  683.  
  684. function section:Dropdown(name, list, callback)
  685. local callback = callback or function() end;
  686. local toggle = false;
  687.  
  688. local holder = library:Create("Frame", {
  689. Name = "holder";
  690. BackgroundTransparency = 1.000;
  691. LayoutOrder = 3;
  692. Position = UDim2.new(0, 10, 0, 98);
  693. Size = UDim2.new(1, -20, 0, 36);
  694. Parent = boxContainer;
  695. library:Create("TextLabel", {
  696. Name = "label";
  697. BackgroundTransparency = 1.000;
  698. Size = UDim2.new(1, 0, 0, 18);
  699. Font = Enum.Font.Gotham;
  700. Text = name;
  701. TextColor3 = Color3.fromRGB(255, 255, 255);
  702. TextSize = 12.000;
  703. TextXAlignment = Enum.TextXAlignment.Left;
  704. });
  705. library:Create("TextButton", {
  706. Name = "dropdown";
  707. BackgroundColor3 = Color3.fromRGB(255, 100, 0);
  708. BorderColor3 = Color3.fromRGB(255, 100, 0);
  709. Size = UDim2.new(1, 0, 0, 18);
  710. AutoButtonColor = false;
  711. Font = "SourceSans";
  712. Text = "";
  713. TextColor3 = Color3.fromRGB(0, 0, 0);
  714. TextSize = 14.000;
  715. Position = UDim2.new(0, 0, 0, 18);
  716. library:Create("ImageLabel", {
  717. Name = "icon";
  718. BackgroundTransparency = 1.000;
  719. Position = UDim2.new(1, -18, 0, 0);
  720. Size = UDim2.new(0, 18, 0, 16);
  721. Image = "http://www.roblox.com/asset/?id=4641587888";
  722. ZIndex = 2;
  723. });
  724. library:Create("TextLabel", {
  725. Name = "label";
  726. BackgroundTransparency = 1.000;
  727. Position = UDim2.new(0, 4, 0, 0);
  728. Size = UDim2.new(1, -4, 0, 18);
  729. Font = Enum.Font.Gotham;
  730. Text = "Drop value";
  731. TextColor3 = Color3.fromRGB(255, 255, 255);
  732. TextSize = 12.000;
  733. TextXAlignment = Enum.TextXAlignment.Left;
  734. ZIndex = 2;
  735. });
  736. library:Create("Frame", {
  737. Name = "dropframe";
  738. BackgroundColor3 = Color3.fromRGB(32, 32, 32);
  739. BorderColor3 = Color3.fromRGB(255, 100, 0);
  740. BorderSizePixel = 0;
  741. ClipsDescendants = true;
  742. Position = UDim2.new(0, -1, 1, 1);
  743. Size = UDim2.new(1, 2, 0, 0);
  744. library:Create("UIListLayout", {
  745. SortOrder = "LayoutOrder";
  746. Padding = UDim.new(0, 2);
  747. });
  748. });
  749. library:Create("Frame", {
  750. Name = "fill";
  751. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  752. BorderSizePixel = 0;
  753. Position = UDim2.new(0, 1, 0, 1);
  754. Size = UDim2.new(1, 0, 1, 0);
  755. library:Create("UIGradient", {
  756. Rotation = 90;
  757. Color = ui_Settings.gradientColorSection;
  758. });
  759. });
  760. });
  761. });
  762.  
  763. for i, v in next, list do
  764. local button = library:Create("TextButton", {
  765. Name = "button";
  766. Text = v;
  767. Parent = holder.dropdown.dropframe;
  768. BackgroundColor3 = Color3.fromRGB(32, 32, 32);
  769. BorderColor3 = Color3.fromRGB(255, 255, 255);
  770. BorderSizePixel = 0;
  771. Size = UDim2.new(1, 0, 0, 16);
  772. Font = "SourceSans";
  773. TextColor3 = Color3.fromRGB(255, 255, 255);
  774. TextSize = 14.000;
  775. ZIndex = 1;
  776. });
  777.  
  778. button.MouseButton1Click:Connect(function()
  779. toggle = false;
  780. holder.dropdown.label.Text = v;
  781. library:Tween(holder.dropdown.icon, {time = 0.1, Rotation = 180});
  782. library:Tween(holder, {time = 0.1, Size = UDim2.new(1, -20, 0, 35)});
  783. library:Tween(holder.dropdown.dropframe, {time = 0.1, Size = UDim2.new(1, 2, 0, 0)}, self.Update);
  784. callback(button.Text);
  785. end);
  786. end;
  787.  
  788. holder.dropdown.MouseButton1Click:Connect(function()
  789. toggle = not toggle;
  790. local TotalY = 0;
  791. for i, v in next, holder.dropdown.dropframe:GetChildren() do
  792. if(v:IsA("TextButton")) then
  793. TotalY = TotalY + v.AbsoluteSize.Y + 2;
  794. end;
  795. end;
  796.  
  797. if(toggle) then
  798. library:Tween(holder.dropdown.icon, {time = 0.1, Rotation = 0});
  799. library:Tween(holder, {time = 0.1, Size = UDim2.new(1, -20, 0, TotalY + 50)});
  800. library:Tween(holder.dropdown.dropframe, {time = 0.1, Size = UDim2.new(1, 2, 0, TotalY)}, self.Update);
  801. else
  802. library:Tween(holder.dropdown.icon, {time = 0.1, Rotation = 180});
  803. library:Tween(holder, {time = 0.1, Size = UDim2.new(1, -20, 0, 36)});
  804. library:Tween(holder.dropdown.dropframe, {time = 0.1, Size = UDim2.new(1, 2, 0, 0)}, self.Update);
  805. end;
  806. end);
  807. end;
  808.  
  809. function section:ColorPicker(pickerName, defaultColor, callback)
  810. local callback = callback or function() end;
  811. local defaultColor = defaultColor or Color3.fromRGB(255, 100, 0);
  812. local rainbowToggle = false;
  813. local Mouse = Players.LocalPlayer:GetMouse();
  814.  
  815. local holder = library:Create("Frame", {
  816. Name = "holder";
  817. Parent = boxContainer;
  818. BackgroundTransparency = 1.000;
  819. Position = UDim2.new(0, 10, 0, 172);
  820. Size = UDim2.new(1, -20, 0, 18);
  821. library:Create("TextLabel", {
  822. Name = "label";
  823. BackgroundTransparency = 1.000;
  824. Size = UDim2.new(1, 0, 1, 0);
  825. Font = "Gotham";
  826. Text = pickerName;
  827. TextColor3 = Color3.fromRGB(255, 255, 255);
  828. TextSize = 12.000;
  829. TextXAlignment = Enum.TextXAlignment.Left;
  830. });
  831. library:Create("TextButton", {
  832. Name = "colorpicker";
  833. BackgroundColor3 = Color3.fromRGB(34, 34, 34);
  834. BorderColor3 = Color3.fromRGB(255, 100, 0);
  835. Position = UDim2.new(1, -16, 0, 0);
  836. Size = UDim2.new(0, 16, 0, 16);
  837. AutoButtonColor = false;
  838. Font = Enum.Font.SourceSans;
  839. Text = "";
  840. TextColor3 = Color3.fromRGB(0, 0, 0);
  841. TextSize = 14.000;
  842. library:Create("Frame", {
  843. Name = "colorframe";
  844. BackgroundColor3 = Color3.fromRGB(32, 32, 32);
  845. BorderColor3 = Color3.fromRGB(255, 100, 0);
  846. Position = UDim2.new(0, -148, 1, 6);
  847. Size = UDim2.new(0, 144, 0, 139);
  848. Visible = false;
  849. ZIndex = 2;
  850. library:Create("ImageButton", {
  851. Name = "satval";
  852. Image = "http://www.roblox.com/asset/?id=4650897272";
  853. BorderSizePixel = 0;
  854. AutoButtonColor = false;
  855. BackgroundColor3 = defaultColor;
  856. Position = UDim2.new(0, 4, 0, 3);
  857. Size = UDim2.new(0, 110, 0, 102);
  858. ZIndex = 2;
  859. library:Create("TextButton", {
  860. Name = "picker";
  861. BackgroundColor3 = Color3.fromRGB(53, 53, 53);
  862. BackgroundTransparency = 0.500;
  863. BorderSizePixel = 0;
  864. Position = UDim2.new(0.5, 0, 0.5, 0);
  865. Size = UDim2.new(0, 5, 0, 5);
  866. ZIndex = 2;
  867. Text = "";
  868. });
  869. });
  870. library:Create("TextButton", {
  871. Name = "rainbow";
  872. ZIndex = 2;
  873. BackgroundColor3 = Color3.fromRGB(255, 255, 255);
  874. BorderColor3 = Color3.fromRGB(255, 255, 255);
  875. ClipsDescendants = true;
  876. Position = UDim2.new(0, 5, 1, -25);
  877. Size = UDim2.new(0, 133, 0, 20);
  878. AutoButtonColor = false;
  879. Font = "SourceSans";
  880. Text = "";
  881. TextColor3 = Color3.fromRGB(255, 255, 255);
  882. TextSize = 14.000;
  883. library:Create("UIGradient", {
  884. Color = ui_Settings.gradientColorSection;
  885. Rotation = -90;
  886. });
  887. library:Create("TextLabel", {
  888. Name = "label";
  889. Parent = button;
  890. BackgroundTransparency = 1.000;
  891. Size = UDim2.new(1, 0, 1, 0);
  892. Font = "SourceSans";
  893. Text = "Rainbow: OFF";
  894. TextColor3 = Color3.fromRGB(255, 255, 255);
  895. TextSize = 14.000;
  896. ZIndex = 2;
  897. });
  898. });
  899. library:Create("ImageButton", {
  900. Name = "hue";
  901. AutoButtonColor = false;
  902. ZIndex = 2;
  903. Position = UDim2.new(0, 118, 0, 3);
  904. Size = UDim2.new(0, 18, 0, 102);
  905. Image = "http://www.roblox.com/asset/?id=4650897105";
  906. library:Create("TextButton", {
  907. Name = "selector";
  908. BackgroundColor3 = Color3.fromRGB(53, 53, 53);
  909. BorderSizePixel = 0;
  910. Size = UDim2.new(1, 0, 0, 5);
  911. Text = "";
  912. ZIndex = 2;
  913. });
  914. });
  915. });
  916. library:Create("Frame", {
  917. Name = "color";
  918. BackgroundColor3 = defaultColor;
  919. BorderSizePixel = 0;
  920. Position = UDim2.new(0, 1, 0, 1);
  921. Size = UDim2.new(0, 14, 0, 14);
  922. });
  923. });
  924. });
  925.  
  926.  
  927. local colorData = {
  928. H = 1;
  929. S = 1;
  930. V = 1;
  931. };
  932.  
  933. local Connection1;
  934. local Connection2;
  935.  
  936. local function getXY(frame)
  937. local x, y = Mouse.X - frame.AbsolutePosition.X, Mouse.Y - frame.AbsolutePosition.Y;
  938. local maxX, maxY = frame.AbsoluteSize.X,frame.AbsoluteSize.Y;
  939. x = math.clamp(x, 0, maxX);
  940. y = math.clamp(y, 0, maxY);
  941. return x / maxX, y / maxY;
  942. end;
  943.  
  944. local function Update()
  945. local Color = Color3.fromHSV(colorData.H, colorData.S, colorData.V);
  946. holder.colorpicker.color.BackgroundColor3 = Color;
  947. holder.colorpicker.colorframe.satval.BackgroundColor3 = Color3.fromHSV(colorData.H, 1, 1);
  948. callback(Color);
  949. end;
  950.  
  951. holder.colorpicker.MouseButton1Click:Connect(function()
  952. toggle = not toggle;
  953. holder.colorpicker.colorframe.Visible = toggle;
  954. end);
  955.  
  956. UserInputService.InputEnded:Connect(function(i)
  957. if i.UserInputType == Enum.UserInputType.MouseButton1 then
  958. if(Connection1) then
  959. Connection1:Disconnect();
  960. Connection1 = nil;
  961. end;
  962. if(Connection2) then
  963. Connection2:Disconnect();
  964. Connection2 = nil;
  965. end;
  966. isFocused = false;
  967. end;
  968. end);
  969.  
  970. holder.colorpicker.colorframe.rainbow.MouseButton1Click:Connect(function()
  971. rainbowToggle = not rainbowToggle;
  972. holder.colorpicker.colorframe.rainbow.label.Text = rainbowToggle and "Rainbow: ON" or "Rainbow: OFF";
  973.  
  974. if(rainbowToggle) then
  975. repeat
  976. library:Tween(holder.colorpicker.colorframe.hue.selector, {time = 0.1, Position = UDim2.new(0, 0, library.rainbowI, 0)});
  977. holder.colorpicker.colorframe.satval.BackgroundColor3 = Color3.fromHSV(1 - library.rainbowI, 1, 1);
  978. holder.colorpicker.color.BackgroundColor3 = library.rainbowVal;
  979. callback(library.rainbowVal);
  980. RunService.Heartbeat:Wait();
  981. until not rainbowToggle;
  982. end;
  983. end);
  984.  
  985. holder.colorpicker.colorframe.satval.InputBegan:Connect(function(i)
  986. if i.UserInputType == Enum.UserInputType.MouseButton1 then
  987. if(Connection1) then
  988. Connection1:Disconnect();
  989. end;
  990. Connection1 = RunService.Heartbeat:Connect(function()
  991. local X, Y = getXY(holder.colorpicker.colorframe.satval);
  992.  
  993. holder.colorpicker.colorframe.satval.picker.Position = UDim2.new(X, 0, Y, 0);
  994. colorData.S = X;
  995. colorData.V = 1 - Y;
  996. Update();
  997. end);
  998. end;
  999. end);
  1000.  
  1001. holder.colorpicker.colorframe.hue.InputBegan:Connect(function(i)
  1002. if i.UserInputType == Enum.UserInputType.MouseButton1 then
  1003. if(Connection2) then
  1004. Connection2:Disconnect();
  1005. end;
  1006.  
  1007. Connection2 = RunService.Heartbeat:Connect(function()
  1008. local X, Y = getXY(holder.colorpicker.colorframe.hue);
  1009.  
  1010. colorData.H = 1 - Y;
  1011. holder.colorpicker.colorframe.hue.selector.Position = UDim2.new(0, 0, Y, 0);
  1012. Update();
  1013. end);
  1014. end;
  1015. end);
  1016. end;
  1017.  
  1018. return section;
  1019. end;
  1020. end;
  1021.  
  1022.  
  1023.  
  1024. local highestWeaponDamage = 0
  1025. local highestWeaponName = ""
  1026. local highestAxeDamage = 0
  1027. local highestAxeName = ""
  1028. local highestPickaxeDamage = 0
  1029. local highestPickaxeName = ""
  1030. function getToolDamage(toolname)
  1031. local toolInfo = require(game.ReplicatedStorage.TS.tool["tool-meta"])
  1032. local toolsInfo = toolInfo.ToolMeta
  1033. for i,v in pairs(toolsInfo) do
  1034. if i == toolname then
  1035. return v["blockHit"].damage
  1036. end
  1037. end
  1038. end
  1039.  
  1040. function getWeaponDamage(toolname)
  1041. local toolInfo = require(game.ReplicatedStorage.TS.tool["tool-meta"])
  1042. local toolsInfo = toolInfo.ToolMeta
  1043. for i,v in pairs(toolsInfo) do
  1044. if i == toolname then
  1045. return v["combat"].baseDamage
  1046. end
  1047. end
  1048. end
  1049.  
  1050. function refreshTools()
  1051. local tools = game.Players.LocalPlayer.Backpack:getChildren()
  1052. for i=1,#tools do
  1053. if string.find(tools[i].Name, "Axe") and tools[i]:findFirstChild("axe") then
  1054. if getToolDamage(tools[i].Name) >= highestAxeDamage then
  1055. highestAxeDamage = getToolDamage(tools[i].Name)
  1056. highestAxeName = tools[i].Name
  1057. end
  1058. end
  1059. if string.find(tools[i].Name, "Pickaxe") and tools[i]:findFirstChild("axe") then
  1060. if getToolDamage(tools[i].Name) >= highestPickaxeDamage then
  1061. highestPickaxeDamage = getToolDamage(tools[i].Name)
  1062. highestPickaxeName = tools[i].Name
  1063. end
  1064. end
  1065. if tools[i]:findFirstChild("sword") then
  1066. if getWeaponDamage(tools[i].Name) >= highestWeaponDamage then
  1067. highestWeaponDamage = getWeaponDamage(tools[i].Name)
  1068. highestWeaponName = tools[i].Name
  1069. end
  1070. end
  1071. end
  1072. end
  1073.  
  1074.  
  1075. local Tools = library:CreateSection("Tools")
  1076. Tools:Toggle("Crop Collect Aura")
  1077. Tools:Toggle("Auto Replace Crops")
  1078. spawn(function()
  1079. while wait() do
  1080. if library.flags["Crop Collect Aura"] then
  1081. local crops = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1082. for i=1,#crops do
  1083. if crops[i]:findFirstChild("secondsInStage") then
  1084. spawn(function()
  1085. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1086. if (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - crops[i].CollisionBoxes.Part.Position).magnitude <= 20 then
  1087. if crops[i].stage.Value == #crops[i]:getChildren()-6 then
  1088. local cframeGoal = crops[i].CollisionBoxes.Part.CFrame
  1089. game.ReplicatedStorage.Remotes.Functions["HARVEST_CROP_REQUEST"]:InvokeServer({model = crops[i], player = game.Players.LocalPlayer})
  1090. if library.flags["Auto Replace Crops"] then
  1091. wait(0.05)
  1092. game.ReplicatedStorage.Remotes.Functions["BLOCK_PLACE_REQUEST"]:InvokeServer({blockType = crops[i].Name, cframe = cframeGoal})
  1093. end
  1094. end
  1095. end
  1096. end
  1097. end)
  1098. end
  1099. end
  1100. end
  1101. end
  1102. end)
  1103.  
  1104. Tools:Toggle("Auto Collect Berrys")
  1105. spawn(function()
  1106. while wait(0.1) do
  1107. if library.flags["Auto Collect Berrys"] then
  1108. spawn(function()
  1109. local block = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1110. for i=1,#block do
  1111. if block[i].Name == "berryBush" then
  1112. if block[i].stage.Value == 2 then
  1113. spawn(function()
  1114. game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = block[i].CFrame
  1115. game.ReplicatedStorage.Remotes.Functions["HARVEST_CROP_REQUEST"]:InvokeServer({model = block[i], player = game.Players.LocalPlayer})
  1116. end)
  1117. end
  1118. end
  1119. end
  1120. end)
  1121. end
  1122. end
  1123. end)
  1124.  
  1125.  
  1126. Tools:Toggle("Click-Loot Chests")
  1127. spawn(function()
  1128. local mouse = game.Players.LocalPlayer:GetMouse()
  1129.  
  1130. mouse.Button1Down:connect(function()
  1131. if library.flags["Click-Loot Chests"] then
  1132. if not mouse.Target then return end
  1133. local chest = mouse.Target
  1134. if chest.Parent == nil then return end
  1135. if chest.Parent.Parent == nil then return end
  1136. if chest.Parent.Parent:findFirstChild("Contents") then
  1137. local a = chest.Parent.Parent.Contents:getChildren()
  1138. for i=1,#a do
  1139. game.ReplicatedStorage.Remotes.Functions["CHEST_TRANSACTION"]:InvokeServer({chest = chest.Parent.Parent, tool = a[i], action = "withdraw", amount = a[i].Amount.Value})
  1140. end
  1141. end
  1142. end
  1143. end)
  1144. end)
  1145. Tools:Toggle("Chest-Loot Aura")
  1146. spawn(function()
  1147. while wait(1.5) do
  1148. if library.flags["Chest-Loot Aura"] then
  1149. local chests = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1150. for i=1,#chests do
  1151. if chests[i]:findFirstChild("Contents") then
  1152. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1153. if (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - chests[i].Position).magnitude <= 20 then
  1154. spawn(function()
  1155. local a = chests[i].Contents:getChildren()
  1156. for i=1,#a do
  1157. game.ReplicatedStorage.Remotes.Functions["CHEST_TRANSACTION"]:InvokeServer({chest = a[i].Parent.Parent, tool = a[i], action = "withdraw", amount = a[i].Amount.Value})
  1158. end
  1159. end)
  1160. end
  1161. end
  1162. end
  1163. end
  1164. end
  1165. end
  1166. end)
  1167. Tools:Toggle("Steal Dropped Items")
  1168. spawn(function()
  1169. while wait(0.1) do
  1170. if library.flags["Steal Dropped Items"] then
  1171. local a = workspace.Islands:getChildren()
  1172. for i=1,#a do
  1173. if a[i]:findFirstChild("Drops") then
  1174. local c = a[i].Drops:getChildren()
  1175. for y=1,#c do
  1176. if c[y].ClassName == "Tool" and c[y]:findFirstChild("HandleDisabled") then
  1177. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1178. if (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - c[y].HandleDisabled.Position).magnitude <= 30 then
  1179. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = c[y]})
  1180. end
  1181. end
  1182. end
  1183. end
  1184. end
  1185. end
  1186. end
  1187. end
  1188. end)
  1189. Tools:Toggle("Quick-Break Blocks")
  1190. spawn(function()
  1191. local UIS = game:GetService("UserInputService")
  1192. local mouse = game.Players.LocalPlayer:getMouse()
  1193. local mousedown = false
  1194. spawn(function()
  1195. UIS.InputBegan:Connect(function(input)
  1196. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  1197. mousedown = true
  1198. end
  1199. end)
  1200. end)
  1201. spawn(function()
  1202. UIS.InputEnded:Connect(function(input)
  1203. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  1204. mousedown = false
  1205. end
  1206. end)
  1207. end)
  1208.  
  1209. while wait() do
  1210. if library.flags["Quick-Break Blocks"] then
  1211. pcall(function()
  1212. if not mouse.Target then return end
  1213. if not mouse.Target.Parent then return end
  1214. if mouse.Target ~= nil and mouse.Target.Parent.Parent ~= nil then
  1215. if mouse.Target.Parent.Parent:findFirstChild("BlockType") and mouse.Target.Parent.Parent.Name ~= "Game" and mousedown == true then
  1216. for i=1,10 do
  1217. if mouse.Target.Parent ~= nil then
  1218. if mouse.Target.Parent.Parent ~= nil then
  1219. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = mouse.Target})
  1220. end
  1221. end
  1222. end
  1223. end
  1224. if mouse.Target.Parent:findFirstChild("BlockType") and mouse.Target.Parent.Name ~= "Game" and mousedown == true then
  1225. for i=1,10 do
  1226. if mouse.Target.Parent ~= nil then
  1227. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = mouse.Target})
  1228. end
  1229. end
  1230. end
  1231. end
  1232. end)
  1233. end
  1234. end
  1235. end)
  1236. Tools:Toggle("Click Vending Helper")
  1237. spawn(function()
  1238. local mouse = game.Players.LocalPlayer:GetMouse()
  1239.  
  1240. mouse.Button1Down:connect(function()
  1241. if library.flags["Click Vending Helper"] then
  1242. if not mouse.Target then return end
  1243. local chest = mouse.Target
  1244. if chest.Parent == nil then return end
  1245. if chest.Parent.Parent == nil then return end
  1246. if chest.Parent.Parent:findFirstChild("SellingContents") then
  1247. local vendingMachine = chest.Parent.Parent
  1248.  
  1249. if vendingMachine.Mode.Value == 0 then
  1250. game.ReplicatedStorage.Remotes.Functions["VENDING_MACHINE_WITHDRAW_COINS"]:InvokeServer({vendingMachine = vendingMachine})
  1251.  
  1252.  
  1253. local backpack = game.Players.LocalPlayer.Backpack:getChildren()
  1254. for i=1,#backpack do
  1255. local iteminside = vendingMachine.SellingContents:findFirstChildOfClass("Tool")
  1256. if backpack[i].Name == iteminside.Name and iteminside.Amount.Value ~= 150 then
  1257. game.ReplicatedStorage.Remotes.Functions["VENDING_MACHINE_EDIT_TRANSACTION"]:InvokeServer({vendingMachine = vendingMachine, action = "deposit", amount = 150-iteminside.Amount.Value, tool = backpack[i]})
  1258. end
  1259. end
  1260. elseif vendingMachine.Mode.Value == 1 then
  1261. local iteminside = vendingMachine.SellingContents:findFirstChildOfClass("Tool")
  1262. if iteminside.Amount.Value >= 1 then
  1263. game.ReplicatedStorage.Remotes.Functions["VENDING_MACHINE_EDIT_TRANSACTION"]:InvokeServer({vendingMachine = vendingMachine, action = "withdraw", amount = iteminside.Amount.Value, tool = iteminside})
  1264. local backpack = game.Players.LocalPlayer.Backpack:getChildren()
  1265. for i=1,#backpack do
  1266. if backpack[i].Name == iteminside.Name then
  1267. game.ReplicatedStorage.Remotes.Functions["VENDING_MACHINE_EDIT_TRANSACTION"]:InvokeServer({vendingMachine = vendingMachine, action = "deposit", amount = 1, tool = backpack[i]})
  1268. end
  1269. end
  1270. end
  1271. end
  1272. end
  1273. end
  1274. end)
  1275. end)
  1276. Tools:Button("Reset/Unlock Camera", function()
  1277. workspace.CurrentCamera.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
  1278. workspace.CurrentCamera.CameraType = "Custom"
  1279. game.Players.LocalPlayer.CameraMinZoomDistance = 0.5
  1280. game.Players.LocalPlayer.CameraMaxZoomDistance = 400
  1281. game.Players.LocalPlayer.CameraMode = "Classic"
  1282. end)
  1283.  
  1284.  
  1285. Tools:Button("Invite All", function()
  1286. local players = game.Players:getChildren()
  1287. for i=1,#players do
  1288. if players[i] ~= game.Players.LocalPlayer then
  1289. game.ReplicatedStorage.Remotes.Functions["CHANGE_ISLAND_ACCESS_LEVEL"]:InvokeServer({accessLevel = 1, player = players[i]})
  1290. end
  1291. end
  1292. end)
  1293. Tools:Button("Kick All", function()
  1294. local players = game.Players:getChildren()
  1295. for i=1,#players do
  1296. if players[i] ~= game.Players.LocalPlayer then
  1297. game.ReplicatedStorage.Remotes.Functions["CHANGE_ISLAND_ACCESS_LEVEL"]:InvokeServer({accessLevel = 0, player = players[i]})
  1298. end
  1299. end
  1300. end)
  1301.  
  1302.  
  1303.  
  1304.  
  1305. local Teleports = library:CreateSection("Teleports")
  1306. Teleports:Button("Slime Portal TP", function()
  1307. game.Players.LocalPlayer.Character:MoveTo(Vector3.new(700, 200, -220))
  1308. end)
  1309. Teleports:Button("Buffalkor Portal TP", function()
  1310. game.Players.LocalPlayer.Character:MoveTo(Vector3.new(1421, 389, 32))
  1311. end)
  1312. Teleports:Button("Hidden Slime TP", function()
  1313. if not workspace:findFirstChild("nicePlatform") then
  1314. local a = Instance.new("Part", workspace)
  1315. a.Name = "nicePlatform"
  1316. a.Anchored = true
  1317. a.Size = Vector3.new(10,1,10)
  1318. a.Position = Vector3.new(750, 135, -100)
  1319. end
  1320. game.Players.LocalPlayer.Character:MoveTo(Vector3.new(750, 140, -100))
  1321. end)
  1322. Teleports:Button("Hidden Buffalkor TP", function()
  1323. if not workspace:findFirstChild("nicePlatform2") then
  1324. local a = Instance.new("Part", workspace)
  1325. a.Name = "nicePlatform2"
  1326. a.Anchored = true
  1327. a.Size = Vector3.new(10,1,10)
  1328. a.Position = Vector3.new(1500, 350, 120)
  1329. end
  1330. game.Players.LocalPlayer.Character:MoveTo(Vector3.new(1500, 355, 120))
  1331. end)
  1332.  
  1333. local Autofarms = library:CreateSection("Autofarms")
  1334. local selectedAutofarmMob = ""
  1335. Autofarms:Dropdown("Mobs", {"slime", "buffalkor"}, function(cb) selectedAutofarmMob = cb end);
  1336. Autofarms:Toggle("Bring mobs")
  1337. spawn(function()
  1338. while wait() do
  1339. if library.flags["Bring mobs"] == true then
  1340. spawn(function()
  1341. local a = workspace.Entities:getChildren()
  1342. for i=1,#a do
  1343. if string.find(a[i].Name, selectedAutofarmMob) then
  1344. a[i]:MoveTo(game.Players.LocalPlayer.Character.Head.Position + Vector3.new(10,0,math.random(-5,5)))
  1345. refreshTools()
  1346. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestWeaponName))
  1347. game.ReplicatedStorage.Remotes.Functions["SWING_SWORD"]:InvokeServer({hitUnit = a[i]})
  1348. end
  1349. end
  1350. end)
  1351. end
  1352. end
  1353. end)
  1354.  
  1355.  
  1356. Autofarms:Toggle("TP to mobs")
  1357. spawn(function()
  1358. while wait() do
  1359. local a = workspace.Entities:getChildren()
  1360. for i=1,#a do
  1361. wait()
  1362. if string.find(a[i].Name, selectedAutofarmMob) then
  1363. if library.flags["TP to mobs"] == true then
  1364. if a[i]:findFirstChild("HumanoidRootPart") then
  1365. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1366. game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(a[i].HumanoidRootPart.Position + Vector3.new(2, -10, 0))
  1367. game.Players.LocalPlayer.Character.HumanoidRootPart.Velocity = Vector3.new(0,0,0)
  1368. workspace.CurrentCamera.CameraSubject = a[i].Humanoid
  1369. wait(0.15)
  1370. game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(a[i].HumanoidRootPart.Position + Vector3.new(0, -10, 0))
  1371. game.Players.LocalPlayer.Character.HumanoidRootPart.Velocity = Vector3.new(0,0,0)
  1372. wait(0.15)
  1373. end
  1374. end
  1375. else
  1376. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1377. game.Players.LocalPlayer.Character.HumanoidRootPart.Anchored = false
  1378. end
  1379. workspace.CurrentCamera.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
  1380. end
  1381. end
  1382. end
  1383. end
  1384. end)
  1385.  
  1386. Autofarms:Toggle("Killaura mobs")
  1387. spawn(function()
  1388. while wait(0.01) do
  1389. if library.flags["Killaura mobs"] then
  1390. local entity = workspace.Entities:getChildren()
  1391. for i=1,#entity do
  1392. if entity[i]:findFirstChild("HumanoidRootPart") then
  1393. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1394. if (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - entity[i].HumanoidRootPart.Position).magnitude <= 15 then
  1395. refreshTools()
  1396. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestWeaponName))
  1397. game.ReplicatedStorage.Remotes.Functions["SWING_SWORD"]:InvokeServer({hitUnit = entity[i]})
  1398. end
  1399. end
  1400. end
  1401. end
  1402. end
  1403. end
  1404. end)
  1405.  
  1406. Autofarms:Toggle("Tier 2 Farm (ores)")
  1407. spawn(function()
  1408. while wait() do
  1409. if library.flags["Tier 2 Farm (ores)"] then
  1410. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1411. end
  1412. local rocks = workspace.WildernessBlocks:getChildren()
  1413. for i=1,#rocks do
  1414. if library.flags["Tier 2 Farm (ores)"] then
  1415. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1416. if rocks[i]:findFirstChild("PrefabType") then
  1417. if rocks[i]:findFirstChild("PrefabType").Value == "rockTier2" then
  1418. local hum = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  1419. repeat
  1420. wait()
  1421. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1422. hum.CFrame = rocks[i].CFrame + Vector3.new(0,-6,0)
  1423. refreshTools()
  1424. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestPickaxeName))
  1425. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = rocks[i]})
  1426. until rocks[i].Parent == nil
  1427. end
  1428. end
  1429. end
  1430. end
  1431. end
  1432. end)
  1433.  
  1434. Autofarms:Toggle("Tree Autofarm")
  1435. spawn(function()
  1436. while wait(0.1) do
  1437. if library.flags["Tree Autofarm"] then
  1438. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1439. for i=1,#blocks do
  1440. if library.flags["Tree Autofarm"] then
  1441. if string.find(blocks[i].Name, "tree") then
  1442. local root = blocks[i]
  1443. local plantCFrame = blocks[i].CollisionBoxes.Part.CFrame
  1444. repeat
  1445. wait()
  1446. if game.Players.LocalPlayer.Character:findFirstChild("HumanoidRootPart") then
  1447. game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = root.CFrame + Vector3.new(4,0,0)
  1448. end
  1449. refreshTools()
  1450. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestAxeName))
  1451. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = blocks[i]})
  1452. until blocks[i].Parent == nil
  1453. --[[ --removed until i can be bothered to add replanting with the new update
  1454. if string.find(blocks[i].Name, "Pine") then
  1455. game.ReplicatedStorage.Remotes.Functions["BLOCK_PLACE_REQUEST"]:InvokeServer({blockType = "saplingPine", cframe = plantCFrame})
  1456. elseif string.find(blocks[i].Name, "Birch") then
  1457. game.ReplicatedStorage.Remotes.Functions["BLOCK_PLACE_REQUEST"]:InvokeServer({blockType = "saplingBirch", cframe = plantCFrame})
  1458. elseif string.find(blocks[i].Name, "Maple") then
  1459. game.ReplicatedStorage.Remotes.Functions["BLOCK_PLACE_REQUEST"]:InvokeServer({blockType = "saplingMaple", cframe = plantCFrame})
  1460. else
  1461. game.ReplicatedStorage.Remotes.Functions["BLOCK_PLACE_REQUEST"]:InvokeServer({blockType = "sapling", cframe = plantCFrame})
  1462. end
  1463. wait(0.05)
  1464. end
  1465. --]]
  1466. end
  1467. end
  1468. end
  1469. end
  1470. end
  1471. end)
  1472. local selectedAutosmeltOre = ""
  1473. Autofarms:Dropdown("Autosmelt ores", {"iron", "gold"}, function(cb) selectedAutosmeltOre = cb end);
  1474. Autofarms:Toggle("Autosmelt")
  1475. spawn(function()
  1476. while wait(0.1) do
  1477. if library.flags["Autosmelt"] then
  1478. if selectedAutosmeltOre == "iron" then
  1479. function getAmountOfIron()
  1480. local bruh = 0
  1481. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1482. for i=1,#a do
  1483. if a[i].Name == "ironOre" then
  1484. bruh = bruh+1
  1485. end
  1486. end
  1487. return bruh
  1488. end
  1489.  
  1490. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1491. for i=1,#blocks do
  1492. if blocks[i].Name == "smallFurnace" then
  1493. if blocks[i]:findFirstChild(blocks[i].Name) then
  1494. local oresCooking = blocks[i].WorkerContents:getChildren()
  1495. if blocks[i].Effects.Fire.Fire.Enabled == false then
  1496. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1497. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1498. end
  1499. if #oresCooking ~= 3 and getAmountOfIron() ~= 0 then
  1500. repeat
  1501. oresCooking = blocks[i].WorkerContents:getChildren()
  1502. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1503. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "ironOre"})
  1504. until #oresCooking == 3 or getAmountOfIron() == 0
  1505. end
  1506. for i=1,#oresCooking do
  1507. if oresCooking[i].Name == "iron" then
  1508. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1509. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1510. end
  1511. end
  1512. end
  1513. end
  1514. end
  1515. end
  1516.  
  1517. if selectedAutosmeltOre == "gold" then
  1518. function getAmountOfGold()
  1519. local bruh = 0
  1520. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1521. for i=1,#a do
  1522. if a[i].Name == "goldOre" then
  1523. bruh = bruh+1
  1524. end
  1525. end
  1526. return bruh
  1527. end
  1528.  
  1529. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1530. for i=1,#blocks do
  1531. if blocks[i].Name == "smallFurnace" then
  1532. if blocks[i]:findFirstChild(blocks[i].Name) then
  1533. local oresCooking = blocks[i].WorkerContents:getChildren()
  1534. if blocks[i].Effects.Fire.Fire.Enabled == false then
  1535. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1536. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1537. end
  1538. if #oresCooking ~= 3 and getAmountOfGold() ~= 0 then
  1539. repeat
  1540. oresCooking = blocks[i].WorkerContents:getChildren()
  1541. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1542. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "goldOre"})
  1543. until #oresCooking == 3 or getAmountOfGold() == 0
  1544. end
  1545. for i=1,#oresCooking do
  1546. if oresCooking[i].Name == "gold" then
  1547. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1548. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1549. end
  1550. end
  1551. end
  1552. end
  1553. end
  1554. end
  1555. end
  1556. end
  1557. end)
  1558.  
  1559. Autofarms:Toggle("Auto Stone Cut")
  1560. spawn(function()
  1561. while wait(0.1) do
  1562. if library.flags["Auto Stone Cut"] then
  1563. function getAmountOfStone()
  1564. local bruh = 0
  1565. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1566. for i=1,#a do
  1567. if a[i].Name == "stone" then
  1568. bruh = bruh+1
  1569. end
  1570. end
  1571. return bruh
  1572. end
  1573.  
  1574. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1575. for i=1,#blocks do
  1576. if blocks[i].Name == "stonecutter" then
  1577. if blocks[i]:findFirstChild(blocks[i].Name) then
  1578. local blocksCutting = blocks[i].WorkerContents:getChildren()
  1579. if blocks[i].Particles.Spark.Enabled == false then
  1580. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1581. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1582. end
  1583. if #blocksCutting ~= 2 and getAmountOfStone() ~= 0 then
  1584. repeat
  1585. blocksCutting = blocks[i].WorkerContents:getChildren()
  1586. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1587. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "stone"})
  1588. until #blocksCutting == 2 or getAmountOfStone() == 0
  1589. end
  1590. for i=1,#blocksCutting do
  1591. if blocksCutting[i].Name == "stoneBrick" then
  1592. game.Players.LocalPlayer.Character:MoveTo(blocksCutting[i].Parent.Parent.Parent.Position)
  1593. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = blocksCutting[i]})
  1594. end
  1595. end
  1596. end
  1597. end
  1598. end
  1599. end
  1600. end
  1601. end)
  1602.  
  1603. local selectedSawmillWood = ""
  1604. Autofarms:Dropdown("Auto sawmill wood", {"wood", "birch", "pine", "maple"}, function(cb) selectedSawmillWood = cb end);
  1605. Autofarms:Toggle("Auto Sawmill")
  1606. spawn(function()
  1607. while wait(0.1) do
  1608. if library.flags["Auto Sawmill"] then
  1609. if selectedSawmillWood == "wood" then
  1610. function getAmountOfWood()
  1611. local bruh = 0
  1612. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1613. for i=1,#a do
  1614. if a[i].Name == "wood" then
  1615. bruh = bruh+1
  1616. end
  1617. end
  1618. return bruh
  1619. end
  1620.  
  1621. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1622. for i=1,#blocks do
  1623. if blocks[i].Name == "sawmill" then
  1624. if blocks[i]:findFirstChild(blocks[i].Name) then
  1625. local oresCooking = blocks[i].WorkerContents:getChildren()
  1626. if blocks[i].Effects.Particles.Spark.Enabled == false then
  1627. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1628. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1629. end
  1630. if #oresCooking ~= 3 and getAmountOfWood() ~= 0 then
  1631. repeat
  1632. oresCooking = blocks[i].WorkerContents:getChildren()
  1633. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1634. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "wood"})
  1635. until #oresCooking == 3 or getAmountOfWood() == 0
  1636. end
  1637. for i=1,#oresCooking do
  1638. if oresCooking[i].Name == "woodPlank" then
  1639. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1640. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1641. end
  1642. end
  1643. end
  1644. end
  1645. end
  1646. end
  1647. if selectedSawmillWood == "birch" then
  1648. function getAmountOfBirch()
  1649. local bruh = 0
  1650. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1651. for i=1,#a do
  1652. if a[i].Name == "woodBirch" then
  1653. bruh = bruh+1
  1654. end
  1655. end
  1656. return bruh
  1657. end
  1658.  
  1659. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1660. for i=1,#blocks do
  1661. if blocks[i].Name == "sawmill" then
  1662. if blocks[i]:findFirstChild(blocks[i].Name) then
  1663. local oresCooking = blocks[i].WorkerContents:getChildren()
  1664. if blocks[i].Effects.Particles.Spark.Enabled == false then
  1665. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1666. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1667. end
  1668. if #oresCooking ~= 3 and getAmountOfBirch() ~= 0 then
  1669. repeat
  1670. oresCooking = blocks[i].WorkerContents:getChildren()
  1671. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1672. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "woodBirch"})
  1673. until #oresCooking == 3 or getAmountOfBirch() == 0
  1674. end
  1675. for i=1,#oresCooking do
  1676. if oresCooking[i].Name == "birchPlank" then
  1677. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1678. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1679. end
  1680. end
  1681. end
  1682. end
  1683. end
  1684. end
  1685. if selectedSawmillWood == "pine" then
  1686. function getAmountOfPine()
  1687. local bruh = 0
  1688. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1689. for i=1,#a do
  1690. if a[i].Name == "woodPine" then
  1691. bruh = bruh+1
  1692. end
  1693. end
  1694. return bruh
  1695. end
  1696.  
  1697. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1698. for i=1,#blocks do
  1699. if blocks[i].Name == "sawmill" then
  1700. if blocks[i]:findFirstChild(blocks[i].Name) then
  1701. local oresCooking = blocks[i].WorkerContents:getChildren()
  1702. if blocks[i].Effects.Particles.Spark.Enabled == false then
  1703. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1704. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1705. end
  1706. if #oresCooking ~= 3 and getAmountOfPine() ~= 0 then
  1707. repeat
  1708. oresCooking = blocks[i].WorkerContents:getChildren()
  1709. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1710. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "woodPine"})
  1711. until #oresCooking == 3 or getAmountOfPine() == 0
  1712. end
  1713. for i=1,#oresCooking do
  1714. if oresCooking[i].Name == "pinePlank" then
  1715. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1716. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1717. end
  1718. end
  1719. end
  1720. end
  1721. end
  1722. end
  1723. if selectedSawmillWood == "maple" then
  1724. function getAmountOfMaple()
  1725. local bruh = 0
  1726. local a = game.Players.LocalPlayer.Backpack:getChildren()
  1727. for i=1,#a do
  1728. if a[i].Name == "woodMaple" then
  1729. bruh = bruh+1
  1730. end
  1731. end
  1732. return bruh
  1733. end
  1734.  
  1735. local blocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1736. for i=1,#blocks do
  1737. if blocks[i].Name == "sawmill" then
  1738. if blocks[i]:findFirstChild(blocks[i].Name) then
  1739. local oresCooking = blocks[i].WorkerContents:getChildren()
  1740. if blocks[i].Effects.Particles.Spark.Enabled == false then
  1741. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1742. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "coal"})
  1743. end
  1744. if #oresCooking ~= 3 and getAmountOfMaple() ~= 0 then
  1745. repeat
  1746. oresCooking = blocks[i].WorkerContents:getChildren()
  1747. game.Players.LocalPlayer.Character:MoveTo(blocks[i].Position)
  1748. game.ReplicatedStorage.Remotes.Functions["BLOCK_WORKER_DEPOSIT_TOOL_REQUEST"]:InvokeServer({block = blocks[i], amount = 1, toolName = "woodMaple"})
  1749. until #oresCooking == 3 or getAmountOfMaple() == 0
  1750. end
  1751. for i=1,#oresCooking do
  1752. if oresCooking[i].Name == "maplePlank" then
  1753. game.Players.LocalPlayer.Character:MoveTo(oresCooking[i].Parent.Parent.Parent.Position)
  1754. game.ReplicatedStorage.Remotes.Functions["TOOL_PICKUP_REQUEST"]:InvokeServer({tool = oresCooking[i]})
  1755. end
  1756. end
  1757. end
  1758. end
  1759. end
  1760. end
  1761. end
  1762. end
  1763. end)
  1764.  
  1765. Autofarms:Toggle("Farm Stone")
  1766. Autofarms:Toggle("Farm Coal")
  1767. Autofarms:Toggle("Farm Iron")
  1768. Autofarms:Toggle("Farm Clay")
  1769. spawn(function()
  1770. while wait(0.3) do
  1771. local rocks = workspace.Islands[game.Players.LocalPlayer.UserId .. "-island"].Blocks:getChildren()
  1772. for i=1,#rocks do
  1773. if library.flags["Farm Stone"] or library.flags["Farm Coal"] or library.flags["Farm Iron"] or library.flags["Farm Clay"] then
  1774. if rocks[i]:findFirstChild("RockStage") then
  1775. if rocks[i].Name == "rockStone" and library.flags["Farm Stone"] then
  1776. local hum = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  1777. repeat
  1778. wait()
  1779. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1780. hum.CFrame = rocks[i].CFrame + Vector3.new(0,3.4,0)
  1781. refreshTools()
  1782. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestPickaxeName))
  1783. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = rocks[i]})
  1784. until rocks[i].Parent == nil
  1785. end
  1786. if rocks[i].Name == "rockCoal" and library.flags["Farm Coal"] then
  1787. local hum = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  1788. repeat
  1789. wait()
  1790. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1791. hum.CFrame = rocks[i].CFrame + Vector3.new(0,3.4,0)
  1792. refreshTools()
  1793. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestPickaxeName))
  1794. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = rocks[i]})
  1795. until rocks[i].Parent == nil
  1796. end
  1797. if rocks[i].Name == "rockIron" and library.flags["Farm Iron"] then
  1798. local hum = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  1799. repeat
  1800. wait()
  1801. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1802. hum.CFrame = rocks[i].CFrame + Vector3.new(0,3.4,0)
  1803. refreshTools()
  1804. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestPickaxeName))
  1805. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = rocks[i]})
  1806. until rocks[i].Parent == nil
  1807. end
  1808. if rocks[i].Name == "rockClay" and library.flags["Farm Clay"] then
  1809. local hum = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  1810. repeat
  1811. wait()
  1812. game.Players.LocalPlayer.Character:findFirstChildOfClass("Humanoid"):ChangeState(11)
  1813. hum.CFrame = rocks[i].CFrame + Vector3.new(0,3.4,0)
  1814. refreshTools()
  1815. game.Players.LocalPlayer.Character.Humanoid:EquipTool(game.Players.LocalPlayer.Backpack:findFirstChild(highestPickaxeName))
  1816. game.ReplicatedStorage.Remotes.Functions["BLOCK_BREAK_REQUEST"]:InvokeServer({block = rocks[i]})
  1817. until rocks[i].Parent == nil
  1818. end
  1819. end
  1820. end
  1821. end
  1822. end
  1823. end)
  1824.  
  1825. local UserInputService = game:GetService("UserInputService")
  1826. UserInputService.InputBegan:Connect(function(input)
  1827. if UserInputService:IsKeyDown(Enum.KeyCode.RightControl) then
  1828. library:ToggleVisibility()
  1829. end
  1830. end)
  1831.  
  1832.  
  1833.  
  1834. Autofarms:Toggle("Fishing Helper")
  1835. function playerFishingBobber()
  1836. local a = workspace:getChildren()
  1837. for i=1,#a do
  1838. if a[i].Name == "Bobber" then
  1839. if a[i].Player.Value.Name == game.Players.LocalPlayer.Name then
  1840. return a[i]
  1841. end
  1842. end
  1843. end
  1844. end
  1845.  
  1846.  
  1847. spawn(function()
  1848. workspace.ChildAdded:connect(function(new)
  1849. if new.Name == "bubbles" then
  1850. if library.flags["Fishing Helper"] then
  1851. if playerFishingBobber() ~= nil then
  1852. game.ReplicatedStorage.Remotes.Functions["PULL_FISHING_ROD"]:InvokeServer({catchAttempt = true})
  1853. end
  1854. end
  1855. end
  1856. end)
  1857. end)
  1858.  
  1859.  
  1860. Autofarms:Toggle("TP to Fish")
  1861. spawn(function()
  1862. while wait(0.1) do
  1863. if library.flags["TP to Fish"] then
  1864. if workspace:findFirstChild("Fish") then
  1865. if playerFishingBobber() == nil then
  1866. game.ReplicatedStorage.Remotes.Functions["CAST_FISHING_ROD"]:InvokeServer({playerLocation = game.Players.LocalPlayer.Character.HumanoidRootPart.Position, direction = Vector3.new(0.1,0,0), strength = 200})
  1867. end
  1868. if playerFishingBobber() ~= nil then
  1869. game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = workspace.Fish.CFrame
  1870. wait(0.1)
  1871. if workspace:findFirstChild("Fish") then
  1872. if playerFishingBobber() ~= nil then
  1873. local a = playerFishingBobber()
  1874. a.CFrame = workspace.Fish.CFrame
  1875. end
  1876. end
  1877. end
  1878. end
  1879. end
  1880. end
  1881. end)
  1882.  
  1883.  
  1884. local Info = library:CreateSection("Info")
  1885. Info:Button("Sky Block Gui v" .. version)
  1886. Info:Button("Created by Levi#7059")
  1887. Info:Button("LeviTheOtaku @ v3rm")
  1888. Info:Button("UI Lib: Modified Aztup's UI lib")
  1889. Info:Button("Toggle GUI with RightCtrl")
  1890.  
  1891. library:Ready();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement