SHARE
TWEET

Untitled

JordanTGraves Jun 13th, 2018 101 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- syndicate fixed this for intriggered
  2. -- release by vermill122
  3. local topkek = {}
  4. topkek.patch = '1.0.5a'
  5. topkek.data = {}
  6. topkek.commandbase = {}
  7. topkek.navigation = {}
  8. topkek.banmgr = {}
  9. topkek.lplr = game:GetService('Players').LocalPlayer
  10.  
  11. topkek.tools = {}
  12. topkek.tools.gui = {}
  13. topkek.tools.util = {}
  14. topkek.tools.animator = {}
  15.  
  16. topkek.windows = {}
  17. topkek.windows.lplr = {}
  18. topkek.windows.server = {}
  19. topkek.windows.players = {}
  20. topkek.windows.destruction = {}
  21. topkek.windows.scripts = {}
  22. topkek.windows.misc = {}
  23.  
  24. topkek.misc = {}
  25.  
  26. topkek.gui = game:GetObjects("rbxassetid://678309209")[1]
  27. topkek.gui.Parent = game:GetService("CoreGui")
  28.  
  29. topkek.center = topkek.gui.Main
  30. topkek.holder = topkek.center.Holder
  31. topkek.topbar = topkek.center.Topbar
  32. topkek.template = topkek.holder.Template
  33. topkek.navigator = topkek.center.Navigation
  34.  
  35. AllowHovers = false
  36. PlayerChatHook, UpdateBanlist = nil
  37. cmd = {}
  38.  
  39. --// data //--
  40. topkek.data.windows = {
  41.     'Home',
  42.     'LocalPlayer',
  43.     'Server',
  44.     'Players',
  45.     'Destruction',
  46.     'Scripts',
  47.     'Catalog',
  48.     'Music',
  49.     'Hats',
  50.     'Faces',
  51.     'Settings',
  52.     'Commands',
  53.     'Banlist',
  54. }
  55.  
  56. color3 = function(r,g,b)
  57.     return Color3.new(r/255, g/255, b/255)
  58. end
  59. --// doggo dropdown //--
  60. -- thanks krystal
  61. GUI = {
  62.     TextBox = {
  63.         Settings = {
  64.             Font = Enum.Font.SourceSans;
  65.             FontSize = Enum.FontSize.Size14;
  66.         };
  67.         Color = {
  68.             Main = Color3.fromRGB(5,8,11);
  69.             Border = Color3.fromRGB(27,42,53);
  70.             Text = Color3.fromRGB(199,199,199);
  71.         };
  72.         New = function(Position, Size, Parent, ...)
  73.             local arguments = {...};
  74.            
  75.             local TextBox = Instance.new("TextBox", Parent);
  76.             TextBox.BackgroundColor3 = GUI.DropDown.Color.Main;
  77.             TextBox.BorderColor3 = GUI.DropDown.Color.Border;
  78.             TextBox.Font = GUI.TextBox.Settings.Font;
  79.             TextBox.FontSize = GUI.TextBox.Settings.FontSize;
  80.             TextBox.TextColor3 = GUI.TextBox.Color.Text;
  81.             TextBox.Position = Position;
  82.             TextBox.Size = Size;
  83.             if #arguments then
  84.                 if arguments[1] then
  85.                     TextBox.Text = tostring(arguments[1]);
  86.                 else
  87.                     TextBox.Text = "";
  88.                 end
  89.             end    
  90.             return TextBox;
  91.         end;
  92.     };
  93.     DropDown = {
  94.         Settings = {
  95.             ScrollerAmount = 5; --A scroller will appear at this amount.
  96.             ScrollBarThickness = 6;
  97.         };
  98.         Gfx = {
  99.             Scroller = "rbxassetid://606572419";
  100.         };
  101.         Color = {
  102.             Main = color3(107, 36, 36);
  103.             Secondary = color3(113, 39, 39);
  104.             Border = color3(127, 44, 44);
  105.             Text = Color3.fromRGB(199,199,199);
  106.         };
  107.         New = function(Position, Size, Parent, ...)
  108.             local vValue = {};
  109.             local arguments = {...};
  110.             local vSelected = Instance.new("StringValue");
  111.             vSelected.Value = "nil";
  112.            
  113.             if arguments then
  114.                 if type(arguments) == "table" then
  115.                     for i=1,#(arguments) do
  116.                         if type(arguments[i]) == "table" then
  117.                             for f=1,#(arguments[i]) do
  118.                                 table.insert(vValue, tostring((arguments[i])[f]));
  119.                             end
  120.                         else
  121.                             table.insert(vValue, tostring(arguments[i]));
  122.                         end
  123.                     end
  124.                     vSelected.Value = (vValue[1]);
  125.                 end
  126.             end
  127.            
  128.             local Main = Instance.new("TextButton", Parent);
  129.             Main.BackgroundColor3 = GUI.DropDown.Color.Main;
  130.             Main.BorderColor3 = GUI.DropDown.Color.Border;
  131.             Main.Position = Position;
  132.             Main.Size = Size;
  133.             Main.TextColor3 = GUI.DropDown.Color.Text;
  134.             Main.FontSize = Enum.FontSize.Size14;
  135.             Main.TextStrokeTransparency = 0.5;
  136.             Main.TextXAlignment = Enum.TextXAlignment.Left;
  137.             Main.Font = Enum.Font.SourceSans;
  138.             Main.Text = "  "..tostring(vSelected.Value);
  139.             Main.ZIndex = 3
  140.            
  141.             local Icon = Instance.new("TextLabel", Main);
  142.             Icon.SizeConstraint = Enum.SizeConstraint.RelativeYY;
  143.             Icon.BackgroundColor3 = GUI.DropDown.Color.Secondary;
  144.             Icon.BorderColor3 = GUI.DropDown.Color.Border;
  145.             Icon.Position = UDim2.new(1,-2,1,-2);
  146.             Icon.Size = UDim2.new(-1,4,-1,4);
  147.             Icon.TextColor3 = GUI.DropDown.Color.Text;
  148.             Icon.FontSize = Enum.FontSize.Size14;
  149.             Icon.TextStrokeTransparency = 0.5;
  150.             Icon.Font = Enum.Font.SourceSans;
  151.             Icon.Text = "V"
  152.             Icon.ZIndex = 4
  153.  
  154.             local Holder, Search;
  155.             local ClearHolder = function()
  156.                 if Holder then
  157.                     Holder:ClearAllChildren();
  158.                     Holder.Size = UDim2.new(1,0,0,0);
  159.                     Holder.Visible = false;
  160.                     if Search then
  161.                         Search.Visible = false;
  162.                     end
  163.                 end
  164.             end;
  165.            
  166.             local CreateButton;
  167.             local RefreshDropDown = function()
  168.                 if #vValue <= (GUI.DropDown.Settings.ScrollerAmount) then
  169.                     if not Holder or not Holder:IsA("Frame") then
  170.                         Holder = nil; Search = nil;
  171.                         Holder = Instance.new("Frame",Main);
  172.                         Holder.Size = UDim2.new(1,0,0,0);
  173.                         Holder.BackgroundColor3 = GUI.DropDown.Color.Main;
  174.                         Holder.BorderColor3 = GUI.DropDown.Color.Border;
  175.                         Holder.Visible = false;
  176.                         Holder.ZIndex = 3
  177.                     end
  178.                 elseif #vValue > (GUI.DropDown.Settings.ScrollerAmount) then
  179.                     if not Holder or not Holder:IsA("ScrollingFrame") then
  180.                         Holder = nil; Search = nil;
  181.                         Search = GUI.TextBox.New(UDim2.new(0,0,0,0),UDim2.new(1,0,0,Main.AbsoluteSize.Y),Main);
  182.                         Search.Visible = false;
  183.                         Search.ZIndex = 4
  184.                         Search.Changed:connect(function(p)
  185.                             if p == "Text" then
  186.                                 CreateButton(Search.Text);
  187.                             end
  188.                         end)
  189.                         Holder = Instance.new("ScrollingFrame",Main);
  190.                         Holder.BackgroundColor3 = GUI.DropDown.Color.Main;
  191.                         Holder.BorderColor3 = GUI.DropDown.Color.Border;
  192.                         Holder.TopImage = GUI.DropDown.Gfx.Scroller;
  193.                         Holder.MidImage = GUI.DropDown.Gfx.Scroller;
  194.                         Holder.BottomImage = GUI.DropDown.Gfx.Scroller;
  195.                         Holder.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y * (GUI.DropDown.Settings.ScrollerAmount-1));
  196.                         Holder.Position = UDim2.new(0,0,0,Main.AbsoluteSize.Y)
  197.                         Holder.ScrollBarThickness = GUI.DropDown.Settings.ScrollBarThickness;
  198.                         Holder.Visible = false;
  199.                         Holder.ZIndex = 3;
  200.                     end
  201.                 end
  202.                 if #vValue == 1 and vSelected.Value ~= vValue[1] then
  203.                     vSelected.Value = vValue[1];
  204.                 elseif #vValue == 0 then
  205.                     vSelected.Value = "nil";
  206.                     warn("Table amount is nil.");
  207.                 end
  208.                 Main.Text = "  "..tostring(vSelected.Value);
  209.                 --ClearHolder();
  210.             end;
  211.            
  212.             local Debounce = false;
  213.             CreateButton = function(searches)
  214.                 if Debounce == false then
  215.                     Debounce = true;
  216.                     ClearHolder()
  217.                     Holder.Visible = true;
  218.                     local Searched = 0;
  219.                     if #vValue > 0 then
  220.                         for i=1,#vValue do
  221.                             if (searches ~= nil and string.find(string.lower(vValue[i]), string.lower(searches)) and searches ~= "") then
  222.                                 Searched = Searched + 1;
  223.                             end
  224.                         end
  225.                         for i=1,#vValue do
  226.                             if (searches ~= nil and string.find(string.lower(vValue[i]), string.lower(searches)) and searches ~= "" and Searched > 0) or searches == nil or searches == "" or Searched <= 0 then
  227.                                 local Select = Instance.new("TextButton", Holder);
  228.                                 Select.BackgroundColor3 = GUI.DropDown.Color.Main;
  229.                                 Select.BorderColor3 = GUI.DropDown.Color.Border;
  230.                                 Select.BackgroundTransparency = 1;
  231.                                 Select.BorderSizePixel = 0;
  232.                                 Select.Position = Position;
  233.                                 if #vValue <= (GUI.DropDown.Settings.ScrollerAmount) then
  234.                                     Select.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y);
  235.                                 else
  236.                                     Select.Size = UDim2.new(1,-(GUI.DropDown.Settings.ScrollBarThickness),0,Main.AbsoluteSize.Y);
  237.                                 end
  238.                                 Select.Position = UDim2.new(0,0,0,(Main.AbsoluteSize.Y) * (#Holder:GetChildren() - 1))
  239.                                 Select.TextColor3 = GUI.DropDown.Color.Text;
  240.                                 Select.FontSize = Enum.FontSize.Size14;
  241.                                 Select.TextStrokeTransparency = 0.5;
  242.                                 Select.Font = Enum.Font.SourceSans;
  243.                                 Select.Text = tostring(vValue[i]);
  244.                                 Select.ZIndex = 3
  245.                                 Select.MouseButton1Click:connect(function()
  246.                                     vSelected.Value = vValue[i];
  247.                                     ClearHolder();
  248.                                     RefreshDropDown();
  249.                                 end)
  250.                                 if  #vValue <= (GUI.DropDown.Settings.ScrollerAmount) then
  251.                                     Holder.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y * i);
  252.                                 elseif Holder:IsA("ScrollingFrame") then
  253.                                     Search.Visible = true;
  254.                                     if #Holder:GetChildren() >= 1 then
  255.                                         Holder.CanvasSize = UDim2.new(1,0,0,Main.AbsoluteSize.Y * #Holder:GetChildren());
  256.                                         Holder.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y * #Holder:GetChildren());--GUI.DropDown.Settings.ScrollerAmount);
  257.                                         if #Holder:GetChildren() >= GUI.DropDown.Settings.ScrollerAmount then
  258.                                             Holder.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y * GUI.DropDown.Settings.ScrollerAmount);
  259.                                             Holder.CanvasSize = UDim2.new(1,0,0,Main.AbsoluteSize.Y * #Holder:GetChildren());
  260.                                         end
  261.                                     elseif #Holder:GetChildren() < 1 then
  262.                                         Holder.CanvasSize = UDim2.new(1,0,0,Main.AbsoluteSize.Y * 1);
  263.                                         Holder.Size = UDim2.new(1,0,0,Main.AbsoluteSize.Y * 1);
  264.                                     end
  265.                                 end
  266.                             end
  267.                         end
  268.                     end
  269.                     Debounce = false;
  270.                 end
  271.             end;
  272.            
  273.             RefreshDropDown();
  274.  
  275.             Main.MouseButton1Click:connect(function()
  276.                 CreateButton()
  277.                 if #vValue >= GUI.DropDown.Settings.ScrollerAmount and Search ~= nil then
  278.                     Search:CaptureFocus();
  279.                     Search.Text = "";
  280.                 end
  281.             end)
  282.            
  283.             topkek.lplr:GetMouse().Button1Down:connect(function()
  284.                 ClearHolder()
  285.             end)
  286.  
  287.             return {
  288.                 Update = function()
  289.                     RefreshDropDown();
  290.                 end;
  291.                 GetValue = function()
  292.                     RefreshDropDown();
  293.                     return vValue;
  294.                 end;
  295.                 GetSelected = function()
  296.                     RefreshDropDown();
  297.                     return vSelected.Value;
  298.                 end;
  299.                 SetTable = function(F)
  300.                     vValue = F;
  301.                     RefreshDropDown();
  302.                 end;
  303.                 Changed = function(F)
  304.                     vSelected.Changed:connect(function()
  305.                         ypcall(function()
  306.                             F(vSelected.Value);
  307.                         end)
  308.                     end)
  309.                     return "ChangedEvent Hooked";
  310.                 end;
  311.                 AddValue = function(obj)
  312.                     local Type = type(obj);
  313.                     if Type == "table" then
  314.                         for i=1,#obj do
  315.                             table.insert(vValue, obj[i])
  316.                         end
  317.                     elseif Type == "string" or Type == "number" or Type == "boolean" then
  318.                         table.insert(vValue, obj)
  319.                     end
  320.                     RefreshDropDown();
  321.                 end;
  322.                 RemoveValue = function(obj)
  323.                     local Type = type(obj);
  324.                     if Type == "table" then
  325.                         for i=1,#vValue do
  326.                             for f=1,#obj do
  327.                                 if tostring(obj[f]) == tostring(vValue[i]) then
  328.                                     table.remove(vValue,i)
  329.                                 end
  330.                             end
  331.                         end
  332.                     else
  333.                         for i=1,#vValue do
  334.                             if tostring(obj) == tostring(vValue[i]) then
  335.                                 table.remove(vValue,i)
  336.                             end
  337.                         end
  338.                     end
  339.                     RefreshDropDown();
  340.                 end;
  341.                 ClearValue = function()
  342.                     vValue = {};
  343.                     RefreshDropDown();
  344.                 end;
  345.             }
  346.         end;
  347.     };
  348. };
  349. --// util //--
  350. function topkek.tools.util.Object(o, p)
  351.     local a, b = pcall(function()
  352.         Instance.new(o)
  353.     end)
  354.     if not a then
  355.         return
  356.     end
  357.     local obj = Instance.new(o)
  358.     for prop, val in pairs(p) do
  359.         pcall(function()
  360.             obj[prop] = val
  361.         end)
  362.     end
  363.     return obj
  364. end
  365.  
  366. function topkek.tools.util.getContainer(n)
  367.     if topkek.holder:FindFirstChild(n) then
  368.         return topkek.holder[n]
  369.     else
  370.         print("menu not found; returning template")
  371.         return topkek.holder['Template']
  372.     end
  373. end
  374.  
  375. function topkek.tools.util.play(id)
  376.     local mu = Instance.new("Sound", game:GetService('Workspace'))
  377.     mu.Volume = 1
  378.     mu.Looped = true
  379.     mu.Pitch = 1
  380.     mu.SoundId = "rbxassetid://"..tostring(id)
  381.     mu:Play()
  382. end
  383.  
  384. function topkek.tools.util.getTorso(plr) --r15 compatibility lole
  385.     if plr.Character then
  386.         if plr.Character:FindFirstChild('UpperTorso') then
  387.             return plr.Character.UpperTorso
  388.         elseif plr.Character:FindFirstChild('Torso') then
  389.             return plr.Character.Torso
  390.         else
  391.             return nil
  392.         end
  393.     end
  394. end
  395.  
  396. function topkek.tools.util.recurseRemove(x,type_)
  397.     local function recurse(x)
  398.         for i, v in pairs(x:GetChildren()) do
  399.             pcall(function()
  400.                 if v:IsA(type_) then
  401.                     v:Destroy()
  402.                 end
  403.                 if #(v:GetChildren())>0 then
  404.                     recurse(v)
  405.                 end
  406.             end)
  407.         end
  408.     end
  409.     recurse(x)
  410. end
  411.  
  412. function topkek.tools.util.recurseFunc(type_,func)
  413.     local function recurse(x)
  414.         for i, v in pairs(x:GetChildren()) do
  415.             pcall(function()
  416.                 if v:IsA(type_) then
  417.                     func(v)
  418.                 end
  419.                 if #(v:GetChildren())>0 then
  420.                     recurse(v)
  421.                 end
  422.             end)
  423.         end
  424.     end
  425.     recurse(game)
  426. end
  427. function topkek.tools.util.trowel()
  428.     local T = Instance.new('Tool', game.Players.LocalPlayer.Backpack)
  429.     T.Name = 'Custom Trowel'
  430.    
  431.     local p = Instance.new('Part')
  432.     p.Name = 'Handle'
  433.     p.Size = Vector3.new(1,4.4,1)
  434.     p.Parent = T
  435.    
  436.     local specialMesh = Instance.new('SpecialMesh')
  437.     specialMesh.MeshId = 'rbxasset://fonts/trowel.mesh'
  438.     specialMesh.MeshType = 'FileMesh'
  439.     specialMesh.TextureId = 'rbxasset://textures/TrowelTexture.png'
  440.     specialMesh.Parent = T.Handle
  441.    
  442.     local sound = Instance.new'Sound'
  443.     sound.Name = 'build'
  444.     sound.SoundId = 'rbxasset://sounds//bass.wav'
  445.     sound.Volume = 1
  446.     sound.Parent = T.Handle
  447.      
  448.     local brickHeight = 100
  449.     local trowelSpeed = 0.05
  450.     local brickWidth = 500
  451.     local mouseConnection
  452.      
  453.     function newBrick(CF, P, color)
  454.      local brick = Instance.new('Part')
  455.      brick.BrickColor = color
  456.      brick.CFrame = CF * CFrame.new(P + brick.Size / 2)
  457.      brick.Parent = game.Workspace
  458.      brick:MakeJoints()
  459.      brick.Material = 'Neon'
  460.      brick.Name = 'DeleteMe'
  461.      return  brick, P + brick.Size
  462.     end
  463.      
  464.     function genBrick(cFrame)
  465.      local randBrickColor = BrickColor.Random()
  466.      assert(brickWidth > 0)
  467.      
  468.      local yPos = 0
  469.      
  470.      while yPos < brickHeight do
  471.       local vPos
  472.       local X = -brickWidth / 2
  473.       while X < brickWidth / 2 do
  474.        local brick
  475.        brick, vPos = newBrick(cFrame, Vector3.new(X, yPos, 0), randBrickColor)
  476.        X = vPos.x
  477.        wait(trowelSpeed)
  478.       end
  479.       yPos = vPos.y
  480.      end
  481.     end
  482.      
  483.     function calcPos(vec)
  484.      if (math.abs(vec.x) > math.abs(vec.z)) then
  485.       if vec.x > 0 then
  486.        return Vector3.new(1, 0, 0)
  487.       else
  488.        return Vector3.new(-1, 0, 0)
  489.       end
  490.      else
  491.       if (vec.z > 0) then
  492.        return Vector3.new(0, 0, 1)
  493.       else
  494.        return Vector3.new(0, 0, -1)
  495.       end
  496.      end
  497.     end
  498.      
  499.     T.Enabled = true
  500.    
  501.     T.Activated:connect(function()
  502.      if T.Enabled and game.Players.LocalPlayer.Character:FindFirstChild('Humanoid') then
  503.       T.Enabled = false
  504.       T.Handle.build:Play()
  505.       genBrick(CFrame.new(game.Players.LocalPlayer.Character.Humanoid.TargetPoint, game.Players.LocalPlayer.Character.Humanoid.TargetPoint + calcPos((game.Players.LocalPlayer.Character.Humanoid.TargetPoint - game.Players.LocalPlayer.Character.Head.Position).unit)))
  506.       T.Enabled = true
  507.      end
  508.     end)
  509.    
  510.     T.Equipped:connect(function()
  511.      mouseConnection = game.Players.LocalPlayer:GetMouse().KeyDown:connect(function(key)
  512.       if (key == 'r') then
  513.        for i,v in next, workspace:children'' do
  514.         if (v.Name == 'DeleteMe') then
  515.          v:Destroy()
  516.         end
  517.        end
  518.       end
  519.      end)
  520.     end)
  521.    
  522.     T.Unequipped:connect(function()
  523.      mouseConnection:disconnect()
  524.     end)
  525. end
  526. function topkek.tools.util.recurseSet(type_,prop,val)
  527.     local function recurse(x)
  528.         for i, v in pairs(x:GetChildren()) do
  529.             pcall(function()
  530.                 if v:IsA(type_) then
  531.                     v[prop]=val
  532.                 end
  533.                 if #(v:GetChildren())>0 then
  534.                     recurse(v)
  535.                 end
  536.             end)
  537.         end
  538.     end
  539.     recurse(game)
  540. end
  541. function topkek.tools.util.recurseUltimate(d)
  542.     topkek.tools.util.recurseDecal(d)
  543.     topkek.tools.util.recurseParticles(d)
  544. end
  545. function topkek.tools.util.recurseDecal(img)
  546.     img = 'rbxassetid://' .. img
  547.     local function skybox(x)
  548.         local sky = Instance.new("Sky",game.Lighting)
  549.         local fcs={"Bk","Dn","Ft","Lf","Rt","Up"}
  550.         for i,v in pairs(fcs) do
  551.             sky["Skybox"..v]=x
  552.         end
  553.     end
  554.    
  555.     local function decal(p, b)
  556.         local sides = {"Back", "Bottom", "Front", "Left", "Right", "Top"}
  557.         for i, v in pairs(sides) do
  558.             local a = Instance.new("Decal", p)
  559.             a.Texture = b
  560.             a.Face = v
  561.         end
  562.     end
  563.            
  564.     local function recurse(x)
  565.         for i, v in pairs(x:GetChildren()) do
  566.             pcall(function() -- 'error occured, no output from Lua' LOLE
  567.                 if v:IsA("BasePart") then
  568.                     decal(v, img)
  569.                 end
  570.                 if #(v:GetChildren())>0 then
  571.                     recurse(v)
  572.                 end
  573.             end)
  574.         end
  575.     end
  576.            
  577.     recurse(game)
  578.     skybox(img)
  579. end
  580. function topkek.tools.util.recurseParticles(img)--topkek2.0 code tbh
  581.     img = 'rbxassetid://' .. img
  582.     local function skybox(x)
  583.         local sky = Instance.new("Sky",game.Lighting)
  584.         local fcs={"Bk","Dn","Ft","Lf","Rt","Up"}
  585.         for i,v in pairs(fcs) do
  586.             sky["Skybox"..v]=x
  587.         end
  588.     end
  589.     local function particle(p, b)
  590.         local a = Instance.new("ParticleEmitter", p)
  591.         a.Rate = 500
  592.         a.Lifetime = NumberRange.new(20, 30)
  593.         a.VelocitySpread = 200
  594.         a.Texture = b
  595.     end
  596.            
  597.     local function recurse(x)
  598.         for i, v in pairs(x:GetChildren()) do
  599.             pcall(function() -- 'error occured, no output from Lua' LOLE
  600.                 if v:IsA("BasePart") then
  601.                     particle(v, img)
  602.                 end
  603.                 if #(v:GetChildren())>0 then
  604.                     recurse(v)
  605.                 end
  606.             end)
  607.         end
  608.     end
  609.            
  610.     recurse(game)
  611.     skybox(img)
  612. end
  613. function topkek.tools.util.recurseSetObj(obj,type_,prop,val)
  614.     local function recurse(x)
  615.         for i, v in pairs(x:GetChildren()) do
  616.             pcall(function()
  617.                 if v:IsA(type_) then
  618.                     v[prop]=val
  619.                 end
  620.                 if #(v:GetChildren())>0 then
  621.                     recurse(v)
  622.                 end
  623.             end)
  624.         end
  625.     end
  626.     recurse(obj)
  627. end
  628. function topkek.tools.util.doPlayers(cval, func)
  629.     local plrs = {}
  630.     if cval == 'All' then
  631.         plrs = game:GetService('Players'):GetPlayers()
  632.     else
  633.         plrs = {game:GetService('Players'):FindFirstChild(cval)}
  634.     end
  635.     for i, v in pairs(plrs) do
  636.         func(v)
  637.     end
  638. end
  639. function topkek.tools.util.scalePlayer(sc,plr)
  640.     local pchar = plr.Character
  641.     if pchar:FindFirstChild("UpperTorso") then
  642.         warn("Player [" ..plr.Name.. "] is R15.")
  643.         return
  644.     end
  645.     local function scale(chr,scl)
  646.    
  647.         for _,v in pairs(pchar:GetChildren()) do
  648.             if v:IsA("Hat") then
  649.                 v:Clone()
  650.                 v.Parent = game.Lighting
  651.             end
  652.         end
  653.            
  654.         local Head = chr['Head']
  655.         local Torso = chr['Torso']
  656.         local LA = chr['Left Arm']
  657.         local RA = chr['Right Arm']
  658.         local LL = chr['Left Leg']
  659.         local RL = chr['Right Leg']
  660.         local HRP = chr['HumanoidRootPart']
  661.    
  662.         wait(0.1)
  663.        
  664.         Head.formFactor = 3
  665.         Torso.formFactor = 3
  666.         LA.formFactor = 3
  667.         RA.formFactor = 3
  668.         LL.formFactor = 3
  669.         RL.formFactor = 3
  670.         HRP.formFactor = 3
  671.        
  672.         Head.Size = Vector3.new(scl * 2, scl, scl)
  673.         Torso.Size = Vector3.new(scl * 2, scl * 2, scl)
  674.         LA.Size = Vector3.new(scl, scl * 2, scl)
  675.         RA.Size = Vector3.new(scl, scl * 2, scl)
  676.         LL.Size = Vector3.new(scl, scl * 2, scl)
  677.         RL.Size = Vector3.new(scl, scl * 2, scl)
  678.         HRP.Size = Vector3.new(scl * 2, scl * 2, scl)
  679.        
  680.         local Motor1 = Instance.new('Motor6D', Torso)
  681.         Motor1.Part0 = Torso
  682.         Motor1.Part1 = Head
  683.         Motor1.C0 = CFrame.new(0, 1 * scl, 0) * CFrame.Angles(-1.6, 0, 3.1)
  684.         Motor1.C1 = CFrame.new(0, -0.5 * scl, 0) * CFrame.Angles(-1.6, 0, 3.1)
  685.         Motor1.Name = "Neck"
  686.                
  687.         local Motor2 = Instance.new('Motor6D', Torso)
  688.         Motor2.Part0 = Torso
  689.         Motor2.Part1 = LA
  690.         Motor2.C0 = CFrame.new(-1 * scl, 0.5 * scl, 0) * CFrame.Angles(0, -1.6, 0)
  691.         Motor2.C1 = CFrame.new(0.5 * scl, 0.5 * scl, 0) * CFrame.Angles(0, -1.6, 0)
  692.         Motor2.Name = "Left Shoulder"
  693.        
  694.         local Motor3 = Instance.new('Motor6D', Torso)
  695.         Motor3.Part0 = Torso
  696.         Motor3.Part1 = RA
  697.         Motor3.C0 = CFrame.new(1 * scl, 0.5 * scl, 0) * CFrame.Angles(0, 1.6, 0)
  698.         Motor3.C1 = CFrame.new(-0.5 * scl, 0.5 * scl, 0) * CFrame.Angles(0, 1.6, 0)
  699.         Motor3.Name = "Right Shoulder"
  700.        
  701.         local Motor4 = Instance.new('Motor6D', Torso)
  702.         Motor4.Part0 = Torso
  703.         Motor4.Part1 = LL
  704.         Motor4.C0 = CFrame.new(-1 * scl, -1 * scl, 0) * CFrame.Angles(0, -1.6, 0)
  705.         Motor4.C1 = CFrame.new(-0.5 * scl, 1 * scl, 0) * CFrame.Angles(0, -1.6, 0)
  706.         Motor4.Name = "Left Hip"
  707.        
  708.         local Motor5 = Instance.new('Motor6D', Torso)
  709.         Motor5.Part0 = Torso
  710.         Motor5.Part1 = RL
  711.         Motor5.C0 = CFrame.new(1 * scl, -1 * scl, 0) * CFrame.Angles(0, 1.6, 0)
  712.         Motor5.C1 = CFrame.new(0.5 * scl, 1 * scl, 0) * CFrame.Angles(0, 1.6, 0)
  713.         Motor5.Name = "Right Hip"
  714.        
  715.         local Motor6 = Instance.new('Motor6D', HRP)
  716.         Motor6.Part0 = HRP
  717.         Motor6.Part1 = Torso
  718.         Motor6.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(-1.6, 0, -3.1)
  719.         Motor6.C1 = CFrame.new(0, 0, 0) * CFrame.Angles(-1.6, 0, -3.1)
  720.            
  721.     end
  722.    
  723.     scale(pchar, sc)
  724.    
  725.     for _,v in pairs(game.Lighting:GetChildren()) do
  726.         if v:IsA("Hat") then
  727.             v.Parent = pchar
  728.         end
  729.     end
  730. end
  731. function topkek.tools.util.applyFace(id)
  732.     local Char = topkek.lplr.Character
  733.     if(Char)then
  734.         local Type = id
  735.         local Meme=id
  736.         local BBG_SIZE=Char.Head.Size.X*1.25;
  737.         local STUD_VECTOR_1=Char.Head.Size.Z/4;
  738.         local STUD_VECTOR_2=Char.Head.Size.Z;
  739.         local bbg=Char:FindFirstChild'BBGMEME'or Instance.new('BillboardGui',Char);
  740.             bbg.StudsOffset=Vector3.new(0,STUD_VECTOR_1,STUD_VECTOR_2);
  741.             bbg.Size=UDim2.new(BBG_SIZE,0,BBG_SIZE);
  742.             bbg.Adornee=Char.Head;
  743.             bbg.Name='BBGMEME';
  744.         local img=bbg:FindFirstChild'Meme'or Instance.new('ImageLabel',bbg);
  745.             img.BackgroundTransparency=1;
  746.             img.Image="rbxassetid://"..Meme;
  747.             img.Size=UDim2.new(1,0,1,0)
  748.             img.Name='Meme';
  749.         for i,v in next,Char:children()do
  750.             if(v.className=='Hat')then
  751.                 v=v:FindFirstChild'Handle';
  752.                 if(v)then
  753.                     v.Transparency=0
  754.                 end;
  755.             end;
  756.         end;
  757.     end;
  758. end;
  759. function topkek.tools.util.weenieHutJunior(plr)
  760.     plr=plr.Character
  761.     Shaft=Instance.new("Part", plr)
  762.     Shaft.Name='Shaft'
  763.     Shaft.Size=Vector3.new(1, 2.5, 1)
  764.     Shaft.TopSurface=0
  765.     Shaft.BottomSurface=0
  766.     Shaft.CanCollide=true
  767.     Cyln=Instance.new("CylinderMesh", Shaft)
  768.     Cyln.Scale=Vector3.new(0.5,0.7,0.5)
  769.     Instance.new("Weld", plr)
  770.     plr.Weld.Part0=plr:FindFirstChild("Torso") or plr:FindFirstChild("LowerTorso")
  771.     plr.Weld.Part1=plr.Shaft
  772.     plr.Weld.C0=CFrame.new(0,-0.35,-0.9)*CFrame.fromEulerAnglesXYZ(2.2,0,0)
  773.     Shaft.BrickColor=BrickColor.new("Pastel brown")
  774.     Tip=Instance.new("Part", plr)
  775.     Tip.Name='Tip'
  776.     Tip.TopSurface=0
  777.     Tip.BottomSurface=0
  778.     Tip.Size=Vector3.new(1, 1, 1)
  779.     Tip.CanCollide=true
  780.     Tip.Touched:connect(function(prt) if prt.Parent~=player then spawn(function() for i=1, 5 do local pert=Instance.new("Part", player) pert.CFrame=CFrame.new(prt.Position) pert.CanCollide=true local mesh=Instance.new("BlockMesh", pert) mesh.Scale=Vector3.new(0.2,0.2,0.2) pert.BrickColor=BrickColor.new("White") end end) end end)
  781.     Cyln2=Instance.new("SpecialMesh", Tip)
  782.     Cyln2.MeshType='Sphere'
  783.     Cyln2.Scale=Vector3.new(0.6,0.6,0.6)
  784.     Instance.new("Weld", plr).Name='Weld2'
  785.     plr.Weld2.Part0=plr.Shaft
  786.     plr.Weld2.Part1=plr.Tip
  787.     plr.Weld2.C0=CFrame.new(0,-.9,0)
  788.     Tip.BrickColor=BrickColor.new("Pink")
  789.     -----
  790.     Ball1=Instance.new("Part", plr)
  791.     Ball1.Name='Ball1'
  792.     Ball1.Size=Vector3.new(1, 1, 1)
  793.     Ball1.TopSurface=0
  794.     Ball1.BottomSurface=0
  795.     Cyln3=Instance.new("SpecialMesh", Ball1)
  796.     Cyln3.MeshType='Sphere'
  797.     Cyln3.Scale=Vector3.new(0.4,0.4,0.4)
  798.     Instance.new("Weld", plr).Name='Weld3'
  799.     plr.Weld3.Part0=plr.Shaft
  800.     plr.Weld3.Part1=plr.Ball1
  801.     plr.Weld3.C0=CFrame.new(0.225,.4,0.2)
  802.     Ball1.BrickColor=BrickColor.new("Pastel brown")
  803.     -----
  804.     Ball2=Instance.new("Part", plr)
  805.     Ball2.Name='Ball2'
  806.     Ball2.Size=Vector3.new(1, 1, 1)
  807.     Ball2.TopSurface=0
  808.     Ball2.BottomSurface=0
  809.     Cyln3=Instance.new("SpecialMesh", Ball2)
  810.     Cyln3.MeshType='Sphere'
  811.     Cyln3.Scale=Vector3.new(0.4,0.4,0.4)
  812.     Instance.new("Weld", plr).Name='Weld4'
  813.     plr.Weld4.Part0=plr.Shaft
  814.     plr.Weld4.Part1=plr.Ball2
  815.     plr.Weld4.C0=CFrame.new(-0.225,.4,0.2)
  816.     Ball2.BrickColor=BrickColor.new("Pastel brown")
  817. end
  818. --// banmgr //--
  819. topkek.banmgr.isPrivate = false
  820. topkek.banmgr.whitelist = {}
  821. topkek.banmgr.bans = {}
  822. function topkek.banmgr.executeKick(z)
  823.     local function doKick()
  824.         if z.Character and z.Character:FindFirstChild('HumanoidRootPart') and z.Character:FindFirstChild('Torso') then
  825.             z.Character.HumanoidRootPart.CFrame = CFrame.new(math.random(999000, 1001000), 1000000, 1000000)
  826.             local SP = Instance.new('SkateboardPlatform', z.Character) SP.Position = z.Character.HumanoidRootPart.Position SP.Transparency = 1
  827.             spawn(function()
  828.                 repeat wait()
  829.                     if z.Character and z.Character:FindFirstChild('HumanoidRootPart') then
  830.                         SP.Position = z.Character.HumanoidRootPart.Position
  831.                     end
  832.                 until not game:GetService('Players'):FindFirstChild(z.Name)
  833.             end)
  834.             z.Character.Torso.Anchored = true
  835.         end
  836.     end
  837.     repeat
  838.         doKick()
  839.         wait()
  840.     until not z
  841. end
  842. function topkek.banmgr.loadFromFile()
  843.     -- todo: read file
  844.     topkek.settings.get()
  845.     topkek.banmgr.bans = topkek.settingsTable['Bans']
  846. end
  847. function topkek.banmgr.addHardBan(p)
  848.     -- todo: write file
  849.     table.insert(topkek.banmgr.bans, p.Name)
  850.     topkek.settings.get()
  851.     table.insert(topkek.settingsTable['Bans'], p.Name)
  852.     topkek.settings.write()
  853.     print("Hardbanned " .. p.Name)
  854.     UpdateBanlist()
  855.     topkek.banmgr.executeKick(p)
  856.     topkek.banmgr.loadFromFile()
  857. end
  858. function topkek.banmgr.addSoftBan(p)
  859.     table.insert(topkek.banmgr.bans, p.Name)
  860.     topkek.banmgr.executeKick(p)
  861. end
  862. function topkek.banmgr.plrBanned(p)
  863.     for x, m in pairs(topkek.banmgr.bans) do
  864.         if m == p.Name then
  865.             return true
  866.         end
  867.     end
  868.     return false
  869. end
  870. function topkek.banmgr.doWhitelist(p)
  871.     print(p .. " whitelisted")
  872.     table.insert(topkek.banmgr.whitelist, p)
  873. end
  874. function topkek.banmgr.unwhitelist(p)
  875.     for x, m in pairs(topkek.banmgr.whitelist) do
  876.         if m == p then
  877.             print(m .. " unwhitelisted")
  878.             table.remove(topkek.banmgr.whitelist, x)
  879.             if game:GetService('Players'):FindFirstChild(p) then
  880.                 topkek.banmgr.executeKick(game:GetService('Players')[p])
  881.             end
  882.         end
  883.     end
  884. end
  885. function topkek.banmgr.plrWhitelisted(p)
  886.     for x, m in pairs(topkek.banmgr.whitelist) do
  887.         if m == p.Name then
  888.             return true
  889.         end
  890.     end
  891.     return false
  892. end
  893. function topkek.banmgr.makePrivate()
  894.     topkek.banmgr.isPrivate = true
  895.     for i, v in pairs(game:GetService('Players'):GetPlayers()) do
  896.         if not topkek.banmgr.plrWhitelisted(v) and v ~= topkek.lplr then
  897.             spawn(function()
  898.                 topkek.banmgr.executeKick(v)
  899.             end)
  900.         end
  901.     end
  902. end
  903. function topkek.banmgr.unprivate()
  904.     topkek.banmgr.isPrivate = false
  905. end
  906. function topkek.banmgr.init()
  907.     topkek.banmgr.loadFromFile()
  908.     game:GetService('Players').PlayerAdded:connect(function(p)
  909.         if topkek.banmgr.plrBanned(p) or (topkek.banmgr.isPrivate and not topkek.banmgr.plrWhitelisted(p)) then
  910.             print("Player " .. p.Name .. " is banned (or private on)! Kicking now.")
  911.             topkek.banmgr.executeKick(p)
  912.         end
  913.     end)
  914. end
  915. --// settings //--
  916. topkek.settings = {}
  917. topkek.settingsTable = {}
  918. function topkek.settings.write()
  919.     --writefile("testplzignore.lua", "", game:GetService('HttpService'):JSONEncode(topkek.settingsTable))
  920. end
  921. function topkek.settings.get()
  922. if game.Players.LocalPlayer.Character then
  923.         print("No settings! Making new ...")
  924.         topkek.settingsTable = {
  925.             ['Bans'] = {
  926.                
  927.             },
  928.             ['Themes'] = {
  929.                 {Primary = {0,0,0}, Secondary = {0,0,0}, Tertiary = {0,0,0}}
  930.             };
  931.         }
  932.         topkek.settings.write()
  933.         return topkek.settingsTable
  934.     else
  935.         local lset = game:GetService('HttpService'):JSONDecode(set)
  936.         topkek.settingsTable = lset
  937.         return lset
  938. end
  939. end
  940. --// shortcuts //--
  941. tk = {}
  942. tk.ob = topkek.tools.util.Object
  943. tk.dp = topkek.tools.util.doPlayers
  944. tk.rcm = topkek.tools.util.recurseRemove
  945. tk.rcs = topkek.tools.util.recurseSet
  946. tk.rcf = topkek.tools.util.recurseFunc
  947. tk.rco = topkek.tools.util.recurseSetObj
  948. tk.play = topkek.tools.util.play
  949. tk.gt = topkek.tools.util.getTorso
  950. --// gui //--
  951. -- copying this from topkek3.0 because i'm
  952. -- too lazy to rewrite my lib
  953. topkek.tools.gui.seperation = 12
  954. function topkek.tools.gui:addLeftIcon(parent, img, sz)
  955.     topkek.tools.util.Object('ImageLabel', {
  956.         Parent = parent;
  957.         BackgroundTransparency = 1;
  958.         Position = UDim2.new(0, 2, 0, 2);
  959.         Size = UDim2.new(0, sz, 0, sz);
  960.         Image = img;
  961.     })
  962. end
  963. function topkek.tools.gui:makeContainer(n)
  964.     local temp = topkek.template:Clone()
  965.     temp.Name = n
  966.     temp.Parent = topkek.holder
  967.     temp.Container.Visible = false
  968. end
  969. function topkek.tools.gui:hookContainer(o, ncan, sepr, stt)
  970.     if not o:IsA("ScrollingFrame") and (not ncan) then
  971.         return nil
  972.     elseif o:IsA("ScrollingFrame") then
  973.         o.CanvasSize = UDim2.new(0, 0, 0, 0)
  974.     end
  975.    
  976.     local self = {}
  977.     self.main = o
  978.     self.drawX = 0
  979.     self.drawY = stt or topkek.tools.gui.seperation/2
  980.     self.drawHeight = 0
  981.     self.sepr = sepr or topkek.tools.gui.seperation
  982.    
  983.     function self:drawButton(sz, txt, func, ysz, cbgd)
  984.         local xposOffset = 0
  985.         local xposScale = self.drawX
  986.         local xszOffset = 0
  987.         local xszScale = sz
  988.         if not (self.drawX == 0)  then
  989.             xszOffset = -5
  990.             if sz + self.drawX > 0.998 then
  991.                 xszOffset = -10
  992.             end
  993.         elseif sz == 1 then
  994.             local bzz = 4
  995.             if ncan then
  996.                 bzz = 0
  997.             end
  998.             xszOffset = -(self.sepr) - bzz
  999.             xposOffset = self.sepr/2
  1000.         else
  1001.             xszOffset = -4 + -(self.sepr/2)
  1002.             xposOffset = self.sepr/2
  1003.         end
  1004.         if not ysz then ysz = 20 end
  1005.         local obj = topkek.tools.util.Object("TextButton", {
  1006.             Parent = self.main;
  1007.             BackgroundColor3 = cbgd or Color3.new(163/255, 57/255, 57/255);
  1008.             BorderSizePixel = 0;
  1009.             Position = UDim2.new(xposScale, xposOffset, 0, self.drawY);
  1010.             Size = UDim2.new(xszScale, xszOffset, 0, ysz);
  1011.             Font = 'SourceSans';
  1012.             FontSize = 'Size14';
  1013.             Text = txt;
  1014.             TextSize = 14;
  1015.             TextColor3 = Color3.new(199/255, 199/255, 199/255);
  1016.         })
  1017.         obj.MouseButton1Down:connect(function()
  1018.             spawn(func)
  1019.         end)
  1020.         if ysz > self.drawHeight then
  1021.             self.drawHeight = ysz
  1022.         end
  1023.         self.drawX = self.drawX + sz
  1024.         if self.drawX > 0.998 then
  1025.             self.drawY = self.drawY + 3 + self.drawHeight
  1026.             self.drawX = 0
  1027.             self.drawHeight = 0
  1028.             if (not ncan) then
  1029.                 self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1030.             end
  1031.         end
  1032.         return obj
  1033.     end
  1034.    
  1035.     function self:GetChildren()
  1036.         return self.main:GetChildren()
  1037.     end
  1038.    
  1039.     function self:getDrawY()
  1040.         return self.drawY
  1041.     end
  1042.    
  1043.     function self:setDrawY(y)
  1044.         self.drawY = y
  1045.     end
  1046.    
  1047.     function self:drawTextBox(sz, txt, ysz, cbgd)
  1048.         local xposOffset = 0
  1049.         local xposScale = self.drawX
  1050.         local xszOffset = 0
  1051.         local xszScale = sz
  1052.         if not (self.drawX == 0)  then
  1053.             xszOffset = -5
  1054.             if sz + self.drawX > 0.998 then
  1055.                 xszOffset = -10
  1056.             end
  1057.         elseif sz == 1 then
  1058.             xszOffset = -(self.sepr) - 5
  1059.             xposOffset = self.sepr/2
  1060.         else
  1061.             xszOffset = -4 + -(self.sepr/2)
  1062.             xposOffset = self.sepr/2
  1063.         end
  1064.         if not ysz then ysz = 20 end
  1065.         local obj = topkek.tools.util.Object("TextBox", {
  1066.             Parent = self.main;
  1067.             BackgroundColor3 = cbgd or color3(153, 52, 52);
  1068.             BorderSizePixel = 0;
  1069.             Position = UDim2.new(xposScale, xposOffset, 0, self.drawY);
  1070.             Size = UDim2.new(xszScale, xszOffset, 0, ysz);
  1071.             Font = 'SourceSans';
  1072.             FontSize = 'Size14';
  1073.             Text = txt;
  1074.             TextSize = 14;
  1075.             TextColor3 = Color3.new(199/255, 199/255, 199/255);
  1076.         })
  1077.         if ysz > self.drawHeight then
  1078.             self.drawHeight = ysz
  1079.         end
  1080.         self.drawX = self.drawX + sz
  1081.         if self.drawX > 0.998 then
  1082.             self.drawY = self.drawY + 3 + self.drawHeight
  1083.             self.drawX = 0
  1084.             self.drawHeight = 0
  1085.             self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1086.         end
  1087.         return obj
  1088.     end
  1089.    
  1090.     function self:drawImage(sz, img, ysz)
  1091.         local xposOffset = 0
  1092.         local xposScale = self.drawX
  1093.         local xszOffset = 0
  1094.         local xszScale = sz
  1095.         if not (self.drawX == 0)  then
  1096.             xszOffset = -5
  1097.             if sz + self.drawX > 0.998 then
  1098.                 xszOffset = -12
  1099.             end
  1100.         elseif sz == 1 then
  1101.             xszOffset = -(self.sepr) - 5
  1102.             xposOffset = self.sepr/2
  1103.         else
  1104.             xszOffset = -5 + -(self.sepr/2)
  1105.             xposOffset = self.sepr/2
  1106.         end
  1107.         if not ysz then ysz = 20 end
  1108.         local obj = topkek.tools.util.Object("ImageLabel", {
  1109.             Parent = self.main;
  1110.             BackgroundTransparency = 1;
  1111.             BorderColor3 = Color3.new(27, 42, 53);
  1112.             BorderSizePixel = 0;
  1113.             Position = UDim2.new(xposScale, xposOffset, 0, self.drawY);
  1114.             Size = UDim2.new(xszScale, xszOffset, 0, ysz);
  1115.             Image = img;
  1116.         })
  1117.         if ysz > self.drawHeight then
  1118.             self.drawHeight = ysz
  1119.         end
  1120.         self.drawX = self.drawX + sz
  1121.         if self.drawX > 0.998 then
  1122.             self.drawY = self.drawY + 3 + self.drawHeight
  1123.             self.drawX = 0
  1124.             self.drawHeight = 0
  1125.             if (not ncan) then
  1126.                 self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1127.             end
  1128.         end
  1129.         return obj
  1130.     end
  1131.    
  1132.     function self:drawText(sz, txt, ysz)
  1133.         local xposOffset = 0
  1134.         local xposScale = self.drawX
  1135.         local xszOffset = 0
  1136.         local xszScale = sz
  1137.         if not (self.drawX == 0)  then
  1138.             xszOffset = -5
  1139.             if sz + self.drawX > 0.998 then
  1140.                 xszOffset = -10
  1141.             end
  1142.         elseif sz == 1 then
  1143.             local bzz = 5
  1144.             if ncan then
  1145.                 bzz = 0
  1146.             end
  1147.             xszOffset = -(self.sepr) - bzz
  1148.             xposOffset = self.sepr/2
  1149.         else
  1150.             xszOffset = -4 + -(self.sepr/2)
  1151.             xposOffset = self.sepr/2
  1152.         end
  1153.         if not ysz then ysz = 20 end
  1154.         local obj = topkek.tools.util.Object("TextLabel", {
  1155.             Parent = self.main;
  1156.             BackgroundColor3 = Color3.new(148/255, 51/255, 51/255);
  1157.             BorderSizePixel = 0;
  1158.             Position = UDim2.new(xposScale, xposOffset, 0, self.drawY);
  1159.             Size = UDim2.new(xszScale, xszOffset, 0, ysz);
  1160.             Font = 'SourceSans';
  1161.             FontSize = 'Size14';
  1162.             Text = txt;
  1163.             TextSize = 14;
  1164.             TextColor3 = Color3.new(199/255, 199/255, 199/255);
  1165.  
  1166.         })
  1167.         if ysz > self.drawHeight then
  1168.             self.drawHeight = ysz
  1169.         end
  1170.         self.drawX = self.drawX + sz
  1171.         if self.drawX > 0.998 then
  1172.             self.drawY = self.drawY + 3 + self.drawHeight
  1173.             self.drawX = 0
  1174.             self.drawHeight = 0
  1175.             if (not ncan) then
  1176.                 self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1177.             end
  1178.         end
  1179.         return obj
  1180.     end
  1181.    
  1182.    
  1183.     function self:drawScrollingContainer(ysz)
  1184.         local sz = UDim2.new(1, -(self.sepr/2) - 11, 0, ysz)
  1185.         local pos = UDim2.new(0, self.sepr/2, 0, self.drawY)
  1186.         local obj = topkek.tools.util.Object("ScrollingFrame", {
  1187.             Parent = self.main;
  1188.             BackgroundColor3 = color3(117, 42, 42);
  1189.             BorderSizePixel = 0;
  1190.             Position = pos;
  1191.             Size = sz;
  1192.             BottomImage = 'rbxassetid://368504177';
  1193.             MidImage = 'rbxassetid://368504177';
  1194.             TopImage = 'rbxassetid://368504177';
  1195.             ScrollBarThickness = 5;
  1196.         })
  1197.        
  1198.         self.drawY = self.drawY + 5 + ysz
  1199.         self.drawX = 0
  1200.         self.drawHeight = 0
  1201.         if (not ncan) then
  1202.             self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1203.         end
  1204.         return topkek.tools.gui:hookContainer(obj, false, 10, 3)
  1205.     end
  1206.    
  1207.     function self:drawContainer(xsz, ysz, xz, tz, sep)
  1208.         local sz = UDim2.new(xsz, -(self.sepr/2) - 11, 0, ysz)
  1209.         local pos = UDim2.new(tz or 0, self.sepr/2, 0, self.drawY)
  1210.         local obj = topkek.tools.util.Object("Frame", {
  1211.             Parent = self.main;
  1212.             BackgroundColor3 = color3(117, 42, 42);
  1213.             BorderSizePixel = 0;
  1214.             Position = pos;
  1215.             Size = sz;
  1216.         })
  1217.         if not xz then
  1218.             self.drawY = self.drawY + 5 + ysz
  1219.         end
  1220.         self.drawX = 0
  1221.         self.drawHeight = 0
  1222.         if (not ncan) then
  1223.             self.main.CanvasSize = UDim2.new(0, 0, 0, self.drawY + 5)
  1224.         end
  1225.         return topkek.tools.gui:hookContainer(obj, sep or 12, 5)
  1226.     end
  1227.    
  1228.     function self:addSpacing()
  1229.         self.drawY = self.drawY + 3
  1230.     end
  1231.    
  1232.     function self:center()
  1233.         local a,c,b=
  1234.             self.main.Position.X.Scale,
  1235.                 self.main.Position.X.Offset,self.main.Size.Y.Offset
  1236.         self.main.Position=UDim2.new(a,c+2, 0.5, -(b/2))
  1237.     end
  1238.    
  1239.     return self
  1240. end
  1241.  
  1242. --//anim//--
  1243. topkek.tools.animator.animateTo = function(source, dest)
  1244.     -- holder2holder:
  1245.     -- invis holder
  1246.     -- clone holder; vis
  1247.     -- move holder to right
  1248.     -- vis dest container
  1249.     -- tween clone holder left
  1250.     -- tween dest holder right
  1251.     print("nav",source,dest)
  1252.     topkek.holder.Visible = false
  1253.     local hclone = topkek.holder:Clone()
  1254.     hclone.Parent = topkek.center
  1255.     hclone.Name = 'animclone'
  1256.     hclone.Visible = true
  1257.     topkek.holder.Position = UDim2.new(-1, 0, 0, 30)
  1258.     source.Visible = false
  1259.     dest.Visible = true
  1260.     dest.Container.Visible = true
  1261.     dest.Container.ZIndex = 1
  1262.     dest.ZIndex = 1
  1263.     topkek.holder.Visible = true
  1264.     topkek.holder:TweenPosition(UDim2.new(0, 150, 0, 30), "Out", "Quad", 0.3)
  1265.     hclone:TweenPosition(UDim2.new(1, 0, 0, 30), "Out", "Quad", 0.3)
  1266.     wait(0.3)
  1267. end
  1268. topkek.tools.animator.initialAnimation = function()
  1269.     -- initanim:
  1270.     -- join both composites
  1271.     -- delete composites; vis solid
  1272.     -- tween solid to nav topbar
  1273.     -- copy topbar plrname; move outside region
  1274.     -- tween in clone topbar
  1275.     -- delete clone and solid; vis topbar
  1276.     -- tween down topbar
  1277.     -- tween holder out
  1278.     local function abspos(x)
  1279.         return UDim2.new(0, x.AbsolutePosition.X, 0, x.AbsolutePosition.Y)
  1280.     end
  1281.     local function abssz(x)
  1282.         return UDim2.new(0, x.AbsoluteSize.X, 0, x.AbsoluteSize.Y)
  1283.     end
  1284.     local holder = topkek.holder
  1285.     local nav = topkek.navigator
  1286.     local topnav = nav.Topbar
  1287.     local topbar = topkek.topbar
  1288.     local pname = topbar.PlayerName:Clone()
  1289.     local solid = topkek.gui.Solid
  1290.     topkek.center.Size = UDim2.new(0, 150, 0, 30)
  1291.     topkek.gui.Composite1:TweenPosition(UDim2.new(0.5, -50, 0.5, -50), 'Out', 'Quad', 0.5)
  1292.     topkek.gui.Composite2:TweenPosition(UDim2.new(0.5, 0, 0.5, -50), 'Out', 'Quad', 0.5)
  1293.     wait(0.52)
  1294.     solid.Visible = true
  1295.     topkek.gui.Composite1:Destroy()
  1296.     topkek.gui.Composite2:Destroy()
  1297.     wait(3)
  1298.     solid.Label:TweenPosition(UDim2.new(0, 0, 1.5, 0), 'Out', 'Quad', 0.5)
  1299.     solid:TweenSizeAndPosition(abssz(topnav), abspos(topnav), 'Out', 'Linear', 0.6)
  1300.     wait(0.52)
  1301.     solid.Label:Destroy()
  1302.     wait(0.12)
  1303.     topkek.center.Visible = true
  1304.     topnav.Visible = true
  1305.     solid:Destroy()
  1306.     pname.Position = UDim2.new(0, -170, 0, 0)
  1307.     pname.Parent = topnav
  1308.     pname.Visible = true
  1309.     pname:TweenPosition(UDim2.new(0, 10, 0, 0), 'Out', 'Quad', 0.2)
  1310.     wait(0.25)
  1311.     topkek.center:TweenSize(UDim2.new(0, 150, 0, 395), 'Out', 'Quad', 0.3)
  1312.     spawn(topkek.navigation.buildNavigator)
  1313.     wait(0.35)
  1314.     topkek.center:TweenSize(UDim2.new(0, 470, 0, 395), 'In', 'Quad', 0.3)
  1315.     wait(0.35)
  1316.     topbar.PlayerName.Visible = true
  1317.     pname:Destroy()
  1318.     AllowHovers = true
  1319. end
  1320. --//nav//--
  1321. topkek.navigation.currentContainer = topkek.tools.util.getContainer('Home')
  1322. topkek.navigation.windowState = 0
  1323. topkek.navigation.gotoContainer = function(cont)
  1324.     topkek.tools.animator.animateTo(topkek.navigation.currentContainer, cont)
  1325.     topkek.navigation.currentContainer = cont
  1326. end
  1327. topkek.navigation.buildNavigator = function()
  1328.     local nav = topkek.navigator
  1329.     local hook = topkek.tools.gui:hookContainer(nav.Scroll, false)
  1330.     local btns = {}
  1331.     for l, x in pairs(topkek.data.windows) do
  1332.         local container = topkek.tools.util.getContainer(x)
  1333.         local btn = hook:drawButton(1, x, function() topkek.navigation.gotoContainer(container) end, 25)
  1334.         local ZPos = btn.Position
  1335.         btn.Position = btn.Position - UDim2.new(0, 0, 0, 5)
  1336.         btn:TweenPosition(ZPos, 'Out', 'Bounce', 0.2)
  1337.         btn.LayoutOrder = l
  1338.         btn.ZIndex = 4
  1339.         local OPos = btn.Position
  1340.         btn.MouseEnter:connect(function()
  1341.             if AllowHovers == false then
  1342.                 return
  1343.             end
  1344.             for i, v in pairs(btns) do
  1345.                 if v[1] ~= btn then
  1346.                     v[1]:TweenPosition(v[2], 'Out', 'Quad', 0.1)
  1347.                 end
  1348.             end
  1349.             btn:TweenPosition(OPos + UDim2.new(0, 3, 0, 0), 'Out', 'Quad', 0.1)
  1350.         end)
  1351.         btn.MouseLeave:connect(function()
  1352.             btn:TweenPosition(OPos, 'Out', 'Quad', 0.1)
  1353.         end)
  1354.         table.insert(btns, {btn, OPos})
  1355.         wait() 
  1356.     end
  1357. end
  1358. topkek.navigation.buildTopbar = function()
  1359.     local top = topkek.topbar
  1360.     local FELabel = top.Controllers.IsFE
  1361.     top.PlayerName.Text = topkek.lplr.Name
  1362.     if game:GetService('Workspace').FilteringEnabled == true then
  1363.         FELabel.Text = "FE Game"
  1364.         FELabel.TextColor3 = BrickColor.new("Bright red").Color
  1365.     else
  1366.         FELabel.Text = "Not FE"
  1367.         FELabel.TextColor3 = BrickColor.new("Bright green").Color
  1368.     end
  1369.     top.Controllers.Hide.MouseButton1Down:connect(function()
  1370.         if topkek.navigation.windowState == 0 then
  1371.             topkek.navigation.windowState = 1
  1372.             topkek.center:TweenSize(UDim2.new(0, 470, 0, 30), 'Out', 'Quint', 0.2)
  1373.         else
  1374.             topkek.navigation.windowState = 0
  1375.             topkek.center:TweenSize(UDim2.new(0, 470, 0, 395), 'Out', 'Quint', 0.2)
  1376.         end
  1377.     end)   
  1378.     top.Controllers.Exit.MouseButton1Down:connect(function()
  1379.         topkek.center:TweenSize(UDim2.new(0, 470, 0, 30), 'Out', 'Quint', 0.3)
  1380.         wait(0.31)
  1381.         topkek.center:TweenSize(UDim2.new(0, 0, 0, 0), 'Out', 'Quint', 0.3)
  1382.         PlayerChatHook:disconnect()
  1383.     end)
  1384.    
  1385. end
  1386. topkek.navigation.initCommandBar = function()
  1387.     DistributedCmdBar, cmd = topkek.holder.Command, {}
  1388.     loadstring(game:GetObjects("rbxassetid://685510751")[1].Source)()
  1389.     DistributedCmdBar.FocusLost:connect(function(e)
  1390.         if e == true then
  1391.             cmd.commands.run(DistributedCmdBar.Text)
  1392.             DistributedCmdBar.Text = ''
  1393.         end
  1394.     end)
  1395.    
  1396.     PlayerChatHook = cmd.players.PlayerChatted:connect(function (_, plr, msg, _)
  1397.         if cmd.util.isadmin(plr.Name) then
  1398.             if msg:sub(1,1) == cmd.prefix or msg:sub(1,1) == cmd.hidden then
  1399.                 cmd.commands.run(msg:sub(2, #msg))
  1400.             end
  1401.         end
  1402.     end)
  1403. end
  1404. topkek.navigation.buildHomePage = function()
  1405.     local count = 0
  1406.     for _, _ in pairs(cmd.commands.store) do count = count + 1 end
  1407.     local hook = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Home').Container, true)
  1408.     hook:drawText(1, 'T0PK3K 4.0 ProtoSmasher Edition edited by bork')
  1409.     hook:drawText(1, 'Patch version 1.0.5')
  1410.     hook:drawText(1, 'Commandbase patch version 1.0.0')
  1411.     hook:drawText(1, 'Number of commands: ' .. tostring(count))
  1412.     local stime = hook:drawText(1, 'Server Time: 0')
  1413.     spawn(function()
  1414.         while true do
  1415.             stime.Text = 'Server Time: ' .. tostring(game:GetService('Workspace').DistributedGameTime)
  1416.             wait(0.5)
  1417.         end
  1418.     end)
  1419.     local ssz = hook:drawText(1, 'Server Size: 0')
  1420.     spawn(function()
  1421.         while true do
  1422.             ssz.Text = 'Server Size: ' .. tostring(game:GetService('Players').NumPlayers)
  1423.             wait(0.5)
  1424.         end
  1425.     end)
  1426.     local fe = game:GetService('Workspace').FilteringEnabled
  1427.     hook:drawText(1, 'FilteringEnabled: ' .. (fe and "YES" or "NO"))
  1428.     hook:drawText(1, 'PlaceId: ' .. tostring(game.PlaceId))
  1429.     hook:drawText(1, 'same', 55)
  1430. end
  1431. topkek.navigation.buildContainers = function()
  1432.     for _, v in pairs(topkek.data.windows) do
  1433.         topkek.tools.gui:makeContainer(v)
  1434.     end
  1435. end
  1436.  
  1437. topkek.navigation.initCommandBar()
  1438. topkek.navigation.buildContainers()
  1439. topkek.navigation.buildTopbar()
  1440. topkek.navigation.buildHomePage()
  1441. wait()
  1442.  
  1443.  
  1444. --// actual code below lole //--
  1445.  
  1446. --// PLAYERS //--
  1447. local plrwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Players').Container)
  1448. local search = plrwin:drawButton(1, '', function()end)
  1449. drop = GUI.DropDown.New(UDim2.new(0, 0, 0, 0), UDim2.new(1, 0, 1, 0), search, {'All'})
  1450. function fixPlayerDrop()
  1451.     local t = {'All'}
  1452.     for i, v in pairs(game.Players:GetPlayers()) do
  1453.         table.insert(t, v.Name)
  1454.     end
  1455.     drop.SetTable(t)
  1456. end
  1457. game.Players.PlayerAdded:connect(function()
  1458.     fixPlayerDrop()
  1459. end)
  1460. game.Players.PlayerRemoving:connect(function()
  1461.     fixPlayerDrop()
  1462. end)
  1463. plrFrame = plrwin:drawContainer(1, 100)
  1464. headshotContainer = plrFrame:drawContainer(0.4, 94, true)
  1465. headshotContainer:setDrawY(20)
  1466. headshot = headshotContainer:drawImage(1, "https://www.roblox.com/bust-thumbnail/image?userId=1&width=420&height=420&format=png", 74)
  1467. headshotContainer:setDrawY(0)
  1468. userNameText = headshotContainer:drawText(1, "[All]")
  1469. userNameText.ClipsDescendants = true
  1470. userNameText.Font = Enum.Font.SourceSansBold
  1471. infoContainer = plrFrame:drawContainer(0.5, 94, true, 0.5)
  1472. infoContainer.BackgroundColor3 = color3(108, 38, 38)
  1473. userIdText = infoContainer:drawText(1, "ID: 0")
  1474. userAgeText = infoContainer:drawText(1, "Age: 0")
  1475. userTeamText = infoContainer:drawText(1, "Team: Neutral")
  1476. cval = 'All'
  1477. fixPlayerDrop()
  1478.  
  1479. function updatePlayer(plri)
  1480.     local plr = game:GetService('Players'):FindFirstChild(plri)
  1481.     if not plr and plri ~= 'All' then
  1482.         print("Couldn't find player!")
  1483.         updatePlayer(topkek.lplr)
  1484.     else
  1485.         headshot.Image = "https://www.roblox.com/bust-thumbnail/image?userId=1&width=420&height=420&format=png"
  1486.         userNameText.Text = "[All]"
  1487.         userIdText.Text = 'ID: [multiple]'
  1488.         userAgeText.Text = 'Age: [multiple]'
  1489.         userTeamText.Text = 'Team: [multiple]'
  1490.         cval = 'All'
  1491.     end
  1492.     local team = plr.TeamColor
  1493.     if team == nil then
  1494.         team = 'Neutral'
  1495.     else
  1496.         team = tostring(team)
  1497.     end
  1498.     headshot.Image = "https://www.roblox.com/bust-thumbnail/image?userId=" .. tostring(plr.UserId) .. "&width=420&height=420&format=png"
  1499.     userNameText.Text = plr.Name
  1500.     userIdText.Text = 'ID: ' .. tostring(plr.UserId)
  1501.     userAgeText.Text = 'Age: ' .. tostring(plr.AccountAge)
  1502.     userTeamText.Text = 'Team: ' .. team
  1503.     cval = plr.Name
  1504.    
  1505. end
  1506. drop.Changed(updatePlayer)
  1507. --actual code ------__-
  1508. plrwin:addSpacing()
  1509. plrwin:drawButton(1/2, 'Kick', function()
  1510.     tk.dp(cval, function(p)
  1511.         topkek.banmgr.executeKick(p)
  1512.     end)
  1513. end)
  1514.  
  1515. plrwin:drawButton(1/2, 'Ban', function()
  1516.     tk.dp(cval, function(p)
  1517.         topkek.banmgr.addSoftBan(p)
  1518.     end)
  1519. end)
  1520. plrwin:drawButton(1/2,'Friendlag', function()
  1521.     tk.dp(cval, function(p)
  1522.         for i = 1, 10 do
  1523.             spawn(function()
  1524.                 while wait() do
  1525.                     game.Players.LocalPlayer:RequestFriendship(p)
  1526.                     game.Players.LocalPlayer:RevokeFriendship(p)
  1527.                 end
  1528.             end)
  1529.         end
  1530.     end)
  1531. end)
  1532. plrwin:drawButton(1/2, 'Hardban', function()
  1533.     tk.dp(cval, function(p)
  1534.         topkek.banmgr.addHardBan(p)
  1535.     end)
  1536. end)
  1537. plrwin:addSpacing()
  1538. plrwin:drawButton(1/2, 'Bring', function()
  1539.     tk.dp(cval, function(z)
  1540.         if z.Character then
  1541.             z.Character.HumanoidRootPart.CFrame =
  1542.                 game:service'Players'.LocalPlayer.Character.HumanoidRootPart.CFrame * CFrame.new(1,1,1)
  1543.         end
  1544.     end)
  1545. end)
  1546. plrwin:drawButton(1/2, 'Goto', function()
  1547.     tk.dp(cval, function(z)
  1548.         game:service'Players'.LocalPlayer.Character.HumanoidRootPart.CFrame =
  1549.             z.Character.HumanoidRootPart.CFrame * CFrame.new(1,1,1)
  1550.     end)
  1551. end)
  1552. plrwin:addSpacing()
  1553. plrwin:drawButton(1/3, 'Kill', function()
  1554.     tk.dp(cval, function(p)
  1555.         if p.Character and p.Character:FindFirstChild("Humanoid") then
  1556.             p.Character.Humanoid.Health = 0
  1557.         end
  1558.     end)
  1559. end)
  1560. plrwin:drawButton(1/3, 'Seizure', function()
  1561.     tk.dp(cval, function(p)
  1562.         if p.Character and p.Character:FindFirstChild("Humanoid") and tk.gt(p) then
  1563.             spawn(function()
  1564.                 p.Character.Humanoid.PlatformStand = true
  1565.                 tk.gt(p).CFrame = tk.gt(p).CFrame * CFrame.Angles(math.rad(90),0,0)
  1566.                 repeat
  1567.                     wait()
  1568.                     p.Character.Humanoid.PlatformStand = true
  1569.                     tk.gt(p).Velocity = Vector3.new(math.random(-10,10),-5,math.random(-10,10))
  1570.                     tk.gt(p).RotVelocity = Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
  1571.                 until not p.Character:FindFirstChild("Humanoid") or not tk.gt(p)
  1572.             end)
  1573.         end
  1574.     end)
  1575. end)
  1576. plrwin:drawButton(1/3, 'Stun', function()
  1577.     tk.dp(cval, function(p)
  1578.         if p.Character and p.Character:FindFirstChild("Humanoid") then
  1579.             p.Character.Humanoid.PlatformStand = true
  1580.             p.Character.Torso.CFrame = p.Character.Torso.CFrame * CFrame.Angles(math.rad(90),0,0)
  1581.         end
  1582.     end)
  1583. end)
  1584. plrwin:drawButton(1/3, 'Freeze', function()
  1585.     tk.dp(cval, function(p)
  1586.         if p.Character then
  1587.             tk.gt(p).Anchored = true
  1588.         end
  1589.     end)
  1590. end)
  1591. plrwin:drawButton(1/3, 'Thaw', function()
  1592.     tk.dp(cval, function(p)
  1593.         if p.Character then
  1594.             tk.gt(p).Anchored = false
  1595.         end
  1596.     end)
  1597. end)
  1598. plrwin:drawButton(1/3, 'Superslow', function()
  1599.     tk.dp(cval, function(p)
  1600.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1601.             p.Character.Humanoid.WalkSpeed = 1
  1602.         end
  1603.     end)
  1604. end)
  1605. plrwin:drawButton(1/3, 'Highjump', function()
  1606.     tk.dp(cval, function(p)
  1607.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1608.             p.Character.Humanoid.JumpPower = 125
  1609.         end
  1610.     end)
  1611. end)
  1612. plrwin:drawButton(1/3, 'God', function()
  1613.     tk.dp(cval, function(p)
  1614.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1615.             p.Character.Humanoid.MaxHealth = math.huge
  1616.             p.Character.Humanoid.Health = math.huge
  1617.         end
  1618.     end)
  1619. end)
  1620. plrwin:drawButton(1/3, 'Semigod', function()
  1621.     tk.dp(cval, function(p)
  1622.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1623.             p.Character.Humanoid.MaxHealth = 9e9
  1624.             p.Character.Humanoid.Health = 9e9
  1625.         end
  1626.     end)
  1627. end)
  1628. plrwin:drawButton(1/3, 'Fast', function()
  1629.     tk.dp(cval, function(p)
  1630.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1631.             p.Character.Humanoid.WalkSpeed = 50
  1632.         end
  1633.     end)
  1634. end)
  1635. Follow = false;
  1636. plrwin:drawButton(1/3, 'Annoy', function()
  1637.     tk.dp(cval, function(p)
  1638.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1639.             if Follow == true then
  1640.                 Follow = false; return
  1641.             else Follow = true end
  1642.             while Follow == true do
  1643.                 game:service'Players'.LocalPlayer.Character.HumanoidRootPart.CFrame=
  1644.                     p.Character.HumanoidRootPart.CFrame
  1645.                 wait()
  1646.             end
  1647.         end
  1648.     end)
  1649. end)
  1650. plrwin:drawButton(1/3, 'Freefall', function()
  1651.     tk.dp(cval, function(p)
  1652.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1653.             p.Character.HumanoidRootPart.CFrame = p.Character.HumanoidRootPart.CFrame * CFrame.new(0, 10000, 0)    
  1654.         end
  1655.     end)
  1656. end)
  1657. plrwin:drawButton(1/3, 'Destroy', function()
  1658.     tk.dp(cval, function(p)
  1659.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1660.             p.Character.Humanoid:Destroy()
  1661.         end
  1662.     end)
  1663. end)
  1664. plrwin:drawButton(1/3, 'Fix', function()
  1665.     tk.dp(cval, function(p)
  1666.         if p.Character and p.Character:FindFirstChild('Humanoid') then
  1667.             p.Character.Humanoid.Health = 100
  1668.             p.Character.Humanoid.MaxHealth = 100
  1669.             p.Character.Humanoid.JumpPower = 100
  1670.             p.Character.Humanoid.WalkSpeed = 16
  1671.             p.Character.Humanoid.PlatformStand = false
  1672.             p.Character.Humanoid.Jump = true
  1673.         end
  1674.     end)
  1675. end)
  1676. plrwin:drawButton(1/3, 'Respawn', function()
  1677.     tk.dp(cval, function(p)
  1678.         if p.Character then
  1679.             local a1 = Instance.new("Model", game:service'Workspace')
  1680.             local a2 = Instance.new("Part", game:service'Workspace')
  1681.             a2.CanCollide = true
  1682.             a2.Anchored = true
  1683.             a2.CFrame = CFrame.new(10000, 10000, 10000)
  1684.             a2.Name = "Torso"
  1685.             local a3 = Instance.new("Humanoid", a1)
  1686.             a3.MaxHealth=100;a3.Health=100
  1687.             p.Character = a1
  1688.             a3.Health=0
  1689.         end
  1690.     end)
  1691. end)
  1692. plrwin:addSpacing()
  1693. local nameInp
  1694. plrwin:drawButton(1/3, 'Name', function()
  1695.     tk.dp(cval, function(z)
  1696.         local Character = z.Character
  1697.         local newName = Instance.new("Model", z.Character)
  1698.         newName.Name = nameInp.Text
  1699.         local cl = Character:WaitForChild("Head"):Clone()
  1700.         cl.Parent = newName
  1701.         cl:WaitForChild("face"):Destroy()
  1702.         local hum = Instance.new("Humanoid", newName)
  1703.         hum.Name = "NameTag"
  1704.         hum.MaxHealth = 0
  1705.         hum.Health = 0
  1706.         local weld = Instance.new("Weld", cl)
  1707.         weld.Part0 = cl
  1708.         weld.Part1 = Character:WaitForChild("Head")
  1709.         Character:WaitForChild("Head").Transparency = 1
  1710.         wait(.5)
  1711.         cl.BrickColor = Character:WaitForChild("Head").BrickColor
  1712.     end)
  1713. end)
  1714. nameInp = plrwin:drawTextBox(2/3, '')
  1715. local chatInp
  1716. plrwin:drawButton(1/3, 'Chat', function()
  1717.     tk.dp(cval, function(z)
  1718.         game:GetService('Chat'):Chat(z.Charcter, chatInp.Text)
  1719.     end)
  1720. end)
  1721. chatInp = plrwin:drawTextBox(2/3, '')
  1722. local disgInp
  1723. plrwin:drawButton(1/3, 'Disguise', function()
  1724.     tk.dp(cval, function(p)
  1725.         local id = 0
  1726.         if tonumber(disgInp.Text) then
  1727.             id = tonumber(disgInp.Text)
  1728.         else
  1729.             id = game:GetService('Players'):GetUserIdFromNameAsync(disgInp.Text)
  1730.         end
  1731.         if p.Character:FindFirstChild("Humanoid") then
  1732.             p.Character.Humanoid.Health = 0
  1733.         end
  1734.         p.CharacterAppearance = 'https://assetgame.roblox.com/Asset/CharacterFetch.ashx?userId=' .. tostring(id)
  1735.     end)
  1736. end)
  1737. disgInp = plrwin:drawTextBox(2/3, 'ROBLOX')
  1738. plrwin:addSpacing()
  1739. clrR = plrwin:drawTextBox(1/3, '0')
  1740. clrG = plrwin:drawTextBox(1/3, '0')
  1741. clrB = plrwin:drawTextBox(1/3, '0')
  1742. function getColor()
  1743.     local r = tonumber(clrR.Text)
  1744.     local g = tonumber(clrG.Text)
  1745.     local b = tonumber(clrB.Text)
  1746.     if not (r and g and b) then return Color3.new(0,0,0) end
  1747.     return Color3.new(r/255, g/255, b/255)
  1748. end
  1749. plrwin:drawButton(1/3, 'Sparkles', function()
  1750.     tk.dp(cval, function(z)
  1751.         Instance.new("Sparkles", tk.gt(z)).SparkleColor = getColor()
  1752.     end)
  1753. end)
  1754. plrwin:drawButton(1/3, 'Smoke', function()
  1755.     tk.dp(cval, function(z)
  1756.         Instance.new("Smoke", tk.gt(z)).Color = getColor()
  1757.  
  1758.     end)
  1759. end)
  1760. plrwin:drawButton(1/3, 'Fire', function()
  1761.     tk.dp(cval, function(z)
  1762.         local fr = Instance.new("Fire", tk.gt(z))
  1763.         fr.Color = getColor()
  1764.         fr.Heat = 30
  1765.         fr.Size = 20
  1766.     end)
  1767. end)
  1768. plrwin:drawButton(1/3, 'Forcefield', function()
  1769.     tk.dp(cval, function(z)
  1770.         if z.Character then
  1771.             Instance.new("ForceField", z.Character)
  1772.         end
  1773.     end)
  1774. end)
  1775. plrwin:drawButton(1/3, 'Select', function()
  1776.     tk.dp(cval, function(z)
  1777.         if z.Character and tk.gt(z) then
  1778.             Instance.new("SelectionBox", tk.gt(z)).Adornee = tk.gt(z)
  1779.         end
  1780.     end)
  1781. end)
  1782. plrwin:drawButton(1/3, 'Sphere', function()
  1783.     tk.dp(cval, function(z)
  1784.         if z.Character and tk.gt(z) then
  1785.             Instance.new("SelectionSphere", tk.gt(z)).Adornee = tk.gt(z)
  1786.         end
  1787.     end)
  1788. end)
  1789. plrwin:drawButton(1/3, 'Fling', function()
  1790.     tk.dp(cval, function(z)
  1791.         spawn(function() --kohls admin commands lol
  1792.             if z.Character and tk.gt(z) then
  1793.                 local xran, zran
  1794.                 repeat xran = math.random(5555, 9999) until math.abs(xran) >= 5555
  1795.                 repeat zran = math.random(5555, 9999) until math.abs(zran) >= 5555
  1796.                 z.Character.Humanoid.Sit = true
  1797.                 tk.gt(z).Velocity = Vector3.new(0,0,0)
  1798.                 local frc = Instance.new("BodyForce", tk.gt(z))
  1799.                 frc.Name = "BFRC"
  1800.                 frc.force = Vector3.new(xran*4,9999*5,zran*4)
  1801.                 game:GetService("Debris"):AddItem(frc, 0.1)
  1802.             end
  1803.         end)
  1804.     end)
  1805. end)
  1806. plrwin:drawButton(1/3, 'Explode', function()
  1807.     tk.dp(cval, function(z)
  1808.         if z.Character and tk.gt(z) then
  1809.             local explosion = Instance.new("Explosion")
  1810.             explosion.Position = tk.gt(z).Position
  1811.             explosion.Parent = workspace
  1812.         end
  1813.     end)
  1814. end)
  1815. plrwin:drawButton(1/3, 'Nuke', function()
  1816.     tk.dp(cval, function(z)
  1817.         if z.Character and tk.gt(z) then
  1818.             local torso = tk.gt(z)
  1819.             local nuke = Instance.new("Part", game.Workspace)
  1820.             local opos = torso.CFrame
  1821.             nuke.BrickColor = BrickColor.new("Bright yellow")
  1822.             nuke.TopSurface = Enum.SurfaceType.Smooth
  1823.             nuke.BottomSurface = Enum.SurfaceType.Smooth
  1824.             nuke.Anchored = true
  1825.             nuke.CanCollide = false
  1826.             nuke.Shape = "Ball"            
  1827.             nuke.Transparency = 0.5
  1828.             nuke.CFrame = torso.CFrame     
  1829.             nuke.Size = Vector3.new(1, 1, 1)
  1830.             nuke.Touched:connect(function(p)
  1831.                 local expl = Instance.new("Explosion", p)
  1832.                 expl.BlastPressure = 50000
  1833.                 expl.BlastRadius = 50
  1834.                 expl.Position = p.Position
  1835.                 p.Material = Enum.Material.CorrodedMetal
  1836.                 p:BreakJoints()
  1837.             end)
  1838.             for i = 1, 150 do
  1839.                 nuke.Size = Vector3.new(i, i, i)
  1840.                 nuke.CFrame = opos
  1841.                 wait(0.08)
  1842.             end
  1843.             nuke:Destroy()
  1844.         end
  1845.     end)
  1846. end)
  1847. plrwin:drawButton(1/3, 'No Tools', function()
  1848.     tk.dp(cval, function(p)
  1849.         for _, t in pairs(p.Backpack:GetChildren()) do
  1850.             t:Destroy()
  1851.         end
  1852.     end)
  1853. end)
  1854. plrwin:drawButton(1/3, 'Take Tools', function()
  1855.     tk.dp(cval, function(p)
  1856.         for _, t in pairs(p.Backpack:GetChildren()) do
  1857.             t.Parent = game:service'Players'.LocalPlayer.Backpack
  1858.         end
  1859.     end)
  1860. end)
  1861. plrwin:drawButton(1/3, 'BTools', function()
  1862.     tk.dp(cval, function(p)
  1863.         local a = Instance.new("HopperBin")
  1864.         a.BinType = "GameTool"
  1865.         a.Parent = p.Backpack
  1866.         local a = Instance.new("HopperBin")
  1867.         a.BinType = "Clone"
  1868.         a.Parent = p.Backpack
  1869.         local a = Instance.new("HopperBin")
  1870.         a.BinType = "Hammer"
  1871.         a.Parent = p.Backpack
  1872.     end)
  1873. end)
  1874. plrwin:drawButton(1/3, 'Hotdog', function()
  1875.     tk.dp(cval, function(p)
  1876.         if p.Character and tk.gt(p) then
  1877.             topkek.tools.util.weenieHutJunior(p)
  1878.         end
  1879.     end)
  1880. end)
  1881. plrwin:drawButton(1/3, 'Quicksand', function()
  1882.     tk.dp(cval, function(z)
  1883.         if z.Character and z.Character:FindFirstChild("Humanoid") then
  1884.             local tor = tk.gt(z)
  1885.             local hole = Instance.new("Part", z.Character)
  1886.             hole.Anchored = true
  1887.             hole.Name = "Hole"
  1888.             hole.FormFactor = Enum.FormFactor.Custom
  1889.             hole.Size = Vector3.new(7, 1, 7)
  1890.             hole.CanCollide = false
  1891.             hole.CFrame = tor.CFrame * CFrame.new(0,-3.3,0)
  1892.             hole.BrickColor = BrickColor.new("Cool yellow")
  1893.             hole.Material = Enum.Material.Sand
  1894.             local hm = Instance.new("CylinderMesh", hole)
  1895.             tor.Anchored = true
  1896.             if z.Character:FindFirstChild("Humanoid") then
  1897.                 z.Character.Humanoid.Jump = true
  1898.             end
  1899.             for x,m in pairs(z.Character:GetChildren()) do
  1900.                 if m:IsA("BasePart") or m:IsA("MeshPart") then
  1901.                     m.CanCollide = false
  1902.                 end
  1903.             end
  1904.             for i=1,75 do
  1905.                 tor.CFrame=tor.CFrame*CFrame.new(0,-0.1,0)
  1906.                 wait(0.06)
  1907.             end
  1908.             tor.CFrame=tor.CFrame*CFrame.new(0,
  1909.                 -500,0
  1910.             )
  1911.             z.Character.Humanoid.Health = 0
  1912.         end
  1913.     end)
  1914. end)
  1915. plrwin:drawButton(1/3, 'Insane', function()
  1916.     tk.dp(cval, function(p)
  1917.         if p.Character and tk.gt(p) then
  1918.             for i,v in pairs(tk.gt(p):GetChildren()) do
  1919.                 if v:IsA("Motor6D") then
  1920.                     spawn(function()
  1921.                         while v do
  1922.                             v.C0=v.C0*CFrame.Angles(math.random(-180,180),math.random(-180,180),math.random(-180,180))
  1923.                             wait()
  1924.                         end
  1925.                     end)
  1926.                 end
  1927.             end
  1928.         end
  1929.     end)
  1930. end)
  1931. plrwin:drawButton(1/3, 'Invisible', function()
  1932.     tk.dp(cval, function(p)
  1933.         tk.rco(p.Character, 'BasePart', 'Transparency', 1)
  1934.         tk.rco(p.Character, 'MeshPart', 'Transparency', 1)
  1935.     end)
  1936. end)
  1937. plrwin:drawButton(1/3, 'Visible', function()
  1938.     tk.dp(cval, function(p)
  1939.         tk.rco(p.Character, 'BasePart', 'Transparency', 0)
  1940.         tk.rco(p.Character, 'MeshPart', 'Transparency', 0)
  1941.     end)
  1942. end)
  1943. plrwin:drawButton(1/3, 'Bighead', function()
  1944.     tk.dp(cval, function(z)
  1945.         if z.Character then
  1946.             if z.Character:FindFirstChild('Head') then
  1947.                 z.Character.Head.Mesh.Scale=Vector3.new(5,5,5)
  1948.             end
  1949.         end
  1950.     end)
  1951. end)
  1952. plrwin:drawButton(1/3, 'Goldify', function()
  1953.     tk.dp(cval, function(z)
  1954.         if z.Character then
  1955.             tk.rco(z.Character, 'BasePart', 'Material', 'Marble')
  1956.             tk.rco(z.Character, 'MeshPart', 'Material', 'Marble')
  1957.             tk.rco(z.Character, 'BasePart', 'BrickColor', BrickColor.new('Bright yellow'))
  1958.             tk.rco(z.Character, 'MeshPart', 'BrickColor', BrickColor.new('Bright yellow'))
  1959.         end
  1960.     end)
  1961. end)
  1962. plrwin:drawButton(1/3, 'Neon', function()
  1963.     tk.dp(cval, function(z)
  1964.         if z.Character then
  1965.             tk.rco(z.Character, 'BasePart', 'Material', 'Neon')
  1966.             tk.rco(z.Character, 'MeshPart', 'Material', 'Neon')
  1967.         end
  1968.     end)
  1969. end)
  1970. plrwin:drawButton(1/3, 'Shiny', function()
  1971.     tk.dp(cval, function(z)
  1972.         if z.Character then
  1973.             tk.rco(z.Character, 'BasePart', 'Reflectance', 1)
  1974.             tk.rcm(z.Character, 'MeshPart')
  1975.         end
  1976.     end)
  1977. end)
  1978. plrwin:drawButton(1/3, 'Shrek', function()
  1979.     tk.dp(cval, function(z)
  1980.         if z.Character then
  1981.             local pchar = z.Character
  1982.             for i,v in pairs(pchar:GetChildren()) do
  1983.                 if v:IsA("Hat") or v:IsA("Accessory") or v:IsA("CharacterMesh") or v:IsA("Shirt") or v:IsA("Pants") then
  1984.                     v:Destroy()
  1985.                 end
  1986.             end
  1987.             for i,v in pairs(pchar.Head:GetChildren()) do
  1988.                 if v:IsA("Decal") or v:IsA("SpecialMesh") then
  1989.                     v:Destroy()
  1990.                 end
  1991.             end
  1992.            
  1993.             local mesh = Instance.new("SpecialMesh", pchar.Head)
  1994.             mesh.MeshType = "FileMesh"
  1995.             pchar.Head.Mesh.MeshId = "http://www.roblox.com/asset/?id=19999257"
  1996.             pchar.Head.Mesh.Offset = Vector3.new(-0.1, 0.1, 0)
  1997.             pchar.Head.Mesh.TextureId = "http://www.roblox.com/asset/?id=156397869"
  1998.            
  1999.             local Shirt = Instance.new("Shirt", z.Character)
  2000.             local Pants = Instance.new("Pants", z.Character)
  2001.            
  2002.             Shirt.ShirtTemplate = "rbxassetid://133078194"
  2003.             Pants.PantsTemplate = "rbxassetid://133078204"
  2004.         end
  2005.     end)
  2006. end)
  2007. plrwin:drawButton(1/3, 'Duck', function()
  2008.     tk.dp(cval, function(z)
  2009.         if z.Character then
  2010.             local pchar = z.Character
  2011.             for i,v in pairs(pchar:GetChildren()) do
  2012.                 if v:IsA("Hat") or v:IsA("Accessory") then
  2013.                     v:Destroy()
  2014.                 end
  2015.             end
  2016.             local duck = Instance.new("SpecialMesh", z.Character.HumanoidRootPart)
  2017.             duck.MeshType = "FileMesh"
  2018.             duck.MeshId = "http://www.roblox.com/asset/?id=9419831"
  2019.             duck.TextureId = "http://www.roblox.com/asset/?id=9419827"
  2020.             duck.Scale = Vector3.new(5, 5, 5)
  2021.             tk.rco(z.Character, 'Instance', 'Transparency', 1)
  2022.             z.Character.HumanoidRootPart.Transparency = 0
  2023.         end
  2024.     end)
  2025. end)
  2026. plrwin:drawButton(1/3, 'Spheres', function()
  2027.     tk.dp(cval, function(z)
  2028.         if z.Character then
  2029.             tk.rco(z.Character, 'BasePart', 'Shape', 'Cylinder')
  2030.         end
  2031.     end)
  2032. end)
  2033. plrwin:drawButton(1/3, 'Big', function()
  2034.     tk.dp(cval, function(z)
  2035.         if z.Character then
  2036.             topkek.tools.util.scalePlayer(5, z)
  2037.         end
  2038.     end)
  2039. end)
  2040. plrwin:drawButton(1/3, 'Small', function()
  2041.     tk.dp(cval, function(z)
  2042.         if z.Character then
  2043.             topkek.tools.util.scalePlayer(5, z)
  2044.         end
  2045.     end)
  2046. end)
  2047. plrwin:drawButton(1/3, 'Giraffe', function()
  2048.     tk.dp(cval, function(z)
  2049.         if z.Character then
  2050.             local char=z.Character
  2051.             local h=char.Head
  2052.             local tor=char:FindFirstChild("Torso")
  2053.             if not tor then return end
  2054.             tor.Neck.C0=tor.Neck.C0*CFrame.new(0,0,5)
  2055.             local fn=Instance.new("Part",char)
  2056.             fn.Size=Vector3.new(1,5.5,1)
  2057.             fn.Name="FakeNeck"
  2058.             fn.Anchored=false
  2059.             fn.CanCollide=false
  2060.             if char:FindFirstChild("Body Colors") then
  2061.                 fn.BrickColor=char["Body Colors"].HeadColor
  2062.             end
  2063.             local cm=Instance.new("CylinderMesh",fn)
  2064.             local we=Instance.new("Weld",h)
  2065.             we.Part0=h
  2066.             we.Part1=fn
  2067.             we.C1=we.C1*CFrame.new(0,2.6,0)
  2068.         end
  2069.     end)
  2070. end)
  2071. plrwin:drawButton(1/3, 'Dab', function()
  2072.     tk.dp(cval, function(z)
  2073.         if z.Character and z.Character:FindFirstChild("Torso") then
  2074.             local chr = z.Character
  2075.             chr.Animate.Disabled = true
  2076.             chr.Torso["Left Shoulder"].C1 = CFrame.new(0, 0.699999988, 0, 0.939692616, 0, -0.342020124, -0.330366075, -0.258819044, -0.907673359, -0.0885213241, 0.965925813, -0.243210346)
  2077.             chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.600000024, 0.5, -0.200000003, 0.664462984, 0.241844743, 0.707106769, -0.664462984, -0.241844788, 0.707106769, 0.342020154, -0.939692616, -3.09086197e-008)
  2078.             chr.Torso["Neck"].C1 = CFrame.new(0, -0.600000024, 0, -0.866025388, 0.5, 0, -0.171010137, -0.29619807, 0.939692616, 0.469846278, 0.813797653, 0.342020124)
  2079.         end
  2080.     end)
  2081. end)
  2082. plrwin:drawButton(1/3, 'Force Follow', function()
  2083.     tk.dp(cval, function(z)
  2084.         game:GetService("RunService"):BindToRenderStep("_", 0, function()
  2085.             z.Character.Humanoid:MoveTo(topkek.lplr.Character.Head.Position)
  2086.         end)
  2087.     end)
  2088. end)
  2089. plrwin:drawButton(1/3, 'Camlock', function()
  2090.     tk.dp(cval, function(z)
  2091.         z.CameraMode = "LockFirstPerson"
  2092.     end)
  2093. end)
  2094. --// SERVER //--
  2095. local servwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Server').Container)
  2096. local detailWin = servwin:drawContainer(1, 100, nil, nil, 18)
  2097. detailWin:drawText(1, 'Job ID: ' .. (game.JobId and (game.JobId ~= "") or "???"))
  2098. detailWin:drawText(1, 'Game Name: ' .. game:service'MarketplaceService':GetProductInfo(game.PlaceId).Name)
  2099. detailWin:drawText(1, 'Creator Name: ' .. game:GetService('Players'):GetNameFromUserIdAsync(game.CreatorId))
  2100. servwin:drawButton(1/2, 'Shutdown', function()
  2101.     workspace.Gravity = 0/0
  2102. end)
  2103. servwin:drawButton(1/2, 'Clear', function()
  2104.     for i,v in pairs(game:service'Workspace':GetChildren()) do
  2105.         if (not v:IsA("Terrain"))and(v.Name~="Camera") then
  2106.             v:Destroy()
  2107.         end
  2108.     end
  2109. end)
  2110. servwin:drawButton(1/2, 'Baseplate', function()
  2111.     for X = -2500, 2500, 512 do
  2112.         for Z = -2500, 2500, 512 do
  2113.             local P = Instance.new("Part")
  2114.             P.Anchored = true
  2115.             P.Locked = true
  2116.             P.Size = Vector3.new(512,3,512)
  2117.             P.CFrame = CFrame.new(X,0,Z)
  2118.             P.BrickColor = BrickColor.Green()
  2119.             P.Parent = game:service'Workspace'
  2120.         end
  2121.     end
  2122. end)
  2123. servwin:drawButton(1/2, 'Reset', function()
  2124.     for i,v in pairs(game:service'Workspace':GetChildren()) do
  2125.         if (not v:IsA("Terrain"))and(v.Name~="Camera") then
  2126.             v:Destroy()
  2127.         end
  2128.     end
  2129.     for X = -2500, 2500, 512 do
  2130.         for Z = -2500, 2500, 512 do
  2131.             local P = Instance.new("Part")
  2132.             P.Anchored = true
  2133.             P.Locked = true
  2134.             P.Size = Vector3.new(512,3,512)
  2135.             P.CFrame = CFrame.new(X,0,Z)
  2136.             P.BrickColor = BrickColor.Green()
  2137.             P.Parent = game:service'Workspace'
  2138.         end
  2139.     end
  2140.     for i, v in pairs(game:GetService('Players'):GetPlayers()) do
  2141.         local a1 = Instance.new("Model", game:service'Workspace')
  2142.         local a2 = Instance.new("Part", game:service'Workspace')
  2143.         a2.CanCollide = true
  2144.         a2.Anchored = true
  2145.         a2.CFrame = CFrame.new(10000, 10000, 10000)
  2146.         a2.Name = "Torso"
  2147.         local a3 = Instance.new("Humanoid", a1)
  2148.         a3.MaxHealth=100;a3.Health=100
  2149.         v.Character = a1
  2150.         a3.Health=0
  2151.     end
  2152. end)
  2153. servwin:drawButton(1, 'Remove Sounds', function()
  2154.     tk.rcm(game, 'Sound')
  2155. end)
  2156. servwin:addSpacing()
  2157. servwin:drawButton(1, 'Break All', function()
  2158.     workspace:BreakJoints(workspace:GetChildren())
  2159. end)
  2160. local gravInp
  2161. servwin:drawButton(1/3, 'Gravity', function()
  2162.     if not tonumber(gravInp.Text) then return end
  2163.     workspace.Gravity = tonumber(gravInp.Text)
  2164. end)
  2165. gravInp = servwin:drawTextBox(2/3, '')
  2166. servwin:addSpacing()
  2167. servwin:drawButton(1, 'Reset Lighting', function()
  2168.     local l = game:service'Lighting'
  2169.     l.Ambient = Color3.new(0, 0, 0)
  2170.     l.Brightness = 1
  2171.     l.GlobalShadows = true
  2172.     l.Outlines = true
  2173.     l.FogEnd = 100000
  2174.     l.FogStart = 0
  2175.     l:SetMinutesAfterMidnight(12*60)
  2176. end)
  2177. local brightInp
  2178. servwin:drawButton(1/3, 'Brightness', function()
  2179.     if not tonumber(brightInp.Text) then return end
  2180.     game:GetService('Lighting').Brightness = tonumber(brightInp.Text)
  2181. end)
  2182. brightInp = servwin:drawTextBox(2/3, '100')
  2183. local fogInp
  2184. servwin:drawButton(1/3, 'Fog', function()
  2185.     if not tonumber(fogInp.Text) then return end
  2186.     game:GetService('Lighting').FogEnd = tonumber(fogInp.Text)
  2187. end)
  2188. fogInp = servwin:drawTextBox(2/3, '0')
  2189. local timeInp
  2190. servwin:drawButton(1/3, 'Hour', function()
  2191.     if not tonumber(timeInp.Text) then return end
  2192.     game:GetService('Lighting'):SetMinutesAfterMidnight(60*tonumber(timeInp.Text))
  2193. end)
  2194. timeInp = servwin:drawTextBox(2/3, '12')
  2195. servwin:addSpacing()
  2196. -- private server crap
  2197. local privateToggle
  2198. local privStatus = false
  2199. privateToggle = servwin:drawButton(1, 'Private Server OFF', function()
  2200.     if privStatus == false then
  2201.         privStatus = true
  2202.         privateToggle.Text = 'Private Server ON'
  2203.         topkek.banmgr.makePrivate()
  2204.     else
  2205.         privateToggle.Text = 'Private Server OFF'
  2206.         topkek.banmgr.unprivate()
  2207.     end
  2208. end)
  2209. servwin:addSpacing()
  2210. servwin:drawText(1, 'Whitelist')
  2211. local plrAddInp
  2212. servwin:drawButton(1/3, 'Add', function()
  2213.     topkek.banmgr.doWhitelist(plrAddInp.Text)
  2214.     ReorderWL()
  2215. end)
  2216. plrAddInp = servwin:drawTextBox(2/3, '')
  2217. wlCont = servwin:drawScrollingContainer(100)
  2218. function ReorderWL()
  2219.     local wl = topkek.banmgr.whitelist
  2220.     for i,v in pairs(wlCont:GetChildren()) do
  2221.         v:Destroy()
  2222.     end
  2223.     wlCont:setDrawY(3)
  2224.     for i,v in pairs(wl) do
  2225.         wlCont:drawText(2/3, v)
  2226.         wlCont:drawButton(1/3, 'Remove', function()
  2227.             topkek.banmgr.unwhitelist(v)
  2228.             ReorderWL()
  2229.         end)
  2230.     end
  2231. end
  2232. ReorderWL()
  2233. --// LOCALPLAYER //--
  2234. local lpwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('LocalPlayer').Container)
  2235. lpwin:drawButton(1, 'Reset Camera', function()
  2236.     game.Workspace.CurrentCamera:remove()
  2237.     wait(.1)
  2238.     game.Workspace.CurrentCamera.CameraSubject = topkek.lplr.Character.Humanoid or
  2239.         game.Workspace[topkek.lplr.Name].Humanoid
  2240.     game.Workspace.CurrentCamera.CameraType = "Custom"
  2241. end)
  2242. lpwin:drawButton(1, 'Respawn', function()
  2243.     local a1 = Instance.new("Model", game:service'Workspace')
  2244.     local a2 = Instance.new("Part", game:service'Workspace')
  2245.     a2.CanCollide = true
  2246.     a2.Anchored = true
  2247.     a2.CFrame = CFrame.new(10000, 10000, 10000)
  2248.     a2.Name = "Torso"
  2249.     local a3 = Instance.new("Humanoid", a1)
  2250.     a3.MaxHealth=100;a3.Health=100
  2251.     topkek.lplr.Character = a1
  2252.     a3.Health=0
  2253. end)
  2254. lpwin:drawButton(1, 'Rejoin', function()
  2255.     game:GetService('TeleportService'):Teleport(game.PlaceId)
  2256. end)
  2257. lpwin:addSpacing()
  2258. lpwin:drawButton(1/2, 'God', function()
  2259.     if topkek.lplr.Character:FindFirstChild("Humanoid") then
  2260.         topkek.lplr.Character.Humanoid.MaxHealth = math.huge
  2261.         topkek.lplr.Character.Humanoid.Health = math.huge
  2262.     end
  2263. end)
  2264. lpwin:drawButton(1/2, 'Semigod', function()
  2265.     if topkek.lplr.Character:FindFirstChild("Humanoid") then
  2266.         topkek.lplr.Character.Humanoid.MaxHealth = 9e9
  2267.         topkek.lplr.Character.Humanoid.Health = 9e9
  2268.     end
  2269. end)
  2270. Loopgod = false
  2271. lpwin:drawButton(1, 'Loopgod', function()
  2272.     if Loopgod == false then
  2273.         Loopgod = true
  2274.         spawn(function()
  2275.             repeat
  2276.                 topkek.lplr.Character.Humanoid.MaxHealth = math.huge
  2277.                 topkek.lplr.Character.Humanoid.Health = math.huge
  2278.                 wait()
  2279.             until Loopgod == false
  2280.         end)   
  2281.     else
  2282.         Loopgod = false
  2283.     end
  2284. end)
  2285. lpwin:addSpacing()
  2286. plrwin:addSpacing()
  2287. local Lev, Clip, Fly
  2288. lpwin:drawButton(1/2, 'Levitate', function()
  2289.     if Lev == true then
  2290.         Lev = false
  2291.         return
  2292.     end
  2293.     Lev = true
  2294.     repeat
  2295.         topkek.lplr.Character.Humanoid:ChangeState(10)
  2296.         wait(0)
  2297.     until Lev == false
  2298. end)
  2299. lpwin:drawButton(1/2, 'Noclip', function()
  2300.     if Clip == true then
  2301.         Clip = false
  2302.         return
  2303.     end
  2304.     Clip = true
  2305.     game:GetService("RunService").Stepped:connect(function()
  2306.         tk.gt(topkek.lplr).CanCollide = not Clip
  2307.         topkek.lplr.Character.Head.CanCollide = not Clip
  2308.         topkek.lplr.Character.HumanoidRootPart.CanCollide = not Clip
  2309.         if topkek.lplr.Character.UpperTorso then
  2310.             topkek.lplr.Character.LowerTorso.CanCollide = not Clip
  2311.         end
  2312.     end)
  2313.     topkek.lplr.Character.HumanoidRootPart.Changed:connect(function()
  2314.         tk.gt(topkek.lplr).CanCollide = not Clip
  2315.         topkek.lplr.Character.Head.CanCollide = not Clip
  2316.         topkek.lplr.Character.HumanoidRootPart.CanCollide = not Clip
  2317.         if topkek.lplr.Character.UpperTorso then
  2318.             topkek.lplr.Character.LowerTorso.CanCollide = not Clip
  2319.         end
  2320.     end)
  2321. end)
  2322. lpwin:drawButton(1/2, 'Fly', function()
  2323.     if Fly == true then
  2324.         Fly = false
  2325.         return
  2326.     end
  2327.     Fly = true
  2328.   local mouse=game.Players.LocalPlayer:GetMouse''
  2329.   localplayer=game.Players.LocalPlayer
  2330.   game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart")
  2331.   local torso = game.Players.LocalPlayer.Character.HumanoidRootPart
  2332.   local speed=0
  2333.   local keys={a=false,d=false,w=false,s=false}
  2334.   local e1
  2335.   local e2
  2336.   local function start()
  2337.    local pos = Instance.new("BodyPosition",torso)
  2338.    local gyro = Instance.new("BodyGyro",torso)
  2339.    pos.Name="EPIXPOS"
  2340.    pos.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  2341.    pos.position = torso.Position
  2342.    gyro.maxTorque = Vector3.new(9e9, 9e9, 9e9)
  2343.    gyro.cframe = torso.CFrame
  2344.    repeat
  2345.     wait()
  2346.     localplayer.Character.Humanoid.PlatformStand=true
  2347.     local new=gyro.cframe - gyro.cframe.p + pos.position
  2348.     if not keys.w and not keys.s and not keys.a and not keys.d then
  2349.      speed=1
  2350.     end
  2351.     if keys.w then
  2352.      new = new + workspace.CurrentCamera.CoordinateFrame.lookVector * speed
  2353.      speed=speed+0.01
  2354.     end
  2355.     if keys.s then
  2356.      new = new - workspace.CurrentCamera.CoordinateFrame.lookVector * speed
  2357.      speed=speed+0.01
  2358.     end
  2359.     if keys.d then
  2360.      new = new * CFrame.new(speed,0,0)
  2361.      speed=speed+0.01
  2362.     end
  2363.     if keys.a then
  2364.      new = new * CFrame.new(-speed,0,0)
  2365.      speed=speed+0.01
  2366.     end
  2367.     if speed>5 then
  2368.      speed=5
  2369.     end
  2370.     pos.position=new.p
  2371.     if keys.w then
  2372.      gyro.cframe = workspace.CurrentCamera.CoordinateFrame*CFrame.Angles(-math.rad(speed*15),0,0)
  2373.     elseif keys.s then
  2374.      gyro.cframe = workspace.CurrentCamera.CoordinateFrame*CFrame.Angles(math.rad(speed*15),0,0)
  2375.     else
  2376.      gyro.cframe = workspace.CurrentCamera.CoordinateFrame
  2377.     end
  2378.    until not Fly
  2379.    if gyro then gyro:Destroy() end
  2380.    if pos then pos:Destroy() end
  2381.    flying=false
  2382.    localplayer.Character.Humanoid.PlatformStand=false
  2383.    speed=0
  2384.   end
  2385.   e1=mouse.KeyDown:connect(function(key)
  2386.    if not torso or not torso.Parent then flying=false e1:disconnect() e2:disconnect() return end
  2387.    if key=="w" then
  2388.     keys.w=true
  2389.    elseif key=="s" then
  2390.     keys.s=true
  2391.    elseif key=="a" then
  2392.     keys.a=true
  2393.    elseif key=="d" then
  2394.     keys.d=true
  2395.    end
  2396.   end)
  2397.   e2=mouse.KeyUp:connect(function(key)
  2398.    if key=="w" then
  2399.     keys.w=false
  2400.    elseif key=="s" then
  2401.     keys.s=false
  2402.    elseif key=="a" then
  2403.     keys.a=false
  2404.    elseif key=="d" then
  2405.     keys.d=false
  2406.    end
  2407.   end)
  2408.   start()
  2409. end)
  2410. lpwin:drawButton(1/2, 'Highjump', function()
  2411.     local thrust = Instance.new("BodyVelocity")
  2412.     game:GetService('UserInputService').InputBegan:connect(function(i, b)
  2413.         if i.KeyCode == Enum.KeyCode.Space then
  2414.             print("Got jump")
  2415.             coroutine.resume(coroutine.create(function()
  2416.                 thrust.Parent = game.Players.LocalPlayer.Character.PrimaryPart
  2417.                 thrust.velocity = Vector3.new(0,50,0)
  2418.                 thrust.maxForce = Vector3.new(0,4e+050,0)
  2419.                 wait(0.2)
  2420.                 thrust.Parent = nil
  2421.             end))
  2422.         end
  2423.     end)
  2424. end)
  2425. lpwin:addSpacing()
  2426. local apprInp
  2427. lpwin:drawButton(1/3, 'Appearance', function()
  2428.     local id = 0
  2429.     if tonumber(apprInp.Text) then
  2430.         id = tonumber(apprInp.Text)
  2431.     else
  2432.         id = game:GetService('Players'):GetUserIdFromNameAsync(apprInp.Text)
  2433.     end
  2434.     if topkek.lplr.Character:FindFirstChild("Humanoid") then
  2435.         topkek.lplr.Character.Humanoid.Health = 0
  2436.     end
  2437.     topkek.lplr.CharacterAppearance = 'https://assetgame.roblox.com/Asset/CharacterFetch.ashx?userId=' .. tostring(id)
  2438. end)
  2439. apprInp = lpwin:drawTextBox(2/3, 'ROBLOX')
  2440. local teamInp
  2441. lpwin:drawButton(1/3, 'Team', function()
  2442.     topkek.lplr.TeamColor = BrickColor.new(teamInp.Text)
  2443. end)
  2444. teamInp = lpwin:drawTextBox(2/3, 'Bright red')
  2445. lpwin:drawButton(1/2, 'Naked', function()
  2446.     topkek.lplr:ClearCharacterAppearance()
  2447. end)
  2448. lpwin:drawButton(1/2, 'Neutral', function()
  2449.     topkek.lplr.Neutral = true
  2450. end)
  2451. lpwin:addSpacing()
  2452. lpwin:drawButton(1/2, 'Orb', function()
  2453.     game.Players.LocalPlayer.Character = nil
  2454.     --lp:Destroy()
  2455.     local cam = game.Workspace.CurrentCamera
  2456.     local m = Instance.new("Model", game.Workspace)
  2457.     m.Name = game.Players.LocalPlayer.Name
  2458.     local hum = Instance.new("Humanoid", m)
  2459.     hum.Health = 0
  2460.     hum.MaxHealth = 0
  2461.     local orb = Instance.new("Part", m)
  2462.     orb.Size = Vector3.new(1, 1, 1)
  2463.     orb.Shape = "Ball"
  2464.     orb.Name = "Head"
  2465.     orb.Anchored = true
  2466.     orb.CanCollide = true
  2467.     orb.BottomSurface = Enum.SurfaceType.Smooth
  2468.     orb.TopSurface = Enum.SurfaceType.Smooth
  2469.     orb.Transparency = 0
  2470.     spawn(function()
  2471.         while true do
  2472.             wait(0.1)
  2473.             if orb then
  2474.                 orb.BrickColor = BrickColor.Random()
  2475.             else break end
  2476.         end
  2477.     end)
  2478.     cam.CameraSubject = orb
  2479.     cam.CameraType = Enum.CameraType.Fixed
  2480.     game:GetService("RunService").RenderStepped:connect(function()
  2481.         orb.CFrame = cam.CoordinateFrame * CFrame.new(0, -2, -6)
  2482.     end)
  2483.     game.Players.LocalPlayer.Chatted:connect(function(a)
  2484.         game:GetService("Chat"):Chat(orb, a)
  2485.     end)
  2486. end)
  2487. lpwin:drawButton(1/2, 'Freecam', function()
  2488.     local cam = game.Workspace.CurrentCamera
  2489.     cam.CameraType = "Fixed"
  2490.     cam.CameraSubject = nil
  2491.     topkek.lplr.Character = nil
  2492. end)
  2493. lpwin:drawButton(1/2, 'NoGrav', function()
  2494.     if topkek.lplr.Character then
  2495.         for x,m in pairs(topkek.lplr.Character:GetChildren()) do
  2496.             if m:IsA("BasePart") then
  2497.                 local bf = Instance.new("BodyForce", m)
  2498.                 bf.force = Vector3.new(0, 192.25, 0) * m:GetMass()
  2499.             end
  2500.             if m:IsA("Hat") or m:IsA("Accessory") then
  2501.                 if m:findFirstChild("Handle") then
  2502.                     local bf = Instance.new("BodyForce", m.Handle)
  2503.                     bf.force = Vector3.new(0, 192.25, 0) * m.Handle:GetMass()
  2504.                 end
  2505.             end
  2506.         end
  2507.     end
  2508. end)
  2509. lpwin:drawButton(1/2, 'Trowel', function()
  2510.     topkek.tools.util.trowel()
  2511. end)
  2512. lpwin:addSpacing()
  2513. lpwin:drawButton(1/2, 'Fedora', function()
  2514.     local hats={
  2515.         98346834,
  2516.         215751161,
  2517.         119916949,
  2518.         72082328,
  2519.         147180077,
  2520.         100929604,
  2521.         63043890,
  2522.         1285307,
  2523.         1029025,
  2524.         334663683,
  2525.         259423244
  2526.     }
  2527.     game:GetObjects("rbxassetid://" .. tostring(hats[math.random(1,#hats)]))[1].Parent = topkek.lplr.Character
  2528. end)
  2529. lpwin:drawButton(1/2, 'Rainbow Name', function()
  2530.     topkek.lplr.Neutral = false
  2531.     repeat
  2532.         wait()
  2533.         topkek.lplr.TeamColor = BrickColor.Random()
  2534.     until not topkek.lplr.Character.Humanoid
  2535. end)
  2536. local tagInp
  2537. lpwin:drawButton(1/3, 'Tag', function()
  2538.     local len = 10
  2539.     local bb = Instance.new("BillboardGui")
  2540.     bb.Parent = topkek.lplr.Character.Head
  2541.     bb.Adornee = topkek.lplr.Character.Head
  2542.     bb.AlwaysOnTop = true
  2543.     bb.Enabled = true
  2544.     bb.Size = UDim2.new(len, 0, 1.5, 0)
  2545.     bb.Name = "tag"
  2546.     bb.StudsOffset = Vector3.new(0, 3, 0)
  2547.     --local fr = Instance.new("Frame")
  2548.     --fr.Parent = bb
  2549.     --fr.Size = UDim2.new(1, 0, 1, 0)
  2550.     --fr.Style = Enum.FrameStyle.RobloxRound
  2551.     local tl = Instance.new("TextLabel")
  2552.     tl.Parent = bb
  2553.     tl.Font = Enum.Font.Code
  2554.     tl.BackgroundTransparency = 1
  2555.     tl.TextScaled = true
  2556.     tl.TextColor3 = Color3.new(15/255, 15/255, 15/255)
  2557.     tl.Size = UDim2.new(1, 0, 1, 0)
  2558.     tl.Text = tagInp.Text
  2559.     tl.Name = "trutag"
  2560.     tl.Visible = true
  2561.     tl.ZIndex = 2
  2562. end)
  2563. tagInp = lpwin:drawTextBox(2/3, '')
  2564. --// SCRIPTS //--
  2565. local scriptwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Scripts').Container)
  2566. local search = scriptwin:drawTextBox(1,'')
  2567. local origy = scriptwin:getDrawY()
  2568. scriptwin:addSpacing()
  2569. scriptwin:addSpacing()
  2570. local scripts = game:GetObjects("rbxassetid://376553985")[1]
  2571. local container = {}
  2572. function MakeList(condition)
  2573.     for i,v in pairs(scriptwin:GetChildren()) do
  2574.         if v.Name == "Script" then
  2575.             v:Destroy()
  2576.         end
  2577.     end
  2578.     scriptwin:setDrawY(origy)
  2579.     for i, v in pairs(scripts:GetChildren()) do
  2580.         if string.find(v.Name:lower(), condition:lower()) or (condition == "") or (condition == " ") then
  2581.             local scr = scriptwin:drawButton(1, v.Name, function()
  2582.                 spawn(function() loadstring(v.Source)() end)
  2583.             end, 25)
  2584.             scr.Name = 'Script'
  2585.         end
  2586.     end
  2587. end
  2588. game:GetService("UserInputService").InputChanged:connect(function(inp)
  2589.     if inp.UserInputType == Enum.UserInputType.TextInput then
  2590.         if search:IsFocused() then
  2591.             MakeList(search.Text)
  2592.         end
  2593.     end
  2594. end)
  2595. MakeList('')
  2596. --// DESTRUCTION // --
  2597. local destwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Destruction').Container)
  2598. local decals, seldec = destwin:drawScrollingContainer(100)
  2599. seldec = destwin:drawText(1, 'Selected Decal: None')
  2600. cursel = nil
  2601. local decs = {
  2602.     {'Rain', '574772793'},
  2603.     {'Robbie', '574773630'},
  2604.     {'Pepe', '244905904'},
  2605.     {'Troll Face', '48308661'},
  2606.     {'Jeff', '109129888'},
  2607.     {'Shrek', '170539018'},
  2608.     {'Doge', '133720697'},
  2609.     {'Dat Boi', '409578848'},
  2610. }
  2611. for _, v in pairs(decs) do
  2612.     local b = decals:drawButton(1, v[1], function()seldec.Text="Selected Decal: " ..v[2] cursel=v[2] end,20)
  2613.     topkek.tools.gui:addLeftIcon(b,'rbxassetid://'..v[2],20)
  2614. end
  2615. destwin:drawButton(1, 'Spam Decal', function()
  2616.     if cursel ~= nil then
  2617.         topkek.tools.util.recurseDecal(tonumber(cursel))
  2618.     end
  2619. end)
  2620. destwin:drawButton(1, 'Spam Particles', function()
  2621.     if cursel ~= nil then
  2622.         topkek.tools.util.recurseParticles(tonumber(cursel))
  2623.     end
  2624. end)
  2625. destwin:drawButton(1, 'Spam Both', function()
  2626.     if cursel ~= nil then
  2627.         topkek.tools.util.recurseUltimate(tonumber(cursel))
  2628.     end
  2629. end)
  2630. destwin:drawButton(1, 'Rollback', function()
  2631.     tk.rcm(workspace, 'Decal')
  2632.     tk.rcm(workspace, 'ParticleEmitter')
  2633. end)
  2634. destwin:addSpacing()
  2635. destwin:drawButton(1, '666', function()
  2636.     for i,v in next,workspace:children''do
  2637.         if(v:IsA'BasePart')then
  2638.         me=v;
  2639.         bbg=Instance.new('BillboardGui',me);
  2640.         bbg.Name='stuf';
  2641.         bbg.Adornee=me;
  2642.         bbg.Size=UDim2.new(2.5,0,2.5,0)
  2643.         --bbg.StudsOffset=Vector3.new(0,2,0)
  2644.         tlb=Instance.new'TextLabel';
  2645.         tlb.Text='666 666 666 666 666 666';
  2646.         tlb.Font='SourceSansBold';
  2647.         tlb.FontSize='Size48';
  2648.         tlb.TextColor3=Color3.new(1,0,0);
  2649.         tlb.Size=UDim2.new(1.25,0,1.25,0);
  2650.         tlb.Position=UDim2.new(-0.125,-22,-1.1,0);
  2651.         tlb.BackgroundTransparency=1;
  2652.         tlb.Parent=bbg;
  2653.         end;end;
  2654.         --coroutine.wrap(function()while wait''do
  2655.           s=Instance.new'Sound';
  2656.           s.Parent=workspace;
  2657.           s.SoundId='rbxassetid://152840862';
  2658.           s.Pitch=1;
  2659.           s.Volume=1;
  2660.           s.Looped=true;
  2661.           s:play();
  2662.           --end;end)();
  2663.           function xds(dd)
  2664.             for i,v in next,dd:children''do
  2665.               if(v:IsA'BasePart')then
  2666.                 v.BrickColor=BrickColor.new'Really black';
  2667.                 v.TopSurface='Smooth';
  2668.                 v.BottomSurface='Smooth';
  2669.                 s=Instance.new('SelectionBox',v);
  2670.                 s.Adornee=v;
  2671.                 s.Color=BrickColor.new'Really red';
  2672.                 a=Instance.new('PointLight',v);
  2673.                 a.Color=Color3.new(1,0,0);
  2674.                 a.Range=15;
  2675.                 a.Brightness=5;
  2676.                 f=Instance.new('Fire',v);
  2677.                 f.Size=19;
  2678.                 f.Heat=22;
  2679.                 end;
  2680.                 game.Lighting.TimeOfDay=0;
  2681.                 game.Lighting.Brightness=0;
  2682.                 game.Lighting.ShadowColor=Color3.new(0,0,0);
  2683.                 game.Lighting.Ambient=Color3.new(1,0,0);
  2684.                 game.Lighting.FogEnd=200;
  2685.                 game.Lighting.FogColor=Color3.new(0,0,0);
  2686.             local dec = 'http://www.roblox.com/asset/?id=19399245';
  2687.                 local fac = {'Front', 'Back', 'Left', 'Right', 'Top', 'Bottom'}
  2688.                 --coroutine.wrap(function()
  2689.                 --for _,__ in pairs(fac) do
  2690.                 --local ddec = Instance.new("Decal", v)
  2691.                 --ddec.Face = __
  2692.                 --ddec.Texture = dec
  2693.             --end end)()
  2694.                 if #(v:GetChildren())>0 then
  2695.                        xds(v)
  2696.                   end
  2697.              end
  2698.         end
  2699.     xds(game.Workspace)
  2700. end)
  2701. destwin:drawButton(1, 'Troll', function()
  2702.     topkek.tools.util.recurseUltimate('48308661')
  2703.     tk.play(154664102)
  2704. end)
  2705. destwin:addSpacing()
  2706. destwin:drawButton(1/2,'Colorize',function() -- when u skid off variable XDDDDDpranked
  2707.     local materiallist =
  2708.     {Enum.Material.Plastic,Enum.Material.Wood,Enum.Material.Slate,Enum.Material.Concrete,Enum.Material.CorrodedMetal,
  2709.         Enum.Material.DiamondPlate,Enum.Material.Foil,Enum.Material.Grass,
  2710.         Enum.Material.Ice,Enum.Material.Marble,Enum.Material.Granite,Enum.Material.Brick,
  2711.         Enum.Material.Pebble,Enum.Material.Sand,Enum.Material.Sand,
  2712.         Enum.Material.Fabric,Enum.Material.SmoothPlastic,Enum.Material.Metal,Enum.Material.WoodPlanks,Enum.Material.Neon,Enum.Material.Cobblestone}
  2713.     local function r(where)
  2714.         for _,v in pairs (where:GetChildren()) do
  2715.         if v:IsA("BasePart") then
  2716.         spawn(function() while wait(0.1) do v.Material = materiallist[math.random(#materiallist)] wait()   end end) end r(v) end end r(workspace)
  2717. end)
  2718. destwin:drawButton(1/2,'Materialize',function()
  2719.     local function r(where)
  2720.     for _,v in pairs (where:GetChildren()) do
  2721.     if v:IsA("BasePart") then
  2722.     spawn(function() while wait(0.1) do v.Transparency = math.random(0,1) wait()   end end) end r(v) end end r(workspace)
  2723. end)
  2724. destwin:drawButton(1/2,'Meshify',function()
  2725.     local enums={
  2726.         Enum.MeshType.Head;
  2727.         Enum.MeshType.Torso;
  2728.         Enum.MeshType.Wedge;
  2729.         Enum.MeshType.Brick;
  2730.         Enum.MeshType.Sphere;
  2731.         Enum.MeshType.Cylinder;
  2732.     }
  2733.     tk.rcf('BasePart',function(o)
  2734.         local mesh = Instance.new('SpecialMesh', o)
  2735.         mesh.MeshType = enums[math.random(1,#enums)]
  2736.     end)
  2737. end)
  2738. destwin:drawButton(1/2,'Loop-Meshify',function()
  2739.     coroutine.wrap(function()
  2740.         while true do
  2741.             local enums={
  2742.                 Enum.MeshType.Head;
  2743.                 Enum.MeshType.Torso;
  2744.                 Enum.MeshType.Wedge;
  2745.                 Enum.MeshType.Brick;
  2746.                 Enum.MeshType.Sphere;
  2747.                 Enum.MeshType.Cylinder;
  2748.             }
  2749.             tk.rcf('BasePart',function(o)
  2750.                 if o:FindFirstChild("Mesh") then o.Mesh:Destroy() end
  2751.                 local mesh = Instance.new('SpecialMesh', o)
  2752.                 mesh.MeshType = enums[math.random(1,#enums)]
  2753.             end)
  2754.             wait(0.5)
  2755.         end
  2756.     end)()
  2757. end)
  2758. destwin:addSpacing()
  2759. destwin:drawButton(1, 'Rotations', function()
  2760.     tk.rcf('BasePart', function(o)
  2761.         o.Rotation = Vector3.new(math.random(0,180),math.random(0,180),math.random(0,180))
  2762.     end)
  2763. end)
  2764. destwin:drawButton(1, 'Collisions', function()
  2765.     tk.rcf('BasePart', function(o)
  2766.         o.CanCollide = false
  2767.     end)
  2768. end)
  2769. destwin:drawButton(1, 'Velocity', function()
  2770.     tk.rcf('BasePart', function(o)
  2771.         o.Velocity = Vector3.new(math.random(0,180),math.random(0,180),math.random(0,180))
  2772.     end)
  2773. end)
  2774. destwin:drawButton(1, 'Invisiblity', function()
  2775.     tk.rcf('BasePart', function(o)
  2776.         o.Transparency = 1
  2777.     end)
  2778. end)
  2779. destwin:drawButton(1, 'BreakJoints', function()
  2780.     tk.rcf('Model', function(o)
  2781.         o:BreakJoints()
  2782.     end)
  2783. end)
  2784. destwin:drawButton(1, 'Forces', function()
  2785.     tk.rcf('BasePart', function(o)
  2786.         local bf = Instance.new("BodyForce", o)
  2787.         bf.Force = Vector3.new(math.random(0,180)*5,math.random(0,180)*5,math.random(0,180)*5)
  2788.     end)
  2789. end)
  2790. destwin:drawButton(1, 'Brightness', function()
  2791.     tk.rcf('BasePart', function(o)
  2792.         local light = Instance.new("SpotLight", o)
  2793.         light.Brightness = 9e9
  2794.         light.Range = 60
  2795.     end)
  2796. end)
  2797. --// CATALOG //--
  2798. local catwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Catalog').Container)
  2799. local page, currentkeyword = 1, ""
  2800. local searchbar, search, makeCatalog, res = 0, 0, 0, {}
  2801. local searchbar = catwin:drawTextBox(2/3,'')
  2802. local search = catwin:drawButton(1/3, 'Search', function()
  2803.     page = 1
  2804.     currentkeyword = searchbar.Text
  2805.     makeCatalog(currentkeyword, page)
  2806. end)
  2807. local previous = catwin:drawButton(1/2, 'Previous Page', function()
  2808.     if page > 1 then
  2809.         page = page - 1
  2810.         makeCatalog(currentkeyword, page)
  2811.     end
  2812. end)
  2813. local previous = catwin:drawButton(1/2, 'Next Page', function()
  2814.     if page >= 1 then
  2815.         page = page + 1
  2816.         makeCatalog(currentkeyword, page)
  2817.     end
  2818. end)
  2819. local catalog_start = catwin:getDrawY()
  2820. function split(str,divider)
  2821.     local found = ""
  2822.     local results = {}
  2823.     for i=1,string.len(str) do
  2824.         if (string.lower(string.sub(str,i,i)) == string.lower(divider)) then
  2825.             table.insert(results, found)
  2826.             found = ""
  2827.         else
  2828.             found = found..string.sub(str,i,i)
  2829.         end
  2830.     end
  2831.     table.insert(results, found)
  2832.     return results
  2833. end
  2834. function GetName(nm)
  2835.     local spl = split(nm," ")
  2836.     local a,b,c,d,e=spl[1] or "",spl[2] or "",spl[3] or "", spl[4] or "", spl[5] or ""
  2837.     return (a.." "..b.." "..c.." "..d.." "..e)
  2838. end
  2839. function makeCatalog(keyword, page)
  2840.     local endpoint = "http://search.roblox.com/catalog/json?Category=6&Keyword="..keyword.."&IncludeNotForSale=false&ResultsPerPage=10&PageNumber="..tostring(page)
  2841.     local results = game:HttpGet(endpoint, true)
  2842.     local parse = game:GetService('HttpService'):JSONDecode(results)
  2843.     for i, v in pairs(res) do
  2844.         v:Destroy()
  2845.     end
  2846.     catwin:setDrawY(catalog_start)
  2847.     catwin:addSpacing()
  2848.     for i, v in pairs(parse) do
  2849.         local img = catwin:drawImage(1/2, 'https://www.roblox.com/Thumbs/Asset.ashx?width=420&height=420&assetId='..tostring(v['AssetId']), 50)
  2850.         local below = topkek.tools.util.Object("TextButton", {
  2851.             Parent = img;
  2852.             BackgroundColor3 = Color3.new(163/255, 57/255, 57/255);
  2853.             BorderSizePixel = 0;
  2854.             Position = UDim2.new(0, -45, 1, 5);
  2855.             Size = UDim2.new(0,img.AbsoluteSize.X, 0, 20);
  2856.             Font = 'SourceSans';
  2857.             FontSize = 'Size14';
  2858.             Text = GetName(v['Name']);
  2859.             TextSize = 14;
  2860.             TextColor3 = color3(199, 199, 199);
  2861.             TextStrokeTransparency = 0.5;
  2862.             ClipsDescendants = true;
  2863.         })
  2864.         below.MouseButton1Down:connect(function()
  2865.             local Model = Instance.new("Model", workspace)
  2866.             game:GetObjects('rbxassetid://'..tostring(v['AssetId']))[1].Parent = Model
  2867.             Model:MakeJoints()
  2868.             Model:MoveTo(topkek.lplr.Character.Head.Position)
  2869.         end)
  2870.         img.Size=UDim2.new(0,50,0,50)
  2871.         img.Position=img.Position+UDim2.new(0,45,0,0)
  2872.         if (i%2)==0 then
  2873.             catwin:setDrawY(catwin:getDrawY() + 25)
  2874.         end
  2875.         if (i==10) then
  2876.             catwin.main.CanvasSize = catwin.main.CanvasSize + UDim2.new(0,0,0,25)
  2877.         end
  2878.         table.insert(res,img)
  2879.     end
  2880. end
  2881. makeCatalog("", 1)
  2882. --// CMDS //--
  2883. cmdwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Commands').Container)
  2884. count = 0
  2885. for _, _ in pairs(cmd.commands.store) do count = count + 1 end
  2886. cmdwin:drawText(1, tostring(count) .. " Commands")
  2887. cmdwin:drawText(1, 'Chat Prefix: /')
  2888. local cmdlist = cmdwin:drawScrollingContainer(260)
  2889. for i, v in pairs(cmd.commands.fmtstore) do
  2890.     local xfmt = {}
  2891.     local str = "  ;" .. i .. " "
  2892.     for form in v:gmatch("[^%%]+") do
  2893.         if form ~= 'cmd' then
  2894.             if form == 'inf' then form = 'str' end
  2895.             str = str .. "{" .. form .. "} "
  2896.         end
  2897.     end
  2898.     cmdlist:drawText(1, str)
  2899. end
  2900. --// MUSIC //--
  2901. musicwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Music').Container)
  2902. Sounds = {
  2903.     {"caramell", 2303479};
  2904.     {"epic", 27697743};
  2905.     {"rick", 2027611}; 
  2906.     {"halo", 1034065};
  2907.     {"pokemon", 1372261};
  2908.     {"cursed", 1372257};
  2909.     {"extreme", 11420933};
  2910.     {"awaken", 27697277};
  2911.     {"alone", 27697392};
  2912.     {"mario", 1280470};
  2913.     {"choir", 1372258};
  2914.     {"chrono" ,1280463};
  2915.     {"dotr", 11420922};
  2916.     {"entertain", 27697267};
  2917.     {"fantasy", 1280473};
  2918.     {"final", 787};
  2919.     {"organ", 11231513};
  2920.     {"tunnel", 9650822}
  2921. }
  2922.  
  2923. local cursel
  2924. local xcursel = 0
  2925. scr = musicwin:drawScrollingContainer(230)
  2926. for i, v in pairs(Sounds) do
  2927.     scr:drawButton(1, v[1] .. " - " .. tonumber(v[2]), function()
  2928.         cursel.Text = "Currently Selected - " .. v[1]
  2929.         xcursel = v[2]
  2930.     end)
  2931. end
  2932.  
  2933. cursel = musicwin:drawText(1, "Currently Selected - None")
  2934. local setInp
  2935. musicwin:drawButton(1/3, "Set", function()
  2936.     if tonumber(setInp.Text) then
  2937.         cursel.Text = "Currently Selected - " .. setInp.Text
  2938.         xcursel = tonumber(setInp.Text)
  2939.     end
  2940. end)
  2941. setInp = musicwin:drawTextBox(2/3, '')
  2942. musicwin:drawButton(1, "Play", function()
  2943.     tk.rcm(game, 'Sound')
  2944.     tk.play(xcursel)   
  2945. end)
  2946. musicwin:drawButton(1, "Stop", function()
  2947.     tk.rcm(game, 'Sound')
  2948. end)
  2949. --// FACES //--
  2950. facwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Faces').Container)
  2951. local faces = {
  2952.     {name='Rofl',id=47595647},
  2953.     {name='Sparta',id=74142203},
  2954.     {name='UJelly',id=48989071},
  2955.     {name='Troll',id=45120559},
  2956.     {name='Horse',id=62079221},
  2957.     {name='Angry',id=48258623},
  2958.     {name='Okey',id=62830600},
  2959.     {name='Yeaw',id=53646377},
  2960.     {name='Here',id=62677045},
  2961.     {name='Har',id=48260066},
  2962.     {name='Baby Sun',id=47596170},
  2963.     {name='LOL',id=48293007},
  2964.     {name='Sad',id=53645378},
  2965.     {name='Joseph Stalin',id=48290678},
  2966.     {name='Doge',id=130742396},
  2967.     {name='Forever Alone',id=156886272},
  2968.     {name='RickRoll',id=5104631},
  2969.     {name='Jim Carrey',id=74885351},
  2970.     {name='Meh IRL',id=237553381}
  2971. }
  2972. local cursel, xcursel = nil, 0
  2973. faclist = facwin:drawScrollingContainer(260)
  2974. for i,v in pairs(faces) do
  2975.     local btn = faclist:drawButton(1, v['name'], function()
  2976.         xcursel = v['id']
  2977.         cursel.Text = 'Currently Selected: ' .. v['name']
  2978.     end)
  2979.     topkek.tools.gui:addLeftIcon(btn,'rbxassetid://'..tostring(v['id']),20)
  2980. end
  2981. cursel = facwin:drawText(1, 'Currently Selected: None')
  2982. facwin:drawButton(1, 'Wear', function()
  2983.     if not (xcursel == 0) then
  2984.         if topkek.lplr.Character then
  2985.             tk.rcm(topkek.lplr.Character, 'Accessory')
  2986.             tk.rcm(topkek.lplr.Character, 'Hat')
  2987.             topkek.tools.util.applyFace(xcursel)
  2988.         end
  2989.     end
  2990. end)
  2991. --// SETTINGS // --
  2992. setwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Settings').Container)
  2993. setwin:drawText(1, 'Patch: ' .. topkek.patch)
  2994. setwin:drawText(1, 'Devnote: foh skids')
  2995. setwin:drawText(1, [[
  2996.     === CREDITS ===
  2997.    
  2998.     Variable - retard that created Stella
  2999.     KrystalTeam - provided critical design tips & advice
  3000.     Circumvention - lol joey salads
  3001.    
  3002.     Thanks to everyone that supported T0PK3K 4.0!
  3003.    
  3004. ]], 260)
  3005. --// BANLIST //--
  3006. banwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Banlist').Container)
  3007. local plrBanInp
  3008. banwin:drawButton(1/3, 'Add', function()
  3009.     topkek.settings.get()
  3010.     table.insert(topkek.settingsTable['Bans'], plrBanInp.Text)
  3011.     topkek.settings.write()
  3012.     UpdateBanlist()
  3013. end)
  3014. plrBanInp = banwin:drawTextBox(2/3, '')
  3015. banCont = banwin:drawScrollingContainer(288)
  3016. function UpdateBanlist(x)
  3017.     topkek.settings.get()
  3018.     local wl = x or topkek.settingsTable['Bans']
  3019.     for i,v in pairs(banCont:GetChildren()) do
  3020.         v:Destroy()
  3021.     end
  3022.     banCont:setDrawY(3)
  3023.     for i,v in pairs(wl) do
  3024.         banCont:drawText(2/3, v)
  3025.         banCont:drawButton(1/3, 'Remove', function()
  3026.             for x, m in pairs(wl) do
  3027.                 if m == v then
  3028.                     table.remove(topkek.settingsTable['Bans'], x)
  3029.                     topkek.settings.write()
  3030.                     UpdateBanlist()
  3031.                     topkek.banmgr.bans = topkek.settingsTable['Bans']
  3032.                 end
  3033.             end
  3034.         end)
  3035.     end
  3036. end
  3037. UpdateBanlist()
  3038. --// HATS //--
  3039. hatwin = topkek.tools.gui:hookContainer(topkek.tools.util.getContainer('Hats').Container)
  3040. local hats={   
  3041.     {name='Dominus Empyreus',id=21070012},
  3042.     {name='Dominus Vespertilio',id=96103379},
  3043.     {name='Dominus Infernus',id=31101391},
  3044.     {name='Dominus Rex',id=250395631},
  3045.     {name='Dominus Frigidus',id=48545806},
  3046.     {name='Dominus Astra',id=162067148},
  3047.     {name='Dominus Aureus',id=138932314},
  3048.     {name='DIY Dominus Empyreus',id=151789690},
  3049.     {name='Dominus Messor',id=64444871},
  3050.     {name='Demon Skeleton Wings',id=133554007},
  3051.     {name='Gilded Wings of Glory',id=250405532},
  3052.     {name='Majestic Ice Wings',id=188702967},
  3053.     {name='Black Wings',id=215719598},
  3054.     {name='Clockworks Shades',id=11748356},
  3055.     {name='Faerie Wings',id=19399896},
  3056.     {name='Orinthian Wings',id=223751505},
  3057.     {name='Clockworks Headphones',id=1235488},
  3058.     {name='Perfectly Legitimate Business Hat',id=19027209},
  3059.     {name='Sparkling Angel Wings',id=192557913},
  3060.     {name='Commander Crows Wings',id=133553855},
  3061.     {name='Sunfire Wings',id=158068470},
  3062.     {name='Royal Faerie Wings',id=119916756},
  3063.     {name='Wings of Freedom',id=164174048},
  3064.     {name='Firebrand Wings',id=128160626},
  3065.     {name='Frozen Wings',id=136758613},
  3066.     {name='Webbed Wings',id=120507280},
  3067.     {name='Gargoyle Wings',id=120507201},
  3068.     {name='Bat Wings',id=19399858},
  3069.     {name='Wings of Fire',id=136758532},
  3070.     {name='Headrow',id=1082935},
  3071.     {name='Rubber Duckie',id=9254254},
  3072.     {name='Valkyrie Helm',id=1365767},
  3073. {name='Hockey Mask',id=5161514}}
  3074. local searchi = hatwin:drawButton(1, '', function()end)
  3075. dropx = GUI.DropDown.New(UDim2.new(0, 0, 0, 0), UDim2.new(1, 0, 1, 0), searchi, {'All'})
  3076. function fixPlayerDropi()
  3077.     local t = {'All'}
  3078.     for i, v in pairs(game.Players:GetPlayers()) do
  3079.         table.insert(t, v.Name)
  3080.     end
  3081.     dropx.SetTable(t)
  3082. end
  3083. game.Players.PlayerAdded:connect(function()
  3084.     fixPlayerDropi()
  3085. end)
  3086. game.Players.PlayerRemoving:connect(function()
  3087.     fixPlayerDropi()
  3088. end)
  3089. local eval = 'All'
  3090. dropx.Changed(function(p) eval = p end)
  3091. fixPlayerDrop()
  3092.  
  3093. local hatInp
  3094. hatlist = hatwin:drawScrollingContainer(260)
  3095. for i,v in pairs(hats) do
  3096.     hatlist:drawButton(1, v['name'], function()
  3097.         hatInp.Text = tostring(v['id'])
  3098.     end)
  3099. end
  3100. hatwin:drawButton(1/3, 'Wear', function()
  3101.     local hat = game:GetObjects("rbxassetid://"..tonumber(hatInp.Text))[1]
  3102.     tk.dp(eval, function(x)
  3103.         if x.Character then
  3104.             hat:Clone().Parent = x.Character
  3105.         end
  3106.     end)
  3107. end)
  3108.  
  3109.  
  3110. hatInp = hatwin:drawTextBox(2/3, '')
  3111. topkek.tools.animator.initialAnimation()
  3112. topkek.banmgr.init()
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top