Advertisement
bolo17

phantom forces Hack/script

Mar 6th, 2020
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Phantom forces Hack/Unlock All {Gun;Esp;Aimbot&More
  2. Working.
  3. Get link here:https://lnkload.com/2nzPh
  4. game:GetService('Workspace');
  5. local Input = game:GetService('UserInputService');
  6. local Lighting = game:GetService("Lighting");
  7. local Players = game:GetService('Players');
  8. local Player = Players['LocalPlayer'];
  9.  
  10. local Keys = {}
  11. local Misc = {
  12.     CharFunctions = getmetatable(newproxy(true));
  13.     GUIColors = {
  14.         On = Color3.fromRGB(46, 105, 132);
  15.         Off = Color3.new(.38, .38, .38);
  16.     };
  17.    
  18.     ChamsColors = {
  19.         {'White', Color3.new(1, 1, 1)};
  20.         {'Black', Color3.new(0, 0, 0)};
  21.         {'Red', Color3.new(1, 0, 0)};
  22.         {'Green', Color3.new(0, 1, 0)};
  23.         {'Blue', Color3.new(0, 0, 1)};
  24.         {'Purple', Color3.new(0.65, 0, 0.65)};
  25.         {'Yellow',  Color3.new(1, 1, 0)};
  26.         {'Grey', Color3.new(0.8, 0.8, 0.8)};
  27.     }
  28. }
  29.  
  30. local function GetFunc(t, i)
  31.     for __, ___ in next, (t) do
  32.         if string.lower(i):match(__:lower()) then
  33.             return ___, __
  34.         end
  35.     end
  36. end
  37.  
  38. local function GetColor(t, i)
  39.     for __, ___ in next, (t) do
  40.         if (___[1] == i) then
  41.             return ___, __
  42.         elseif (___[2] == i) then
  43.             return ___, __
  44.         end
  45.     end
  46. end
  47.  
  48. local Settings = {
  49.     {'Menu', false, Enum.KeyCode.Delete};
  50.     {'Team Chams [\'COLOR\']', true, 'Toggle'};
  51.     {'Enemy Chams [\'COLOR\']', true, 'Toggle'};
  52.     {'Chams Transparency', false, '0'};
  53.     {'Fullbright', true, 'MAX'};
  54.     -- {'ESP', true, 'N/A'};
  55.     {'Aimbot [Not PF]', true, 'Toggle'};
  56. }
  57.  
  58. ------------ [[ GUI SPAWN ]] ------------
  59. FormAssets = function()
  60.     ------ ERROR MAGIC ------
  61.     local __ERROR__ = Instance.new('BindableEvent')
  62.     __ERROR__['Event']:Connect(error)
  63.    
  64.     --------- CREATE FUNCTION ---------
  65.     local create = function(class, parent)
  66.         local instance = Instance.new(class);
  67.         return function(props)
  68.             for property, value in next, (props) do
  69.                 if (property ~= 'Parent') and (typeof(value) ~= 'Instance') then
  70.                     local suc, err = pcall(function()
  71.                         instance[property] = value
  72.                     end)
  73.                     if not suc then __ERROR__:Fire('[Script->Asset]: ' .. err) end
  74.                    
  75.                 elseif (property == 'Parent') then
  76.                     parent = value
  77.                 end
  78.             end
  79.            
  80.             if parent and (typeof(parent) == 'Instance') then
  81.                 instance['Parent'] = parent
  82.             end
  83.            
  84.             return instance
  85.         end
  86.     end
  87.    
  88.     -------------------------------------
  89.     -------------------------------------
  90.     -- SOME THINGS MAY BE OUT OF ORDER --
  91.     ----(INSTANCE RELATED PROPERTIES)----
  92.     -------------(UNLIKELY)--------------
  93.     -------------------------------------
  94.     -------------------------------------
  95.  
  96.     local Main = create('ScreenGui'){
  97.         Name = "FPS Hacks - Menu"
  98.     }
  99.    
  100.     local Folder = create('Folder', Main){
  101.         Name = 'Chams'
  102.     }
  103.    
  104.     local Folder1 = create('Folder', Folder){
  105.         Name = 'Team'
  106.     }
  107.    
  108.     local Folder2 = create('Folder', Folder){
  109.         Name = 'Enemy'
  110.     }
  111.    
  112.     local Frame = create('Frame', Main){
  113.         Name = "Main";
  114.         BackgroundColor3 = Color3.new(1, 1, 1);
  115.         BackgroundTransparency = 1;
  116.         Position = UDim2.new(0.5, 0, 0.5, 0);
  117.         Size = UDim2.new(0, 250, 0, 190);
  118.         Draggable = true;
  119.         Active = true;
  120.         AnchorPoint = Vector2.new(0.5, 0.5);
  121.         Transparency = 1
  122.     }
  123.    
  124.     local TextLabel = create('TextLabel', Frame){
  125.         Name = "Title";
  126.         BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  127.         BorderSizePixel = 0;
  128.         Size = UDim2.new(1, 0, 0, 35);
  129.         Text = "FPS Hacks";
  130.         TextColor3 = Color3.new(0.866667, 0.843137, 0.843137);
  131.         Font = Enum.Font.SciFi;
  132.         FontSize = Enum.FontSize.Size28;
  133.         TextWrapped = true
  134.     }
  135.    
  136.     local ScrollingFrame = create('ScrollingFrame', Frame){
  137.         Name = "Buttons";
  138.         BackgroundColor3 = Color3.new(1, 1, 1);
  139.         BackgroundTransparency = 1;
  140.         BorderSizePixel = 0;
  141.         Position = UDim2.new(0.5, 0, 0, 40);
  142.         CanvasSize = UDim2.new(0, 0, 0, 0);
  143.         Size = UDim2.new(1, 0, 0, 260);
  144.         AnchorPoint = Vector2.new(0.5, 0);
  145.         Transparency = 1
  146.     }
  147.    
  148.     local Frame1 = create('Frame'){
  149.         BackgroundColor3 = Color3.new(1, 1, 1);
  150.         BackgroundTransparency = 1;
  151.         BorderSizePixel = 0;
  152.         Position = UDim2.new(0, 0, 0, 1);
  153.         Selectable = true;
  154.         Size = UDim2.new(1, 0, 0, 25);
  155.         ClipsDescendants = true;
  156.         Transparency = 1
  157.     }
  158.    
  159.     local TextLabel1 = create('TextButton', Frame1){
  160.         Name = "Text";
  161.         BackgroundColor3 = Color3.new(1, 1, 1);
  162.         BorderColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  163.         Position = UDim2.new(0.100000001, 0, 0, 0);
  164.         Size = UDim2.new(0.600000024, 0, 1, 0);
  165.         Text = "Example";
  166.         TextColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  167.         Font = Enum.Font.SciFi;
  168.         FontSize = Enum.FontSize.Size14
  169.     }
  170.    
  171.     local Frame2 = create('Frame', Frame1){
  172.         Name = "Status";
  173.         BackgroundColor3 = Color3.new(0, 1, 0);
  174.         BorderSizePixel = 0;
  175.         Position = UDim2.new(0.0250000004, 0, 0.5, 0);
  176.         Size = UDim2.new(0, 7, 0, 7);
  177.         Style = Enum.FrameStyle.DropShadow;
  178.         AnchorPoint = Vector2.new(0, 0.5)
  179.     }
  180.    
  181.     local TextButton = create('TextButton', Frame1){
  182.         Name = "Key";
  183.         BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  184.         BackgroundTransparency = 0.5;
  185.         BorderSizePixel = 0;
  186.         Position = UDim2.new(0.699999988, 0, 0, 0);
  187.         Size = UDim2.new(0.300000012, 0, 1, 0);
  188.         Text = "[EXAMPLE]";
  189.         TextColor3 = Color3.new(0.839216, 0.839216, 0.839216);
  190.         Font = Enum.Font.SciFi;
  191.         FontSize = Enum.FontSize.Size14;
  192.         TextStrokeColor3 = Color3.new(0.380392, 0.380392, 0.380392);
  193.         TextStrokeTransparency = 0;
  194.         Transparency = 0.5
  195.     }
  196.    
  197.     local UIListLayout = create('UIListLayout', ScrollingFrame){
  198.         Padding = UDim.new(0, 4);
  199.         HorizontalAlignment = Enum.HorizontalAlignment.Center
  200.     }
  201.    
  202.     local UIPadding = create('UIPadding', ScrollingFrame){}
  203.  
  204.    
  205.     return create, Main, Frame1, Folder
  206. end
  207.  
  208. local Create, Menu, Button, Chams = FormAssets()
  209. local TDB = false
  210. local EDB = false
  211. local Functions = {
  212.     ['Menu'] = function()
  213.         Menu['Enabled'] = not (Menu['Enabled']);
  214.     end;
  215.    
  216.     ['Team Chams'] = function()
  217.         if TDB then return end
  218.         TDB = true
  219.         Settings['TCO'] = not (Settings['TCO'])
  220.         if Settings['TCO'] then
  221.             Misc['CharFunctions']
  222.             ['TCCH'] = function(char)
  223.                 local Target = Players:GetPlayerFromCharacter(char)
  224.                 if (Target == Player) or (Target.TeamColor ~= Player.TeamColor) then return end
  225.                
  226.                 local Folder = Chams['Team']:FindFirstChild(Target['Name'])
  227.                     or Create('Folder', Chams['Team']){Name = Target['Name']}
  228.                    
  229.                 for __, part in next, (char:GetChildren()) do
  230.                     if part:IsA('BasePart') then
  231.                         Create('BoxHandleAdornment', Folder)
  232.                         {
  233.                             Name = part.Name .. '_CHAM';
  234.                             Color3 = Settings['TCC'][2];
  235.                             AlwaysOnTop = true;
  236.                             Transparency = Settings['CT'];
  237.                             Visible = true;
  238.                             ZIndex = 10;
  239.                            
  240.                             Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  241.                                 or (Vector3.new(.5, .5, .5) + part.Size)
  242.                         }['Adornee'] = part
  243.                     end
  244.                 end
  245.             end
  246.         elseif Misc['CharFunctions']['TCCH'] then
  247.             Misc['CharFunctions']['TCCH'] = nil
  248.             Chams['Team']:ClearAllChildren()
  249.         end
  250.         TDB = false
  251.     end;
  252.    
  253.     ['Enemy Chams'] = function()
  254.         if EDB then return end
  255.         EDB = true
  256.         Settings['ECO'] = not (Settings['ECO'])
  257.         if Settings['ECO'] then
  258.             Misc['CharFunctions']
  259.             ['ECCH'] = function(char)
  260.                 local Target = Players:GetPlayerFromCharacter(char)
  261.                 if (Target == Player) or (Target.TeamColor == Player.TeamColor) then return end
  262.                
  263.                 local Folder = Chams['Enemy']:FindFirstChild(Target['Name'])
  264.                     or Create('Folder', Chams['Enemy']){Name = Target['Name']}
  265.                
  266.                 for __, part in next, (char:GetChildren()) do
  267.                     if part:IsA('BasePart') then
  268.                         Create('BoxHandleAdornment', Folder)
  269.                         {
  270.                             Name = part.Name .. '_CHAM';
  271.                             Color3 = Settings['ECC'][2];
  272.                             AlwaysOnTop = true;
  273.                             Transparency = Settings['CT'];
  274.                             Visible = true;
  275.                             ZIndex = 10;
  276.                            
  277.                             Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  278.                                 or (Vector3.new(.5, .5, .5) + part.Size)
  279.                         }['Adornee'] = part
  280.                     end
  281.                 end
  282.             end
  283.         elseif Misc['CharFunctions']['ECCH'] then
  284.             Misc['CharFunctions']['ECCH'] = nil
  285.             Chams['Enemy']:ClearAllChildren()
  286.         end
  287.         EDB = false
  288.     end;
  289.    
  290.     ['Chams Transparency'] = function(t)
  291.         if t then
  292.             local Trans = Settings['CT']
  293.             Settings['CT'] = (Trans < .8 and Trans + (1/10)) or 0
  294.         end
  295.        
  296.         local TeamCham = Chams['Team']:GetChildren()
  297.         local EnemyCham = Chams['Enemy']:GetChildren()
  298.        
  299.         for __, object in next, (TeamCham) do
  300.             for __, bha in next, (object:GetChildren()) do
  301.                 bha.Transparency = Settings['CT']
  302.                 bha.Color3 = Settings['TCC'][2]
  303.             end
  304.         end
  305.        
  306.         for __, object in next, (EnemyCham) do
  307.             for __, bha in next, (object:GetChildren()) do
  308.                 bha.Transparency = Settings['CT']
  309.                 bha.Color3 = Settings['ECC'][2]
  310.             end
  311.         end
  312.        
  313.         Menu['Main']['Buttons']['Frans']['Key'].Text = '[' .. tostring(Settings['CT']) .. ']'
  314.     end;
  315.    
  316.     ['Fullbright'] = function(Toggle, TextBox)
  317.         local Fullbright = Settings.Fullbright    
  318.         if Toggle then Fullbright.On = not (Fullbright.On); end
  319.        
  320.         local function Handle()
  321.             local Setting = Fullbright.Options[Fullbright.Current]
  322.             local Settings = Fullbright.OptionDefs[Setting]
  323.            
  324.            
  325.             TextBox['Text'] = '[' .. Setting .. ']'
  326.             Lighting.Ambient = Settings.InAmbience;
  327.             Lighting.OutdoorAmbient = Settings.OutAmbience;
  328.             Lighting.Brightness = Settings.Brightness;
  329.             Lighting.FogStart = Settings.Fog;
  330.             Lighting.FogEnd = Settings.Fog;
  331.         end    
  332.        
  333.         if (not Fullbright.On) then
  334.             Fullbright.Current = 3
  335.         end
  336.        
  337.         Handle()
  338.     end;
  339.    
  340.     ['Aimbot'] = function(l)
  341.         l:Destroy()
  342.        
  343.         local IgnorePlayersNamed = {NAME=true} -- Name = true or false
  344.         --[[
  345.             [J] - To go down the list.
  346.             [U] - To go up the list.
  347.             [H] - To toggle that item in the list.
  348.             [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)
  349.        --]]
  350.      
  351.        local services  = setmetatable({
  352.                World   = game:GetService('Workspace');
  353.                Players = game:GetService('Players');
  354.                Input   = game:GetService('UserInputService');
  355.                Run     = game:GetService('RunService');
  356.                UI      = game:GetService('StarterGui');
  357.            },{
  358.            __index                 = function(tab,index)
  359.                local serv
  360.                local ran,err       = pcall(function() serv=game:service(index) end)
  361.                if ran then
  362.                    tab[index]      = serv
  363.                    return serv
  364.                end
  365.            end
  366.        })
  367.      
  368.        local cre = Create
  369.        local ResizeUI = function(ui,downscale,byclass)
  370.            if not rawequal(ui['ClassName'],'ScrollingFrame') then return end
  371.          
  372.            local count = 0;  
  373.            for __, asset in next, (ui:GetChildren()) do
  374.                if rawequal(asset['ClassName'],byclass) then
  375.                    count = count + 1
  376.                end
  377.            end
  378.          
  379.            ui['CanvasSize'] = UDim2.new(ui.CanvasSize.X.Scale,ui.CanvasSize.X.Offset,ui.CanvasSize.Y.Scale,downscale*count)
  380.        end
  381.      
  382.        local wfc, ffc, ffoc, cast, ray = services.World.WaitForChild, services.World.FindFirstChild, services.World.FindFirstChildOfClass, services.World.FindPartOnRayWithIgnoreList, Ray.new
  383.        local wfcoc = function(p,class)
  384.            local obj
  385.            repeat services.Run.RenderStepped:wait()
  386.                obj = p:FindFirstChildOfClass(class)
  387.            until obj
  388.            return obj
  389.        end
  390.      
  391.        local Client = services.Players.LocalPlayer
  392.        local ClientUI = wfc(Client,'PlayerGui')
  393.        local ClientMouse = Client:GetMouse()
  394.        local ClientModel = Client.Character or Client.CharacterAdded:wait()
  395.        local ClientCamera = services.World.CurrentCamera
  396.        local ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  397.        local ClientActiveUI;
  398.      
  399.        local status = {
  400.            Enabled = false,
  401.            TeamCheck = false,
  402.            HeadsOnly = false,
  403.            RayCheck = true,
  404.            AutoAim = false,
  405.        }
  406.      
  407.        local function toggle(button)
  408.            local option, val = button['Text']:match('(.*):%s*(.*)')
  409.            status[option] = not status[option]
  410.          
  411.            if status[option] then
  412.                button.TextColor3 = Color3.fromRGB(0,255,0)
  413.            else
  414.                button.TextColor3 = Color3.fromRGB(255,0,0)
  415.            end
  416.            button.Text = option .. ': ' .. tostring(status[option])
  417.        end
  418.      
  419.        local selection = {}
  420.        local select_pos = 1
  421.        local current_pos = 0
  422.        local __ = function()
  423.            if ffc(game.CoreGui, '___') then return end
  424.          
  425.            local GUI = cre('ScreenGui',game:GetService('CoreGui')){
  426.                Name = '___';
  427.            }
  428.          
  429.            local Frame = cre('ScrollingFrame',GUI){
  430.                BackgroundTransparency = 1,
  431.                BorderSizePixel = 0,
  432.              
  433.                Name = 'Options',
  434.                Position = UDim2.new(.8,0,.915,0),
  435.                Size = UDim2.new(.2,0,0,30),
  436.                ZIndex = 10,
  437.                ClipsDescendants = true,
  438.                CanvasSize = UDim2.new(0,0,0,0),
  439.                ScrollBarThickness = 0,
  440.                ScrollingEnabled = false,
  441.            }
  442.          
  443.            local UILL = cre('UIListLayout',Frame){
  444.                Name = 'LayoutHandler',
  445.                FillDirection = 'Vertical',
  446.                HorizontalAlignment = 'Center',
  447.                SortOrder = 'LayoutOrder',
  448.                VerticalAlignment = 'Top'
  449.            }
  450.          
  451.            local Template = cre('TextButton',nil){
  452.                BackgroundTransparency = 1,
  453.                BorderSizePixel = 0,
  454.              
  455.                Name = 'Template',
  456.                Size = UDim2.new(.9,0,0,30),
  457.                Font = 'SciFi',
  458.                Text = '',
  459.                TextColor3 = Color3.fromRGB(255,255,255),
  460.                TextScaled = true,
  461.                TextWrapped = true,
  462.            }
  463.          
  464.            local TSC = cre('UISizeConstraint',Template){
  465.                Name = 'TemplateSizeConstraint',      
  466.                MaxSize = Vector2.new(math.huge,30),
  467.            }
  468.          
  469.            Frame['ChildAdded']:connect(function()
  470.                ResizeUI(Frame,30,'TextButton')
  471.            end)
  472.          
  473.            local sel_pos = 0
  474.            for option, val in next, status do
  475.                local tp = Template:Clone()
  476.              
  477.                tp.Name = option
  478.                tp.Text = option .. ': ' .. tostring(val)
  479.              
  480.                if status[option] then
  481.                    tp.TextColor3 = Color3.fromRGB(0,255,0)
  482.                else
  483.                    tp.TextColor3 = Color3.fromRGB(255,0,0)
  484.                end
  485.              
  486.                sel_pos = sel_pos + 1
  487.                selection[sel_pos] = tp    
  488.                tp.Parent = Frame
  489.            end
  490.      
  491.            Frame.CanvasPosition = Vector2.new(0, current_pos)
  492.            return Frame
  493.        end
  494.      
  495.        Client['CharacterAdded']:connect(function(c)
  496.            ClientModel = c
  497.            ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  498.            ClientActiveUI.Parent.Parent = nil
  499.            ClientActiveUI = coroutine.wrap(__)()
  500.        end)
  501.        ClientActiveUI = coroutine.wrap(__)()
  502.      
  503.        local right_down, keylogs, inputlogs = nil, {}, {}
  504.        services.Input.InputBegan:connect(function(input, procc)
  505.            keylogs[input.KeyCode],inputlogs[input.UserInputType] = true, true;
  506.          
  507.            if not ClientActiveUI then return end
  508.            if keylogs[Enum.KeyCode.U] and current_pos >= 30 then
  509.                select_pos = select_pos - 1
  510.                current_pos = current_pos - 30
  511.                ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  512.              
  513.            elseif keylogs[Enum.KeyCode.J] and current_pos < ClientActiveUI.CanvasSize.Y.Offset - 30 then
  514.                select_pos = select_pos + 1    
  515.                current_pos = current_pos + 30    
  516.                ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  517.              
  518.            elseif keylogs[Enum.KeyCode.H] then
  519.                if selection[select_pos] then
  520.                    toggle(selection[select_pos])
  521.                end
  522.            end
  523.        end)
  524.        services.Input.InputEnded:connect(function(input, procc)
  525.            keylogs[input.KeyCode],inputlogs[input.UserInputType] = false, false;
  526.        end)
  527.      
  528.        local function GetPlayerFromCharacter(mod)
  529.            if not mod:IsA('Model') then return end
  530.          
  531.            for __, client in next, services.Players:GetPlayers() do
  532.                if rawequal(string.lower(client['Name']):sub(1,#mod['Name']),mod['Name']:lower()) then
  533.                    return client, client['Name']
  534.                end
  535.            end    
  536.            return nil, 'N/A'
  537.        end
  538.      
  539.        local function Search()
  540.            local t = {}  
  541.            for __, child in next, services.World:GetChildren() do
  542.                local UserFromCharacter = GetPlayerFromCharacter(child)
  543.                if UserFromCharacter then
  544.                    if child:IsA('Model') and not rawequal(UserFromCharacter,Client) then
  545.                        local h = ffoc(child,'Humanoid')
  546.                        if h and h.Health > 0 then
  547.                            table.insert(t, {child,UserFromCharacter})
  548.                        end
  549.                    end
  550.                end
  551.            end
  552.            return t
  553.        end
  554.      
  555.        local function cast_ray(p0,p1,blacklist)
  556.            local Part
  557.            local __=0
  558.            repeat
  559.                __=__+1
  560.                local cond=(p1-p0).magnitude < 999
  561.                Part,p0=cast(workspace,ray(p0,cond and p1-p0 or (p1-p0).unit*999),blacklist)
  562.                if Part then
  563.                    if Part.CanCollide==false or Part.Transparency==1 then
  564.                        blacklist[#blacklist+1]=Part
  565.                        Part=nil
  566.                    end
  567.                elseif cond or __ > 15 then
  568.                    break
  569.                end
  570.            until Part
  571.            return Part,p0
  572.        end
  573.      
  574.        services.Run.RenderStepped:connect(function()
  575.            local Storage = {}
  576.            if status['Enabled'] and (inputlogs[Enum.UserInputType.MouseButton2] or status['AutoAim']) then
  577.                Storage = Search()
  578.              
  579.                local dot, face = -1
  580.                for __, info in next, (Storage) do
  581.                    local h = ffc(info[1],'Humanoid')
  582.                    local skip;
  583.                  
  584.                    if not inputlogs[Enum.UserInputType.MouseButton2] and not status['AutoAim'] then return end
  585.                    if not info[1] or not info[2] or IgnorePlayersNamed[info[2]['Name']] or ffoc(info[1],'ForceField') then skip = true end
  586.                    if not ffc(info[1],'HumanoidRootPart') then skip = true end
  587.                          
  588.                    if h and h['Health'] > 0 then
  589.                        if status['TeamCheck'] then
  590.                            if Client['TeamColor'] == info[2]['TeamColor'] then
  591.                                skip = true
  592.                            end
  593.                        end
  594.                      
  595.                        if not skip then
  596.                            local cc = ClientCamera.CFrame
  597.                            local pos = status['HeadsOnly'] and info[1]['Head'].CFrame.p or info[1]['HumanoidRootPart'].Position
  598.                            local HitPart=cast_ray(cc.p,pos,{ClientCamera,ClientModel})
  599.                          
  600.                            if not (status['RayCheck'] and HitPart) or info[1]:IsAncestorOf(HitPart) then
  601.                                local m = (pos-cc.p).unit:Dot(cc.lookVector)
  602.                                if rawequal(m,m) and m > dot then
  603.                                    dot, face= m, pos
  604.                                end
  605.                            end
  606.                        end
  607.                    end
  608.                end
  609.                if face then
  610.                    ClientCamera.CFrame = CFrame.new(ClientCamera.CFrame.p,face) * CFrame.new(0,0,0.5)
  611.                end
  612.            end
  613.        end)
  614.      
  615.    end
  616. }
  617.  
  618. Settings = (function()
  619.    local NewSettings = {
  620.        --- Chams ---
  621.        CT = 0; -- Transparency
  622.        TCO = false; -- Team Chams On
  623.        ECO = false; -- Enemy Chams On
  624.        TCC = GetColor(Misc.ChamsColors, 'Grey'); -- Current Team Chams Color
  625.        ECC = GetColor(Misc.ChamsColors, 'Red'); -- Current Enemy Chams Color
  626.      
  627.        --- Fullbright ---
  628.        Fullbright = {
  629.            On = false;
  630.            Current = 1;
  631.            Options = {'Max','Half','Default'};
  632.            OptionDefs = {
  633.                Max = {
  634.                    Fog = 1000000;
  635.                    Brightness = 10;
  636.                    InAmbience = Color3.new(1, 1, 1);
  637.                    OutAmbience = Color3.new(1, 1, 1);
  638.                };
  639.                Half = {
  640.                    Fog = 250;
  641.                    Brightness = 1.5;
  642.                    InAmbience = Color3.new(0.6, 0.6, 0.6);
  643.                    OutAmbience = Color3.new(0.6, 0.6, 0.6);
  644.                };
  645.                Default = {
  646.                    Fog = Lighting.FogEnd;
  647.                    Brightness = Lighting.Brightness;
  648.                    InAmbience = Lighting.Ambient;
  649.                    OutAmbience = Lighting.OutdoorAmbient;
  650.                }
  651.            }
  652.        }
  653.    }
  654.  
  655.    for __, option in next, (Settings) do
  656.        local NewOption = Button:Clone()
  657.        if option[1] == 'Menu' or option[1] == 'Chams Transparency' then
  658.            NewOption['Status']['Style'] = 'Custom';
  659.            NewOption['Key']['TextStrokeColor3'] = Misc.GUIColors.On
  660.        end
  661.      
  662.        NewOption['Text'].Text = option[1]:match('COLOR') and (
  663.                (option[1]:match('Team') and option[1]:gsub('COLOR', NewSettings.TCC[1])) or
  664.                (option[1]:match('Enemy') and option[1]:gsub('COLOR', NewSettings.ECC[1]))
  665.                 ) or option[1]
  666.        NewOption['Key'].Text = '['.. ((typeof(option[3]) == 'EnumItem' and option[3].Name) or option[3]) .. ']'      
  667.        NewOption.Parent = Menu['Main']['Buttons']
  668.      
  669.        if option[1] == 'Chams Transparency' then
  670.            NewOption['Name'] = 'Frans'
  671.        end    
  672.      
  673.        local Func, Name = GetFunc(Functions, option[1])
  674.        if Func then
  675.            NewOption['Text']['MouseButton1Down']:connect(function()
  676.                if not option[2] then return end              
  677.                if NewOption.Status.Style.Name == 'DropShadow' then
  678.                    NewOption.Status.Style = 'Custom'
  679.                elseif NewOption.Status.Style.Name == 'Custom' then
  680.                    NewOption.Status.Style = 'DropShadow'
  681.                end
  682.              
  683.                if option[1]:match('Aimbot') then
  684.                    Func(NewOption)
  685.                  
  686.                elseif option[1]:match('Fullbright') then
  687.                    Func(true, NewOption['Key'])
  688.                  
  689.                else
  690.                    Func()
  691.                end
  692.            end)
  693.            if option[3] == 'Toggle' then
  694.                if Name:match('Team') then
  695.                    NewOption['Key']['MouseButton1Down']:connect(function()
  696.                        local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.TCC[2])
  697.                        if (Pos + 1) < #Misc.ChamsColors then
  698.                            NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[Pos + 1][1])
  699.                            NewSettings.TCC = Misc.ChamsColors[Pos + 1]
  700.                        else
  701.                            NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[1][1])
  702.                            NewSettings.TCC = Misc.ChamsColors[1]
  703.                        end
  704.                      
  705.                        GetFunc(Functions, 'Chams Transparency')()
  706.                    end)
  707.                elseif Name:match('Enemy') then
  708.                    NewOption['Key']['MouseButton1Down']:connect(function()
  709.                        local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.ECC[2])
  710.                        if (Pos + 1) < #Misc.ChamsColors then
  711.                            NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[Pos + 1][1])
  712.                            NewSettings.ECC = Misc.ChamsColors[Pos + 1]
  713.                        else
  714.                            NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[1][1])
  715.                            NewSettings.ECC = Misc.ChamsColors[1]
  716.                        end
  717.                      
  718.                        GetFunc(Functions, 'Chams Transparency')()
  719.                    end)
  720.                end
  721.              
  722.            elseif option[1] == 'Chams Transparency' then
  723.                NewOption['Key']['MouseButton1Down']:connect(function()
  724.                    GetFunc(Functions, 'Chams Transparency')(true)
  725.                end)
  726.              
  727.            elseif option[1] == 'Fullbright' then
  728.                NewOption['Key']['MouseButton1Down']:connect(function()
  729.                    local Fullbright = Settings.Fullbright
  730.                    if not Fullbright.On then return end
  731.                    if Fullbright.Current < #Fullbright.Options  then
  732.                        Fullbright.Current = Fullbright.Current + 1
  733.                    else
  734.                        Fullbright.Current = 1
  735.                    end
  736.                    GetFunc(Functions, 'Fullbright')(false, NewOption['Key'])
  737.                end)
  738.              
  739.            end
  740.        end
  741.    end
  742.    return NewSettings
  743. end)()
  744.  
  745. setmetatable(Misc['CharFunctions'], {
  746.    __newindex = function(s, i, v)
  747.        rawset(Misc['CharFunctions'], i, v)
  748.        for __, player in next, (Players:GetPlayers()) do
  749.            if player.Character then
  750.                v(player.Character)
  751.            end
  752.        end
  753.    end
  754. })
  755.  
  756. local CharFix = function(char)
  757.    local Target = Players:GetPlayerFromCharacter(char)
  758.    local Team = Chams['Team']:FindFirstChild(Target['Name'])
  759.    local Enemy = Chams['Enemy']:FindFirstChild(Target['Name'])
  760.  
  761.    if Team then
  762.        for __, handle in next, (Team:GetChildren()) do
  763.            if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  764.                handle['Parent'] = nil
  765.            end
  766.        end
  767.    end
  768.      
  769.    if Enemy then
  770.        for __, handle in next, (Enemy:GetChildren()) do
  771.            if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  772.                handle['Parent'] = nil
  773.            end
  774.        end
  775.    end
  776. end
  777.  
  778. local CharAbuse = function(char) wait()
  779.    for __, func in next, (Misc['CharFunctions']) do
  780.        coroutine.wrap(func)(char)
  781.    end
  782.  
  783.    char['Changed']:connect(function(prop)
  784.        if (prop == 'Parent') then
  785.            CharFix(char)
  786.        end
  787.    end)
  788. end
  789.  
  790. for __, player in next, (Players:GetPlayers()) do
  791.    player['CharacterAdded']:connect(CharAbuse)
  792. end
  793.  
  794. Players.PlayerAdded:connect(function(Client)
  795.    Client['CharacterAdded']:connect(CharAbuse)
  796. end)
  797.  
  798. Players.PlayerRemoving:connect(function(Client)
  799.    local Team = Chams['Team']:FindFirstChild(Client['Name'])
  800.    local Enemy = Chams['Enemy']:FindFirstChild(Client['Name'])
  801.  
  802.    if Team then Team['Parent'] = nil end
  803.    if Enemy then Enemy['Parent'] = nil end
  804. end)
  805.  
  806. Input['InputBegan']:connect(function(input, og)
  807.    if og then return end
  808.  
  809.    if input.UserInputType == Enum.UserInputType.Keyboard then
  810.        if input.KeyCode == Enum.KeyCode.Delete then
  811.            Functions['Menu']()
  812.        end    
  813.    end
  814. end)
  815.  
  816. Menu.Parent = game.CoreGui
  817. RAW Paste Data
  818. --Phantom Forces script
  819. --EmperorNooget
  820.                                                                                                                                                                                                                                 local World = game:GetService('Workspace');
  821. local Input = game:GetService('UserInputService');
  822. local Lighting = game:GetService("Lighting");
  823. local Players = game:GetService('Players');
  824. local Player = Players['LocalPlayer'];
  825.  
  826. local Keys = {}
  827. local Misc = {
  828.     CharFunctions = getmetatable(newproxy(true));
  829.     GUIColors = {
  830.         On = Color3.fromRGB(46, 105, 132);
  831.         Off = Color3.new(.38, .38, .38);
  832.     };
  833.    
  834.     ChamsColors = {
  835.         {'White', Color3.new(1, 1, 1)};
  836.         {'Black', Color3.new(0, 0, 0)};
  837.         {'Red', Color3.new(1, 0, 0)};
  838.         {'Green', Color3.new(0, 1, 0)};
  839.         {'Blue', Color3.new(0, 0, 1)};
  840.         {'Purple', Color3.new(0.65, 0, 0.65)};
  841.         {'Yellow',  Color3.new(1, 1, 0)};
  842.         {'Grey', Color3.new(0.8, 0.8, 0.8)};
  843.     }
  844. }
  845.  
  846. local function GetFunc(t, i)
  847.     for __, ___ in next, (t) do
  848.         if string.lower(i):match(__:lower()) then
  849.             return ___, __
  850.         end
  851.     end
  852. end
  853.  
  854. local function GetColor(t, i)
  855.     for __, ___ in next, (t) do
  856.         if (___[1] == i) then
  857.             return ___, __
  858.         elseif (___[2] == i) then
  859.             return ___, __
  860.         end
  861.     end
  862. end
  863.  
  864. local Settings = {
  865.     {'Menu', false, Enum.KeyCode.Delete};
  866.     {'Team Chams [\'COLOR\']', true, 'Toggle'};
  867.     {'Enemy Chams [\'COLOR\']', true, 'Toggle'};
  868.     {'Chams Transparency', false, '0'};
  869.     {'Fullbright', true, 'MAX'};
  870.     -- {'ESP', true, 'N/A'};
  871.     {'Aimbot [Not PF]', true, 'Toggle'};
  872. }
  873.  
  874. ------------ [[ GUI SPAWN ]] ------------
  875. FormAssets = function()
  876.     ------ ERROR MAGIC ------
  877.     local __ERROR__ = Instance.new('BindableEvent')
  878.     __ERROR__['Event']:Connect(error)
  879.    
  880.     --------- CREATE FUNCTION ---------
  881.     local create = function(class, parent)
  882.         local instance = Instance.new(class);
  883.         return function(props)
  884.             for property, value in next, (props) do
  885.                 if (property ~= 'Parent') and (typeof(value) ~= 'Instance') then
  886.                     local suc, err = pcall(function()
  887.                         instance[property] = value
  888.                     end)
  889.                     if not suc then __ERROR__:Fire('[Script->Asset]: ' .. err) end
  890.                    
  891.                 elseif (property == 'Parent') then
  892.                     parent = value
  893.                 end
  894.             end
  895.            
  896.             if parent and (typeof(parent) == 'Instance') then
  897.                 instance['Parent'] = parent
  898.             end
  899.            
  900.             return instance
  901.         end
  902.     end
  903.    
  904.     -------------------------------------
  905.     -------------------------------------
  906.     -- SOME THINGS MAY BE OUT OF ORDER --
  907.     ----(INSTANCE RELATED PROPERTIES)----
  908.     -------------(UNLIKELY)--------------
  909.     -------------------------------------
  910.     -------------------------------------
  911.  
  912.     local Main = create('ScreenGui'){
  913.         Name = "FPS Hacks - Menu"
  914.     }
  915.    
  916.     local Folder = create('Folder', Main){
  917.         Name = 'Chams'
  918.     }
  919.    
  920.     local Folder1 = create('Folder', Folder){
  921.         Name = 'Team'
  922.     }
  923.    
  924.     local Folder2 = create('Folder', Folder){
  925.         Name = 'Enemy'
  926.     }
  927.    
  928.     local Frame = create('Frame', Main){
  929.         Name = "Main";
  930.         BackgroundColor3 = Color3.new(1, 1, 1);
  931.         BackgroundTransparency = 1;
  932.         Position = UDim2.new(0.5, 0, 0.5, 0);
  933.         Size = UDim2.new(0, 250, 0, 190);
  934.         Draggable = true;
  935.         Active = true;
  936.         AnchorPoint = Vector2.new(0.5, 0.5);
  937.         Transparency = 1
  938.     }
  939.    
  940.     local TextLabel = create('TextLabel', Frame){
  941.         Name = "Title";
  942.         BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  943.         BorderSizePixel = 0;
  944.         Size = UDim2.new(1, 0, 0, 35);
  945.         Text = "FPS Hacks";
  946.         TextColor3 = Color3.new(0.866667, 0.843137, 0.843137);
  947.         Font = Enum.Font.SciFi;
  948.         FontSize = Enum.FontSize.Size28;
  949.         TextWrapped = true
  950.     }
  951.    
  952.     local ScrollingFrame = create('ScrollingFrame', Frame){
  953.         Name = "Buttons";
  954.         BackgroundColor3 = Color3.new(1, 1, 1);
  955.         BackgroundTransparency = 1;
  956.         BorderSizePixel = 0;
  957.         Position = UDim2.new(0.5, 0, 0, 40);
  958.         CanvasSize = UDim2.new(0, 0, 0, 0);
  959.         Size = UDim2.new(1, 0, 0, 260);
  960.         AnchorPoint = Vector2.new(0.5, 0);
  961.         Transparency = 1
  962.     }
  963.    
  964.     local Frame1 = create('Frame'){
  965.         BackgroundColor3 = Color3.new(1, 1, 1);
  966.         BackgroundTransparency = 1;
  967.         BorderSizePixel = 0;
  968.         Position = UDim2.new(0, 0, 0, 1);
  969.         Selectable = true;
  970.         Size = UDim2.new(1, 0, 0, 25);
  971.         ClipsDescendants = true;
  972.         Transparency = 1
  973.     }
  974.    
  975.     local TextLabel1 = create('TextButton', Frame1){
  976.         Name = "Text";
  977.         BackgroundColor3 = Color3.new(1, 1, 1);
  978.         BorderColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  979.         Position = UDim2.new(0.100000001, 0, 0, 0);
  980.         Size = UDim2.new(0.600000024, 0, 1, 0);
  981.         Text = "Example";
  982.         TextColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  983.         Font = Enum.Font.SciFi;
  984.         FontSize = Enum.FontSize.Size14
  985.     }
  986.    
  987.     local Frame2 = create('Frame', Frame1){
  988.         Name = "Status";
  989.         BackgroundColor3 = Color3.new(0, 1, 0);
  990.         BorderSizePixel = 0;
  991.         Position = UDim2.new(0.0250000004, 0, 0.5, 0);
  992.         Size = UDim2.new(0, 7, 0, 7);
  993.         Style = Enum.FrameStyle.DropShadow;
  994.         AnchorPoint = Vector2.new(0, 0.5)
  995.     }
  996.    
  997.     local TextButton = create('TextButton', Frame1){
  998.         Name = "Key";
  999.         BackgroundColor3 = Color3.new(0.180392, 0.411765, 0.517647);
  1000.         BackgroundTransparency = 0.5;
  1001.         BorderSizePixel = 0;
  1002.         Position = UDim2.new(0.699999988, 0, 0, 0);
  1003.         Size = UDim2.new(0.300000012, 0, 1, 0);
  1004.         Text = "[EXAMPLE]";
  1005.         TextColor3 = Color3.new(0.839216, 0.839216, 0.839216);
  1006.         Font = Enum.Font.SciFi;
  1007.         FontSize = Enum.FontSize.Size14;
  1008.         TextStrokeColor3 = Color3.new(0.380392, 0.380392, 0.380392);
  1009.         TextStrokeTransparency = 0;
  1010.         Transparency = 0.5
  1011.     }
  1012.    
  1013.     local UIListLayout = create('UIListLayout', ScrollingFrame){
  1014.         Padding = UDim.new(0, 4);
  1015.         HorizontalAlignment = Enum.HorizontalAlignment.Center
  1016.     }
  1017.    
  1018.     local UIPadding = create('UIPadding', ScrollingFrame){}
  1019.  
  1020.    
  1021.     return create, Main, Frame1, Folder
  1022. end
  1023.  
  1024. local Create, Menu, Button, Chams = FormAssets()
  1025. local TDB = false
  1026. local EDB = false
  1027. local Functions = {
  1028.     ['Menu'] = function()
  1029.         Menu['Enabled'] = not (Menu['Enabled']);
  1030.     end;
  1031.    
  1032.     ['Team Chams'] = function()
  1033.         if TDB then return end
  1034.         TDB = true
  1035.         Settings['TCO'] = not (Settings['TCO'])
  1036.         if Settings['TCO'] then
  1037.             Misc['CharFunctions']
  1038.             ['TCCH'] = function(char)
  1039.                 local Target = Players:GetPlayerFromCharacter(char)
  1040.                 if (Target == Player) or (Target.TeamColor ~= Player.TeamColor) then return end
  1041.                
  1042.                 local Folder = Chams['Team']:FindFirstChild(Target['Name'])
  1043.                     or Create('Folder', Chams['Team']){Name = Target['Name']}
  1044.                    
  1045.                 for __, part in next, (char:GetChildren()) do
  1046.                     if part:IsA('BasePart') then
  1047.                         Create('BoxHandleAdornment', Folder)
  1048.                         {
  1049.                             Name = part.Name .. '_CHAM';
  1050.                             Color3 = Settings['TCC'][2];
  1051.                             AlwaysOnTop = true;
  1052.                             Transparency = Settings['CT'];
  1053.                             Visible = true;
  1054.                             ZIndex = 10;
  1055.                            
  1056.                             Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  1057.                                 or (Vector3.new(.5, .5, .5) + part.Size)
  1058.                         }['Adornee'] = part
  1059.                     end
  1060.                 end
  1061.             end
  1062.         elseif Misc['CharFunctions']['TCCH'] then
  1063.             Misc['CharFunctions']['TCCH'] = nil
  1064.             Chams['Team']:ClearAllChildren()
  1065.         end
  1066.         TDB = false
  1067.     end;
  1068.    
  1069.     ['Enemy Chams'] = function()
  1070.         if EDB then return end
  1071.         EDB = true
  1072.         Settings['ECO'] = not (Settings['ECO'])
  1073.         if Settings['ECO'] then
  1074.             Misc['CharFunctions']
  1075.             ['ECCH'] = function(char)
  1076.                 local Target = Players:GetPlayerFromCharacter(char)
  1077.                 if (Target == Player) or (Target.TeamColor == Player.TeamColor) then return end
  1078.                
  1079.                 local Folder = Chams['Enemy']:FindFirstChild(Target['Name'])
  1080.                     or Create('Folder', Chams['Enemy']){Name = Target['Name']}
  1081.                
  1082.                 for __, part in next, (char:GetChildren()) do
  1083.                     if part:IsA('BasePart') then
  1084.                         Create('BoxHandleAdornment', Folder)
  1085.                         {
  1086.                             Name = part.Name .. '_CHAM';
  1087.                             Color3 = Settings['ECC'][2];
  1088.                             AlwaysOnTop = true;
  1089.                             Transparency = Settings['CT'];
  1090.                             Visible = true;
  1091.                             ZIndex = 10;
  1092.                            
  1093.                             Size = (part['Name'] == 'Head' and Vector3.new(1.25, 1.3, 1.25))
  1094.                                 or (Vector3.new(.5, .5, .5) + part.Size)
  1095.                         }['Adornee'] = part
  1096.                     end
  1097.                 end
  1098.             end
  1099.         elseif Misc['CharFunctions']['ECCH'] then
  1100.             Misc['CharFunctions']['ECCH'] = nil
  1101.             Chams['Enemy']:ClearAllChildren()
  1102.         end
  1103.         EDB = false
  1104.     end;
  1105.    
  1106.     ['Chams Transparency'] = function(t)
  1107.         if t then
  1108.             local Trans = Settings['CT']
  1109.             Settings['CT'] = (Trans < .8 and Trans + (1/10)) or 0
  1110.         end
  1111.        
  1112.         local TeamCham = Chams['Team']:GetChildren()
  1113.         local EnemyCham = Chams['Enemy']:GetChildren()
  1114.        
  1115.         for __, object in next, (TeamCham) do
  1116.             for __, bha in next, (object:GetChildren()) do
  1117.                 bha.Transparency = Settings['CT']
  1118.                 bha.Color3 = Settings['TCC'][2]
  1119.             end
  1120.         end
  1121.        
  1122.         for __, object in next, (EnemyCham) do
  1123.             for __, bha in next, (object:GetChildren()) do
  1124.                 bha.Transparency = Settings['CT']
  1125.                 bha.Color3 = Settings['ECC'][2]
  1126.             end
  1127.         end
  1128.        
  1129.         Menu['Main']['Buttons']['Frans']['Key'].Text = '[' .. tostring(Settings['CT']) .. ']'
  1130.     end;
  1131.    
  1132.     ['Fullbright'] = function(Toggle, TextBox)
  1133.         local Fullbright = Settings.Fullbright     
  1134.         if Toggle then Fullbright.On = not (Fullbright.On); end
  1135.        
  1136.         local function Handle()
  1137.             local Setting = Fullbright.Options[Fullbright.Current]
  1138.             local Settings = Fullbright.OptionDefs[Setting]
  1139.            
  1140.            
  1141.             TextBox['Text'] = '[' .. Setting .. ']'
  1142.             Lighting.Ambient = Settings.InAmbience;
  1143.             Lighting.OutdoorAmbient = Settings.OutAmbience;
  1144.             Lighting.Brightness = Settings.Brightness;
  1145.             Lighting.FogStart = Settings.Fog;
  1146.             Lighting.FogEnd = Settings.Fog;
  1147.         end    
  1148.        
  1149.         if (not Fullbright.On) then
  1150.             Fullbright.Current = 3
  1151.         end
  1152.        
  1153.         Handle()
  1154.     end;
  1155.    
  1156.     ['Aimbot'] = function(l)
  1157.         l:Destroy()
  1158.        
  1159.         local IgnorePlayersNamed = {NAME=true} -- Name = true or false
  1160.         --[[
  1161.             [J] - To go down the list.
  1162.             [U] - To go up the list.
  1163.             [H] - To toggle that item in the list.
  1164.             [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)
  1165.         --]]
  1166.        
  1167.         local services  = setmetatable({
  1168.                 World   = game:GetService('Workspace');
  1169.                 Players = game:GetService('Players');
  1170.                 Input   = game:GetService('UserInputService');
  1171.                 Run     = game:GetService('RunService');
  1172.                 UI      = game:GetService('StarterGui');
  1173.             },{
  1174.             __index                 = function(tab,index)
  1175.                 local serv
  1176.                 local ran,err       = pcall(function() serv=game:service(index) end)
  1177.                 if ran then
  1178.                     tab[index]      = serv
  1179.                     return serv
  1180.                 end
  1181.             end
  1182.         })
  1183.        
  1184.         local cre = Create
  1185.         local ResizeUI = function(ui,downscale,byclass)
  1186.             if not rawequal(ui['ClassName'],'ScrollingFrame') then return end
  1187.            
  1188.             local count = 0;   
  1189.             for __, asset in next, (ui:GetChildren()) do
  1190.                 if rawequal(asset['ClassName'],byclass) then
  1191.                     count = count + 1
  1192.                 end
  1193.             end
  1194.            
  1195.             ui['CanvasSize'] = UDim2.new(ui.CanvasSize.X.Scale,ui.CanvasSize.X.Offset,ui.CanvasSize.Y.Scale,downscale*count)
  1196.         end
  1197.        
  1198.         local wfc, ffc, ffoc, cast, ray = services.World.WaitForChild, services.World.FindFirstChild, services.World.FindFirstChildOfClass, services.World.FindPartOnRayWithIgnoreList, Ray.new
  1199.         local wfcoc = function(p,class)
  1200.             local obj
  1201.             repeat services.Run.RenderStepped:wait()
  1202.                 obj = p:FindFirstChildOfClass(class)
  1203.             until obj
  1204.             return obj
  1205.         end
  1206.        
  1207.         local Client = services.Players.LocalPlayer
  1208.         local ClientUI = wfc(Client,'PlayerGui')
  1209.         local ClientMouse = Client:GetMouse()
  1210.         local ClientModel = Client.Character or Client.CharacterAdded:wait()
  1211.         local ClientCamera = services.World.CurrentCamera
  1212.         local ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  1213.         local ClientActiveUI;
  1214.        
  1215.         local status = {
  1216.             Enabled = false,
  1217.             TeamCheck = false,
  1218.             HeadsOnly = false,
  1219.             RayCheck = true,
  1220.             AutoAim = false,
  1221.         }
  1222.        
  1223.         local function toggle(button)
  1224.             local option, val = button['Text']:match('(.*):%s*(.*)')
  1225.             status[option] = not status[option]
  1226.            
  1227.             if status[option] then
  1228.                 button.TextColor3 = Color3.fromRGB(0,255,0)
  1229.             else
  1230.                 button.TextColor3 = Color3.fromRGB(255,0,0)
  1231.             end
  1232.             button.Text = option .. ': ' .. tostring(status[option])
  1233.         end
  1234.        
  1235.         local selection = {}
  1236.         local select_pos = 1
  1237.         local current_pos = 0
  1238.         local __ = function()
  1239.             if ffc(game.CoreGui, '___') then return end
  1240.            
  1241.             local GUI = cre('ScreenGui',game:GetService('CoreGui')){
  1242.                 Name = '___';
  1243.             }
  1244.            
  1245.             local Frame = cre('ScrollingFrame',GUI){
  1246.                 BackgroundTransparency = 1,
  1247.                 BorderSizePixel = 0,
  1248.                
  1249.                 Name = 'Options',
  1250.                 Position = UDim2.new(.8,0,.915,0),
  1251.                 Size = UDim2.new(.2,0,0,30),
  1252.                 ZIndex = 10,
  1253.                 ClipsDescendants = true,
  1254.                 CanvasSize = UDim2.new(0,0,0,0),
  1255.                 ScrollBarThickness = 0,
  1256.                 ScrollingEnabled = false,
  1257.             }
  1258.            
  1259.             local UILL = cre('UIListLayout',Frame){
  1260.                 Name = 'LayoutHandler',
  1261.                 FillDirection = 'Vertical',
  1262.                 HorizontalAlignment = 'Center',
  1263.                 SortOrder = 'LayoutOrder',
  1264.                 VerticalAlignment = 'Top'
  1265.             }
  1266.            
  1267.             local Template = cre('TextButton',nil){
  1268.                 BackgroundTransparency = 1,
  1269.                 BorderSizePixel = 0,
  1270.                
  1271.                 Name = 'Template',
  1272.                 Size = UDim2.new(.9,0,0,30),
  1273.                 Font = 'SciFi',
  1274.                 Text = '',
  1275.                 TextColor3 = Color3.fromRGB(255,255,255),
  1276.                 TextScaled = true,
  1277.                 TextWrapped = true,
  1278.             }
  1279.            
  1280.             local TSC = cre('UISizeConstraint',Template){
  1281.                 Name = 'TemplateSizeConstraint',       
  1282.                 MaxSize = Vector2.new(math.huge,30),
  1283.             }
  1284.            
  1285.             Frame['ChildAdded']:connect(function()
  1286.                 ResizeUI(Frame,30,'TextButton')
  1287.             end)
  1288.            
  1289.             local sel_pos = 0
  1290.             for option, val in next, status do
  1291.                 local tp = Template:Clone()
  1292.                
  1293.                 tp.Name = option
  1294.                 tp.Text = option .. ': ' .. tostring(val)
  1295.                
  1296.                 if status[option] then
  1297.                     tp.TextColor3 = Color3.fromRGB(0,255,0)
  1298.                 else
  1299.                     tp.TextColor3 = Color3.fromRGB(255,0,0)
  1300.                 end
  1301.                
  1302.                 sel_pos = sel_pos + 1
  1303.                 selection[sel_pos] = tp    
  1304.                 tp.Parent = Frame
  1305.             end
  1306.        
  1307.             Frame.CanvasPosition = Vector2.new(0, current_pos)
  1308.             return Frame
  1309.         end
  1310.        
  1311.         Client['CharacterAdded']:connect(function(c)
  1312.             ClientModel = c
  1313.             ClientHumanoid = wfcoc(ClientModel,'Humanoid')
  1314.             ClientActiveUI.Parent.Parent = nil
  1315.             ClientActiveUI = coroutine.wrap(__)()
  1316.         end)
  1317.         ClientActiveUI = coroutine.wrap(__)()
  1318.        
  1319.         local right_down, keylogs, inputlogs = nil, {}, {}
  1320.         services.Input.InputBegan:connect(function(input, procc)
  1321.             keylogs[input.KeyCode],inputlogs[input.UserInputType] = true, true;
  1322.            
  1323.             if not ClientActiveUI then return end
  1324.             if keylogs[Enum.KeyCode.U] and current_pos >= 30 then
  1325.                 select_pos = select_pos - 1
  1326.                 current_pos = current_pos - 30
  1327.                 ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  1328.                
  1329.             elseif keylogs[Enum.KeyCode.J] and current_pos < ClientActiveUI.CanvasSize.Y.Offset - 30 then
  1330.                 select_pos = select_pos + 1    
  1331.                 current_pos = current_pos + 30     
  1332.                 ClientActiveUI.CanvasPosition = Vector2.new(0,current_pos)
  1333.                
  1334.             elseif keylogs[Enum.KeyCode.H] then
  1335.                 if selection[select_pos] then
  1336.                     toggle(selection[select_pos])
  1337.                 end
  1338.             end
  1339.         end)
  1340.         services.Input.InputEnded:connect(function(input, procc)
  1341.             keylogs[input.KeyCode],inputlogs[input.UserInputType] = false, false;
  1342.         end)
  1343.        
  1344.         local function GetPlayerFromCharacter(mod)
  1345.             if not mod:IsA('Model') then return end
  1346.            
  1347.             for __, client in next, services.Players:GetPlayers() do
  1348.                 if rawequal(string.lower(client['Name']):sub(1,#mod['Name']),mod['Name']:lower()) then
  1349.                     return client, client['Name']
  1350.                 end
  1351.             end    
  1352.             return nil, 'N/A'
  1353.         end
  1354.        
  1355.         local function Search()
  1356.             local t = {}   
  1357.             for __, child in next, services.World:GetChildren() do
  1358.                 local UserFromCharacter = GetPlayerFromCharacter(child)
  1359.                 if UserFromCharacter then
  1360.                     if child:IsA('Model') and not rawequal(UserFromCharacter,Client) then
  1361.                         local h = ffoc(child,'Humanoid')
  1362.                         if h and h.Health > 0 then
  1363.                             table.insert(t, {child,UserFromCharacter})
  1364.                         end
  1365.                     end
  1366.                 end
  1367.             end
  1368.             return t
  1369.         end
  1370.        
  1371.         local function cast_ray(p0,p1,blacklist)
  1372.             local Part
  1373.             local __=0
  1374.             repeat
  1375.                 __=__+1
  1376.                 local cond=(p1-p0).magnitude < 999
  1377.                 Part,p0=cast(workspace,ray(p0,cond and p1-p0 or (p1-p0).unit*999),blacklist)
  1378.                 if Part then
  1379.                     if Part.CanCollide==false or Part.Transparency==1 then
  1380.                         blacklist[#blacklist+1]=Part
  1381.                         Part=nil
  1382.                     end
  1383.                 elseif cond or __ > 15 then
  1384.                     break
  1385.                 end
  1386.             until Part
  1387.             return Part,p0
  1388.         end
  1389.        
  1390.         services.Run.RenderStepped:connect(function()
  1391.             local Storage = {}
  1392.             if status['Enabled'] and (inputlogs[Enum.UserInputType.MouseButton2] or status['AutoAim']) then
  1393.                 Storage = Search()
  1394.                
  1395.                 local dot, face = -1
  1396.                 for __, info in next, (Storage) do
  1397.                     local h = ffc(info[1],'Humanoid')
  1398.                     local skip;
  1399.                    
  1400.                     if not inputlogs[Enum.UserInputType.MouseButton2] and not status['AutoAim'] then return end
  1401.                     if not info[1] or not info[2] or IgnorePlayersNamed[info[2]['Name']] or ffoc(info[1],'ForceField') then skip = true end
  1402.                     if not ffc(info[1],'HumanoidRootPart') then skip = true end
  1403.                            
  1404.                     if h and h['Health'] > 0 then
  1405.                         if status['TeamCheck'] then
  1406.                             if Client['TeamColor'] == info[2]['TeamColor'] then
  1407.                                 skip = true
  1408.                             end
  1409.                         end
  1410.                        
  1411.                         if not skip then
  1412.                             local cc = ClientCamera.CFrame
  1413.                             local pos = status['HeadsOnly'] and info[1]['Head'].CFrame.p or info[1]['HumanoidRootPart'].Position
  1414.                             local HitPart=cast_ray(cc.p,pos,{ClientCamera,ClientModel})
  1415.                            
  1416.                             if not (status['RayCheck'] and HitPart) or info[1]:IsAncestorOf(HitPart) then
  1417.                                 local m = (pos-cc.p).unit:Dot(cc.lookVector)
  1418.                                 if rawequal(m,m) and m > dot then
  1419.                                     dot, face= m, pos
  1420.                                 end
  1421.                             end
  1422.                         end
  1423.                     end
  1424.                 end
  1425.                 if face then
  1426.                     ClientCamera.CFrame = CFrame.new(ClientCamera.CFrame.p,face) * CFrame.new(0,0,0.5)
  1427.                 end
  1428.             end
  1429.         end)
  1430.        
  1431.     end
  1432. }
  1433.  
  1434. Settings = (function()
  1435.     local NewSettings = {
  1436.         --- Chams ---
  1437.         CT = 0; -- Transparency
  1438.         TCO = false; -- Team Chams On
  1439.         ECO = false; -- Enemy Chams On
  1440.         TCC = GetColor(Misc.ChamsColors, 'Grey'); -- Current Team Chams Color
  1441.         ECC = GetColor(Misc.ChamsColors, 'Red'); -- Current Enemy Chams Color
  1442.        
  1443.         --- Fullbright --- 
  1444.         Fullbright = {
  1445.             On = false;
  1446.             Current = 1;
  1447.             Options = {'Max','Half','Default'};
  1448.             OptionDefs = {
  1449.                 Max = {
  1450.                     Fog = 1000000;
  1451.                     Brightness = 10;
  1452.                     InAmbience = Color3.new(1, 1, 1);
  1453.                     OutAmbience = Color3.new(1, 1, 1);
  1454.                 };
  1455.                 Half = {
  1456.                     Fog = 250;
  1457.                     Brightness = 1.5;
  1458.                     InAmbience = Color3.new(0.6, 0.6, 0.6);
  1459.                     OutAmbience = Color3.new(0.6, 0.6, 0.6);
  1460.                 };
  1461.                 Default = {
  1462.                     Fog = Lighting.FogEnd;
  1463.                     Brightness = Lighting.Brightness;
  1464.                     InAmbience = Lighting.Ambient;
  1465.                     OutAmbience = Lighting.OutdoorAmbient;
  1466.                 }
  1467.             }
  1468.         }
  1469.     }
  1470.    
  1471.     for __, option in next, (Settings) do
  1472.         local NewOption = Button:Clone()
  1473.         if option[1] == 'Menu' or option[1] == 'Chams Transparency' then
  1474.             NewOption['Status']['Style'] = 'Custom';
  1475.             NewOption['Key']['TextStrokeColor3'] = Misc.GUIColors.On
  1476.         end
  1477.        
  1478.         NewOption['Text'].Text = option[1]:match('COLOR') and (
  1479.                 (option[1]:match('Team') and option[1]:gsub('COLOR', NewSettings.TCC[1])) or
  1480.                 (option[1]:match('Enemy') and option[1]:gsub('COLOR', NewSettings.ECC[1]))
  1481.                  ) or option[1]
  1482.         NewOption['Key'].Text = '['.. ((typeof(option[3]) == 'EnumItem' and option[3].Name) or option[3]) .. ']'       
  1483.         NewOption.Parent = Menu['Main']['Buttons']
  1484.        
  1485.         if option[1] == 'Chams Transparency' then
  1486.             NewOption['Name'] = 'Frans'
  1487.         end    
  1488.        
  1489.         local Func, Name = GetFunc(Functions, option[1])
  1490.         if Func then
  1491.             NewOption['Text']['MouseButton1Down']:connect(function()
  1492.                 if not option[2] then return end               
  1493.                 if NewOption.Status.Style.Name == 'DropShadow' then
  1494.                     NewOption.Status.Style = 'Custom'
  1495.                 elseif NewOption.Status.Style.Name == 'Custom' then
  1496.                     NewOption.Status.Style = 'DropShadow'
  1497.                 end
  1498.                
  1499.                 if option[1]:match('Aimbot') then
  1500.                     Func(NewOption)
  1501.                    
  1502.                 elseif option[1]:match('Fullbright') then
  1503.                     Func(true, NewOption['Key'])
  1504.                    
  1505.                 else
  1506.                     Func()
  1507.                 end
  1508.             end)
  1509.             if option[3] == 'Toggle' then
  1510.                 if Name:match('Team') then
  1511.                     NewOption['Key']['MouseButton1Down']:connect(function()
  1512.                         local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.TCC[2])
  1513.                         if (Pos + 1) < #Misc.ChamsColors then
  1514.                             NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[Pos + 1][1])
  1515.                             NewSettings.TCC = Misc.ChamsColors[Pos + 1]
  1516.                         else
  1517.                             NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.TCC[1], Misc.ChamsColors[1][1])
  1518.                             NewSettings.TCC = Misc.ChamsColors[1]
  1519.                         end
  1520.                        
  1521.                         GetFunc(Functions, 'Chams Transparency')()
  1522.                     end)
  1523.                 elseif Name:match('Enemy') then
  1524.                     NewOption['Key']['MouseButton1Down']:connect(function()
  1525.                         local Tab, Pos = GetColor(Misc.ChamsColors, NewSettings.ECC[2])
  1526.                         if (Pos + 1) < #Misc.ChamsColors then
  1527.                             NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[Pos + 1][1])
  1528.                             NewSettings.ECC = Misc.ChamsColors[Pos + 1]
  1529.                         else
  1530.                             NewOption['Text'].Text = NewOption['Text'].Text:gsub(NewSettings.ECC[1], Misc.ChamsColors[1][1])
  1531.                             NewSettings.ECC = Misc.ChamsColors[1]
  1532.                         end
  1533.                        
  1534.                         GetFunc(Functions, 'Chams Transparency')()
  1535.                     end)
  1536.                 end
  1537.                
  1538.             elseif option[1] == 'Chams Transparency' then
  1539.                 NewOption['Key']['MouseButton1Down']:connect(function()
  1540.                     GetFunc(Functions, 'Chams Transparency')(true)
  1541.                 end)
  1542.                
  1543.             elseif option[1] == 'Fullbright' then
  1544.                 NewOption['Key']['MouseButton1Down']:connect(function()
  1545.                     local Fullbright = Settings.Fullbright
  1546.                     if not Fullbright.On then return end
  1547.                     if Fullbright.Current < #Fullbright.Options  then
  1548.                         Fullbright.Current = Fullbright.Current + 1
  1549.                     else
  1550.                         Fullbright.Current = 1
  1551.                     end
  1552.                     GetFunc(Functions, 'Fullbright')(false, NewOption['Key'])
  1553.                 end)
  1554.                
  1555.             end
  1556.         end
  1557.     end
  1558.     return NewSettings
  1559. end)()
  1560.  
  1561. setmetatable(Misc['CharFunctions'], {
  1562.     __newindex = function(s, i, v)
  1563.         rawset(Misc['CharFunctions'], i, v)
  1564.         for __, player in next, (Players:GetPlayers()) do
  1565.             if player.Character then
  1566.                 v(player.Character)
  1567.             end
  1568.         end
  1569.     end
  1570. })
  1571.  
  1572. local CharFix = function(char)
  1573.     local Target = Players:GetPlayerFromCharacter(char)
  1574.     local Team = Chams['Team']:FindFirstChild(Target['Name'])
  1575.     local Enemy = Chams['Enemy']:FindFirstChild(Target['Name'])
  1576.    
  1577.     if Team then
  1578.         for __, handle in next, (Team:GetChildren()) do
  1579.             if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  1580.                 handle['Parent'] = nil
  1581.             end
  1582.         end
  1583.     end
  1584.        
  1585.     if Enemy then
  1586.         for __, handle in next, (Enemy:GetChildren()) do
  1587.             if handle['Adornee'] and not handle['Adornee']:IsDescendantOf(game) then
  1588.                 handle['Parent'] = nil
  1589.             end
  1590.         end
  1591.     end
  1592. end
  1593.  
  1594. local CharAbuse = function(char) wait()
  1595.     for __, func in next, (Misc['CharFunctions']) do
  1596.         coroutine.wrap(func)(char)
  1597.     end
  1598.    
  1599.     char['Changed']:connect(function(prop)
  1600.         if (prop == 'Parent') then
  1601.             CharFix(char)
  1602.         end
  1603.     end)
  1604. end
  1605.  
  1606. for __, player in next, (Players:GetPlayers()) do
  1607.     player['CharacterAdded']:connect(CharAbuse)
  1608. end
  1609.  
  1610. Players.PlayerAdded:connect(function(Client)
  1611.     Client['CharacterAdded']:connect(CharAbuse)
  1612. end)
  1613.  
  1614. Players.PlayerRemoving:connect(function(Client)
  1615.     local Team = Chams['Team']:FindFirstChild(Client['Name'])
  1616.     local Enemy = Chams['Enemy']:FindFirstChild(Client['Name'])
  1617.    
  1618.     if Team then Team['Parent'] = nil end
  1619.     if Enemy then Enemy['Parent'] = nil end
  1620. end)
  1621.  
  1622. Input['InputBegan']:connect(function(input, og)
  1623.     if og then return end
  1624.    
  1625.     if input.UserInputType == Enum.UserInputType.Keyboard then
  1626.         if input.KeyCode == Enum.KeyCode.Delete then
  1627.             Functions['Menu']()
  1628.         end    
  1629.     end
  1630. end)
  1631.  
  1632. Menu.Parent = game.CoreGui
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement