· 4 years ago · Mar 13, 2021, 07:00 AM
1if not _G.require then
2 _G.require = require
3end
4
5--// API References
6local GUIData = (function()
7 -- Variables
8 _V = 1.11
9 local screenGui
10 local err,errcode=pcall(function()
11 screenGui = (script:FindFirstChild("ScreenGui")) or game:GetObjects("rbxassetid://2718157603")[1]:FindFirstChild("ScreenGui", true)
12 end)
13 if not err then
14 print("ERR:",errcode)
15 screenGui = game:GetService("ReplicatedStorage").CardinalityUI:Clone()
16 end
17 local Container = screenGui.Frame
18 local Opt = Container.OptionsFrame
19 local Checkbox = Opt.Checkbox
20 local Color = Opt.Color
21 local Frame = Opt.Frame
22 local Execute = Opt.Execute
23 local Mode = Opt.Mode
24 local Number = Opt.Number
25 local Toggle = Opt.Toggle
26 local Mods = screenGui.Mods
27 local ModLabel = Mods.Example
28
29 local TextService = game:GetService("TextService")
30 local UserInputService = game:GetService("UserInputService")
31 local HttpService = game:GetService("HttpService")
32 local Player = game:GetService("Players").LocalPlayer
33 local Mouse = Player:GetMouse()
34 syn = syn or nil
35 if syn then
36 syn.protect_gui(screenGui)
37 end
38 err,errcode=pcall(function()
39 screenGui.Parent = game:GetService("CoreGui")
40 end)
41 if not err then
42 print("ERR:",errcode)
43 screenGui.Parent = Player.PlayerGui
44 end
45
46 Container.Parent = nil
47 Checkbox.Parent = nil
48 Color.Parent = nil
49 Frame.Parent = nil
50 Execute.Parent = nil
51 Mode.Parent = nil
52 Number.Parent = nil
53 Toggle.Parent = nil
54 ModLabel.Parent = nil
55
56 local settingsArray = {{Object = screenGui},{}}
57 local saveData = {Options = {}, Hotkeys = {}}
58
59 local hotkeyFunctions = {}
60 local gui = {}
61
62 -- Save Functions
63 local writefile = writefile or function() end
64 local function Save()
65 local JSONData = HttpService:JSONEncode(saveData)
66 writefile("OpenGui.txt", JSONData)
67 end
68
69 -- Color Functions
70 local color = {}
71 local colors = {
72 TextDisabled = Color3.fromRGB(200, 200, 200),
73 TextEnabled = Color3.fromRGB(255, 255, 255),
74 }
75
76 local Colors = {
77 Color3.fromRGB(255, 73, 73),
78 Color3.fromRGB(255, 161, 66),
79 Color3.fromRGB(255, 233, 62),
80 Color3.fromRGB(137, 255, 64),
81 Color3.fromRGB(64, 255, 140),
82 Color3.fromRGB(66, 252, 255),
83 Color3.fromRGB(64, 147, 255),
84 Color3.fromRGB(255, 93, 253),
85 Color3.fromRGB(195, 110, 255),
86 Color3.fromRGB(255, 90, 134),
87 Color3.fromRGB(255, 255, 255),
88 Color3.fromRGB(209, 209, 209),
89 }
90
91 local function h2rgb(m1, m2, h)
92 if h<0 then h = h+1 end
93 if h>1 then h = h-1 end
94 if h*6<1 then
95 return m1+(m2-m1)*h*6
96 elseif h*2<1 then
97 return m2
98 elseif h*3<2 then
99 return m1+(m2-m1)*(2/3-h)*6
100 else
101 return m1
102 end
103 end
104
105 function color:rgbToHsv(r, g, b)
106 local a = 0
107 r, g, b, a = r / 255, g / 255, b / 255, a / 255
108 local max, min = math.max(r, g, b), math.min(r, g, b)
109 local h, s, v
110 v = max
111
112 local d = max - min
113 if max == 0 then s = 0 else s = d / max end
114
115 if max == min then
116 h = 0 -- achromatic
117 else
118 if max == r then
119 h = (g - b) / d
120 if g < b then h = h + 6 end
121 elseif max == g then h = (b - r) / d + 2
122 elseif max == b then h = (r - g) / d + 4
123 end
124 h = h / 6
125 end
126
127 return h, s, v
128 end
129
130 function color:hslToRgb(h, s, L)
131 h = h / 360
132 local m2 = L <= .5 and L*(s+1) or L+s-L*s
133 local m1 = L*2-m2
134 return
135 h2rgb(m1, m2, h+1/3), h2rgb(m1, m2, h), h2rgb(m1, m2, h-1/3)
136 end
137
138 function color:rgbToHsl(r, g, b)
139 local min = math.min(r, g, b)
140 local max = math.max(r, g, b)
141 local delta = max - min
142
143 local h, s, l = 0, 0, (min + max) / 2
144
145 if l > 0 and l < 0.5 then s = delta / (max + min) end
146 if l >= 0.5 and l < 1 then s = delta / (2 - max - min) end
147
148 if delta > 0 then
149 if max == r and max ~= g then h = h + (g-b) / delta end
150 if max == g and max ~= b then h = h + 2 + (b-r) / delta end
151 if max == b and max ~= r then h = h + 4 + (r-g) / delta end
152 h = h / 6
153 end
154
155 if h < 0 then h = h + 1 end
156 if h > 1 then h = h - 1 end
157
158 return h * 360, s, l
159 end
160
161 function color:adjustLightness(color3, amount)
162 local h, s, l = self:rgbToHsl(color3.r, color3.g, color3.b)
163 return Color3.new(self:hslToRgb(h, s, l + amount))
164 end
165
166 -- UI Functions
167 function gui.tween(object,style,direction,t,goal)
168 local tweenservice = game:GetService("TweenService")
169 local tweenInfo = TweenInfo.new(t,Enum.EasingStyle[style],Enum.EasingDirection[direction])
170 local tween = tweenservice:Create(object,tweenInfo,goal)
171 tween.Completed:Connect(function()
172 tween:Destroy()
173 end)
174 tween:Play()
175 return tween
176 end
177
178 function gui:makeDraggable(ui, callback)
179 local UserInputService = game:GetService("UserInputService")
180
181 local dragging
182 local dragInput
183 local dragStart
184 local startPos
185
186 local function update(input)
187 local delta = input.Position - dragStart
188 ui.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
189
190 if callback then
191 callback(ui.Position.X.Offset, ui.Position.Y.Offset)
192 end
193 end
194
195 ui.InputBegan:Connect(function(input)
196 if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
197 dragging = true
198 dragStart = input.Position
199 startPos = ui.Position
200
201 input.Changed:Connect(function()
202 if input.UserInputState == Enum.UserInputState.End then
203 dragging = false
204 end
205 end)
206 end
207 end)
208
209 ui.InputChanged:Connect(function(input)
210 if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
211 dragInput = input
212 end
213 end)
214
215 UserInputService.InputChanged:Connect(function(input)
216 if input == dragInput and dragging then
217 update(input)
218 end
219 end)
220 end
221
222 function gui:unpack(data, type)
223 if data == nil then return end
224 if type == "UDim2" then
225 return data and UDim2.new(data[1], data[2], data[3], data[4])
226 elseif type == "boolean" then
227 return data == 1 and true or false
228 elseif type == "Color3" then
229 return Color3.new(data[1], data[2], data[3])
230 end
231 return data
232 end
233
234 function gui:pack(data)
235 if typeof(data) == "UDim2" then
236 return {data.X.Scale, data.X.Offset, data.Y.Scale, data.Y.Offset}
237 elseif typeof(data) == "boolean" then
238 return data and 1 or 0
239 elseif typeof(data) == "Color3" then
240 return {data.r, data.g, data.b}
241 end
242 return data
243 end
244
245 function gui:getn(array)
246 local n = 0
247 for _, v in pairs(array) do
248 n = n + 1
249 end
250 return n
251 end
252
253 function gui:setText(textLabel, text)
254 text = tostring(text)
255 textLabel.Text = text
256 if textLabel:FindFirstChild("Opaque") then
257 textLabel.Opaque.Text = text
258 end
259 if textLabel:FindFirstChild("Shadow") then
260 textLabel.Shadow.Text = text
261 end
262 end
263
264 function gui:onDoubleTap(guiObject, callback)
265 local lastTap = tick()
266 guiObject.InputBegan:Connect(function(input)
267 if input.UserInputType == Enum.UserInputType.MouseButton1 then
268 if tick() - lastTap < 0.25 then
269 callback()
270 end
271 lastTap = tick()
272 end
273 end)
274 end
275
276 local connections = {}
277 function gui:connect(func)
278 table.insert(connections, func)
279 end
280
281 function gui:createList(guiObject, guiData)
282 local ListLayout = guiObject.OptionsFrame.UIListLayout
283 local Padding = guiObject.OptionsFrame.UIPadding
284 guiObject.OptionsFrame.UIListLayout.Changed:Connect(function(Property)
285 if Property == "AbsoluteContentSize" then
286 guiData.ySize = ListLayout.AbsoluteContentSize.Y + 2 + Padding.PaddingTop.Offset + ListLayout.Padding.Offset * 2
287 end
288 end)
289
290 gui:connect(function()
291 if guiObject:FindFirstChild("Title") then
292 local yRes = Mouse.ViewSizeY
293 local diff = yRes - (guiData.yPos + guiData.ySize)
294 local difference = math.clamp(diff, 0, 5000)
295 guiObject.OptionsFrame.CanvasSize = UDim2.new(1, 0, 1.001, guiData.ySize - 35)
296
297 if guiData.Open then
298 guiObject.OptionsFrame.Size = guiObject.OptionsFrame.Size:Lerp(UDim2.new(1, 0, 0, guiData.ySize + math.clamp(diff, -5000, 0)), 0.3)
299 else
300 guiObject.OptionsFrame.Size = guiObject.OptionsFrame.Size:Lerp(UDim2.new(1, 0, 0, 0), 0.3)
301 end
302
303 guiObject.Frame.Size = guiObject.OptionsFrame.Size
304 else
305 if guiData.Open then
306 guiObject.Size = guiObject.Size:Lerp(UDim2.new(1, -8, 0, 35 + guiData.ySize), 0.3)
307 else
308 guiObject.Size = guiObject.Size:Lerp(UDim2.new(1, -8, 0, 35), 0.3)
309 end
310 end
311 end)
312
313 if guiObject:FindFirstChild("Dropdown") then
314 guiObject.Dropdown.Visible = false
315 guiObject.Dropdown.MouseButton1Down:Connect(function()
316 guiData.Open = not guiData.Open
317 if guiData.Open then
318 guiObject.Dropdown.Image = "rbxassetid://3559638428"
319 else
320 guiObject.Dropdown.Image = "rbxassetid://3554238678"
321 end
322 end)
323 else
324 gui:onDoubleTap(guiObject, function()
325 guiData.Open = not guiData.Open
326 end)
327 end
328 end
329
330 function gui:textColorOnHover(guiObject, guiData)
331 local hover = guiData.baseColor or guiObject.TextColor3
332 local default = color:adjustLightness(hover, -0.075)
333 local mdown = color:adjustLightness(hover, -0.15)
334 local mouseIn
335
336 local function update()
337 if guiData.baseColor then
338 hover = guiData.baseColor or guiObject.TextColor3
339 default = color:adjustLightness(hover, -0.075)
340 mdown = color:adjustLightness(hover, -0.15)
341 end
342 end
343
344 guiObject.MouseEnter:Connect(function()
345 update()
346 gui.tween(guiObject, "Sine", "Out", 0.25, {
347 TextColor3 = hover;
348 })
349 mouseIn = true
350 end)
351
352 guiObject.MouseLeave:Connect(function()
353 mouseIn = false
354 update()
355 gui.tween(guiObject, "Sine", "Out", 0.25, {
356 TextColor3 = default;
357 })
358 end)
359
360 guiObject.InputBegan:Connect(function(input)
361 if input.UserInputType == Enum.UserInputType.MouseButton1 then
362 update()
363 gui.tween(guiObject, "Sine", "Out", 0.25, {
364 TextColor3 = mdown;
365 })
366 end
367 end)
368
369 guiObject.InputEnded:Connect(function(input)
370 if input.UserInputType == Enum.UserInputType.MouseButton1 then
371 update()
372 gui.tween(guiObject, "Sine", "Out", 0.25, {
373 TextColor3 = mouseIn and hover or default;
374 })
375 end
376 end)
377
378 guiObject.TextColor3 = default
379 end
380
381 function gui:sliderXY(sliderFrame, inputObjects, callback)
382 local inputDown = false
383
384 local function refresh(c1, c2)
385 local sliderX = sliderFrame.AbsolutePosition.X + sliderFrame.AbsoluteSize.X
386 local sliderY = sliderFrame.AbsolutePosition.Y + sliderFrame.AbsoluteSize.Y
387
388 local distX = sliderX - Mouse.X
389 local distY = sliderY - Mouse.Y
390
391 local deltaX = 1-math.clamp(distX / sliderFrame.AbsoluteSize.X, 0, 1)
392 local deltaY = 1-math.clamp(distY / sliderFrame.AbsoluteSize.Y, 0, 1)
393
394 if callback then
395 callback(c1 or deltaX, c2 or deltaY)
396 end
397 end
398
399 for _, obj in pairs(inputObjects) do
400 obj.InputBegan:Connect(function(input)
401 if input.UserInputType == Enum.UserInputType.MouseButton1 then
402 inputDown = true
403 refresh()
404 end
405 end)
406 obj.InputEnded:Connect(function(input)
407 if input.UserInputType == Enum.UserInputType.MouseButton1 then
408 inputDown = false
409 refresh()
410 end
411 end)
412 obj.InputChanged:Connect(function(input)
413 if input == nil or input.UserInputType == Enum.UserInputType.MouseMovement then
414 if inputDown then
415 refresh()
416 end
417 end
418 end)
419 end
420
421 return refresh
422 end
423
424 function gui:createSlider(sliderFrame, inputObjects, callback)
425 local slider = sliderFrame.Value
426 local inputDown = false
427
428 local absPos = sliderFrame.AbsolutePosition.X + sliderFrame.AbsoluteSize.X
429 local absSize = sliderFrame.AbsoluteSize.X
430
431 local function refresh(custom)
432 local mouseX = Mouse.X
433 local sliderX = absPos
434 local dist = sliderX - mouseX
435 local delta = 1 - math.clamp(dist / absSize, 0, 1)
436
437 if custom then
438 delta = custom
439 end
440
441 slider.Size = UDim2.new(delta, 0, 1, 0)
442 if callback then
443 callback(delta, custom)
444 end
445 end
446
447 for _, obj in pairs(inputObjects) do
448 obj.InputBegan:Connect(function(input)
449 if input.UserInputType == Enum.UserInputType.MouseButton1 then
450 inputDown = true
451 absPos = sliderFrame.AbsolutePosition.X + sliderFrame.AbsoluteSize.X
452 absSize = sliderFrame.AbsoluteSize.X
453 refresh()
454 end
455 end)
456 obj.InputEnded:Connect(function(input)
457 if input.UserInputType == Enum.UserInputType.MouseButton1 then
458 inputDown = false
459 refresh()
460 end
461 end)
462 obj.InputChanged:Connect(function(input)
463 if input == nil or input.UserInputType == Enum.UserInputType.MouseMovement then
464 if inputDown then
465 refresh()
466 end
467 end
468 end)
469 end
470
471 return refresh
472 end
473
474 function gui:textSize(txt, vSize)
475 return TextService:GetTextSize(txt.Text, txt.TextSize, txt.Font, vSize)
476 end
477
478 local currentHint = 0
479
480 function gui:addHint(guiObject, hintText)
481 local hintKey = math.random()
482 guiObject.MouseEnter:Connect(function()
483 hintKey = math.random()
484 currentHint = hintKey
485
486 wait(2)
487
488 if currentHint == hintKey then
489 gui:setText(screenGui.Hint, " " .. hintText .. " ")
490 local textSize = gui:textSize(screenGui.Hint, Vector2.new(2500, 500))
491 screenGui.Hint.Position = UDim2.new(0, Mouse.X, 0, Mouse.Y + 4)
492 screenGui.Hint.Size = UDim2.new(0, textSize.X, 0, textSize.Y)
493 screenGui.Hint.Visible = true
494 end
495 end)
496
497 guiObject.MouseLeave:Connect(function()
498 hintKey = math.random()
499 end)
500
501 Mouse.Move:Connect(function()
502 if currentHint == hintKey then
503 screenGui.Hint.Visible = false
504 end
505 end)
506 end
507
508 -- UI Type Library
509 local lib = {}
510
511 function lib.Color(data, dataArray)
512 local guiObject = Color:Clone()
513 local color3Value = gui:unpack(saveData.Options[data.ID].Value, "Color3") or data.Default or Color3.new(1, 1, 1)
514 local guiData = {}
515
516 local HSV = color3Value
517 local H, S, V = color:rgbToHsv(HSV.r * 255, HSV.g * 255, HSV.b * 255)
518
519 local newValue = function()
520 HSV = Color3.fromHSV(H, S, V)
521 guiObject.SV.BackgroundColor3 = Color3.fromHSV(H, 1, 1)
522 guiObject.Indicator.BackgroundColor3 = HSV
523 saveData.Options[data.ID].Value = gui:pack(HSV, "Color3")
524
525 guiObject.R.Text = math.floor(HSV.r * 255)
526 guiObject.G.Text = math.floor(HSV.g * 255)
527 guiObject.B.Text = math.floor(HSV.b * 255)
528
529 if data.Callback then
530 data.Callback(HSV)
531 end
532 end
533
534 local function updateHSV()
535 H, S, V = color:rgbToHsv(HSV.r * 255, HSV.g * 255, HSV.b * 255)
536 end
537
538 local H_set = gui:sliderXY(guiObject.H, {guiObject.H}, function(X, Y, u)
539 if not u then H = 1 - Y end
540 guiObject.H.Locator.Position = UDim2.new(0.5, 0, Y, 0)
541 newValue()
542 end)
543
544 local SV_set = gui:sliderXY(guiObject.SV, {guiObject.SV}, function(X, Y, u)
545 if not u then S = X; V = 1 - Y; end
546 guiObject.SV.Locator.Position = UDim2.new(X, 0, Y, 0)
547 newValue()
548 end)
549
550 guiObject.R.FocusLost:Connect(function()
551 HSV = Color3.new(guiObject.R.Text / 255, HSV.g, HSV.b)
552 updateHSV()
553 newValue()
554 end)
555 guiObject.G.FocusLost:Connect(function()
556 HSV = Color3.new(HSV.r, guiObject.G.Text / 255, HSV.b)
557 updateHSV()
558 newValue()
559 end)
560 guiObject.B.FocusLost:Connect(function()
561 HSV = Color3.new(HSV.r, HSV.g, guiObject.B.Text / 255)
562 updateHSV()
563 newValue()
564 end)
565
566 newValue()
567 SV_set(S, 1 - V)
568 H_set(0, H)
569
570 guiData.ySize = 0
571 guiData.Open = false
572 guiData.baseColor = colors.TextEnabled
573
574 gui:setText(guiObject.Label, data.Name)
575 gui:textColorOnHover(guiObject.Label, guiData)
576
577 return guiObject
578 end
579
580 function lib.Number(data, dataArray)
581 local guiObject = Number:Clone()
582 local Value = gui:unpack(saveData.Options[data.ID].Value, "number") or data.Default or math.floor(data.Min + (data.Max - data.Min) / 2)
583 local guiData = {}
584
585 local dMax = data.Max - data.Min
586 local dValue = (Value - data.Min) / dMax
587
588 data.Round = data.Round or 1
589
590 local newValue = function(delta)
591 local exactValue = data.Min + (data.Max - data.Min) * delta
592 Value = math.floor(exactValue / data.Round) * data.Round
593 Value = math.clamp(Value, data.Min, data.Max)
594 guiObject.Indicator.Value.Text = tostring(Value)
595
596 if data.Callback then
597 data.Callback(Value)
598 end
599 saveData.Options[data.ID].Value = gui:pack(Value, "number")
600 end
601
602 local slideSet = gui:createSlider(guiObject.ValueFrame, {guiObject.Label, guiObject.Indicator}, newValue)
603 slideSet(math.clamp(dValue, 0, 1))
604
605 guiObject.Indicator.MouseButton1Down:Connect(newValue)
606 guiObject.Label.MouseButton1Down:Connect(newValue)
607 newValue(math.clamp(dValue, 0, 1))
608
609 guiData.ySize = 0
610 guiData.Open = false
611 guiData.baseColor = colors.TextEnabled
612
613 gui:createList(guiObject, guiData)
614 gui:setText(guiObject.Label, data.Name)
615 gui:textColorOnHover(guiObject.Label, guiData)
616
617 return guiObject
618 end
619
620 function lib.Execute(data, dataArray)
621 local guiObject = Execute:Clone()
622 local guiData = {}
623
624 local newValue = function(val)
625 if data.Callback then
626 data.Callback()
627 end
628 end
629
630 guiObject.MouseEnter:Connect(function()
631 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {Size = UDim2.new(0, 40, 0, 25)})
632 end)
633
634 guiObject.MouseLeave:Connect(function()
635 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {Size = UDim2.new(0, 0, 0, 25)})
636 end)
637
638 guiObject.Indicator.MouseButton1Down:Connect(newValue)
639 guiObject.Label.MouseButton1Down:Connect(newValue)
640 newValue(true)
641
642 guiData.ySize = 0
643 guiData.Open = false
644 guiData.baseColor = colors.TextEnabled
645
646 gui:createList(guiObject, guiData)
647 gui:setText(guiObject.Label, data.Name)
648 gui:textColorOnHover(guiObject.Label, guiData)
649
650 return guiObject
651 end
652
653 function lib.Mode(data, dataArray)
654 local guiObject = Mode:Clone()
655 local valueIndex = gui:unpack(saveData.Options[data.ID].Value, "number") or data.Default or 1
656 local guiData = {}
657
658 local newValue = function(val)
659 if val == true then else
660 valueIndex = (valueIndex % #data.Modes) + 1
661 end
662
663 local Value = data.Modes[valueIndex]
664 gui:setText(guiObject.Mode, Value)
665
666 if data.Callback then
667 data.Callback(Value)
668 end
669 saveData.Options[data.ID].Value = gui:pack(valueIndex)
670 end
671
672 guiObject.Mode.MouseButton1Down:Connect(newValue)
673 guiObject.Label.MouseButton1Down:Connect(newValue)
674 newValue(true)
675
676 guiData.ySize = 0
677 guiData.Open = false
678 guiData.baseColor = colors.TextEnabled
679
680 gui:createList(guiObject, guiData)
681 gui:setText(guiObject.Label, data.Name)
682 gui:textColorOnHover(guiObject.Label, guiData)
683
684 return guiObject
685 end
686
687 function lib.Hotkey(data, dataArray)
688 local guiObject = Mode:Clone()
689 local hotkeyInput = gui:unpack(saveData.Hotkeys[data.ID], "string") or data.Hotkey or ""
690 local guiData = {}
691
692 local lastInput = hotkeyInput
693 local mouseIn = false
694
695 guiObject.Name = "Z"
696
697 local newValue = function(val)
698 local input
699 gui:setText(guiObject.Mode, "...")
700 saveData.Hotkeys[data.ID] = nil
701
702 if not val then
703 input = lastInput
704 mouseIn = true
705
706 lastInput = nil
707
708 repeat wait() until mouseIn == false or lastInput
709 end
710
711 if not lastInput then
712 lastInput = hotkeyInput
713 end
714
715 saveData.Hotkeys[data.ID] = tostring(lastInput)
716 hotkeyFunctions[data.ID] = data.callback
717
718 hotkeyInput = tostring(lastInput)
719 saveData.Options[data.ID].Value = hotkeyInput
720 gui:setText(guiObject.Mode, hotkeyInput:sub(14))
721 end
722
723 UserInputService.InputBegan:Connect(function(input)
724 if input.KeyCode == Enum.KeyCode.Unknown then return end
725 if input.KeyCode == Enum.KeyCode.Backspace then lastInput = "" return end
726 lastInput = tostring(input.KeyCode)
727 end)
728
729 guiObject.Mode.MouseButton1Down:Connect(function() newValue() end)
730 guiObject.Label.MouseButton1Down:Connect(function() newValue() end)
731 guiObject.MouseLeave:Connect(function()
732 mouseIn = false
733 end)
734 newValue(true)
735
736 guiData.ySize = 0
737 guiData.Open = false
738 guiData.baseColor = colors.TextEnabled
739
740 gui:createList(guiObject, guiData)
741 gui:setText(guiObject.Label, "Hotkey")
742 gui:textColorOnHover(guiObject.Label, guiData)
743
744 guiObject.Parent = dataArray.Object.OptionsFrame
745
746 return guiObject
747 end
748
749 function lib.Toggle(data, dataArray)
750 local guiObject = Toggle:Clone()
751 local Value = gui:unpack(saveData.Options[data.ID].Value, "boolean") or data.Default or false
752 local guiData = {}
753
754 local modFrame = ModLabel:Clone()
755 modFrame.Parent = Mods
756 modFrame.TextColor3 = Colors[math.random(1, #Colors)]
757 modFrame.Visible = false
758 gui:setText(modFrame, data.Name)
759
760 guiObject.Name = data.Name
761
762 local newValue = function(val, set)
763 if val == true then
764 else
765 if set then
766 Value = set
767 else
768 Value = not Value
769 end
770 end
771
772 if Value then
773 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {BackgroundColor3 = Color3.fromRGB(60, 222, 60)})
774 guiObject.Indicator.Text = "ON"
775 guiData.baseColor = colors.TextEnabled
776 else
777 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {BackgroundColor3 = Color3.fromRGB(222, 60, 60)})
778 guiObject.Indicator.Text = "OFF"
779 guiData.baseColor = colors.TextDisabled
780 end
781
782 if data.Callback then
783 data.Callback(Value)
784 end
785
786 saveData.Options[data.ID].Value = gui:pack(Value)
787 modFrame.Visible = Value
788
789 end
790
791 guiObject.MouseEnter:Connect(function()
792 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {Size = UDim2.new(0, 40, 0, 25)})
793 end)
794
795 guiObject.MouseLeave:Connect(function()
796 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {Size = UDim2.new(0, 0, 0, 25)})
797 end)
798
799 gui.tween(guiObject.Indicator, "Sine", "Out", .25, {Size = UDim2.new(0, 0, 0, 25)})
800 guiObject.Indicator.MouseButton1Down:Connect(function() newValue() end)
801 guiObject.Label.MouseButton1Down:Connect(function() newValue() end)
802 newValue(true)
803
804 guiData.ySize = 0
805 guiData.Open = false
806 guiData.baseColor = colors.TextDisabled
807
808 gui:createList(guiObject, guiData)
809 gui:setText(guiObject.Label, data.Name)
810 gui:textColorOnHover(guiObject.Label, guiData)
811
812 data.callback = newValue
813
814 return guiObject
815 end
816
817 function lib.Checkbox(data, dataArray)
818 local guiObject = Checkbox:Clone()
819 local Value = gui:unpack(saveData.Options[data.ID].Value, "boolean") or data.Default or false
820 local guiData = {}
821
822 guiObject.Name = "0"
823
824 local newValue = function(val)
825 if val == true then else
826 Value = not Value
827 end
828 if Value then
829 gui.tween(guiObject.Indicator, "Sine", "Out", .35, {Size = UDim2.new(0, 35, 0, 35)})
830 guiData.baseColor = colors.TextEnabled
831 else
832 gui.tween(guiObject.Indicator, "Sine", "Out", .35, {Size = UDim2.new(0, 0, 0, 35)})
833 guiData.baseColor = colors.TextDisabled
834 end
835 if data.Callback then
836 data.Callback(Value)
837 end
838 saveData.Options[data.ID].Value = gui:pack(Value)
839 end
840
841 guiObject.Indicator.MouseButton1Down:Connect(newValue)
842 guiObject.Label.MouseButton1Down:Connect(newValue)
843 newValue(true)
844
845 guiData.ySize = 0
846 guiData.Open = false
847 guiData.baseColor = colors.TextDisabled
848
849 gui:createList(guiObject, guiData)
850 gui:setText(guiObject.Label, data.Name)
851 gui:textColorOnHover(guiObject.Label, guiData)
852
853 return guiObject
854 end
855
856 function lib.Frame(data, dataArray)
857 local guiObject = Frame:Clone()
858
859 local guiData = {}
860 guiData.ySize = 0
861 guiData.Open = false
862
863 gui:createList(guiObject, guiData)
864 gui:setText(guiObject.Label, data.Name)
865 gui:textColorOnHover(guiObject.Label, guiData)
866
867 return guiObject
868 end
869
870 function lib.Container(data, dataArray)
871 local guiObject = Container:Clone()
872
873 guiObject.Position = gui:unpack(saveData.Options[data.ID].Position, "UDim2") or UDim2.new(0, 3, 0, 3 + gui:getn(settingsArray[2]) * 38)
874
875 local guiData = {}
876 guiData.yPos = 0
877 guiData.ySize = 0
878 guiData.Open = false
879
880 gui:textColorOnHover(guiObject.Title, guiData)
881 gui:createList(guiObject, guiData)
882 gui:setText(guiObject.Title, data.Name)
883 gui:makeDraggable(guiObject, function(x, y)
884 guiData.yPos = y
885 saveData.Options[data.ID].Position = gui:pack(guiObject.Position)
886 end)
887
888 return guiObject
889 end
890
891 -- UI Creation Library
892 function gui.create(self, guiType, data)
893 if self == gui then
894 self = settingsArray
895 end
896
897 data.ID = data.Name .. "_" .. (self[1].Name or "TOP")
898
899 if not saveData.Options[data.ID] then
900 saveData.Options[data.ID] = {}
901 end
902
903 if self[1].Object:FindFirstChild("Dropdown") then
904 self[1].Object.Dropdown.Visible = true
905 end
906
907 local dataArray = {}
908 local objectArray = {}
909 local selfArray = {dataArray, objectArray, create = gui.create, callback = data.Callback}
910 dataArray.Name = data.Name
911 dataArray.Data = data
912 dataArray.Object = lib[guiType](data, dataArray)
913 dataArray.self = selfArray
914
915 if guiType == "Toggle" then
916 lib.Hotkey(data, dataArray)
917 end
918 if data.Hint then
919 local Object = dataArray.Object
920 gui:addHint(Object:FindFirstChild("Title") or Object:FindFirstChild("Label"), data.Hint)
921 end
922
923 self[1][data.Name] = selfArray
924 self[2][data.Name] = dataArray.Object
925
926 dataArray.Object.Parent = self[1].Object:FindFirstChild("OptionsFrame") or self[1].Object
927
928 return dataArray
929 end
930
931 -- Connection Stuff
932 game:GetService("RunService").RenderStepped:Connect(function()
933 for _, func in pairs(connections) do
934 func()
935 end
936 end)
937
938 UserInputService.InputBegan:Connect(function(input, gameProcessed)
939 if gameProcessed then return end
940 for id, key in pairs(saveData.Hotkeys) do
941 if key == tostring(input.KeyCode) then
942 hotkeyFunctions[id]()
943 end
944 end
945 end)
946
947 Mods.Text = "OpenGui " .. _V
948
949 game.Close:Connect(function()
950 Save()
951 end)
952
953 return {gui, saveData, screenGui}
954end)()
955
956local notify = {Title ="HENTAI", Text ="Got It?", Duration = 120, Button1 = "OK"}
957
958local _Chams = (function()
959 --// Variables
960 local RunService = game:GetService("RunService")
961 local Players = game:GetService("Players")
962 local Player = Players.LocalPlayer
963 local Screen = Instance.new("ScreenGui")
964 local Viewport = Instance.new("ViewportFrame", Screen)
965
966 local module = {}
967 local characters = {}
968 local clones = {}
969 local parts = {}
970
971 module.Options = {
972 Enabled = false,
973 Parent = script.Parent or game.CoreGui,
974 Color = Color3.new(1, 1, 1),
975 ShowDescendants = false,
976 TeamColor = false,
977 ShowSelf = false,
978 ShowTeam = false,
979 Mode = "Shader",
980 Opacity = 1,
981 MaxDistance = 500,
982 }
983 --// Edits
984 Viewport.Size = UDim2.new(1, 0, 1, 0)
985 Viewport.BackgroundTransparency = 1
986 Viewport.CurrentCamera = workspace.CurrentCamera
987 Screen.IgnoreGuiInset = true
988 --// Functions
989 local function getParts(Model)
990 local parts = {}
991 local descendants = Model:GetDescendants()
992 local descendantsn = #descendants
993 for i = 1, descendantsn do
994 local desc = descendants[i]
995 if desc:IsA("BasePart") then
996 table.insert(parts, desc)
997 end
998 end
999 return parts
1000 end
1001 local function getPart(Model)
1002 return Model.PrimaryPart or Model:FindFirstChild("HumanoidRootPart") or Model:FindFirstChildWhichIsA("Part")
1003 end
1004 function module:Clone(Object)
1005 local isArchivable = Object.Archivable
1006 local Clone
1007 Object.Archivable = true
1008 Clone = Object:Clone()
1009 Object.Archivable = isArchivable
1010 if module.Options.Mode == "Shader" then
1011 Viewport.Ambient = Color3.fromRGB(200, 200, 200)
1012 else
1013 Viewport.Ambient = Color3.fromRGB(255, 255, 255)
1014 end
1015 for _, child in pairs(Clone:GetDescendants()) do
1016 if child:IsA("Script") or child:IsA("LocalScript") or child:IsA("Sound") then
1017 child:Destroy()
1018 elseif child:IsA("Humanoid") then
1019 child.DisplayDistanceType = "None"
1020 elseif module.Options.Mode ~= "Shader" then
1021 if child:IsA("SpecialMesh") then
1022 if module.Options.Mode ~= "ForceField" then
1023 child.TextureId = ""
1024 end
1025 elseif child:IsA("MeshPart") then
1026 if module.Options.Mode ~= "ForceField" then
1027 child.TextureID = ""
1028 end
1029 elseif child:IsA("BasePart") then
1030 if module.Options.Mode ~= "ForceField" then
1031 child.Material = Enum.Material.Neon
1032 else
1033 child.Material = Enum.Material.ForceField
1034 end
1035 elseif child:IsA("Clothing") or child:IsA("Decal") then
1036 child:Destroy()
1037 end
1038 end
1039 end
1040 return Clone
1041 end
1042 function module:Enable()
1043 module.Options.Enabled = true
1044 Screen.Parent = module.Options.Parent
1045 module:ReloadCharacters()
1046 end
1047
1048 function module:Disable()
1049 module.Options.Enabled = false
1050 Screen.Parent = nil
1051 end
1052
1053 function module:ReloadCharacters()
1054 Viewport:ClearAllChildren()
1055 for player, character in pairs(characters) do
1056 local clone = module:Clone(character)
1057 clone.Name = player.Name
1058 clone.Parent = Viewport
1059 clones[player] = clone
1060 end
1061 end
1062
1063 local function newPlayer(player)
1064 if player.Character then
1065 characters[player] = player.Character
1066
1067 local clone = module:Clone(player.Character)
1068 clone.Name = player.Name
1069 clone.Parent = Viewport
1070 clones[player] = clone
1071 end
1072 player.CharacterAdded:Connect(function(char)
1073 if clones[player] then
1074 clones[player]:Destroy()
1075 clones[player] = nil
1076 end;if characters[player] then
1077 characters[player]:Destroy()
1078 characters[player] = nil
1079 end
1080
1081 characters[player] = char
1082
1083 local clone = module:Clone(char)
1084 clone.Name = player.Name
1085 clone.Parent = Viewport
1086 clones[player] = clone
1087 end)
1088 end
1089
1090 Players.PlayerAdded:Connect(newPlayer)
1091 Players.PlayerRemoving:Connect(function(player)
1092 if clones[player] then
1093 clones[player]:Destroy()
1094 clones[player] = nil
1095 end;if characters[player] then
1096 characters[player]:Destroy()
1097 characters[player] = nil
1098 end
1099 end)
1100 for _, player in pairs(Players:GetPlayers()) do
1101 newPlayer(player)
1102 end
1103 RunService.RenderStepped:Connect(function()
1104 if module.Options.Enabled then
1105 for player, character in pairs(characters) do
1106 local clone = clones[player]
1107 local target = getPart(clone)
1108 if target then
1109 if ((player.Team == Player.Team and module.Options.ShowTeam) or player.Team ~= Player.Team) and target and (target.Position - workspace.CurrentCamera.CFrame.p).Magnitude <= module.Options.MaxDistance then
1110 if (player == Player and module.Options.ShowSelf) or player ~= Player then
1111 local parts = getParts(clone)
1112 for i = 1, #parts do
1113 local obj = parts[i]
1114 local cor = character:FindFirstChild(obj.Name, true)
1115 if character:FindFirstChild(obj.Parent.Name) then
1116 cor = character:FindFirstChild(obj.Parent.Name):FindFirstChild(obj.Name)
1117 end
1118 if cor and obj then
1119 if module.Options.TeamColor then
1120 obj.Color = player.TeamColor.Color
1121 elseif module.Options.Mode ~= "Shader" then
1122 obj.Color = Color3.new(1, 1, 1)
1123 end
1124 if module.Options.ShowDescendants then
1125 obj.CFrame = cor.CFrame
1126 elseif obj.Parent == clone then
1127 obj.CFrame = cor.CFrame
1128 else
1129 obj.CFrame = CFrame.new(10000, 10000, 10000)
1130 end
1131 end
1132 end
1133 if clone.Parent == nil then
1134 clone.Parent = Viewport
1135 end
1136 else
1137 clone.Parent = nil
1138 end
1139 else
1140 clone.Parent = nil
1141 end
1142 else
1143 clone.Parent = nil
1144 end
1145 end
1146 Viewport.ImageColor3 = module.Options.Color
1147 Viewport.ImageTransparency = 1 - module.Options.Opacity
1148 end
1149 end)
1150 return module
1151end)()
1152
1153--[[local _ManaFly = (function()
1154 --// Variables
1155 local module = {}
1156
1157 local RunService = game:GetService("RunService")
1158 local Players = game:GetService("Players")
1159 local Player = Players.LocalPlayer
1160
1161 local MANAFLY = nil
1162 local leftorright,upordown,backorforward = 0,0,0
1163
1164 module.Options = {
1165 Enabled = false,
1166 Color = Color3.new(1, 0, 0),
1167 speed = 0,
1168 Opacity = 0,
1169 PartMaterial = Enum.Material.Air,
1170 Up="x",
1171 Down="z",
1172 Size = 2,
1173 CFrameOffset = 3.5,
1174 }
1175 function module:Enable()
1176 module.Options.Enabled = true
1177 leftorright,upordown,backorforward = 0,0,0
1178 end
1179
1180 function module:Disable()
1181 module.Options.Enabled = false
1182 leftorright,upordown,backorforward = 0,0,0
1183 end
1184 function module:SpeedChange(Speed)
1185 if leftorright > 0 then
1186 leftorright = Speed
1187 elseif leftorright < 0 then
1188 leftorright = -Speed
1189 end
1190 if upordown > 0 then
1191 upordown = Speed
1192 elseif upordown < 0 then
1193 upordown = -Speed
1194 end
1195 if backorforward > 0 then
1196 backorforward = Speed
1197 elseif backorforward < 0 then
1198 backorforward = -Speed
1199 end
1200 end
1201 local function fly()
1202 if not MANAFLY then
1203 MANAFLY = Instance.new("Part")
1204 end
1205 MANAFLY.Parent = workspace
1206 MANAFLY.Size = Vector3.new(module.Options.Size,1,module.Options.Size)
1207 MANAFLY.Transparency = module.Options.Opacity
1208 MANAFLY.Name = "MANAFLYPART"
1209 MANAFLY.Material = module.Options.PartMaterial
1210 MANAFLY.Color = module.Options.Color
1211 MANAFLY.Anchored = true
1212 if module.Options.Enabled then
1213 local Character = Player.Character
1214 local PrimaryPartCFrame = Character:GetPrimaryPartCFrame()
1215 Character:SetPrimaryPartCFrame(PrimaryPartCFrame:Lerp(PrimaryPartCFrame*CFrame.new(leftorright,upordown,backorforward),1))
1216 MANAFLY.CFrame = Character.HumanoidRootPart.CFrame * CFrame.new(0,-module.Options.CFrameOffset,0)
1217 end
1218 end
1219 RunService:BindToRenderStep("MANAFLY",1,fly)
1220 Player:GetMouse().KeyDown:Connect(function(k)
1221 if not module.Options.Enabled then return end
1222 if k == "w" then
1223 backorforward = backorforward - module.Options.speed
1224 elseif k == "s" then
1225 backorforward = backorforward + module.Options.speed
1226 elseif k == "a" then
1227 leftorright = leftorright - module.Options.speed
1228 elseif k == "d" then
1229 leftorright = leftorright + module.Options.speed
1230 elseif k == module.Options.Down then
1231 upordown = upordown - module.Options.speed
1232 elseif k == module.Options.Up then
1233 upordown = upordown + module.Options.speed
1234 end
1235 end)
1236 Player:GetMouse().KeyUp:Connect(function(k)
1237 if not module.Options.Enabled then
1238 return
1239 end
1240 if backorforward == 0 and leftorright == 0 and upordown == 0 then
1241 return
1242 end
1243 if k == "w" then
1244 backorforward = backorforward + module.Options.speed
1245 elseif k == "s" then
1246 backorforward = backorforward - module.Options.speed
1247 elseif k == "a" then
1248 leftorright = leftorright + module.Options.speed
1249 elseif k == "d" then
1250 leftorright = leftorright - module.Options.speed
1251 elseif k == module.Options.Down then
1252 upordown = upordown + module.Options.speed
1253 elseif k == module.Options.Up then
1254 upordown = upordown - module.Options.speed
1255 end
1256 end)
1257 return module
1258end)()
1259--]]
1260local _ManaRun= (function()
1261 --// Variables
1262 local module = {}
1263
1264 local RunService = game:GetService("RunService")
1265 local Players = game:GetService("Players")
1266 local Player = Players.LocalPlayer
1267
1268 local leftorright,backorforward = 0,0
1269
1270 module.Options = {
1271 Enabled = false,
1272 speed = 0,
1273 }
1274 function module:Enable()
1275 module.Options.Enabled = true
1276 leftorright,backorforward = 0,0
1277 end
1278
1279 function module:Disable()
1280 module.Options.Enabled = false
1281 leftorright,backorforward = 0,0
1282 end
1283 function module:SpeedChange(Speed)
1284 if leftorright > 0 then
1285 leftorright = Speed
1286 elseif leftorright < 0 then
1287 leftorright = -Speed
1288 end
1289 if backorforward > 0 then
1290 backorforward = Speed
1291 elseif backorforward < 0 then
1292 backorforward = -Speed
1293 end
1294 end
1295 RunService:BindToRenderStep("MANARUN",1,function()
1296 if module.Options.Enabled then
1297 Player.Character:SetPrimaryPartCFrame(Player.Character:GetPrimaryPartCFrame():Lerp(Player.Character:GetPrimaryPartCFrame()*CFrame.new(leftorright,0,backorforward),1))
1298 end
1299 end)
1300 Player:GetMouse().KeyDown:Connect(function(k)
1301 if k == "w" then
1302 backorforward = backorforward - module.Options.speed
1303 elseif k == "s" then
1304 backorforward = backorforward + module.Options.speed
1305 elseif k == "a" then
1306 leftorright = leftorright - module.Options.speed
1307 elseif k == "d" then
1308 leftorright = leftorright + module.Options.speed
1309 end
1310 end)
1311 Player:GetMouse().KeyUp:Connect(function(k)
1312 if k == "w" then
1313 backorforward = backorforward + module.Options.speed
1314 elseif k == "s" then
1315 backorforward = backorforward - module.Options.speed
1316 elseif k == "a" then
1317 leftorright = leftorright + module.Options.speed
1318 elseif k == "d" then
1319 leftorright = leftorright - module.Options.speed
1320 end
1321 end)
1322 return module
1323end)()
1324--[[
1325local _FullBright = (function()
1326 --// Variables
1327 local module = {}
1328
1329 module.Options = {
1330 Enabled = false,
1331 ExposureCompensation=0,
1332 Brightness = 2
1333 }
1334
1335 local RunService = game:GetService("RunService")
1336 local Players = game:GetService("Players")
1337 local Player = Players.LocalPlayer
1338
1339 function module:Enable()
1340 module.Options.Enabled = true
1341 end
1342
1343 function module:Disable()
1344 module.Options.Enabled = false
1345 end
1346
1347 game:GetService("RunService"):BindToRenderStep("FULLBRIGHT",1,function()
1348 if module.Options.Enabled then
1349 game:GetService("Lighting").Ambient = Color3.new(1,1,1)
1350 game:GetService("Lighting").FogEnd = 100000000000000000000000
1351 game:GetService("Lighting").FogStart = 100000000000000000000000
1352 game:GetService("Lighting").Brightness = module.Options.Brightness
1353 game:GetService("Lighting").ExposureCompensation = module.Options.ExposureCompensation
1354 game:GetService("Lighting").GeographicLatitude = 41.733
1355 game:GetService("Lighting").ColorShift_Bottom = Color3.new(1,1,1)
1356 game:GetService("Lighting").ColorShift_Top = Color3.new(1,1,1)
1357 game:GetService("Lighting").FogColor = Color3.new(1,1,1)
1358 game:GetService("Lighting").ClockTime = 12
1359 end
1360 end)
1361
1362 return module
1363end)()
1364--]]
1365--[[
1366local _Noclip = (function()
1367 --// Variables
1368 local module = {}
1369
1370 local RunService = game:GetService("RunService")
1371 local Players = game:GetService("Players")
1372 local Player = Players.LocalPlayer
1373 local MANAFLY = nil
1374
1375 module.Options = {
1376 Enabled = false,
1377 Color = Color3.new(1, 0, 0),
1378 speed = 0,
1379 Opacity = 0,
1380 Up="x",
1381 Down="z",
1382 }
1383
1384 function module:Enable()
1385 module.Options.Enabled = true
1386 end
1387
1388 function module:Disable()
1389 module.Options.Enabled = false
1390 end
1391 RunService.Stepped:Connect(function()
1392 if module.Options.Enabled then
1393 for _,v in pairs(Player.Character:GetDescendants())do
1394 if v:IsA("BasePart") then
1395 v.CanCollide = false
1396 end
1397 end
1398 end
1399 end)
1400 return module
1401end)()
1402--]]
1403
1404--// Variables
1405local RunService = game:GetService("RunService")
1406local HttpService = game:GetService("HttpService")
1407local UserInputService = game:GetService("UserInputService")
1408local Players = game:GetService("Players")
1409local Player = Players.LocalPlayer
1410local Mouse = Player:GetMouse()
1411
1412local gui = GUIData[1]
1413local saveData = GUIData[2]
1414local screenGui = GUIData[3]
1415
1416local screenscale = 250
1417local opacity = 1
1418local backcolor = Color3.new()
1419
1420--// Saving
1421local readfile = readfile or function() end
1422pcall(function()
1423 local JSONData = readfile("OpenGui.txt")
1424 if JSONData then
1425 local LUAData = HttpService:JSONDecode(JSONData)
1426 saveData.Options = LUAData.Options
1427 saveData.Hotkeys = LUAData.Hotkeys
1428 print("Save Data found")
1429 else
1430 print("Save Data not found")
1431 end
1432end)
1433
1434
1435--// UI Creation
1436
1437--// Render Frame
1438local Render = gui:create("Container", {
1439 Name = "Render",
1440})--|
1441local OpenGui = Render.self:create("Toggle", {
1442 Name = "OpenGui",
1443 Default = true,
1444 Hotkey = tostring(Enum.KeyCode.RightControl),
1445 Hint = "The navigation GUI",
1446 Callback = function(enabled)
1447 for _, frame in pairs(screenGui:GetChildren()) do
1448 if frame:IsA("Frame") then
1449 frame.Visible = enabled
1450 end
1451 end
1452 screenGui.Modal.Visible = enabled
1453 screenGui.Hint.Visible = false
1454 end,
1455})--|
1456
1457local Opacity = OpenGui.self:create("Number", {
1458 Name = "Opacity",
1459 Min = 0,
1460 Max = 1,
1461 Round = 0.01,
1462 Default = 0.75,
1463 Hint = "Transparency of the navigation GUI",
1464 Callback = function(alpha)
1465 opacity = 1 - alpha
1466 for _, frame in pairs(screenGui:GetChildren()) do
1467 if frame:IsA("Frame") then
1468 frame.BackgroundTransparency = 1 - alpha
1469 frame.OptionsFrame.BackgroundTransparency = 1 - alpha
1470 end
1471 end
1472 end,
1473})
1474
1475local Width = OpenGui.self:create("Number", {
1476 Name = "Width",
1477 Min = 200,
1478 Max = 1000,
1479 Round = 1,
1480 Default = 1000,
1481 Hint = "Width of the navigation GUI",
1482 Callback = function(scale)
1483 screenscale = scale
1484 for _, frame in pairs(screenGui:GetChildren()) do
1485 if frame:IsA("Frame") then
1486 frame.Size = UDim2.new(0, scale, 0, frame.Size.Y.Offset)
1487 end
1488 end
1489 end,
1490})
1491
1492local Color = OpenGui.self:create("Color", {
1493 Name = "Background Color",
1494 Default = Color3.fromRGB(40, 40, 40),
1495 Hint = "Background color of the navigation GUI",
1496 Callback = function(color)
1497 backcolor = color
1498 for _, frame in pairs(screenGui:GetChildren()) do
1499 if frame:IsA("Frame") then
1500 frame.BackgroundColor3 = color
1501 frame.OptionsFrame.BackgroundColor3 = color
1502 end
1503 end
1504 end,
1505})
1506--[[
1507local FullBright = Render.self:create("Toggle", {
1508 Name = "FullBright",
1509 Default = false,
1510 Hint = "Toggle FullBright",
1511 Callback = function(enabled)
1512 _FullBright.Options.Enabled = enabled
1513 if enabled then
1514 _FullBright:Enable()
1515 else
1516 _FullBright:Disable()
1517 end
1518 end,
1519})
1520
1521local ExposureCompensation = FullBright.self:create("Number", {
1522 Name = "ExposureCompensation ",
1523 Default = 0.5,
1524 Min = 0,
1525 Max = 100,
1526 Round = 0.001,
1527 Hint = "Change ExposureCompensation",
1528 Callback = function(exposureCompensation)
1529 _FullBright.Options.ExposureCompensation = exposureCompensation
1530 end,
1531})
1532
1533local Brightness = FullBright.self:create("Number", {
1534 Name = "Brightness ",
1535 Default = 2,
1536 Min = 0,
1537 Max = 40,
1538 Round = 0.001,
1539 Hint = "Change Brightness",
1540 Callback = function(brightness)
1541 _FullBright.Options.Brightness = brightness
1542 end,
1543})
1544--]]
1545-- ESP ----[[
1546local Chams = Render.self:create("Toggle", {
1547 Name = "Chams",
1548 Default = false,
1549 Hint = "Render players through walls",
1550 Callback = function(enabled)
1551 _Chams.Options.Enabled = enabled
1552 if enabled then
1553 _Chams:Enable()
1554 else
1555 _Chams:Disable()
1556 end
1557 end,
1558})--|
1559local ChamsColor = Chams.self:create("Color", {
1560 Name = "Chams Color",
1561 Default = Color3.new(1, 1, 1),
1562 Hint = "Color of the player chams",
1563 Callback = function(color)
1564 _Chams.Options.Color = color
1565 end,
1566})
1567local ChamsShowTeam = Chams.self:create("Checkbox", {
1568 Name = "Show Team",
1569 Default = false,
1570 Hint = "Include your teammates",
1571 Callback = function(enabled)
1572 _Chams.Options.ShowTeam = enabled
1573 end,
1574})
1575local ChamsShowSelf = Chams.self:create("Checkbox", {
1576 Name = "Show Self",
1577 Default = false,
1578 Hint = "Include yourself",
1579 Callback = function(enabled)
1580 _Chams.Options.ShowSelf = enabled
1581 end,
1582})
1583local ChamsTeamColor = Chams.self:create("Checkbox", {
1584 Name = "Team Color",
1585 Default = false,
1586 Hint = "The chams color corresponds to the player's team",
1587 Callback = function(enabled)
1588 _Chams.Options.TeamColor = enabled
1589 end,
1590})
1591local ChamsShowDescendants = Chams.self:create("Checkbox", {
1592 Name = "Show Descendants",
1593 Default = false,
1594 Hint = "Highlight items like accessories",
1595 Callback = function(enabled)
1596 _Chams.Options.ShowDescendants = enabled
1597 end,
1598})
1599local ChamsMode = Chams.self:create("Mode", {
1600 Name = "Chams Mode",
1601 Default = 1,
1602 Modes = {"Opaque", "Shader","ForceField"},
1603 Hint = "The type of chams used",
1604 Callback = function(mode)
1605 _Chams.Options.Mode = mode
1606 _Chams:ReloadCharacters()
1607 end,
1608})
1609local ChamsOpacity = Chams.self:create("Number", {
1610 Name = "Opacity",
1611 Default = 0.5,
1612 Min = 0,
1613 Max = 1,
1614 Round = 0.01,
1615 Hint = "Visibility of the chams",
1616 Callback = function(opacity)
1617 _Chams.Options.Opacity = opacity
1618 end,
1619})
1620local ChamsMaxDistance = Chams.self:create("Number", {
1621 Name = "Max Distance",
1622 Default = 2048,
1623 Min = 0,
1624 Max = 25000,
1625 Round = 0.5,
1626 Hint = "The chams' maximum distance",
1627 Callback = function(distance)
1628 _Chams.Options.MaxDistance = distance
1629 end,
1630})
1631--]]
1632local Mana = gui:create("Container", {
1633 Name = "Mana",
1634})
1635--[[
1636local ManaFly = Mana.self:create("Toggle", {
1637 Name = "ManaFly",
1638 Default = false,
1639 Hint = "Toggle ManaFly",
1640 Hotkey = tostring(Enum.KeyCode.B),
1641 Callback = function(enabled)
1642 _ManaFly.Options.Enabled = enabled
1643 if enabled then
1644 _ManaFly:Enable()
1645 else
1646 _ManaFly:Disable()
1647 end
1648 end,
1649})
1650
1651local ManaFlySpeed = ManaFly.self:create("Number", {
1652 Name = "FlySpeed",
1653 Default = 0,
1654 Min = 0,
1655 Max = 100,
1656 Round = 0.001,
1657 Hint = "Speed Boost",
1658 Callback = function(Speed)
1659 _ManaFly:SpeedChange(Speed)
1660 _ManaFly.Options.speed = tonumber(Speed)
1661 end,
1662})
1663local ManaPartSize = ManaFly.self:create("Number", {
1664 Name = "PartSize",
1665 Default = 1,
1666 Min = 1,
1667 Max = 100,
1668 Round = 0.001,
1669 Hint = "PartSize",
1670 Callback = function(Size)
1671 _ManaFly.Options.Size= tonumber(Size)
1672 end,
1673})
1674
1675local ManaFlyOpacity = ManaFly.self:create("Number", {
1676 Name = "Opacity",
1677 Default = 0,
1678 Min = 0,
1679 Max = 1,
1680 Round = 0.001,
1681 Hint = "Visibility of the Part",
1682 Callback = function(opacity)
1683 _ManaFly.Options.Opacity = 1-opacity
1684 end,
1685})
1686
1687local ManaPartMaterial = ManaFly.self:create("Mode", {
1688 Name = "ManaPart Material",
1689 Hint = "Change ManaPart Material",
1690 Default = 1,
1691 Modes = {
1692 "Air",
1693 "ForceField"
1694 },
1695 Callback = function(value)
1696 _ManaFly.Options.PartMaterial = value
1697 end,
1698})
1699
1700local ManaSoul = Mana.self:create("Toggle", {
1701 Name = "ManaSoul",
1702 Default = false,
1703 Hint = "Toggle Noclip",
1704 Callback = function(enabled)
1705 _Noclip.Options.Enabled = enabled
1706 if enabled then
1707 _Noclip:Enable()
1708 else
1709 _Noclip:Disable()
1710 end
1711 end,
1712})
1713--]]
1714
1715local ManaRun = Mana.self:create("Toggle", {
1716 Name = "ManaRun",
1717 Default = false,
1718 Hint = "Toggle ManaRun",
1719 Hotkey = tostring(Enum.KeyCode.V),
1720 Callback = function(enabled)
1721 _ManaRun.Options.Enabled = enabled
1722 if enabled then
1723 _ManaRun:Enable()
1724 else
1725 _ManaRun:Disable()
1726 end
1727 end,
1728})
1729local ManaRunSpeed = ManaRun.self:create("Number", {
1730 Name = "Boost Speed",
1731 Default = 0,
1732 Min = 0,
1733 Max = 2,
1734 Round = 0.001,
1735 Hint = "Speed Boost",
1736 Callback = function(Speed)
1737 _ManaRun:SpeedChange(Speed)
1738 _ManaRun.Options.speed = tonumber(Speed)
1739 end,
1740})
1741RunService.RenderStepped:Connect(function()
1742 for _, frame in pairs(screenGui:GetChildren()) do
1743 if frame:IsA("Frame") then
1744 frame.Size = UDim2.new(0, screenscale, 0, frame.Size.Y.Offset)
1745
1746 frame.BackgroundTransparency = opacity
1747 frame.OptionsFrame.BackgroundTransparency = opacity
1748
1749 frame.BackgroundColor3 = backcolor
1750 frame.OptionsFrame.BackgroundColor3 = backcolor
1751 end
1752 end
1753end)
1754
1755notify.Text = "Loaded"
1756game:GetService("StarterGui"):SetCore("SendNotification",notify)
1757notify.Text = "Got it?"