Advertisement
plytalent

Deepwoken Player Talents Inspector

Oct 13th, 2022
348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 39.93 KB | None | 0 0
  1. if game.PlaceId == 6032399813 or game.PlaceId == 5735553160 or game.PlaceId == 8668476218 then
  2. local LibraryUI =(function ()
  3. --Cr. https://raw.githubusercontent.com/AlexR32/Roblox/main/BracketV3.lua
  4. local Library = {Toggle = true,FirstTab = nil,TabCount = 0,ColorTable = {}}
  5.  
  6. local RunService = game:GetService("RunService")
  7. local HttpService = game:GetService("HttpService")
  8. local TweenService = game:GetService("TweenService")
  9. local UserInputService = game:GetService("UserInputService")
  10.  
  11. local function MakeDraggable(ClickObject, Object)
  12. local Dragging = nil
  13. local DragInput = nil
  14. local DragStart = nil
  15. local StartPosition = nil
  16.  
  17. ClickObject.InputBegan:Connect(function(Input)
  18. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  19. Dragging = true
  20. DragStart = Input.Position
  21. StartPosition = Object.Position
  22.  
  23. Input.Changed:Connect(function()
  24. if Input.UserInputState == Enum.UserInputState.End then
  25. Dragging = false
  26. end
  27. end)
  28. end
  29. end)
  30.  
  31. ClickObject.InputChanged:Connect(function(Input)
  32. if Input.UserInputType == Enum.UserInputType.MouseMovement or Input.UserInputType == Enum.UserInputType.Touch then
  33. DragInput = Input
  34. end
  35. end)
  36.  
  37. UserInputService.InputChanged:Connect(function(Input)
  38. if Input == DragInput and Dragging then
  39. local Delta = Input.Position - DragStart
  40. Object.Position = UDim2.new(StartPosition.X.Scale, StartPosition.X.Offset + Delta.X, StartPosition.Y.Scale, StartPosition.Y.Offset + Delta.Y)
  41. end
  42. end)
  43. end
  44.  
  45. function Library:CreateWindow(Config, Parent)
  46. local WindowInit = {}
  47. local Folder = game:GetObjects("rbxassetid://7141683860")[1]
  48. local Screen = Folder.Bracket:Clone()
  49. local Main = Screen.Main
  50. local Holder = Main.Holder
  51. local Topbar = Main.Topbar
  52. local TContainer = Holder.TContainer
  53. local TBContainer = Holder.TBContainer.Holder
  54. WindowInit.ScreenObject = Main
  55. --[[
  56. -- idk probably fix for exploits that dont have this function
  57. if syn and syn.protect_gui then
  58. syn.protect_gui(Screen)
  59. end
  60. ]]
  61.  
  62. Screen.Name = HttpService:GenerateGUID(false)
  63. Screen.Parent = Parent
  64. Topbar.WindowName.Text = Config.WindowName
  65. MakeDraggable(Topbar,Main)
  66. function WindowInit:SetTileText(name)
  67. Topbar.WindowName.Text = name
  68. end
  69. --function WindowInit:SetSizeScale(x,y)
  70. -- Topbar.WindowName.Text = name
  71. --end
  72. local function CloseAll()
  73. for _,Tab in pairs(TContainer:GetChildren()) do
  74. if Tab:IsA("ScrollingFrame") then
  75. Tab.Visible = false
  76. end
  77. end
  78. end
  79. local function ResetAll()
  80. for _,TabButton in pairs(TBContainer:GetChildren()) do
  81. if TabButton:IsA("TextButton") then
  82. TabButton.BackgroundTransparency = 1
  83. end
  84. end
  85. for _,TabButton in pairs(TBContainer:GetChildren()) do
  86. if TabButton:IsA("TextButton") then
  87. TabButton.Size = UDim2.new(0,480 / Library.TabCount,1,0)
  88. end
  89. end
  90. for _,Pallete in pairs(Screen:GetChildren()) do
  91. if Pallete:IsA("Frame") and Pallete.Name ~= "Main" then
  92. Pallete.Visible = false
  93. end
  94. end
  95. end
  96. local function KeepFirst()
  97. for _,Tab in pairs(TContainer:GetChildren()) do
  98. if Tab:IsA("ScrollingFrame") then
  99. if Tab.Name == Library.FirstTab .. " T" then
  100. Tab.Visible = true
  101. else
  102. Tab.Visible = false
  103. end
  104. end
  105. end
  106. for _,TabButton in pairs(TBContainer:GetChildren()) do
  107. if TabButton:IsA("TextButton") then
  108. if TabButton.Name == Library.FirstTab .. " TB" then
  109. TabButton.BackgroundTransparency = 0
  110. else
  111. TabButton.BackgroundTransparency = 1
  112. end
  113. end
  114. end
  115. end
  116. local function Toggle(State)
  117. if State then
  118. Main.Visible = true
  119. elseif not State then
  120. for _,Pallete in pairs(Screen:GetChildren()) do
  121. if Pallete:IsA("Frame") and Pallete.Name ~= "Main" then
  122. Pallete.Visible = false
  123. end
  124. end
  125. Screen.ToolTip.Visible = false
  126. Main.Visible = false
  127. end
  128. Library.Toggle = State
  129. end
  130. local function ChangeColor(Color)
  131. Config.Color = Color
  132. for i, v in pairs(Library.ColorTable) do
  133. if v.BackgroundColor3 ~= Color3.fromRGB(50, 50, 50) then
  134. v.BackgroundColor3 = Color
  135. end
  136. end
  137. end
  138.  
  139. function WindowInit:Toggle(State)
  140. Toggle(State)
  141. end
  142.  
  143. function WindowInit:ChangeColor(Color)
  144. ChangeColor(Color)
  145. end
  146.  
  147. function WindowInit:SetBackground(ImageId)
  148. Holder.Image = "rbxassetid://" .. ImageId
  149. end
  150.  
  151. function WindowInit:SetBackgroundColor(Color)
  152. Holder.ImageColor3 = Color
  153. end
  154. function WindowInit:SetBackgroundTransparency(Transparency)
  155. Holder.ImageTransparency = Transparency
  156. end
  157.  
  158. function WindowInit:SetTileOffset(Offset)
  159. Holder.TileSize = UDim2.new(0,Offset,0,Offset)
  160. end
  161. function WindowInit:SetTileScale(Scale)
  162. Holder.TileSize = UDim2.new(Scale,0,Scale,0)
  163. end
  164.  
  165. RunService.RenderStepped:Connect(function()
  166. if Library.Toggle then
  167. Screen.ToolTip.Position = UDim2.new(0,UserInputService:GetMouseLocation().X + 10,0,UserInputService:GetMouseLocation().Y - 5)
  168. end
  169. end)
  170.  
  171. function WindowInit:CreateTab(Name)
  172. local TabInit = {}
  173. local Tab = Folder.Tab:Clone()
  174. local TabButton = Folder.TabButton:Clone()
  175.  
  176. Tab.Name = Name .. " T"
  177. Tab.Parent = TContainer
  178.  
  179. TabButton.Name = Name .. " TB"
  180. TabButton.Parent = TBContainer
  181. TabButton.Title.Text = Name
  182. TabButton.BackgroundColor3 = Config.Color
  183.  
  184. table.insert(Library.ColorTable, TabButton)
  185. Library.TabCount = Library.TabCount + 1
  186. if Library.TabCount == 1 then
  187. Library.FirstTab = Name
  188. end
  189.  
  190. CloseAll()
  191. ResetAll()
  192. KeepFirst()
  193.  
  194. local function GetSide(Longest)
  195. if Longest then
  196. if Tab.LeftSide.ListLayout.AbsoluteContentSize.Y > Tab.RightSide.ListLayout.AbsoluteContentSize.Y then
  197. return Tab.LeftSide
  198. else
  199. return Tab.RightSide
  200. end
  201. else
  202. if Tab.LeftSide.ListLayout.AbsoluteContentSize.Y > Tab.RightSide.ListLayout.AbsoluteContentSize.Y then
  203. return Tab.RightSide
  204. else
  205. return Tab.LeftSide
  206. end
  207. end
  208. end
  209.  
  210. TabButton.MouseButton1Click:Connect(function()
  211. CloseAll()
  212. ResetAll()
  213. Tab.Visible = true
  214. TabButton.BackgroundTransparency = 0
  215. end)
  216.  
  217. Tab.LeftSide.ListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
  218. if GetSide(true).Name == Tab.LeftSide.Name then
  219. Tab.CanvasSize = UDim2.new(0,0,0,Tab.LeftSide.ListLayout.AbsoluteContentSize.Y + 15)
  220. else
  221. Tab.CanvasSize = UDim2.new(0,0,0,Tab.RightSide.ListLayout.AbsoluteContentSize.Y + 15)
  222. end
  223. end)
  224. Tab.RightSide.ListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
  225. if GetSide(true).Name == Tab.LeftSide.Name then
  226. Tab.CanvasSize = UDim2.new(0,0,0,Tab.LeftSide.ListLayout.AbsoluteContentSize.Y + 15)
  227. else
  228. Tab.CanvasSize = UDim2.new(0,0,0,Tab.RightSide.ListLayout.AbsoluteContentSize.Y + 15)
  229. end
  230. end)
  231.  
  232. function TabInit:CreateSection(Name)
  233. local SectionInit = {}
  234. local Section = Folder.Section:Clone()
  235. Section.Name = Name .. " S"
  236. Section.Parent = GetSide(false)
  237.  
  238. Section.Title.Text = Name
  239. Section.Title.Size = UDim2.new(0,Section.Title.TextBounds.X + 10,0,2)
  240.  
  241. Section.Container.ListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
  242. Section.Size = UDim2.new(1,0,0,Section.Container.ListLayout.AbsoluteContentSize.Y + 15)
  243. end)
  244. function SectionInit:UpdateTitle(Text)
  245. Section.Title.Text = Text
  246. Section.Title.Size = UDim2.new(0,Section.Title.TextBounds.X + 10,0,2)
  247. end
  248. function SectionInit:CreateLabel(Name)
  249. local LabelInit = {}
  250. local Label = Folder.Label:Clone()
  251. Label.Name = Name .. " L"
  252. Label.Parent = Section.Container
  253. Label.Text = Name
  254. Label.Size = UDim2.new(1,-10,0,Label.TextBounds.Y)
  255. function LabelInit:UpdateText(Text)
  256. Label.Text = Text
  257. Label.Size = UDim2.new(1,-10,0,Label.TextBounds.Y)
  258. end
  259. function LabelInit:Remove()
  260. Label:Destroy()
  261. end
  262. return LabelInit
  263. end
  264. function SectionInit:CreateButton(Name, Callback)
  265. local ButtonInit = {}
  266. local Button = Folder.Button:Clone()
  267. Button.Name = Name .. " B"
  268. Button.Parent = Section.Container
  269. Button.Title.Text = Name
  270. Button.Size = UDim2.new(1,-10,0,Button.Title.TextBounds.Y + 5)
  271. table.insert(Library.ColorTable, Button)
  272.  
  273. Button.MouseButton1Down:Connect(function()
  274. Button.BackgroundColor3 = Config.Color
  275. end)
  276.  
  277. Button.MouseButton1Up:Connect(function()
  278. Button.BackgroundColor3 = Color3.fromRGB(50,50,50)
  279. end)
  280.  
  281. Button.MouseLeave:Connect(function()
  282. Button.BackgroundColor3 = Color3.fromRGB(50,50,50)
  283. end)
  284.  
  285. Button.MouseButton1Click:Connect(function()
  286. Callback()
  287. end)
  288. function ButtonInit:UpdateText(Text)
  289. Button.Title.Text = Text
  290. end
  291. function ButtonInit:AddToolTip(Name)
  292. if tostring(Name):gsub(" ", "") ~= "" then
  293. Button.MouseEnter:Connect(function()
  294. Screen.ToolTip.Text = Name
  295. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  296. Screen.ToolTip.Visible = true
  297. end)
  298.  
  299. Button.MouseLeave:Connect(function()
  300. Screen.ToolTip.Visible = false
  301. end)
  302. end
  303. end
  304.  
  305. return ButtonInit
  306. end
  307. function SectionInit:CreateTextBox(Name, PlaceHolder, NumbersOnly, Callback)
  308. local TextBoxInit = {}
  309. local TextBox = Folder.TextBox:Clone()
  310. TextBox.Name = Name .. " T"
  311. TextBox.Parent = Section.Container
  312. TextBox.Title.Text = Name
  313. TextBox.Background.Input.PlaceholderText = PlaceHolder
  314. TextBox.Title.Size = UDim2.new(1,0,0,TextBox.Title.TextBounds.Y + 5)
  315. TextBox.Size = UDim2.new(1,-10,0,TextBox.Title.TextBounds.Y + 25)
  316.  
  317. TextBox.Background.Input.FocusLost:Connect(function()
  318. if NumbersOnly and not tonumber(TextBox.Background.Input.Text) then
  319. Callback(tonumber(TextBox.Background.Input.Text))
  320. --TextBox.Background.Input.Text = ""
  321. else
  322. Callback(TextBox.Background.Input.Text)
  323. --TextBox.Background.Input.Text = ""
  324. end
  325. end)
  326. function TextBoxInit:SetValue(String)
  327. Callback(String)
  328. TextBox.Background.Input.Text = String
  329. end
  330. function TextBoxInit:GetValue()
  331. return TextBox.Background.Input.Text or ""
  332. end
  333. function TextBoxInit:AddToolTip(Name)
  334. if tostring(Name):gsub(" ", "") ~= "" then
  335. TextBox.MouseEnter:Connect(function()
  336. Screen.ToolTip.Text = Name
  337. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  338. Screen.ToolTip.Visible = true
  339. end)
  340.  
  341. TextBox.MouseLeave:Connect(function()
  342. Screen.ToolTip.Visible = false
  343. end)
  344. end
  345. end
  346. return TextBoxInit
  347. end
  348. function SectionInit:CreateToggle(Name, Default, Callback)
  349. local DefaultLocal = Default or false
  350. local ToggleInit = {}
  351. local Toggle = Folder.Toggle:Clone()
  352. Toggle.Name = Name .. " T"
  353. Toggle.Parent = Section.Container
  354. Toggle.Title.Text = Name
  355. Toggle.Size = UDim2.new(1,-10,0,Toggle.Title.TextBounds.Y + 5)
  356.  
  357. table.insert(Library.ColorTable, Toggle.Toggle)
  358. local ToggleState = false
  359.  
  360. local function SetState(State)
  361. if State then
  362. Toggle.Toggle.BackgroundColor3 = Config.Color
  363. elseif not State then
  364. Toggle.Toggle.BackgroundColor3 = Color3.fromRGB(50,50,50)
  365. end
  366. ToggleState = State
  367. Callback(State)
  368. end
  369. function ToggleInit:SetText(String)
  370. Toggle.Title.Text = String
  371. end
  372. Toggle.MouseButton1Click:Connect(function()
  373. ToggleState = not ToggleState
  374. SetState(ToggleState)
  375. end)
  376.  
  377. function ToggleInit:AddToolTip(Name)
  378. if tostring(Name):gsub(" ", "") ~= "" then
  379. Toggle.MouseEnter:Connect(function()
  380. Screen.ToolTip.Text = Name
  381. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  382. Screen.ToolTip.Visible = true
  383. end)
  384.  
  385. Toggle.MouseLeave:Connect(function()
  386. Screen.ToolTip.Visible = false
  387. end)
  388. end
  389. end
  390.  
  391. if Default == nil then
  392. function ToggleInit:SetState(State)
  393. SetState(State)
  394. end
  395. else
  396. SetState(DefaultLocal)
  397. end
  398.  
  399. function ToggleInit:GetState(State)
  400. return ToggleState
  401. end
  402.  
  403. function ToggleInit:CreateKeybind(Bind,Callback)
  404. local KeybindInit = {}
  405. Bind = Bind or "NONE"
  406.  
  407. local WaitingForBind = false
  408. local Selected = Bind
  409. local Blacklist = {"W","A","S","D","Slash","Tab","Backspace","Escape","Space","Delete","Unknown","Backquote"}
  410.  
  411. Toggle.Keybind.Visible = true
  412. Toggle.Keybind.Text = "[ " .. Bind .. " ]"
  413.  
  414. Toggle.Keybind.MouseButton1Click:Connect(function()
  415. Toggle.Keybind.Text = "[ ... ]"
  416. WaitingForBind = true
  417. end)
  418.  
  419. Toggle.Keybind:GetPropertyChangedSignal("TextBounds"):Connect(function()
  420. Toggle.Keybind.Size = UDim2.new(0,Toggle.Keybind.TextBounds.X,1,0)
  421. Toggle.Title.Size = UDim2.new(1,-Toggle.Keybind.Size.X.Offset - 15,1,0)
  422. end)
  423.  
  424. UserInputService.InputBegan:Connect(function(Input)
  425. if WaitingForBind and Input.UserInputType == Enum.UserInputType.Keyboard then
  426. local Key = tostring(Input.KeyCode):gsub("Enum.KeyCode.", "")
  427. if not table.find(Blacklist, Key) then
  428. Toggle.Keybind.Text = "[ " .. Key .. " ]"
  429. Selected = Key
  430. else
  431. Toggle.Keybind.Text = "[ NONE ]"
  432. Selected = "NONE"
  433. end
  434. WaitingForBind = false
  435. elseif Input.UserInputType == Enum.UserInputType.Keyboard then
  436. local Key = tostring(Input.KeyCode):gsub("Enum.KeyCode.", "")
  437. if Key == Selected then
  438. ToggleState = not ToggleState
  439. SetState(ToggleState)
  440. if Callback then
  441. Callback(Key)
  442. end
  443. end
  444. end
  445. end)
  446.  
  447. function KeybindInit:SetBind(Key)
  448. Toggle.Keybind.Text = "[ " .. Key .. " ]"
  449. Selected = Key
  450. end
  451.  
  452. function KeybindInit:GetBind()
  453. return Selected
  454. end
  455.  
  456. return KeybindInit
  457. end
  458. return ToggleInit
  459. end
  460. function SectionInit:CreateSlider(Name, Min, Max, Default, Precise, Callback)
  461. local DefaultLocal = Default or 50
  462. local SliderInit = {}
  463. local Slider = Folder.Slider:Clone()
  464. Slider.Name = Name .. " S"
  465. Slider.Parent = Section.Container
  466.  
  467. Slider.Title.Text = Name
  468. Slider.Slider.Bar.Size = UDim2.new(Min / Max,0,1,0)
  469. Slider.Slider.Bar.BackgroundColor3 = Config.Color
  470. Slider.Value.PlaceholderText = tostring(Min / Max)
  471. Slider.Title.Size = UDim2.new(1,0,0,Slider.Title.TextBounds.Y + 5)
  472. Slider.Size = UDim2.new(1,-10,0,Slider.Title.TextBounds.Y + 15)
  473. table.insert(Library.ColorTable, Slider.Slider.Bar)
  474.  
  475. local GlobalSliderValue = 0
  476. local Dragging = false
  477. local function Sliding(Input)
  478. local Position = UDim2.new(math.clamp((Input.Position.X - Slider.Slider.AbsolutePosition.X) / Slider.Slider.AbsoluteSize.X,0,1),0,1,0)
  479. Slider.Slider.Bar.Size = Position
  480. local SliderPrecise = ((Position.X.Scale * Max) / Max) * (Max - Min) + Min
  481. local SliderNonPrecise = math.floor(((Position.X.Scale * Max) / Max) * (Max - Min) + Min)
  482. local SliderValue = Precise and SliderNonPrecise or SliderPrecise
  483. SliderValue = tonumber(string.format("%.2f", SliderValue))
  484. GlobalSliderValue = SliderValue
  485. Slider.Value.PlaceholderText = tostring(SliderValue)
  486. Callback(GlobalSliderValue)
  487. end
  488. local function SetValue(Value)
  489. GlobalSliderValue = Value
  490. Slider.Slider.Bar.Size = UDim2.new(Value / Max,0,1,0)
  491. Slider.Value.PlaceholderText = Value
  492. Callback(Value)
  493. end
  494. Slider.Value.FocusLost:Connect(function()
  495. if not tonumber(Slider.Value.Text) then
  496. Slider.Value.Text = GlobalSliderValue
  497. elseif Slider.Value.Text == "" or tonumber(Slider.Value.Text) <= Min then
  498. Slider.Value.Text = Min
  499. elseif Slider.Value.Text == "" or tonumber(Slider.Value.Text) >= Max then
  500. Slider.Value.Text = Max
  501. end
  502.  
  503. GlobalSliderValue = Slider.Value.Text
  504. Slider.Slider.Bar.Size = UDim2.new(Slider.Value.Text / Max,0,1,0)
  505. Slider.Value.PlaceholderText = Slider.Value.Text
  506. Callback(tonumber(Slider.Value.Text))
  507. Slider.Value.Text = ""
  508. end)
  509.  
  510. Slider.InputBegan:Connect(function(Input)
  511. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  512. Sliding(Input)
  513. Dragging = true
  514. end
  515. end)
  516.  
  517. Slider.InputEnded:Connect(function(Input)
  518. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  519. Dragging = false
  520. end
  521. end)
  522.  
  523. UserInputService.InputBegan:Connect(function(Input)
  524. if Input.KeyCode == Enum.KeyCode.LeftControl then
  525. Slider.Value.ZIndex = 4
  526. end
  527. end)
  528.  
  529. UserInputService.InputEnded:Connect(function(Input)
  530. if Input.KeyCode == Enum.KeyCode.LeftControl then
  531. Slider.Value.ZIndex = 3
  532. end
  533. end)
  534.  
  535. UserInputService.InputChanged:Connect(function(Input)
  536. if Dragging and Input.UserInputType == Enum.UserInputType.MouseMovement then
  537. Sliding(Input)
  538. end
  539. end)
  540.  
  541. function SliderInit:AddToolTip(Name)
  542. if tostring(Name):gsub(" ", "") ~= "" then
  543. Slider.MouseEnter:Connect(function()
  544. Screen.ToolTip.Text = Name
  545. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  546. Screen.ToolTip.Visible = true
  547. end)
  548.  
  549. Slider.MouseLeave:Connect(function()
  550. Screen.ToolTip.Visible = false
  551. end)
  552. end
  553. end
  554.  
  555. if Default == nil then
  556. function SliderInit:SetValue(Value)
  557. GlobalSliderValue = Value
  558. Slider.Slider.Bar.Size = UDim2.new(Value / Max,0,1,0)
  559. Slider.Value.PlaceholderText = Value
  560. Callback(Value)
  561. end
  562. else
  563. SetValue(DefaultLocal)
  564. end
  565.  
  566. function SliderInit:GetValue(Value)
  567. return GlobalSliderValue
  568. end
  569.  
  570. return SliderInit
  571. end
  572. function SectionInit:CreateDropdown(Name, OptionTable, Callback, InitialValue)
  573. local DropdownInit = {}
  574.  
  575. local Dropdown = Folder.Dropdown:Clone()
  576. Dropdown.Name = Name .. " D"
  577. Dropdown.Parent = Section.Container
  578.  
  579. Dropdown.Title.Text = Name
  580. Dropdown.Title.Size = UDim2.new(1,0,0,Dropdown.Title.TextBounds.Y + 5)
  581. Dropdown.Container.Position = UDim2.new(0,0,0,Dropdown.Title.TextBounds.Y + 5)
  582. Dropdown.Size = UDim2.new(1,-10,0,Dropdown.Title.TextBounds.Y + 25)
  583.  
  584. local DropdownToggle = false
  585.  
  586. Dropdown.MouseButton1Click:Connect(function()
  587. DropdownToggle = not DropdownToggle
  588. if DropdownToggle then
  589. Dropdown.Size = UDim2.new(1,-10,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y + Dropdown.Title.TextBounds.Y + 30)
  590. Dropdown.Container.Holder.Visible = true
  591. else
  592. Dropdown.Size = UDim2.new(1,-10,0,Dropdown.Title.TextBounds.Y + 25)
  593. Dropdown.Container.Holder.Visible = false
  594. end
  595. end)
  596.  
  597. function DropdownInit:AddOption(OptionName)
  598. local Option = Folder.Option:Clone()
  599. Option.Name = OptionName .. "Option"
  600. Option.Parent = Dropdown.Container.Holder.Container
  601.  
  602. Option.Title.Text = OptionName
  603. Option.BackgroundColor3 = Config.Color
  604. Option.Size = UDim2.new(1,0,0,Option.Title.TextBounds.Y + 5)
  605. Dropdown.Container.Holder.Size = UDim2.new(1,-5,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y)
  606. table.insert(Library.ColorTable, Option)
  607.  
  608. Option.MouseButton1Down:Connect(function()
  609. Option.BackgroundTransparency = 0
  610. end)
  611.  
  612. Option.MouseButton1Up:Connect(function()
  613. Option.BackgroundTransparency = 1
  614. end)
  615.  
  616. Option.MouseLeave:Connect(function()
  617. Option.BackgroundTransparency = 1
  618. end)
  619.  
  620. Option.MouseButton1Click:Connect(function()
  621. Dropdown.Container.Value.Text = OptionName
  622. Callback(OptionName)
  623. end)
  624. end
  625.  
  626. for _,OptionName in pairs(OptionTable) do
  627. DropdownInit:AddOption(OptionName)
  628. end
  629.  
  630. function DropdownInit:AddToolTip(Name)
  631. if tostring(Name):gsub(" ", "") ~= "" then
  632. Dropdown.MouseEnter:Connect(function()
  633. Screen.ToolTip.Text = Name
  634. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  635. Screen.ToolTip.Visible = true
  636. end)
  637. Dropdown.MouseLeave:Connect(function()
  638. Screen.ToolTip.Visible = false
  639. end)
  640. end
  641. end
  642.  
  643. function DropdownInit:GetOption()
  644. return Dropdown.Container.Value.Text
  645. end
  646.  
  647. function DropdownInit:SetOption(Name)
  648. for _,Option in pairs(Dropdown.Container.Holder.Container:GetChildren()) do
  649. if Option:IsA("TextButton") and string.find(Option.Name, Name) then
  650. Dropdown.Container.Value.Text = Option.Name
  651. Callback(Name)
  652. end
  653. end
  654. end
  655.  
  656. function DropdownInit:RemoveOption(Name)
  657. for _,Option in pairs(Dropdown.Container.Holder.Container:GetChildren()) do
  658. if Option:IsA("TextButton") and string.find(Option.Name, Name) then
  659. Option:Destroy()
  660. end
  661. end
  662. Dropdown.Container.Holder.Size = UDim2.new(1,-5,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y)
  663. Dropdown.Size = UDim2.new(1,-10,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y + Dropdown.Title.TextBounds.Y + 30)
  664. end
  665.  
  666. function DropdownInit:ClearOptions()
  667. for _, Option in pairs(Dropdown.Container.Holder.Container:GetChildren()) do
  668. if Option:IsA("TextButton") then
  669. Option:Destroy()
  670. end
  671. end
  672. Dropdown.Container.Holder.Size = UDim2.new(1,-5,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y)
  673. Dropdown.Size = UDim2.new(1,-10,0,Dropdown.Container.Holder.Container.ListLayout.AbsoluteContentSize.Y + Dropdown.Title.TextBounds.Y + 30)
  674. end
  675. if InitialValue then
  676. DropdownInit:SetOption(InitialValue)
  677. end
  678. return DropdownInit
  679. end
  680.  
  681. function SectionInit:CreateColorpicker(Name,Callback)
  682. local ColorpickerInit = {}
  683. local Colorpicker = Folder.Colorpicker:Clone()
  684. local Pallete = Folder.Pallete:Clone()
  685.  
  686. Colorpicker.Name = Name .. " CP"
  687. Colorpicker.Parent = Section.Container
  688. Colorpicker.Title.Text = Name
  689. Colorpicker.Size = UDim2.new(1,-10,0,Colorpicker.Title.TextBounds.Y + 5)
  690.  
  691. Pallete.Name = Name .. " P"
  692. Pallete.Parent = Screen
  693.  
  694. local ColorTable = {
  695. Hue = 1,
  696. Saturation = 0,
  697. Value = 0
  698. }
  699. local ColorRender = nil
  700. local HueRender = nil
  701. local ColorpickerRender = nil
  702. local function UpdateColor()
  703. Colorpicker.Color.BackgroundColor3 = Color3.fromHSV(ColorTable.Hue,ColorTable.Saturation,ColorTable.Value)
  704. Pallete.GradientPallete.BackgroundColor3 = Color3.fromHSV(ColorTable.Hue,1,1)
  705. Pallete.Input.InputBox.PlaceholderText = "RGB: " .. math.round(Colorpicker.Color.BackgroundColor3.R* 255) .. "," .. math.round(Colorpicker.Color.BackgroundColor3.G * 255) .. "," .. math.round(Colorpicker.Color.BackgroundColor3.B * 255)
  706. Callback(Colorpicker.Color.BackgroundColor3)
  707. end
  708.  
  709. Colorpicker.MouseButton1Click:Connect(function()
  710. if not Pallete.Visible then
  711. ColorpickerRender = RunService.RenderStepped:Connect(function()
  712. Pallete.Position = UDim2.new(0,Colorpicker.Color.AbsolutePosition.X - 129,0,Colorpicker.Color.AbsolutePosition.Y + 52)
  713. end)
  714. Pallete.Visible = true
  715. else
  716. Pallete.Visible = false
  717. ColorpickerRender:Disconnect()
  718. end
  719. end)
  720.  
  721. Pallete.GradientPallete.InputBegan:Connect(function(Input)
  722. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  723. if ColorRender then
  724. ColorRender:Disconnect()
  725. end
  726. ColorRender = RunService.RenderStepped:Connect(function()
  727. local Mouse = UserInputService:GetMouseLocation()
  728. local ColorX = math.clamp(Mouse.X - Pallete.GradientPallete.AbsolutePosition.X, 0, Pallete.GradientPallete.AbsoluteSize.X) / Pallete.GradientPallete.AbsoluteSize.X
  729. local ColorY = math.clamp((Mouse.Y - 37) - Pallete.GradientPallete.AbsolutePosition.Y, 0, Pallete.GradientPallete.AbsoluteSize.Y) / Pallete.GradientPallete.AbsoluteSize.Y
  730. Pallete.GradientPallete.Dot.Position = UDim2.new(ColorX,0,ColorY,0)
  731. ColorTable.Saturation = ColorX
  732. ColorTable.Value = 1 - ColorY
  733. UpdateColor()
  734. end)
  735. end
  736. end)
  737.  
  738. Pallete.GradientPallete.InputEnded:Connect(function(Input)
  739. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  740. if ColorRender then
  741. ColorRender:Disconnect()
  742. end
  743. end
  744. end)
  745.  
  746. Pallete.ColorSlider.InputBegan:Connect(function(Input)
  747. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  748. if HueRender then
  749. HueRender:Disconnect()
  750. end
  751. HueRender = RunService.RenderStepped:Connect(function()
  752. local Mouse = UserInputService:GetMouseLocation()
  753. local HueX = math.clamp(Mouse.X - Pallete.ColorSlider.AbsolutePosition.X, 0, Pallete.ColorSlider.AbsoluteSize.X) / Pallete.ColorSlider.AbsoluteSize.X
  754. ColorTable.Hue = 1 - HueX
  755. UpdateColor()
  756. end)
  757. end
  758. end)
  759.  
  760. Pallete.ColorSlider.InputEnded:Connect(function(Input)
  761. if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  762. if HueRender then
  763. HueRender:Disconnect()
  764. end
  765. end
  766. end)
  767.  
  768. function ColorpickerInit:UpdateColor(Color)
  769. local Hue, Saturation, Value = Color:ToHSV()
  770. Colorpicker.Color.BackgroundColor3 = Color3.fromHSV(Hue,Saturation,Value)
  771. Pallete.GradientPallete.BackgroundColor3 = Color3.fromHSV(Hue,1,1)
  772. Pallete.Input.InputBox.PlaceholderText = "RGB: " .. math.round(Colorpicker.Color.BackgroundColor3.R* 255) .. "," .. math.round(Colorpicker.Color.BackgroundColor3.G * 255) .. "," .. math.round(Colorpicker.Color.BackgroundColor3.B * 255)
  773. ColorTable = {
  774. Hue = Hue,
  775. Saturation = Saturation,
  776. Value = Value
  777. }
  778. Callback(Color)
  779. end
  780.  
  781. Pallete.Input.InputBox.FocusLost:Connect(function(Enter)
  782. if Enter then
  783. local ColorString = string.split(string.gsub(Pallete.Input.InputBox.Text," ", ""), ",")
  784. ColorpickerInit:UpdateColor(Color3.fromRGB(ColorString[1],ColorString[2],ColorString[3]))
  785. Pallete.Input.InputBox.Text = ""
  786. end
  787. end)
  788.  
  789. function ColorpickerInit:AddToolTip(Name)
  790. if tostring(Name):gsub(" ", "") ~= "" then
  791. Colorpicker.MouseEnter:Connect(function()
  792. Screen.ToolTip.Text = Name
  793. Screen.ToolTip.Size = UDim2.new(0,Screen.ToolTip.TextBounds.X + 5,0,Screen.ToolTip.TextBounds.Y + 5)
  794. Screen.ToolTip.Visible = true
  795. end)
  796.  
  797. Colorpicker.MouseLeave:Connect(function()
  798. Screen.ToolTip.Visible = false
  799. end)
  800. end
  801. end
  802.  
  803. return ColorpickerInit
  804. end
  805. return SectionInit
  806. end
  807. return TabInit
  808. end
  809. return WindowInit
  810. end
  811.  
  812. return Library
  813. end)()
  814.  
  815. local camera = workspace.CurrentCamera
  816. local RunService = game:GetService("RunService")
  817.  
  818. local HttpService = game:GetService("HttpService")
  819.  
  820. local list_of_talents_url = "https://pastebin.com/raw/Sv3VDgBj"
  821. local list_of_talents = HttpService:JSONDecode(game:HttpGet(list_of_talents_url))
  822.  
  823. local Config = {
  824. WindowName = "RubyTheSilent Hub [Deepwoken]",
  825. Color = Color3.fromRGB(255,128,64),
  826. }
  827.  
  828. local variables = {
  829. Mob = {
  830. NameTagColor = Color3.new(1,0,0),
  831. DistantTagColor = Color3.new(1,1,1)
  832. },
  833. Player = {
  834. NameTagColor = Color3.new(1,0,0),
  835. ExtraTagColor = Color3.new(1,0,0),
  836. DistantTagColor = Color3.new(1,1,1)
  837. },
  838. limit_distant = 6000,
  839. Text_Size = 18
  840. }
  841.  
  842. local Keybinds = {
  843. OpenUIKeyBind = Enum.KeyCode.RightAlt.Name
  844. }
  845.  
  846. if _G.Data == nil then
  847. _G.Data = {}
  848. end
  849. if _G.Data_Player == nil then
  850. _G.Data_Player = {}
  851. end
  852.  
  853. local Window = LibraryUI:CreateWindow(Config, game:GetService("CoreGui"))
  854. Window:Toggle(false)
  855.  
  856. local Tab1 = Window:CreateTab("Inspector")
  857. local Tab2 = Window:CreateTab("Debug")
  858. local Tab3 = Window:CreateTab("UI")
  859.  
  860. local Target_Section = Tab1:CreateSection("Target")
  861. local Resonance_Section = Tab1:CreateSection("Resonance")
  862. local Enchanment_Section = Tab1:CreateSection("Enchanment")
  863. local Oath_Section = Tab1:CreateSection("Oath")
  864. local Murmur_Section = Tab1:CreateSection("Murmur")
  865. local Rings_Section = Tab1:CreateSection("Rings")
  866. local Legendary_Section = Tab1:CreateSection("Legendary Talents")
  867. local Rare_Section = Tab1:CreateSection("Rare Talents")
  868. local Normal_Section = Tab1:CreateSection("Normal Talents")
  869. local Mantra_Section = Tab1:CreateSection("Mantras")
  870. local boon_Section = Tab1:CreateSection("Boons")
  871. local flaw_Section = Tab1:CreateSection("Flaws")
  872. local voidwalker_Section = Tab1:CreateSection("VoidWalker")
  873. local items_Section = Tab1:CreateSection("Items")
  874.  
  875. local UI_2_1 = Tab2:CreateSection("Debug")
  876. local UI_3_1 = Tab3:CreateSection("UI")
  877.  
  878. local playername_charactername_format = {}
  879. local CharacterName_to_Player = {}
  880.  
  881. for _, player in pairs(game:GetService("Players"):GetPlayers()) do
  882. local index_and_value = player:GetAttribute("CharacterName") .. " [ ".. player.Name .. " ]"
  883. playername_charactername_format[#playername_charactername_format+1] = index_and_value
  884. CharacterName_to_Player[index_and_value] = player
  885. end
  886.  
  887. local playerDropDown = Target_Section:CreateDropdown("Targets", playername_charactername_format, function(option)
  888. variables.Target = CharacterName_to_Player[option]
  889. end)
  890.  
  891. local Toggle4 = UI_3_1:CreateToggle("UI Toggle", nil, function(State)
  892. Window:Toggle(State)
  893. end)
  894.  
  895. local Error_log_toggle = UI_2_1:CreateToggle("Toggle Error Log", true, function()end)
  896. local Current_Target_Labels = {
  897. voidwalker_Label = voidwalker_Section:CreateLabel(""),
  898. Resonance_Label = Resonance_Section:CreateLabel(""),
  899. Enchanment_Label = Enchanment_Section:CreateLabel(""),
  900. Oath_Label = Oath_Section:CreateLabel(""),
  901. Murmur_Label = Murmur_Section:CreateLabel(""),
  902. Rings_Label = Rings_Section:CreateLabel(""),
  903. Legendary_Label = Legendary_Section:CreateLabel(""),
  904. Rare_Label = Rare_Section:CreateLabel(""),
  905. Normal_Label = Normal_Section:CreateLabel(""),
  906. Mantra_Label = Mantra_Section:CreateLabel(""),
  907. boon_Label = boon_Section:CreateLabel(""),
  908. flaw_Label = flaw_Section:CreateLabel(""),
  909. items_Label = items_Section:CreateLabel("")
  910. }
  911. function get_info(player)
  912. local backpack = player:FindFirstChild("Backpack")
  913. local Resonance = {}
  914. local Enchanment = {}
  915. local Oath = {}
  916. local Murmur = {}
  917. local Rings = {}
  918. local Legendaries = {}
  919. local Rares = {}
  920. local Normals = {}
  921. local Mantras = {}
  922. local Items = {}
  923. local boons = {}
  924. local flaws = {}
  925. local VoidWalker = ""
  926. if backpack then
  927. local BackpackChildren = backpack:GetChildren()
  928. for index = 1, #BackpackChildren do
  929. local object = BackpackChildren[index]
  930. if object.Name:find('Talent:Oath') then
  931. Oath[#Oath+1] = object.Name:gsub('Talent:Oath: ', '')
  932. elseif object.Name:find('Talent:Murmur') then
  933. Murmur[#Murmur+1] = object.Name:gsub('Talent:Murmur: ', '')
  934. elseif object.Name:find('Enchant:') then
  935. Enchanment[#Enchanment+1] = object.Name:gsub('Enchant:', '')
  936. elseif object.Name:find('Resonance:') then
  937. Resonance[#Resonance+1] = object.Name:gsub('Resonance:', '')
  938. elseif object.Name:find("Talent:Voidwalker Contract") then
  939. VoidWalker = "VoidWalker"
  940. elseif object.Name:find("Mantra:") then
  941. local target_string = object.Name:gsub('Mantra:', '')
  942. Mantras[#Mantras+1] = string.format("%s(%s)",target_string:sub(target_string:find("{{")+2,target_string:find("}}")-1),target_string:sub(1,target_string:find("{{")-1))
  943. elseif object.Name:find("Ring:") then
  944. Rings[#Rings+1] = object.Name:gsub('Ring:', '')
  945. elseif object.Name:find("Boon:") then
  946. boons[#boons+1] = object.Name:gsub('Boon:', '')
  947. elseif object.Name:find("Flaw:") then
  948. flaws[#flaws+1] = object.Name:gsub('Flaw:', '')
  949. else
  950. local found = false
  951. for _, name in pairs(list_of_talents["Legendary"]) do
  952. if object.Name:find(name) and not found then
  953. if (name == "Adept" and object.Name:gsub('Talent:', '') == "Adept") or name ~= "Adept" then
  954. Legendaries[#Legendaries+1] = object.Name:gsub('Talent:', '')
  955. found = true
  956. break
  957. end
  958. end
  959. end
  960. if not found then
  961. for _, name in pairs(list_of_talents["Rare"]) do
  962. if object.Name:find(name) and not found then
  963. Rares[#Rares+1] = object.Name:gsub('Talent:', '')
  964. found = true
  965. break
  966. end
  967. end
  968. if not found then
  969. if object.Name:find('Talent:') then
  970. Normals[#Normals+1] = object.Name:gsub('Talent:', '')
  971. else
  972. Items[#Items+1] = object.Name:sub(1,object.Name:find("$")-1)
  973. end
  974. end
  975. end
  976. end
  977. end
  978. end
  979. return VoidWalker, Resonance, Enchanment, Oath, Murmur, Rings, Legendaries, Rares, Normals, Mantras, boons, flaws, Items
  980. end
  981.  
  982. RunService:BindToRenderStep("Backpack Update",Enum.RenderPriority.Character.Value-1,function()
  983. if variables.Target ~= nil then
  984. local info = {get_info(variables.Target)}
  985. --[[
  986. 1 VoidWalker
  987. 2 Resonance
  988. 3 Enchanment
  989. 4 Oath
  990. 5 Murmur
  991. 6 Rings
  992. 7 Legendaries
  993. 8 Rares
  994. 9 Normals
  995. 10 Mantras
  996. 11 boons
  997. 12 flaws
  998. 13 Items
  999. --]]
  1000. Current_Target_Labels.voidwalker_Label:UpdateText(table.concat(info[1],"\n"))
  1001. Current_Target_Labels.Resonance_Label:UpdateText(table.concat(info[2],"\n"))
  1002. Current_Target_Labels.Enchanment_Label:UpdateText(table.concat(info[3],"\n"))
  1003. Current_Target_Labels.Oath_Label:UpdateText(table.concat(info[4],"\n"))
  1004. Current_Target_Labels.Murmur_Label:UpdateText(table.concat(info[5],"\n"))
  1005. Current_Target_Labels.Rings_Label:UpdateText(table.concat(info[6],"\n"))
  1006. Current_Target_Labels.Legendary_Label:UpdateText(table.concat(info[7],"\n"))
  1007. Current_Target_Labels.Rare_Label:UpdateText(table.concat(info[8],"\n"))
  1008. Current_Target_Labels.Normal_Label:UpdateText(table.concat(info[9],"\n"))
  1009. Current_Target_Labels.Mantra_Label:UpdateText(table.concat(info[10],"\n"))
  1010. Current_Target_Labels.boon_Label:UpdateText(table.concat(info[11],"\n"))
  1011. Current_Target_Labels.flaw_Label:UpdateText(table.concat(info[12],"\n"))
  1012. Current_Target_Labels.items_Label:UpdateText(table.concat(info[13],"\n"))
  1013. end
  1014. end)
  1015.  
  1016. Toggle4:CreateKeybind(Keybinds.OpenUIKeyBind, function(Key)
  1017. Keybinds.OpenUIKeyBind = Enum.KeyCode[Key].Name
  1018. end)
  1019.  
  1020. Toggle4:SetState(true)
  1021. else
  1022. rconsoleinfo("WRONG GAME BRO!!!!")
  1023. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement