Leodu41

fps hack roblox

Aug 12th, 2019
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.88 KB | None | 0 0
  1. --[[
  2.  
  3. __/\\\\____________/\\\\_________________________________________________________
  4. _\/\\\\\\________/\\\\\\_________________________________________________________
  5. _\/\\\//\\\____/\\\//\\\_________________________________________________________
  6. _\/\\\\///\\\/\\\/_\/\\\_____/\\\\\_____/\\/\\\\\\\___/\\\\\\\\\\_____/\\\\\\\\__
  7. _\/\\\__\///\\\/___\/\\\___/\\\///\\\__\/\\\/////\\\_\/\\\//////____/\\\/////\\\_
  8. _\/\\\____\///_____\/\\\__/\\\__\//\\\_\/\\\___\///__\/\\\\\\\\\\__/\\\\\\\\\\\__
  9. _\/\\\_____________\/\\\_\//\\\__/\\\__\/\\\_________\////////\\\_\//\\///////___
  10. _\/\\\_____________\/\\\__\///\\\\\/___\/\\\__________/\\\\\\\\\\__\//\\\\\\\\\\_
  11. _\///______________\///_____\/////_____\///__________\//////////____\//////////__
  12.  
  13. FIRST PERSON SHOOTERS
  14.  
  15. ------------------------
  16. -: CHANGELOG :-
  17. ------------------------
  18. v1.21:
  19. - Chams Fix
  20.  
  21. v1.4:
  22. - Fullbright
  23.  
  24. --]]
  25.  
  26. local World = game:GetService('Workspace');
  27. local Input = game:GetService('UserInputService');
  28. local Lighting = game:GetService("Lighting");
  29. local Players = game:GetService('Players');
  30. local Player = Players['LocalPlayer'];
  31.  
  32. local Keys = {}
  33. local Misc = {
  34. CharFunctions = getmetatable(newproxy(true));
  35. GUIColors = {
  36. On = Color3.fromRGB(46, 105, 132);
  37. Off = Color3.new(.38, .38, .38);
  38. };
  39.  
  40. ChamsColors = {
  41. {'White', Color3.new(1, 1, 1)};
  42. {'Black', Color3.new(0, 0, 0)};
  43. {'Red', Color3.new(1, 0, 0)};
  44. {'Green', Color3.new(0, 1, 0)};
  45. {'Blue', Color3.new(0, 0, 1)};
  46. {'Purple', Color3.new(0.65, 0, 0.65)};
  47. {'Yellow', Color3.new(1, 1, 0)};
  48. {'Grey', Color3.new(0.8, 0.8, 0.8)};
  49. }
  50. }
  51.  
  52. local function GetFunc(t, i)
  53. for __, ___ in next, (t) do
  54. if string.lower(i):match(__:lower()) then
  55. return ___, __
  56. end
  57. end
  58. end
  59.  
  60. local function GetColor(t, i)
  61. for __, ___ in next, (t) do
  62. if (___[1] == i) then
  63. return ___, __
  64. elseif (___[2] == i) then
  65. return ___, __
  66. end
  67. end
  68. end
  69.  
  70. local Settings = {
  71. {'Menu', false, Enum.KeyCode.Delete};
  72. {'Team Chams [\'COLOR\']', true, 'Toggle'};
  73. {'Enemy Chams [\'COLOR\']', true, 'Toggle'};
  74. {'Chams Transparency', false, '0'};
  75. {'Fullbright', true, 'MAX'};
  76. -- {'ESP', true, 'N/A'};
  77. {'Aimbot [Not PF]', true, 'Toggle'};
  78. }
  79.  
  80. ------------ [[ GUI SPAWN ]] ------------
  81. FormAssets = function()
  82. ------ ERROR MAGIC ------
  83. local __ERROR__ = Instance.new('BindableEvent')
  84. __ERROR__['Event']:Connect(error)
  85.  
  86. --------- CREATE FUNCTION ---------
  87. local create = function(class, parent)
  88. local instance = Instance.new(class);
  89. return function(props)
  90. for property, value in next, (props) do
  91. if (property ~= 'Parent') and (typeof(value) ~= 'Instance') then
  92. local suc, err = pcall(function()
  93. instance[property] = value
  94. end)
  95. if not suc then __ERROR__:Fire('[Script->Asset]: ' .. err) end
  96.  
  97. elseif (property == 'Parent') then
  98. parent = value
  99. end
  100. end
  101.  
  102. if parent and (typeof(parent) == 'Instance') then
  103. instance['Parent'] = parent
  104. end
  105.  
  106. return instance
  107. end
  108. end
  109.  
  110. -------------------------------------
  111. -------------------------------------
  112. -- SOME THINGS MAY BE OUT OF ORDER --
  113. ----(INSTANCE RELATED PROPERTIES)----
  114. -------------(UNLIKELY)--------------
  115. -------------------------------------
  116. -------------------------------------
  117.  
  118. local Main = create('ScreenGui'){
  119. Name = "FPS Hacks - Menu"
  120. }
  121.  
  122. local Folder = create('Folder', Main){
  123. Name = 'Chams'
  124. }
  125.  
  126. local Folder1 = create('Folder', Folder){
  127. Name = 'Team'
  128. }
  129.  
  130. local Folder2 = create('Folder', Folder){
  131. Name = 'Enemy'
  132. }
  133.  
  134. local Frame = create('Frame', Main){
  135. Name = "Main";
  136. BackgroundColor3 = Color3.new(1, 1, 1);
  137. BackgroundTransparency = 1;
  138. Position = UDim2.new(0.5, 0, 0.5, 0);
  139. Size = UDim2.new(0, 250, 0, 190);
  140. Draggable = true;
  141. Active = true;
  142. AnchorPoint = Vector2.new(0.5, 0.5);
  143. Transparency = 1
  144. }
  145.  
  146. local TextLabel = create('TextLabel', Frame){
  147. Name = "Title";
  148. BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  149. BorderSizePixel = 0;
  150. Size = UDim2.new(1, 0, 0, 35);
  151. Text = "FPS Hacks";
  152. TextColor3 = Color3.new(0.866667, 0.843137, 0.843137);
  153. Font = Enum.Font.SciFi;
  154. FontSize = Enum.FontSize.Size28;
  155. TextWrapped = true
  156. }
  157.  
  158. local ScrollingFrame = create('ScrollingFrame', Frame){
  159. Name = "Buttons";
  160. BackgroundColor3 = Color3.new(1, 1, 1);
  161. BackgroundTransparency = 1;
  162. BorderSizePixel = 0;
  163. Position = UDim2.new(0.5, 0, 0, 40);
  164. CanvasSize = UDim2.new(0, 0, 0, 0);
  165. Size = UDim2.new(1, 0, 0, 260);
  166. AnchorPoint = Vector2.new(0.5, 0);
  167. Transparency = 1
  168. }
  169.  
  170. local Frame1 = create('Frame'){
  171. BackgroundColor3 = Color3.new(1, 1, 1);
  172. BackgroundTransparency = 1;
  173. BorderSizePixel = 0;
  174. Position = UDim2.new(0, 0, 0, 1);
  175. Selectable = true;
  176. Size = UDim2.new(1, 0, 0, 25);
  177. ClipsDescendants = true;
  178. Transparency = 1
  179. }
  180.  
  181. local TextLabel1 = create('TextButton', Frame1){
  182. Name = "Text";
  183. BackgroundColor3 = Color3.new(1, 1, 1);
  184. BorderColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  185. Position = UDim2.new(0.100000001, 0, 0, 0);
  186. Size = UDim2.new(0.600000024, 0, 1, 0);
  187. Text = "Example";
  188. TextColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  189. Font = Enum.Font.SciFi;
  190. FontSize = Enum.FontSize.Size14
  191. }
  192.  
  193. local Frame2 = create('Frame', Frame1){
  194. Name = "Status";
  195. BackgroundColor3 = Color3.new(0, 1, 0);
  196. BorderSizePixel = 0;
  197. Position = UDim2.new(0.0250000004, 0, 0.5, 0);
  198. Size = UDim2.new(0, 7, 0, 7);
  199. Style = Enum.FrameStyle.DropShadow;
  200. AnchorPoint = Vector2.new(0, 0.5)
  201. }
  202.  
  203. local TextButton = create('TextButton', Frame1){
  204. Name = "Key";
  205. BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  206. BackgroundTransparency = 0.5;
  207. BorderSizePixel = 0;
  208. Position = UDim2.new(0.699999988, 0, 0, 0);
  209. Size = UDim2.new(0.300000012, 0, 1, 0);
  210. Text = "[EXAMPLE]";
  211. TextColor3 = Color3.new(0.839216, 0.839216, 0.839216);
  212. Font = Enum.Font.SciFi;
  213. FontSize = Enum.FontSize.Size14;
  214. TextStrokeColor3 = Color3.new(0.380392, 0.380392, 0.380392);
  215. TextStrokeTransparency = 0;
  216. Transparency = 0.5
  217. }
  218.  
  219. local UIListLayout = create('UIListLayout', ScrollingFrame){
  220. Padding = UDim.new(0, 4);
  221. HorizontalAlignment = Enum.HorizontalAlignment.Center
  222. }
  223.  
  224. local UIPadding = create('UIPadding', ScrollingFrame){}
  225.  
  226.  
  227. return create, Main, Frame1, Folder
  228. end
  229.  
  230. local Create, Menu, Button, Chams = FormAssets()
  231. local TDB = false
  232. local EDB = false
  233. local Functions = {
  234. ['Menu'] = function()
  235. Menu['Enabled'] = not (Menu['Enabled']);
  236. end;
  237.  
  238. ['Team Chams'] = function()
  239. if TDB then return end
  240. TDB = true
  241. Settings['TCO'] = not (Settings['TCO'])
  242. if Settings['TCO'] then
  243. Misc['CharFunctions']
  244. ['TCCH'] = function(char)
  245. local Target = Players:GetPlayerFromCharacter(char)
  246. if (Target == Player) or (Target.TeamColor ~= Player.TeamColor) then return end
  247.  
  248. local Folder = Chams['Team']:FindFirstChild(Target['Name'])
  249. or Create('Folder', Chams['Team']){Name = Target['Name']}
  250.  
  251. for __, part in next, (char:GetChildren()) do
  252. if part:IsA('BasePart') then
  253. Create('BoxHandleAdornment', Folder)
  254. {
  255. Name = part.Name .. '_CHAM';
  256. Color3 = Settings['TCC'][2];
  257. AlwaysOnTop = true;
  258. Transparency = Settings['CT'];
  259. Visible = true;
  260. ZIndex = 10;
  261.  
  262. Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  263. or (Vector3.new(.5, .5, .5) + part.Size)
  264. }['Adornee'] = part
  265. end
  266. end
  267. end
  268. elseif Misc['CharFunctions']['TCCH'] then
  269. Misc['CharFunctions']['TCCH'] = nil
  270. Chams['Team']:ClearAllChildren()
  271. end
  272. TDB = false
  273. end;
  274.  
  275. ['Enemy Chams'] = function()
  276. if EDB then return end
  277. EDB = true
  278. Settings['ECO'] = not (Settings['ECO'])
  279. if Settings['ECO'] then
  280. Misc['CharFunctions']
  281. ['ECCH'] = function(char)
  282. local Target = Players:GetPlayerFromCharacter(char)
  283. if (Target == Player) or (Target.TeamColor == Player.TeamColor) then return end
  284.  
  285. local Folder = Chams['Enemy']:FindFirstChild(Target['Name'])
  286. or Create('Folder', Chams['Enemy']){Name = Target['Name']}
  287.  
  288. for __, part in next, (char:GetChildren()) do
  289. if part:IsA('BasePart') then
  290. Create('BoxHandleAdornment', Folder)
  291. {
  292. Name = part.Name .. '_CHAM';
  293. Color3 = Settings['ECC'][2];
  294. AlwaysOnTop = true;
  295. Transparency = Settings['CT'];
  296. Visible = true;
  297. ZIndex = 10;
  298.  
  299. Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  300. or (Vector3.new(.5, .5, .5) + part.Size)
  301. }['Adornee'] = part
  302. end
  303. end
  304. end
  305. elseif Misc['CharFunctions']['ECCH'] then
  306. Misc['CharFunctions']['ECCH'] = nil
  307. Chams['Enemy']:ClearAllChildren()
  308. end
  309. EDB = false
  310. end;
  311.  
  312. ['Chams Transparency'] = function(t)
  313. if t then
  314. local Trans = Settings['CT']
  315. Settings['CT'] = (Trans < .8 and Trans + (1/10)) or 0
  316. end
  317.  
  318. local TeamCham = Chams['Team']:GetChildren()
  319. local EnemyCham = Chams['Enemy']:GetChildren()
  320.  
  321. for __, object in next, (TeamCham) do
  322. for __, bha in next, (object:GetChildren()) do
  323. bha.Transparency = Settings['CT']
  324. bha.Color3 = Settings['TCC'][2]
  325. end
  326. end
  327.  
  328. for __, object in next, (EnemyCham) do
  329. for __, bha in next, (object:GetChildren()) do
  330. bha.Transparency = Settings['CT']
  331. bha.Color3 = Settings['ECC'][2]
  332. end
  333. end
  334.  
  335. Menu['Main']['Buttons']['Frans']['Key'].Text = '[' .. tostring(Settings['CT']) .. ']'
  336. end;
  337.  
  338. ['Fullbright'] = function(Toggle, TextBox)
  339. local Fullbright = Settings.Fullbright
  340. if Toggle then Fullbright.On = not (Fullbright.On); end
  341.  
  342. local function Handle()
  343. local Setting = Fullbright.Options[Fullbright.Current]
  344. local Settings = Fullbright.OptionDefs[Setting]
  345.  
  346.  
  347. TextBox['Text'] = '[' .. Setting .. ']'
  348. Lighting.Ambient = Settings.InAmbience;
  349. Lighting.OutdoorAmbient = Settings.OutAmbience;
  350. Lighting.Brightness = Settings.Brightness;
  351. Lighting.FogStart = Settings.Fog;
  352. Lighting.FogEnd = Settings.Fog;
  353. end
  354.  
  355. if (not Fullbright.On) then
  356. Fullbright.Current = 3
  357. end
  358.  
  359. Handle()
  360. end;
  361.  
  362. ['Aimbot'] = function(l)
  363. l:Destroy()
  364.  
  365. local IgnorePlayersNamed = {NAME=true} -- Name = true or false
  366. --[[
  367. [J] - To go down the list.
  368. [U] - To go up the list.
  369. [H] - To toggle that item in the list.
  370. [RMB] - To aim at your target using the current settings. (THIS UPDATES IN LIVE TIME SO YOU DON'T HAVE TO STOP AIMING FOR IT TO TAKE EFFECT)
  371. --]]
  372.  
  373. local services = setmetatable({
  374. World = game:GetService('Workspace');
  375. Players = game:GetService('Players');
  376. Input = game:GetService('UserInputService');
  377. Run = game:GetService('RunService');
  378. UI = game:GetService('StarterGui');
  379. },{
  380. __index = function(tab,index)
  381. local serv
  382. local ran,err = pcall(function() serv=game:service(index) end)
  383. if ran then
  384. tab[index] = serv
  385. return serv
  386. end
  387. end
  388. })
  389.  
  390. local cre = Create
  391. local ResizeUI = function(ui,downscale,byclass)
  392. if not rawequal(ui['ClassName'],'ScrollingFrame') then return end
  393.  
  394. local count = 0;
  395. for __, asset in next, (ui:GetChildren()) do
  396. if rawequal(asset['ClassName'],byclass) then
  397. count = count + 1
  398. end
  399. end
  400.  
  401. ui['CanvasSize'] = UDim2.new(ui.CanvasSize.X.Scale,ui.CanvasSize.X.Offset,ui.CanvasSize.Y.Scale,downscale*count)
  402. end
  403.  
  404. local wfc, ffc, ffoc, cast, ray = services.World.WaitForChild, services.World.FindFirstChild, services.World.FindFirstChildOfClass, services.World.FindPartOnRayWithIgnoreList, Ray.new
  405. local wfcoc = function(p,class)
  406. local obj
  407. repeat services.Run.RenderStepped:wait()
  408. obj = p:FindFirstChildOfClass(class)
  409. until obj
  410. return obj
  411. end
  412.  
  413. local Client = services.Players.LocalPlayer
  414. local ClientUI = wfc(Client,'PlayerGui')
  415. local ClientMouse = Client:GetMouse()
  416. local ClientModel = Client.Character or Client.CharacterAdded:wait()
  417. local ClientCamera = services.World.CurrentCamera
  418. local ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  419. local ClientActiveUI;
  420.  
  421. local status = {
  422. Enabled = false,
  423. TeamCheck = false,
  424. HeadsOnly = false,
  425. RayCheck = true,
  426. AutoAim = false,
  427. }
  428.  
  429. local function toggle(button)
  430. local option, val = button['Text']:match('(.*):%s*(.*)')
  431. status[option] = not status[option]
  432.  
  433. if status[option] then
  434. button.TextColor3 = Color3.fromRGB(0,255,0)
  435. else
  436. button.TextColor3 = Color3.fromRGB(255,0,0)
  437. end
  438. button.Text = option .. ': ' .. tostring(status[option])
  439. end
  440.  
  441. local selection = {}
  442. local select_pos = 1
  443. local current_pos = 0
  444. local __ = function()
  445. if ffc(game.CoreGui, '___') then return end
  446.  
  447. local GUI = cre('ScreenGui',game:GetService('CoreGui')){
  448. Name = '___';
  449. }
  450.  
  451. local Frame = cre('ScrollingFrame',GUI){
  452. BackgroundTransparency = 1,
  453. BorderSizePixel = 0,
  454.  
  455. Name = 'Options',
  456. Position = UDim2.new(.8,0,.915,0),
  457. Size = UDim2.new(.2,0,0,30),
  458. ZIndex = 10,
  459. ClipsDescendants = true,
  460. CanvasSize = UDim2.new(0,0,0,0),
  461. ScrollBarThickness = 0,
  462. ScrollingEnabled = false,
  463. }
  464.  
  465. local UILL = cre('UIListLayout',Frame){
  466. Name = 'LayoutHandler',
  467. FillDirection = 'Vertical',
  468. HorizontalAlignment = 'Center',
  469. SortOrder = 'LayoutOrder',
  470. VerticalAlignment = 'Top'
  471. }
  472.  
  473. local Template = cre('TextButton',nil){
  474. BackgroundTransparency = 1,
  475. BorderSizePixel = 0,
  476.  
  477. Name = 'Template',
  478. Size = UDim2.new(.9,0,0,30),
  479. Font = 'SciFi',
  480. Text = '',
  481. TextColor3 = Color3.fromRGB(255,255,255),
  482. TextScaled = true,
  483. TextWrapped = true,
  484. }
  485.  
  486. local TSC = cre('UISizeConstraint',Template){
  487. Name = 'TemplateSizeConstraint',
  488. MaxSize = Vector2.new(math.huge,30),
  489. }
  490.  
  491. Frame['ChildAdded']:connect(function()
  492. ResizeUI(Frame,30,'TextButton')
  493. end)
  494.  
  495. local sel_pos = 0
  496. for option, val in next, status do
  497. local tp = Template:Clone()
  498.  
  499. tp.Name = option
  500. tp.Text = option .. ': ' .. tostring(val)
  501.  
  502. if status[option] then
  503. tp.TextColor3 = Color3.fromRGB(0,255,0)
  504. else
  505. tp.TextColor3 = Color3.fromRGB(255,0,0)
  506. end
  507.  
  508. sel_pos = sel_pos + 1
  509. selection[sel_pos] = tp
  510. tp.Parent = Frame
  511. end
  512.  
  513. Frame.CanvasPosition = Vector2.new(0, current_pos)
  514. return Frame
  515. end
  516.  
  517. Client['CharacterAdded']:connect(function(c)
  518. ClientModel = c
  519. ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  520. ClientActiveUI.Parent.Parent = nil
  521. ClientActiveUI = coroutine.wrap(__)()
  522. end)
  523. ClientActiveUI = coroutine.wrap(__)()
  524.  
  525. local right_down, keylogs, inputlogs = nil, {}, {}
  526. services.Input.InputBegan:connect(function(input, procc)
  527. keylogs[input.KeyCode],inputlogs[input.UserInputType] = true, true;
  528.  
  529. if not ClientActiveUI then return end
  530. if keylogs[Enum.KeyCode.U] and current_pos >= 30 then
  531. select_pos = select_pos - 1
  532. current_pos = current_pos - 30
  533. ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  534.  
  535. elseif keylogs[Enum.KeyCode.J] and current_pos < ClientActiveUI.CanvasSize.Y.Offset - 30 then
  536. select_pos = select_pos + 1
  537. current_pos = current_pos + 30
  538. ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  539.  
  540. elseif keylogs[Enum.KeyCode.H] then
  541. if selection[select_pos] then
  542. toggle(selection[select_pos])
  543. end
  544. end
  545. end)
  546. services.Input.InputEnded:connect(function(input, procc)
  547. keylogs[input.KeyCode],inputlogs[input.UserInputType] = false, false;
  548. end)
  549.  
  550. local function GetPlayerFromCharacter(mod)
  551. if not mod:IsA('Model') then return end
  552.  
  553. for __, client in next, services.Players:GetPlayers() do
  554. if rawequal(string.lower(client['Name']):sub(1,#mod['Name']),mod['Name']:lower()) then
  555. return client, client['Name']
  556. end
  557. end
  558. return nil, 'N/A'
  559. end
  560.  
  561. local function Search()
  562. local t = {}
  563. for __, child in next, services.World:GetChildren() do
  564. local UserFromCharacter = GetPlayerFromCharacter(child)
  565. if UserFromCharacter then
  566. if child:IsA('Model') and not rawequal(UserFromCharacter,Client) then
  567. local h = ffoc(child,'Humanoid')
  568. if h and h.Health > 0 then
  569. table.insert(t, {child,UserFromCharacter})
  570. end
  571. end
  572. end
  573. end
  574. return t
  575. end
  576.  
  577. local function cast_ray(p0,p1,blacklist)
  578. local Part
  579. local __=0
  580. repeat
  581. __=__+1
  582. local cond=(p1-p0).magnitude < 999
  583. Part,p0=cast(workspace,ray(p0,cond and p1-p0 or (p1-p0).unit*999),blacklist)
  584. if Part then
  585. if Part.CanCollide==false or Part.Transparency==1 then
  586. blacklist[#blacklist+1]=Part
  587. Part=nil
  588. end
  589. elseif cond or __ > 15 then
  590. break
  591. end
  592. until Part
  593. return Part,p0
  594. end
  595.  
  596. services.Run.RenderStepped:connect(function()
  597. local Storage = {}
  598. if status['Enabled'] and (inputlogs[Enum.UserInputType.MouseButton2] or status['AutoAim']) then
  599. Storage = Search()
  600.  
  601. local dot, face = -1
  602. for __, info in next, (Storage) do
  603. local h = ffc(info[1],'Humanoid')
  604. local skip;
  605.  
  606. if not inputlogs[Enum.UserInputType.MouseButton2] and not status['AutoAim'] then return end
  607. if not info[1] or not info[2] or IgnorePlayersNamed[info[2]['Name']] or ffoc(info[1],'ForceField') then skip = true end
  608. if not ffc(info[1],'HumanoidRootPart') then skip = true end
  609.  
  610. if h and h['Health'] > 0 then
  611. if status['TeamCheck'] then
  612. if Client['TeamColor'] == info[2]['TeamColor'] then
  613. skip = true
  614. end
  615. end
  616.  
  617. if not skip then
  618. local cc = ClientCamera.CFrame
  619. local pos = status['HeadsOnly'] and info[1]['Head'].CFrame.p or info[1]['HumanoidRootPart'].Position
  620. local HitPart=cast_ray(cc.p,pos,{ClientCamera,ClientModel})
  621.  
  622. if not (status['RayCheck'] and HitPart) or info[1]:IsAncestorOf(HitPart) then
  623. local m = (pos-cc.p).unit:Dot(cc.lookVector)
  624. if rawequal(m,m) and m > dot then
  625. dot, face= m, pos
  626. end
  627. end
  628. end
  629. end
  630. end
  631. if face then
  632. ClientCamera.CFrame = CFrame.new(ClientCamera.CFrame.p,face) * CFrame.new(0,0,0.5)
  633. end
  634. end
  635. end)
  636.  
  637. end
  638. }
  639.  
  640. Settings = (function()
  641. local NewSettings = {
  642. --- Chams ---
  643. CT = 0; -- Transparency
  644. TCO = false; -- Team Chams On
  645. ECO = false; -- Enemy Chams On
  646. TCC = GetColor(Misc.ChamsColors, 'Grey'); -- Current Team Chams Color
  647. ECC = GetColor(Misc.ChamsColors, 'Red'); -- Current Enemy Chams Color
  648.  
  649. --- Fullbright ---
  650. Fullbright = {
  651. On = false;
  652. Current = 1;
  653. Options = {'Max','Half','Default'};
  654. OptionDefs = {
  655. Max = {
  656. Fog = 1000000;
  657. Brightness = 10;
  658. InAmbience = Color3.new(1, 1, 1);
  659. OutAmbience = Color3.new(1, 1, 1);
  660. };
  661. Half = {
  662. Fog = 250;
  663. Brightness = 1.5;
  664. InAmbience = Color3.new(0.6, 0.6, 0.6);
  665. OutAmbience = Color3.new(0.6, 0.6, 0.6);
  666. };
  667. Default = {
  668. Fog = Lighting.FogEnd;
  669. Brightness = Lighting.Brightness;
  670. InAmbience = Lighting.Ambient;
  671. OutAmbience = Lighting.OutdoorAmbient;
  672. }
  673. }
  674. }
  675. }
  676.  
  677. for __, option in next, (Settings) do
  678. local NewOption = Button:Clone()
  679. if option[1] == 'Menu' or option[1] == 'Chams Transparency' then
  680. NewOption['Status']['Style'] = 'Custom';
  681. NewOption['Key']['TextStrokeColor3'] = Misc.GUIColors.On
  682. end
  683.  
  684. NewOption['Text'].Text = option[1]:match('COLOR') and (
  685. (option[1]:match('Team') and option[1]:gsub('COLOR', NewSettings.TCC[1])) or
  686. (option[1]:match('Enemy') and option[1]:gsub('COLOR', NewSettings.ECC[1]))
  687. ) or option[1]
  688. NewOption['Key'].Text = '['.. ((typeof(option[3]) == 'EnumItem' and option[3].Name) or option[3]) .. ']'
  689. NewOption.Parent = Menu['Main']['Buttons']
  690.  
  691. if option[1] == 'Chams Transparency' then
  692. NewOption['Name'] = 'Frans'
  693. end
  694.  
  695. local Func, Name = GetFunc(Functions, option[1])
  696. if Func then
  697. NewOption['Text']['MouseButton1Down']:connect(function()
  698. if not option[2] then return end
  699. if NewOption.Status.Style.Name == 'DropShadow' then
  700. NewOption.Status.Style = 'Custom'
  701. elseif NewOption.Status.Style.Name == 'Custom' then
  702. NewOption.Status.Style = 'DropShadow'
  703. end
  704.  
  705. if option[1]:match('Aimbot') then
  706. Func(NewOption)
  707.  
  708. elseif option[1]:match('Fullbright') then
  709. Func(true, NewOption['Key'])
  710.  
  711. else
  712. Func()
  713. end
  714. end)
  715. if option[3] == 'Toggle' then
  716. if Name:match('Team') then
  717. NewOption['Key']['MouseButton1Down']:connect(function()
  718. local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.TCC[2])
  719. if (Pos + 1) < #Misc.ChamsColors then
  720. NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[Pos + 1][1])
  721. NewSettings.TCC = Misc.ChamsColors[Pos + 1]
  722. else
  723. NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[1][1])
  724. NewSettings.TCC = Misc.ChamsColors[1]
  725. end
  726.  
  727. GetFunc(Functions, 'Chams Transparency')()
  728. end)
  729. elseif Name:match('Enemy') then
  730. NewOption['Key']['MouseButton1Down']:connect(function()
  731. local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.ECC[2])
  732. if (Pos + 1) < #Misc.ChamsColors then
  733. NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[Pos + 1][1])
  734. NewSettings.ECC = Misc.ChamsColors[Pos + 1]
  735. else
  736. NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[1][1])
  737. NewSettings.ECC = Misc.ChamsColors[1]
  738. end
  739.  
  740. GetFunc(Functions, 'Chams Transparency')()
  741. end)
  742. end
  743.  
  744. elseif option[1] == 'Chams Transparency' then
  745. NewOption['Key']['MouseButton1Down']:connect(function()
  746. GetFunc(Functions, 'Chams Transparency')(true)
  747. end)
  748.  
  749. elseif option[1] == 'Fullbright' then
  750. NewOption['Key']['MouseButton1Down']:connect(function()
  751. local Fullbright = Settings.Fullbright
  752. if not Fullbright.On then return end
  753. if Fullbright.Current < #Fullbright.Options then
  754. Fullbright.Current = Fullbright.Current + 1
  755. else
  756. Fullbright.Current = 1
  757. end
  758. GetFunc(Functions, 'Fullbright')(false, NewOption['Key'])
  759. end)
  760.  
  761. end
  762. end
  763. end
  764. return NewSettings
  765. end)()
  766.  
  767. setmetatable(Misc['CharFunctions'], {
  768. __newindex = function(s, i, v)
  769. rawset(Misc['CharFunctions'], i, v)
  770. for __, player in next, (Players:GetPlayers()) do
  771. if player.Character then
  772. v(player.Character)
  773. end
  774. end
  775. end
  776. })
  777.  
  778. local CharFix = function(char)
  779. local Target = Players:GetPlayerFromCharacter(char)
  780. local Team = Chams['Team']:FindFirstChild(Target['Name'])
  781. local Enemy = Chams['Enemy']:FindFirstChild(Target['Name'])
  782.  
  783. if Team then
  784. for __, handle in next, (Team:GetChildren()) do
  785. if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  786. handle['Parent'] = nil
  787. end
  788. end
  789. end
  790.  
  791. if Enemy then
  792. for __, handle in next, (Enemy:GetChildren()) do
  793. if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  794. handle['Parent'] = nil
  795. end
  796. end
  797. end
  798. end
  799.  
  800. local CharAbuse = function(char) wait()
  801. for __, func in next, (Misc['CharFunctions']) do
  802. coroutine.wrap(func)(char)
  803. end
  804.  
  805. char['Changed']:connect(function(prop)
  806. if (prop == 'Parent') then
  807. CharFix(char)
  808. end
  809. end)
  810. end
  811.  
  812. for __, player in next, (Players:GetPlayers()) do
  813. player['CharacterAdded']:connect(CharAbuse)
  814. end
  815.  
  816. Players.PlayerAdded:connect(function(Client)
  817. Client['CharacterAdded']:connect(CharAbuse)
  818. end)
  819.  
  820. Players.PlayerRemoving:connect(function(Client)
  821. local Team = Chams['Team']:FindFirstChild(Client['Name'])
  822. local Enemy = Chams['Enemy']:FindFirstChild(Client['Name'])
  823.  
  824. if Team then Team['Parent'] = nil end
  825. if Enemy then Enemy['Parent'] = nil end
  826. end)
  827.  
  828. Input['InputBegan']:connect(function(input, og)
  829. if og then return end
  830.  
  831. if input.UserInputType == Enum.UserInputType.Keyboard then
  832. if input.KeyCode == Enum.KeyCode.Delete then
  833. Functions['Menu']()
  834. end
  835. end
  836. end)
  837.  
  838. Menu.Parent = game.CoreGui
Add Comment
Please, Sign In to add comment