· 6 years ago · Sep 29, 2019, 07:34 AM
1-- Farewell Infortality.
2-- Version: 2.82
3-- Instances:
4local ScreenGui = Instance.new("ScreenGui")
5local Main = Instance.new("Frame")
6local Frame = Instance.new("Frame")
7local OPLv1 = Instance.new("TextButton")
8local Topkek = Instance.new("TextButton")
9local Hidbox = Instance.new("TextButton")
10local TextButton = Instance.new("TextButton")
11local TextButton_2 = Instance.new("TextButton")
12local TextButton_3 = Instance.new("TextButton")
13local TextButton_4 = Instance.new("TextButton")
14local TextButton_5 = Instance.new("TextButton")
15local TextButton_6 = Instance.new("TextButton")
16local TextButton_7 = Instance.new("TextButton")
17local TextButton_8 = Instance.new("TextButton")
18local TextButton_9 = Instance.new("TextButton")
19local ByNB_Non = Instance.new("TextButton")
20local TextButton_10 = Instance.new("TextButton")
21local TextBox = Instance.new("TextBox")
22--Properties:
23ScreenGui.Parent = game.Players.LocalPlayer:WaitForChild("PlayerGui")
24ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
25
26Main.Name = "Main"
27Main.Parent = ScreenGui
28Main.Active = true
29Main.BackgroundColor3 = Color3.new(1, 0.333333, 1)
30Main.BackgroundTransparency = 0.40000000596046
31Main.BorderColor3 = Color3.new(1, 0, 1)
32Main.BorderSizePixel = 3
33Main.Position = UDim2.new(0.552456975, 0, 0.707040131, 0)
34Main.Size = UDim2.new(0, 718, 0, 223)
35Main.Draggable = true
36Main.Active = true
37
38Frame.Parent = Main
39Frame.BackgroundColor3 = Color3.new(0.00392157, 0.768628, 1)
40Frame.BorderColor3 = Color3.new(0, 1, 1)
41Frame.BorderSizePixel = 3
42Frame.Size = UDim2.new(0, 718, 0, 25)
43
44OPLv1.Name = "OPLv.1"
45OPLv1.Parent = Main
46OPLv1.BackgroundColor3 = Color3.new(0, 0.666667, 1)
47OPLv1.BorderColor3 = Color3.new(0, 1, 1)
48OPLv1.BorderSizePixel = 4
49OPLv1.Position = UDim2.new(0.361394852, 0, 0.605381191, 0)
50OPLv1.Size = UDim2.new(0, 127, 0, 34)
51OPLv1.Font = Enum.Font.SourceSans
52OPLv1.Text = "OPLv.1"
53OPLv1.TextColor3 = Color3.new(0, 1, 1)
54OPLv1.TextScaled = true
55OPLv1.TextSize = 20
56OPLv1.TextWrapped = true
57OPLv1.MouseButton1Down:connect(function()
58loadstring(game:HttpGet("https://pastebin.com/raw/JNbXmXdt", true))()
59end)
60
61Topkek.Name = "Topkek"
62Topkek.Parent = Main
63Topkek.BackgroundColor3 = Color3.new(0, 0.666667, 1)
64Topkek.BorderColor3 = Color3.new(0, 1, 1)
65Topkek.BorderSizePixel = 4
66Topkek.Position = UDim2.new(0.361517221, 0, 0.17040357, 0)
67Topkek.Size = UDim2.new(0, 127, 0, 34)
68Topkek.Font = Enum.Font.SourceSans
69Topkek.Text = "Topkek"
70Topkek.TextColor3 = Color3.new(0, 1, 1)
71Topkek.TextScaled = true
72Topkek.TextSize = 20
73Topkek.TextWrapped = true
74Topkek.MouseButton1Down:connect(function()
75loadstring(game:HttpGet(('https://pastebin.com/raw/tzTXmYf2'),true))()
76end)
77
78Hidbox.Name = "Hidbox"
79Hidbox.Parent = Main
80Hidbox.BackgroundColor3 = Color3.new(0, 0.666667, 1)
81Hidbox.BorderColor3 = Color3.new(0, 1, 1)
82Hidbox.BorderSizePixel = 4
83Hidbox.Position = UDim2.new(0.361394852, 0, 0.816143513, 0)
84Hidbox.Size = UDim2.new(0, 127, 0, 34)
85Hidbox.Font = Enum.Font.SourceSans
86Hidbox.Text = "Hitbox"
87Hidbox.TextColor3 = Color3.new(0, 1, 1)
88Hidbox.TextScaled = true
89Hidbox.TextSize = 16
90Hidbox.TextWrapped = true
91Hidbox.MouseButton1Down:connect(function()
92_G.HeadSize = 250
93_G.Disabled = true
94
95game:GetService('RunService').RenderStepped:connect(function()
96if _G.Disabled then
97for i,v in next, game:GetService('Players'):GetPlayers() do
98if v.Name ~= game:GetService('Players').LocalPlayer.Name then
99pcall(function()
100v.Character.HumanoidRootPart.Size = Vector3.new(_G.HeadSize,_G.HeadSize,_G.HeadSize)
101v.Character.HumanoidRootPart.Transparency = 0.7
102v.Character.HumanoidRootPart.BrickColor = BrickColor.new("Really blue")
103v.Character.HumanoidRootPart.Material = "Neon"
104v.Character.HumanoidRootPart.CanCollide = false
105end)
106end
107end
108end
109end)
110end)
111
112TextButton.Parent = Main
113TextButton.BackgroundColor3 = Color3.new(0.333333, 0.666667, 1)
114TextButton.BackgroundTransparency = 0.34999999403954
115TextButton.BorderColor3 = Color3.new(0, 1, 1)
116TextButton.BorderSizePixel = 3
117TextButton.Position = UDim2.new(0, 0, 0.11210762, 0)
118TextButton.Size = UDim2.new(0, 250, 0, 198)
119TextButton.Font = Enum.Font.SourceSans
120TextButton.Text = "By. NB_Non K!!!"
121TextButton.TextColor3 = Color3.new(0.333333, 1, 1)
122TextButton.TextSize = 35
123
124TextButton_2.Parent = Main
125TextButton_2.BackgroundColor3 = Color3.new(0, 0.666667, 1)
126TextButton_2.BorderColor3 = Color3.new(0, 1, 1)
127TextButton_2.BorderSizePixel = 4
128TextButton_2.Position = UDim2.new(0.59108597, 0, 0.1704036, 0)
129TextButton_2.Size = UDim2.new(0, 127, 0, 34)
130TextButton_2.Font = Enum.Font.SourceSans
131TextButton_2.TextColor3 = Color3.new(0, 1, 1)
132TextButton_2.TextScaled = true
133TextButton_2.TextSize = 16
134TextButton_2.TextWrapped = true
135
136TextButton_3.Parent = Main
137TextButton_3.BackgroundColor3 = Color3.new(0, 0.666667, 1)
138TextButton_3.BorderColor3 = Color3.new(0, 1, 1)
139TextButton_3.BorderSizePixel = 4
140TextButton_3.Position = UDim2.new(0.59108597, 0, 0.390134573, 0)
141TextButton_3.Size = UDim2.new(0, 127, 0, 34)
142TextButton_3.Font = Enum.Font.SourceSans
143TextButton_3.TextColor3 = Color3.new(0, 1, 1)
144TextButton_3.TextScaled = true
145TextButton_3.TextSize = 16
146TextButton_3.TextWrapped = true
147
148TextButton_4.Parent = Main
149TextButton_4.BackgroundColor3 = Color3.new(0, 0.666667, 1)
150TextButton_4.BorderColor3 = Color3.new(0, 1, 1)
151TextButton_4.BorderSizePixel = 4
152TextButton_4.Position = UDim2.new(0.59108597, 0, 0.605381191, 0)
153TextButton_4.Size = UDim2.new(0, 127, 0, 34)
154TextButton_4.Font = Enum.Font.SourceSans
155TextButton_4.TextColor3 = Color3.new(0, 1, 1)
156TextButton_4.TextScaled = true
157TextButton_4.TextSize = 16
158TextButton_4.TextWrapped = true
159
160TextButton_5.Parent = Main
161TextButton_5.BackgroundColor3 = Color3.new(0, 0.666667, 1)
162TextButton_5.BorderColor3 = Color3.new(0, 1, 1)
163TextButton_5.BorderSizePixel = 4
164TextButton_5.Position = UDim2.new(0.59108597, 0, 0.816143513, 0)
165TextButton_5.Size = UDim2.new(0, 127, 0, 34)
166TextButton_5.Font = Enum.Font.SourceSans
167TextButton_5.TextColor3 = Color3.new(0, 1, 1)
168TextButton_5.TextScaled = true
169TextButton_5.TextSize = 16
170TextButton_5.TextWrapped = true
171
172TextButton_6.Parent = Main
173TextButton_6.BackgroundColor3 = Color3.new(0, 0.666667, 1)
174TextButton_6.BorderColor3 = Color3.new(0, 1, 1)
175TextButton_6.BorderSizePixel = 4
176TextButton_6.Position = UDim2.new(0.808356106, 0, 0.605381191, 0)
177TextButton_6.Size = UDim2.new(0, 127, 0, 34)
178TextButton_6.Font = Enum.Font.SourceSans
179TextButton_6.TextColor3 = Color3.new(0, 1, 1)
180TextButton_6.TextScaled = true
181TextButton_6.TextSize = 16
182TextButton_6.TextWrapped = true
183
184TextButton_7.Parent = Main
185TextButton_7.BackgroundColor3 = Color3.new(0, 0.666667, 1)
186TextButton_7.BorderColor3 = Color3.new(0, 1, 1)
187TextButton_7.BorderSizePixel = 4
188TextButton_7.Position = UDim2.new(0.808356106, 0, 0.1704036, 0)
189TextButton_7.Size = UDim2.new(0, 127, 0, 34)
190TextButton_7.Font = Enum.Font.SourceSans
191TextButton_7.TextColor3 = Color3.new(0, 1, 1)
192TextButton_7.TextScaled = true
193TextButton_7.Text = "Esp"
194TextButton_7.TextSize = 16
195TextButton_7.TextWrapped = true
196TextButton_7.MouseButton1Down:connect(function()
197-- Created By Ic3W0lf
198assert(Drawing, 'exploit not supported')
199
200local UserInputService = game:GetService'UserInputService';
201local HttpService = game:GetService'HttpService';
202local GUIService = game:GetService'GuiService';
203local RunService = game:GetService'RunService';
204local Players = game:GetService'Players';
205local LocalPlayer = Players.LocalPlayer;
206local Camera = workspace.CurrentCamera
207local Mouse = LocalPlayer:GetMouse();
208local Menu = {};
209local MouseHeld = false;
210local LastRefresh = 0;
211local OptionsFile = 'IC3_ESP_SETTINGS.dat';
212local Binding = false;
213local BindedKey = nil;
214local OIndex = 0;
215local LineBox = {};
216local UIButtons = {};
217local Sliders = {};
218local Dragging = false;
219local DraggingUI = false;
220local DragOffset = Vector2.new();
221local DraggingWhat = nil;
222local OldData = {};
223local IgnoreList = {};
224local Red = Color3.new(1, 0, 0);
225local Green = Color3.new(0, 1, 0);
226local MenuLoaded = false;
227
228shared.MenuDrawingData = shared.MenuDrawingData or { Instances = {} };
229shared.PlayerData = shared.PlayerData or {};
230shared.RSName = shared.RSName or ('UnnamedESP_by_ic3-' .. HttpService:GenerateGUID(false));
231
232local GetDataName = shared.RSName .. '-GetData';
233local UpdateName = shared.RSName .. '-Update';
234
235local Debounce = setmetatable({}, {
236__index = function(t, i)
237return rawget(t, i) or false
238end;
239});
240
241pcall(function() shared.InputBeganCon:disconnect() end);
242pcall(function() shared.InputEndedCon:disconnect() end);
243
244function GetMouseLocation()
245return UserInputService:GetMouseLocation();
246end
247
248function MouseHoveringOver(Values)
249local X1, Y1, X2, Y2 = Values[1], Values[2], Values[3], Values[4]
250local MLocation = GetMouseLocation();
251return (MLocation.x >= X1 and MLocation.x <= (X1 + (X2 - X1))) and (MLocation.y >= Y1 and MLocation.y <= (Y1 + (Y2 - Y1)));
252end
253
254function GetTableData(t) -- basically table.foreach i dont even know why i made this
255if typeof(t) ~= 'table' then return end
256return setmetatable(t, {
257__call = function(t, func)
258if typeof(func) ~= 'function' then return end;
259for i, v in pairs(t) do
260pcall(func, i, v);
261end
262end;
263});
264end
265local function Format(format, ...)
266return string.format(format, ...);
267end
268function CalculateValue(Min, Max, Percent)
269return Min + math.floor(((Max - Min) * Percent) + .5);
270end
271
272local Options = setmetatable({}, {
273__call = function(t, ...)
274local Arguments = {...};
275local Name = Arguments[1];
276OIndex = OIndex + 1; -- (typeof(Arguments[3]) == 'boolean' and 1 or 0);
277rawset(t, Name, setmetatable({
278Name = Arguments[1];
279Text = Arguments[2];
280Value = Arguments[3];
281DefaultValue = Arguments[3];
282AllArgs = Arguments;
283Index = OIndex;
284}, {
285__call = function(t, v)
286if typeof(t.Value) == 'function' then
287t.Value();
288elseif typeof(t.Value) == 'EnumItem' then
289local BT = Menu:GetInstance(Format('%s_BindText', t.Name));
290Binding = true;
291local Val = 0
292while Binding do
293wait();
294Val = (Val + 1) % 17;
295BT.Text = Val <= 8 and '|' or '';
296end
297t.Value = BindedKey;
298BT.Text = tostring(t.Value):match'%w+%.%w+%.(.+)';
299BT.Position = t.BasePosition + Vector2.new(t.BaseSize.X - BT.TextBounds.X - 20, -10);
300else
301local NewValue = v;
302if NewValue == nil then NewValue = not t.Value; end
303rawset(t, 'Value', NewValue);
304if Arguments[2] ~= nil then
305if typeof(Arguments[3]) == 'number' then
306local AMT = Menu:GetInstance(Format('%s_AmountText', t.Name));
307AMT.Text = tostring(t.Value);
308AMT.Position = t.BasePosition + Vector2.new(t.BaseSize.X - AMT.TextBounds.X - 10, -10);
309else
310local Inner = Menu:GetInstance(Format('%s_InnerCircle', t.Name));
311Inner.Visible = t.Value;
312end
313end
314end
315end;
316}));
317end;
318})
319
320function Load()
321local _, Result = pcall(readfile, OptionsFile);
322if _ then -- extremely ugly code yea i know but i dont care p.s. i hate pcall
323local _, Table = pcall(HttpService.JSONDecode, HttpService, Result);
324if _ then
325for i, v in pairs(Table) do
326if Options[i] ~= nil and Options[i].Value ~= nil and (typeof(Options[i].Value) == 'boolean' or typeof(Options[i].Value) == 'number') then
327Options[i].Value = v.Value;
328pcall(Options[i], v.Value);
329end
330end
331end
332end
333end
334
335Options('Enabled', 'ESP Enabled', true);
336Options('ShowTeam', 'Show Team', false);
337Options('ShowName', 'Show Names', true);
338Options('ShowDistance', 'Show Distance', true);
339Options('ShowHealth', 'Show Health', true);
340Options('ShowBoxes', 'Show Boxes', true);
341Options('ShowTracers', 'Show Tracers', true);
342Options('ShowDot', 'Show Head Dot', false);
343Options('VisCheck', 'Visibility Check', false);
344Options('Crosshair', 'Crosshair', false);
345Options('TextOutline', 'Text Outline', true);
346Options('TextSize', 'Text Size', syn and 18 or 14, 10, 24); -- cuz synapse fonts look weird???
347Options('MaxDistance', 'Max Distance', 2500, 100, 5000);
348Options('RefreshRate', 'Refresh Rate (ms)', 5, 1, 200);
349Options('MenuKey', 'Menu Key', Enum.KeyCode.F4, 1);
350Options('ResetSettings', 'Reset Settings', function()
351for i, v in pairs(Options) do
352if Options[i] ~= nil and Options[i].Value ~= nil and Options[i].Text ~= nil and (typeof(Options[i].Value) == 'boolean' or typeof(Options[i].Value) == 'number') then
353Options[i](Options[i].DefaultValue);
354end
355end
356end, 4);
357Options('LoadSettings', 'Load Settings', Load, 3);
358Options('SaveSettings', 'Save Settings', function()
359writefile(OptionsFile, HttpService:JSONEncode(Options));
360end, 2)
361-- Options.SaveSettings.Value();
362
363Load();
364
365Options('MenuOpen', nil, true);
366
367local function Set(t, i, v)
368t[i] = v;
369end
370local function Combine(...)
371local Output = {};
372for i, v in pairs{...} do
373if typeof(v) == 'table' then
374table.foreach(v, function(i, v)
375Output[i] = v;
376end)
377end
378end
379return Output
380end
381function IsStringEmpty(String)
382if type(String) == 'string' then
383return String:match'^%s+$' ~= nil or #String == 0 or String == '' or false;
384end
385return false
386end
387
388function NewDrawing(InstanceName)
389local Instance = Drawing.new(InstanceName);
390return (function(Properties)
391for i, v in pairs(Properties) do
392pcall(Set, Instance, i, v);
393end
394return Instance;
395end)
396end
397
398function Menu:AddMenuInstace(Name, Instance)
399if shared.MenuDrawingData.Instances[Name] ~= nil then
400shared.MenuDrawingData.Instances[Name]:Remove();
401end
402shared.MenuDrawingData.Instances[Name] = Instance;
403return Instance;
404end
405function Menu:UpdateMenuInstance(Name)
406local Instance = shared.MenuDrawingData.Instances[Name];
407if Instance ~= nil then
408return (function(Properties)
409for i, v in pairs(Properties) do
410-- print(Format('%s %s -> %s', Name, tostring(i), tostring(v)));
411pcall(Set, Instance, i, v);
412end
413return Instance;
414end)
415end
416end
417function Menu:GetInstance(Name)
418return shared.MenuDrawingData.Instances[Name];
419end
420
421function LineBox:Create(Properties)
422local Box = { Visible = true }; -- prevent errors not really though dont worry bout the Visible = true thing
423
424local Properties = Combine({
425Transparency = 1;
426Thickness = 1;
427Visible = true;
428}, Properties);
429
430Box['TopLeft'] = NewDrawing'Line'(Properties);
431Box['TopRight'] = NewDrawing'Line'(Properties);
432Box['BottomLeft'] = NewDrawing'Line'(Properties);
433Box['BottomRight'] = NewDrawing'Line'(Properties);
434
435function Box:Update(CF, Size, Color, Properties)
436if not CF or not Size then return end
437
438local TLPos, Visible1 = Camera:WorldToViewportPoint((CF * CFrame.new( Size.X, Size.Y, 0)).p);
439local TRPos, Visible2 = Camera:WorldToViewportPoint((CF * CFrame.new(-Size.X, Size.Y, 0)).p);
440local BLPos, Visible3 = Camera:WorldToViewportPoint((CF * CFrame.new( Size.X, -Size.Y, 0)).p);
441local BRPos, Visible4 = Camera:WorldToViewportPoint((CF * CFrame.new(-Size.X, -Size.Y, 0)).p);
442-- ## BEGIN UGLY CODE
443if Visible1 then
444Box['TopLeft'].Visible = true;
445Box['TopLeft'].Color = Color;
446Box['TopLeft'].From = Vector2.new(TLPos.X, TLPos.Y);
447Box['TopLeft'].To = Vector2.new(TRPos.X, TRPos.Y);
448else
449Box['TopLeft'].Visible = false;
450end
451if Visible2 then
452Box['TopRight'].Visible = true;
453Box['TopRight'].Color = Color;
454Box['TopRight'].From = Vector2.new(TRPos.X, TRPos.Y);
455Box['TopRight'].To = Vector2.new(BRPos.X, BRPos.Y);
456else
457Box['TopRight'].Visible = false;
458end
459if Visible3 then
460Box['BottomLeft'].Visible = true;
461Box['BottomLeft'].Color = Color;
462Box['BottomLeft'].From = Vector2.new(BLPos.X, BLPos.Y);
463Box['BottomLeft'].To = Vector2.new(TLPos.X, TLPos.Y);
464else
465Box['BottomLeft'].Visible = false;
466end
467if Visible4 then
468Box['BottomRight'].Visible = true;
469Box['BottomRight'].Color = Color;
470Box['BottomRight'].From = Vector2.new(BRPos.X, BRPos.Y);
471Box['BottomRight'].To = Vector2.new(BLPos.X, BLPos.Y);
472else
473Box['BottomRight'].Visible = false;
474end
475-- ## END UGLY CODE
476if Properties then
477GetTableData(Properties)(function(i, v)
478pcall(Set, Box['TopLeft'], i, v);
479pcall(Set, Box['TopRight'], i, v);
480pcall(Set, Box['BottomLeft'], i, v);
481pcall(Set, Box['BottomRight'], i, v);
482end)
483end
484end
485function Box:SetVisible(bool)
486pcall(Set, Box['TopLeft'], 'Visible', bool);
487pcall(Set, Box['TopRight'], 'Visible', bool);
488pcall(Set, Box['BottomLeft'], 'Visible', bool);
489pcall(Set, Box['BottomRight'], 'Visible', bool);
490end
491function Box:Remove()
492self:SetVisible(false);
493Box['TopLeft']:Remove();
494Box['TopRight']:Remove();
495Box['BottomLeft']:Remove();
496Box['BottomRight']:Remove();
497end
498
499return Box;
500end
501
502function CreateMenu(NewPosition) -- Create Menu
503local function FromHex(HEX)
504HEX = HEX:gsub('#', '');
505return Color3.fromRGB(tonumber('0x' .. HEX:sub(1, 2)), tonumber('0x' .. HEX:sub(3, 4)), tonumber('0x' .. HEX:sub(5, 6)));
506end
507
508local Colors = {
509Primary = {
510Main = FromHex'424242';
511Light = FromHex'6d6d6d';
512Dark = FromHex'1b1b1b';
513};
514Secondary = {
515Main = FromHex'e0e0e0';
516Light = FromHex'ffffff';
517Dark = FromHex'aeaeae';
518};
519};
520
521MenuLoaded = false;
522
523GetTableData(UIButtons)(function(i, v)
524v.Instance.Visible = false;
525v.Instance:Remove();
526end)
527GetTableData(Sliders)(function(i, v)
528v.Instance.Visible = false;
529v.Instance:Remove();
530end)
531
532UIButtons = {};
533Sliders = {};
534
535local BaseSize = Vector2.new(300, 580);
536local BasePosition = NewPosition or Vector2.new(Camera.ViewportSize.X / 8 - (BaseSize.X / 2), Camera.ViewportSize.Y / 2 - (BaseSize.Y / 2));
537
538Menu:AddMenuInstace('CrosshairX', NewDrawing'Line'{
539Visible = false;
540Color = Color3.new(0, 1, 0);
541Transparency = 1;
542Thickness = 1;
543});
544Menu:AddMenuInstace('CrosshairY', NewDrawing'Line'{
545Visible = false;
546Color = Color3.new(0, 1, 0);
547Transparency = 1;
548Thickness = 1;
549});
550
551delay(.025, function() -- since zindex doesnt exist
552Menu:AddMenuInstace('Main', NewDrawing'Square'{
553Size = BaseSize;
554Position = BasePosition;
555Filled = false;
556Color = Colors.Primary.Main;
557Thickness = 3;
558Visible = true;
559});
560end);
561Menu:AddMenuInstace('TopBar', NewDrawing'Square'{
562Position = BasePosition;
563Size = Vector2.new(BaseSize.X, 25);
564Color = Colors.Primary.Dark;
565Filled = true;
566Visible = true;
567});
568Menu:AddMenuInstace('TopBarTwo', NewDrawing'Square'{
569Position = BasePosition + Vector2.new(0, 25);
570Size = Vector2.new(BaseSize.X, 60);
571Color = Colors.Primary.Main;
572Filled = true;
573Visible = true;
574});
575Menu:AddMenuInstace('TopBarText', NewDrawing'Text'{
576Size = 25;
577Position = shared.MenuDrawingData.Instances.TopBarTwo.Position + Vector2.new(25, 15);
578Text = 'Unnamed ESP';
579Color = Colors.Secondary.Light;
580Visible = true;
581});
582Menu:AddMenuInstace('TopBarTextBR', NewDrawing'Text'{
583Size = 15;
584Position = shared.MenuDrawingData.Instances.TopBarTwo.Position + Vector2.new(BaseSize.X - 65, 40);
585Text = 'by ic3w0lf';
586Color = Colors.Secondary.Dark;
587Visible = true;
588});
589Menu:AddMenuInstace('Filling', NewDrawing'Square'{
590Size = BaseSize - Vector2.new(0, 85);
591Position = BasePosition + Vector2.new(0, 85);
592Filled = true;
593Color = Colors.Secondary.Main;
594Transparency= .5;
595Visible = true;
596});
597
598local CPos = 0;
599
600GetTableData(Options)(function(i, v)
601if typeof(v.Value) == 'boolean' and not IsStringEmpty(v.Text) and v.Text ~= nil then
602CPos = CPos + 25;
603local BaseSize = Vector2.new(BaseSize.X, 30);
604local BasePosition = shared.MenuDrawingData.Instances.Filling.Position + Vector2.new(30, v.Index * 25 - 10);
605UIButtons[#UIButtons + 1] = {
606Option = v;
607Instance = Menu:AddMenuInstace(Format('%s_Hitbox', v.Name), NewDrawing'Square'{
608Position = BasePosition - Vector2.new(30, 15);
609Size = BaseSize;
610Visible = false;
611});
612};
613Menu:AddMenuInstace(Format('%s_OuterCircle', v.Name), NewDrawing'Circle'{
614Radius = 10;
615Position = BasePosition;
616Color = Colors.Secondary.Light;
617Filled = true;
618Visible = true;
619});
620Menu:AddMenuInstace(Format('%s_InnerCircle', v.Name), NewDrawing'Circle'{
621Radius = 7;
622Position = BasePosition;
623Color = Colors.Secondary.Dark;
624Filled = true;
625Visible = v.Value;
626});
627Menu:AddMenuInstace(Format('%s_Text', v.Name), NewDrawing'Text'{
628Text = v.Text;
629Size = 20;
630Position = BasePosition + Vector2.new(20, -10);
631Visible = true;
632Color = Colors.Primary.Dark;
633});
634end
635end)
636GetTableData(Options)(function(i, v) -- just to make sure certain things are drawn before or after others, too lazy to actually sort table
637if typeof(v.Value) == 'number' then
638CPos = CPos + 25;
639
640local BaseSize = Vector2.new(BaseSize.X, 30);
641local BasePosition = shared.MenuDrawingData.Instances.Filling.Position + Vector2.new(0, CPos - 10);
642
643local Text = Menu:AddMenuInstace(Format('%s_Text', v.Name), NewDrawing'Text'{
644Text = v.Text;
645Size = 20;
646Position = BasePosition + Vector2.new(20, -10);
647Visible = true;
648Color = Colors.Primary.Dark;
649});
650local AMT = Menu:AddMenuInstace(Format('%s_AmountText', v.Name), NewDrawing'Text'{
651Text = tostring(v.Value);
652Size = 20;
653Position = BasePosition;
654Visible = true;
655Color = Colors.Primary.Dark;
656});
657local Line = Menu:AddMenuInstace(Format('%s_SliderLine', v.Name), NewDrawing'Line'{
658Transparency = 1;
659Color = Colors.Primary.Dark;
660Thickness = 3;
661Visible = true;
662From = BasePosition + Vector2.new(20, 20);
663To = BasePosition + Vector2.new(BaseSize.X - 10, 20);
664});
665CPos = CPos + 10;
666local Slider = Menu:AddMenuInstace(Format('%s_Slider', v.Name), NewDrawing'Circle'{
667Visible = true;
668Filled = true;
669Radius = 6;
670Color = Colors.Secondary.Dark;
671Position = BasePosition + Vector2.new(35, 20);
672})
673
674local CSlider = {Slider = Slider; Line = Line; Min = v.AllArgs[4]; Max = v.AllArgs[5]; Option = v};
675Sliders[#Sliders + 1] = CSlider;
676
677-- local Percent = (v.Value / CSlider.Max) * 100;
678-- local Size = math.abs(Line.From.X - Line.To.X);
679-- local Value = Size * (Percent / 100); -- this shit's inaccurate but fuck it i'm not even gonna bother fixing it
680
681Slider.Position = BasePosition + Vector2.new(40, 20);
682
683v.BaseSize = BaseSize;
684v.BasePosition = BasePosition;
685AMT.Position = BasePosition + Vector2.new(BaseSize.X - AMT.TextBounds.X - 10, -10)
686end
687end)
688GetTableData(Options)(function(i, v) -- just to make sure certain things are drawn before or after others, too lazy to actually sort table
689if typeof(v.Value) == 'EnumItem' then
690CPos = CPos + 30;
691
692local BaseSize = Vector2.new(BaseSize.X, 30);
693local BasePosition = shared.MenuDrawingData.Instances.Filling.Position + Vector2.new(0, CPos - 10);
694
695UIButtons[#UIButtons + 1] = {
696Option = v;
697Instance = Menu:AddMenuInstace(Format('%s_Hitbox', v.Name), NewDrawing'Square'{
698Size = Vector2.new(BaseSize.X, 20) - Vector2.new(30, 0);
699Visible = true;
700Transparency= .5;
701Position = BasePosition + Vector2.new(15, -10);
702Color = Colors.Secondary.Light;
703Filled = true;
704});
705};
706local Text = Menu:AddMenuInstace(Format('%s_Text', v.Name), NewDrawing'Text'{
707Text = v.Text;
708Size = 20;
709Position = BasePosition + Vector2.new(20, -10);
710Visible = true;
711Color = Colors.Primary.Dark;
712});
713local BindText = Menu:AddMenuInstace(Format('%s_BindText', v.Name), NewDrawing'Text'{
714Text = tostring(v.Value):match'%w+%.%w+%.(.+)';
715Size = 20;
716Position = BasePosition;
717Visible = true;
718Color = Colors.Primary.Dark;
719});
720
721Options[i].BaseSize = BaseSize;
722Options[i].BasePosition = BasePosition;
723BindText.Position = BasePosition + Vector2.new(BaseSize.X - BindText.TextBounds.X - 20, -10);
724end
725end)
726GetTableData(Options)(function(i, v) -- just to make sure certain things are drawn before or after others, too lazy to actually sort table
727if typeof(v.Value) == 'function' then
728local BaseSize = Vector2.new(BaseSize.X, 30);
729local BasePosition = shared.MenuDrawingData.Instances.Filling.Position + Vector2.new(0, CPos + (25 * v.AllArgs[4]) - 35);
730
731UIButtons[#UIButtons + 1] = {
732Option = v;
733Instance = Menu:AddMenuInstace(Format('%s_Hitbox', v.Name), NewDrawing'Square'{
734Size = Vector2.new(BaseSize.X, 20) - Vector2.new(30, 0);
735Visible = true;
736Transparency= .5;
737Position = BasePosition + Vector2.new(15, -10);
738Color = Colors.Secondary.Light;
739Filled = true;
740});
741};
742local Text = Menu:AddMenuInstace(Format('%s_Text', v.Name), NewDrawing'Text'{
743Text = v.Text;
744Size = 20;
745Position = BasePosition + Vector2.new(20, -10);
746Visible = true;
747Color = Colors.Primary.Dark;
748});
749
750-- BindText.Position = BasePosition + Vector2.new(BaseSize.X - BindText.TextBounds.X - 10, -10);
751end
752end)
753
754delay(.1, function()
755MenuLoaded = true;
756end);
757
758-- this has to be at the bottom cuz proto drawing api doesnt have zindex :triumph:
759Menu:AddMenuInstace('Cursor1', NewDrawing'Line'{
760Visible = false;
761Color = Color3.new(1, 0, 0);
762Transparency = 1;
763Thickness = 2;
764});
765Menu:AddMenuInstace('Cursor2', NewDrawing'Line'{
766Visible = false;
767Color = Color3.new(1, 0, 0);
768Transparency = 1;
769Thickness = 2;
770});
771Menu:AddMenuInstace('Cursor3', NewDrawing'Line'{
772Visible = false;
773Color = Color3.new(1, 0, 0);
774Transparency = 1;
775Thickness = 2;
776});
777end
778
779CreateMenu();
780
781shared.InputBeganCon = UserInputService.InputBegan:connect(function(input)
782if input.UserInputType.Name == 'MouseButton1' and Options.MenuOpen.Value then
783MouseHeld = true;
784local Bar = Menu:GetInstance'TopBar';
785local Values = {
786Bar.Position.X;
787Bar.Position.Y;
788Bar.Position.X + Bar.Size.X;
789Bar.Position.Y + Bar.Size.Y;
790}
791if MouseHoveringOver(Values) and not syn then -- disable dragging for synapse cuz idk why it breaks
792DraggingUI = true;
793DragOffset = Menu:GetInstance'Main'.Position - GetMouseLocation();
794else
795for i, v in pairs(Sliders) do
796local Values = {
797v.Line.From.X - (v.Slider.Radius);
798v.Line.From.Y - (v.Slider.Radius);
799v.Line.To.X + (v.Slider.Radius);
800v.Line.To.Y + (v.Slider.Radius);
801};
802if MouseHoveringOver(Values) then
803DraggingWhat = v;
804Dragging = true;
805break
806end
807end
808end
809end
810end)
811shared.InputEndedCon = UserInputService.InputEnded:connect(function(input)
812if input.UserInputType.Name == 'MouseButton1' and Options.MenuOpen.Value then
813MouseHeld = false;
814for i, v in pairs(UIButtons) do
815local Values = {
816v.Instance.Position.X;
817v.Instance.Position.Y;
818v.Instance.Position.X + v.Instance.Size.X;
819v.Instance.Position.Y + v.Instance.Size.Y;
820};
821if MouseHoveringOver(Values) then
822v.Option();
823break -- prevent clicking 2 options
824end
825end
826elseif input.UserInputType.Name == 'Keyboard' then
827if Binding then
828BindedKey = input.KeyCode;
829Binding = false;
830elseif input.KeyCode == Options.MenuKey.Value or (input.KeyCode == Enum.KeyCode.Home and UserInputService:IsKeyDown(Enum.KeyCode.LeftControl)) then
831Options.MenuOpen();
832end
833end
834end)
835
836function ToggleMenu()
837if Options.MenuOpen.Value then
838GetTableData(shared.MenuDrawingData.Instances)(function(i, v)
839if OldData[v] then
840pcall(Set, v, 'Visible', true);
841end
842end)
843else
844-- GUIService:SetMenuIsOpen(false);
845GetTableData(shared.MenuDrawingData.Instances)(function(i, v)
846if v.Visible == true then
847OldData[v] = true;
848pcall(Set, v, 'Visible', false);
849end
850end)
851end
852end
853
854function CheckRay(Player, Distance, Position, Unit)
855local Pass = true;
856
857if Distance > 999 then return false; end
858
859local _Ray = Ray.new(Position, Unit * Distance);
860
861local List = {LocalPlayer.Character, Camera, Mouse.TargetFilter};
862
863for i,v in pairs(IgnoreList) do table.insert(List, v); end;
864
865local Hit = workspace:FindPartOnRayWithIgnoreList(_Ray, List);
866if Hit and not Hit:IsDescendantOf(Player.Character) then
867Pass = false;
868if Hit.Transparency >= .3 or not Hit.CanCollide and Hit.ClassName ~= Terrain then -- Detect invisible walls
869IgnoreList[#IgnoreList + 1] = Hit;
870end
871end
872
873return Pass;
874end
875
876function CheckPlayer(Player)
877if not Options.Enabled.Value then return false end
878
879local Pass = true;
880local Distance = 0;
881
882if Player ~= LocalPlayer and Player.Character then
883if not Options.ShowTeam.Value and Player.TeamColor == LocalPlayer.TeamColor then
884Pass = false;
885end
886
887local Head = Player.Character:FindFirstChild'Head';
888
889if Pass and Player.Character and Head then
890Distance = (Camera.CFrame.p - Head.Position).magnitude;
891if Options.VisCheck.Value then
892Pass = CheckRay(Player, Distance, Camera.CFrame.p, (Head.Position - Camera.CFrame.p).unit);
893end
894if Distance > Options.MaxDistance.Value then
895Pass = false;
896end
897end
898else
899Pass = false;
900end
901
902return Pass, Distance;
903end
904
905function UpdatePlayerData()
906if (tick() - LastRefresh) > (Options.RefreshRate.Value / 1000) then
907LastRefresh = tick();
908for i, v in pairs(Players:GetPlayers()) do
909local Data = shared.PlayerData[v.Name] or { Instances = {} };
910
911Data.Instances['Box'] = Data.Instances['Box'] or LineBox:Create{Thickness = 3};
912Data.Instances['Tracer'] = Data.Instances['Tracer'] or NewDrawing'Line'{
913Transparency = 1;
914Thickness = 2;
915}
916Data.Instances['HeadDot'] = Data.Instances['HeadDot'] or NewDrawing'Circle'{
917Filled = true;
918NumSides = 30;
919}
920Data.Instances['NameTag'] = Data.Instances['NameTag'] or NewDrawing'Text'{
921Size = Options.TextSize.Value;
922Center = true;
923Outline = Options.TextOutline.Value;
924Visible = true;
925};
926Data.Instances['DistanceHealthTag'] = Data.Instances['DistanceHealthTag'] or NewDrawing'Text'{
927Size = Options.TextSize.Value - 1;
928Center = true;
929Outline = Options.TextOutline.Value;
930Visible = true;
931};
932
933local NameTag = Data.Instances['NameTag'];
934local DistanceTag = Data.Instances['DistanceHealthTag'];
935local Tracer = Data.Instances['Tracer'];
936local HeadDot = Data.Instances['HeadDot'];
937local Box = Data.Instances['Box'];
938
939local Pass, Distance = CheckPlayer(v);
940
941if Pass and v.Character then
942Data.LastUpdate = tick();
943local Humanoid = v.Character:FindFirstChildOfClass'Humanoid';
944local Head = v.Character:FindFirstChild'Head';
945local HumanoidRootPart = v.Character:FindFirstChild'HumanoidRootPart';
946if v.Character ~= nil and Head then
947local ScreenPosition, Vis = Camera:WorldToViewportPoint(Head.Position);
948if Vis then
949local Color = v.TeamColor == LocalPlayer.TeamColor and Green or Red;
950
951local ScreenPositionUpper = Camera:WorldToViewportPoint(Head.CFrame * CFrame.new(0, Head.Size.Y, 0).p);
952local Scale = Head.Size.Y / 2;
953
954if Options.ShowName.Value then
955NameTag.Visible = true;
956NameTag.Text = v.Name;
957NameTag.Size = Options.TextSize.Value;
958NameTag.Outline = Options.TextOutline.Value;
959NameTag.Position = Vector2.new(ScreenPositionUpper.X, ScreenPositionUpper.Y);
960NameTag.Color = Color;
961if Drawing.Fonts then -- CURRENTLY SYNAPSE ONLY :MEGAHOLY:
962NameTag.Font = Drawing.Fonts.UI;
963end
964else
965NameTag.Visible = false;
966end
967if Options.ShowDistance.Value or Options.ShowHealth.Value then
968DistanceTag.Visible = true;
969DistanceTag.Size = Options.TextSize.Value - 1;
970DistanceTag.Outline = Options.TextOutline.Value;
971DistanceTag.Color = Color3.new(1, 1, 1);
972if Drawing.Fonts then -- CURRENTLY SYNAPSE ONLY :MEGAHOLY:
973NameTag.Font = Drawing.Fonts.UI;
974end
975
976local Str = '';
977
978if Options.ShowDistance.Value then
979Str = Str .. Format('[%d] ', Distance);
980end
981if Options.ShowHealth.Value and Humanoid then
982Str = Str .. Format('[%d/100]', Humanoid.Health / Humanoid.MaxHealth * 100);
983end
984
985DistanceTag.Text = Str;
986DistanceTag.Position = Vector2.new(ScreenPositionUpper.X, ScreenPositionUpper.Y) + Vector2.new(0, NameTag.Size);
987else
988DistanceTag.Visible = false;
989end
990if Options.ShowDot.Value then
991local Top = Camera:WorldToViewportPoint((Head.CFrame * CFrame.new(0, Scale, 0)).p);
992local Bottom = Camera:WorldToViewportPoint((Head.CFrame * CFrame.new(0, -Scale, 0)).p);
993local Radius = (Top - Bottom).y;
994
995HeadDot.Visible = true;
996HeadDot.Color = Color;
997HeadDot.Position = Vector2.new(ScreenPosition.X, ScreenPosition.Y);
998HeadDot.Radius = Radius;
999else
1000HeadDot.Visible = false;
1001end
1002if Options.ShowTracers.Value then
1003Tracer.Visible = true;
1004Tracer.From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y);
1005Tracer.To = Vector2.new(ScreenPosition.X, ScreenPosition.Y);
1006Tracer.Color = Color;
1007else
1008Tracer.Visible = false;
1009end
1010if Options.ShowBoxes.Value and HumanoidRootPart then
1011Box:Update(HumanoidRootPart.CFrame, Vector3.new(2, 3, 0) * (Scale * 2), Color);
1012else
1013Box:SetVisible(false);
1014end
1015else
1016NameTag.Visible = false;
1017DistanceTag.Visible = false;
1018Tracer.Visible = false;
1019HeadDot.Visible = false;
1020
1021Box:SetVisible(false);
1022end
1023end
1024else
1025NameTag.Visible = false;
1026DistanceTag.Visible = false;
1027Tracer.Visible = false;
1028HeadDot.Visible = false;
1029
1030Box:SetVisible(false);
1031end
1032
1033shared.PlayerData[v.Name] = Data;
1034end
1035end
1036end
1037
1038function Update()
1039for i, v in pairs(shared.PlayerData) do
1040if not Players:FindFirstChild(tostring(i)) then
1041GetTableData(v.Instances)(function(i, obj)
1042obj.Visible = false;
1043obj:Remove();
1044v.Instances[i] = nil;
1045end)
1046shared.PlayerData[i] = nil;
1047end
1048end
1049
1050local CX = Menu:GetInstance'CrosshairX';
1051local CY = Menu:GetInstance'CrosshairY';
1052if Options.Crosshair.Value then
1053CX.Visible = true;
1054CY.Visible = true;
1055
1056CX.To = Vector2.new((Camera.ViewportSize.X / 2) - 8, (Camera.ViewportSize.Y / 2));
1057CX.From = Vector2.new((Camera.ViewportSize.X / 2) + 8, (Camera.ViewportSize.Y / 2));
1058CY.To = Vector2.new((Camera.ViewportSize.X / 2), (Camera.ViewportSize.Y / 2) - 8);
1059CY.From = Vector2.new((Camera.ViewportSize.X / 2), (Camera.ViewportSize.Y / 2) + 8);
1060else
1061CX.Visible = false;
1062CY.Visible = false;
1063end
1064
1065if Options.MenuOpen.Value and MenuLoaded then
1066local MLocation = GetMouseLocation();
1067shared.MenuDrawingData.Instances.Main.Color = Color3.fromHSV(tick() * 24 % 255/255, 1, 1);
1068local MainInstance = Menu:GetInstance'Main';
1069local Values = {
1070MainInstance.Position.X;
1071MainInstance.Position.Y;
1072MainInstance.Position.X + MainInstance.Size.X;
1073MainInstance.Position.Y + MainInstance.Size.Y;
1074};
1075if MainInstance and MouseHoveringOver(Values) then
1076Debounce.CursorVis = true;
1077-- GUIService:SetMenuIsOpen(true);
1078Menu:UpdateMenuInstance'Cursor1'{
1079Visible = true;
1080From = Vector2.new(MLocation.x, MLocation.y);
1081To = Vector2.new(MLocation.x + 5, MLocation.y + 6);
1082}
1083Menu:UpdateMenuInstance'Cursor2'{
1084Visible = true;
1085From = Vector2.new(MLocation.x, MLocation.y);
1086To = Vector2.new(MLocation.x, MLocation.y + 8);
1087}
1088Menu:UpdateMenuInstance'Cursor3'{
1089Visible = true;
1090From = Vector2.new(MLocation.x, MLocation.y + 6);
1091To = Vector2.new(MLocation.x + 5, MLocation.y + 5);
1092}
1093else
1094if Debounce.CursorVis then
1095Debounce.CursorVis = false;
1096-- GUIService:SetMenuIsOpen(false);
1097Menu:UpdateMenuInstance'Cursor1'{Visible = false};
1098Menu:UpdateMenuInstance'Cursor2'{Visible = false};
1099Menu:UpdateMenuInstance'Cursor3'{Visible = false};
1100end
1101end
1102if MouseHeld then
1103if Dragging then
1104DraggingWhat.Slider.Position = Vector2.new(math.clamp(MLocation.X, DraggingWhat.Line.From.X, DraggingWhat.Line.To.X), DraggingWhat.Slider.Position.Y);
1105local Percent = (DraggingWhat.Slider.Position.X - DraggingWhat.Line.From.X) / ((DraggingWhat.Line.To.X - DraggingWhat.Line.From.X));
1106local Value = CalculateValue(DraggingWhat.Min, DraggingWhat.Max, Percent);
1107DraggingWhat.Option(Value);
1108elseif DraggingUI then
1109Debounce.UIDrag = true;
1110local Main = Menu:GetInstance'Main';
1111local MousePos = GetMouseLocation();
1112Main.Position = MousePos + DragOffset;
1113end
1114else
1115Dragging = false;
1116if DraggingUI and Debounce.UIDrag then
1117Debounce.UIDrag = false;
1118DraggingUI = false;
1119CreateMenu(Menu:GetInstance'Main'.Position);
1120end
1121end
1122if not Debounce.Menu then
1123Debounce.Menu = true;
1124ToggleMenu();
1125end
1126elseif Debounce.Menu and not Options.MenuOpen.Value then
1127Debounce.Menu = false;
1128ToggleMenu();
1129end
1130end
1131
1132RunService:UnbindFromRenderStep(GetDataName);
1133RunService:UnbindFromRenderStep(UpdateName);
1134
1135RunService:BindToRenderStep(GetDataName, 1, UpdatePlayerData);
1136RunService:BindToRenderStep(UpdateName, 1, Update);
1137end)
1138
1139TextButton_8.Parent = Main
1140TextButton_8.BackgroundColor3 = Color3.new(0, 0.666667, 1)
1141TextButton_8.BorderColor3 = Color3.new(0, 1, 1)
1142TextButton_8.BorderSizePixel = 4
1143TextButton_8.Position = UDim2.new(0.808356106, 0, 0.390134573, 0)
1144TextButton_8.Size = UDim2.new(0, 127, 0, 34)
1145TextButton_8.Font = Enum.Font.SourceSans
1146TextButton_8.TextColor3 = Color3.new(0, 1, 1)
1147TextButton_8.TextScaled = true
1148TextButton_8.TextSize = 16
1149TextButton_8.TextWrapped = true
1150
1151TextButton_9.Parent = Main
1152TextButton_9.BackgroundColor3 = Color3.new(0, 0.666667, 1)
1153TextButton_9.BorderColor3 = Color3.new(0, 1, 1)
1154TextButton_9.BorderSizePixel = 4
1155TextButton_9.Position = UDim2.new(0.808356106, 0, 0.816143513, 0)
1156TextButton_9.Size = UDim2.new(0, 127, 0, 34)
1157TextButton_9.Font = Enum.Font.SourceSans
1158TextButton_9.TextColor3 = Color3.new(0, 1, 1)
1159TextButton_9.TextScaled = true
1160TextButton_9.TextSize = 16
1161TextButton_9.TextWrapped = true
1162
1163ByNB_Non.Name = "By NB_Non"
1164ByNB_Non.Parent = Main
1165ByNB_Non.BackgroundColor3 = Color3.new(0, 0.666667, 1)
1166ByNB_Non.BackgroundTransparency = 0.40000000596046
1167ByNB_Non.BorderColor3 = Color3.new(1, 0.333333, 1)
1168ByNB_Non.Position = UDim2.new(0.350256801, 0, 0, 0)
1169ByNB_Non.Size = UDim2.new(0, 196, 0, 25)
1170ByNB_Non.Font = Enum.Font.SourceSans
1171ByNB_Non.Text = "Hack OPL"
1172ByNB_Non.TextColor3 = Color3.new(0, 1, 1)
1173ByNB_Non.TextSize = 14
1174
1175TextButton_10.Parent = Main
1176TextButton_10.BackgroundColor3 = Color3.new(0, 0.666667, 1)
1177TextButton_10.BorderColor3 = Color3.new(0, 1, 1)
1178TextButton_10.BorderSizePixel = 4
1179TextButton_10.Position = UDim2.new(0.361394852, 0, 0.390134513, 0)
1180TextButton_10.Size = UDim2.new(0, 127, 0, 34)
1181TextButton_10.Font = Enum.Font.SourceSans
1182TextButton_10.Text = "Speed"
1183TextButton_10.TextColor3 = Color3.new(0, 1, 1)
1184TextButton_10.TextScaled = true
1185TextButton_10.TextSize = 20
1186TextButton_10.TextWrapped = true
1187TextButton_10.MouseButton1Down:connect(function()
1188game:GetService("Players").LocalPlayer.Character.Humanoid.WalkSpeed = 100
1189end)
1190
1191TextBox.Parent = Main
1192TextBox.BackgroundColor3 = Color3.new(1, 0.333333, 1)
1193TextBox.BackgroundTransparency = 0.40000000596046
1194TextBox.Position = UDim2.new(0, 0, -0.0941704065, 0)
1195TextBox.Size = UDim2.new(0, 74, 0, 21)
1196TextBox.Font = Enum.Font.SourceSans
1197TextBox.Text = "V.1"
1198TextBox.TextColor3 = Color3.new(0.333333, 1, 1)
1199TextBox.TextSize = 16
1200-- Scripts: