Advertisement
SlyHades66

Scap_Explorer

Dec 21st, 2016
342
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 14.33 KB | None | 0 0
  1. if game.CoreGui:FindFirstChild("Scapters Explorer") then
  2.     game.CoreGui["Scapters Explorer"]:Destroy()
  3. end
  4.  
  5. local Gui = Instance.new("ScreenGui")
  6. Gui.Name = "Scapters Explorer"
  7. Gui.Parent = game.CoreGui
  8.  
  9. local Open = false
  10.  
  11. local Open_Close = Instance.new("TextButton")
  12. Open_Close.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  13. Open_Close.Name = "Open_Close"
  14. Open_Close.Position = UDim2.new(0, 0, 0.6, 0)
  15. Open_Close.Text = "Explorer"
  16. Open_Close.Size = UDim2.new(0, 200, 0, 50)
  17. Open_Close.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  18. Open_Close.Font = "SciFi"
  19. Open_Close.FontSize = "Size36"
  20. Open_Close.Parent = Gui
  21.  
  22. local Explorer = Instance.new("ScrollingFrame")
  23. Explorer.Name = "Explorer"
  24. Explorer.BackgroundColor3 = Color3.new(0/255, 170/255, 255/255)
  25. Explorer.Size =UDim2.new(0, 500, 0, 500)
  26. Explorer.Position = UDim2.new(-1, -250, 0.5, -250)
  27. Explorer.ScrollBarThickness = 8
  28. Explorer.CanvasSize = UDim2.new(0, 0, 0, 0)
  29. Explorer.Parent = Gui
  30.  
  31. local SearchBar = Instance.new("TextBox")
  32. SearchBar.BackgroundColor3 = Color3.new(255/255, 255/255, 255/255)
  33. SearchBar.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  34. SearchBar.Name = "SearchBar"
  35. SearchBar.Position = Explorer.Position-UDim2.new(0, 0, 0, 50)
  36. SearchBar.Text = "Search Here"
  37. SearchBar.Size = UDim2.new(0, 500, 0, 50)
  38. SearchBar.Font = "SciFi"
  39. SearchBar.FontSize = "Size36"
  40. SearchBar.Parent = Gui
  41.  
  42. local Back = Instance.new("TextButton")
  43. Back.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  44. Back.Name = "Back"
  45. Back.Text = "Back"
  46. Back.Size = UDim2.new(1, 0, 0, 35)
  47. Back.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  48. Back.Font = "SciFi"
  49. Back.FontSize = "Size24"
  50. Back.Parent = Explorer
  51.  
  52. local Properties = Instance.new("ScrollingFrame")
  53. Properties.Name = "Prop"
  54. Properties.BackgroundColor3 = Color3.new(0/255, 170/255, 255/255)
  55. Properties.Size =UDim2.new(0, 350, 0, 500)
  56. Properties.Position = UDim2.new(-1, -250, 0.5, -250)
  57. Properties.ScrollBarThickness = 8
  58. Properties.CanvasSize = UDim2.new(0, 0, 0, 0)
  59. Properties.Parent = Gui
  60.  
  61. local Props = Instance.new("TextButton")
  62. Props.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  63. Props.Name = "Properties"
  64. Props.Text = "Properties"
  65. Props.Size = UDim2.new(1, 0, 0, 35)
  66. Props.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  67. Props.Font = "SciFi"
  68. Props.FontSize = "Size24"
  69. Props.Parent = Properties
  70.  
  71. Open_Close.MouseButton1Down:connect(function()
  72.     if Open then
  73.         Open = false
  74.         Explorer:TweenPosition(UDim2.new(-1, -250, 0.5, -250), "Out", "Quart", 0.3, true)
  75.         Properties:TweenPosition(UDim2.new(-1, -250, 0.5, -250), "Out", "Quart", 0.3, true)
  76.         SearchBar:TweenPosition(UDim2.new(-1, -250, 0.5, -250), "Out", "Quart", 0.3, true)
  77.     else
  78.         Open = true
  79.         Explorer:TweenPosition(UDim2.new(0.43, -250, 0.5, -250), "Out", "Quart", 0.3, true)
  80.         Properties:TweenPosition(UDim2.new(0.691, -250, 0.5, -250), "Out", "Quart", 0.3, true)
  81.         SearchBar:TweenPosition(UDim2.new(0.5, -250, 0.5, -300), "Out", "Quart", 0.3, true)
  82.     end
  83. end)
  84.  
  85. TextProperties = {"Parent", "ZOffset", "CharacterAppearance", "PrimaryPart", "SkyboxBk", "SkyboxDn", "WaterTransparency", "WaterWaveSpeed", "HipHeight","ChatHistory","ConversationDistance", "BlastPressure", "BlastRadius", "InitialPrompt", "CPU", "OSVer", "OsPlatformId", "CpuSpeed", "D", "P", "maxForce", "InstanceCount", "PlaceId", "workspace", "GarbageCollectionFrequency", "BinType", "Grip", "ActivationState", "GarbageCollectionLimit", "ShadowColor", "TargetPoint", "WalkDirection", "WalkToPart", "Image",  "Font", "ClearTextOnFocus", "TextTransparency", "WalkToPoint", "ColorShift_Bottom", "ColorShift_Top","MaxSpeed","CartoonFactor","Target","MaxThrust","MaxTorque","TargetOffset","ThrustD", "ThrustP", "TurnD", "TurnP", "profileName", "Resolution", "Shadow", "Bevels", "BatchSize", "AASamples", "Genre", "CreatorType", "CreatorId", "JobId", "SkyboxUp", "SkyboxFt", "SkyboxLf", "StarCount", "ReporterType", "Outfit1", "Outfit2", "Pants", "PlayCount", "Shirt",  "MinReportInterval", "VelocitySpread","Rate", "DataSendRate", "DataGCRate", "ClassName","NameDisplayerDistance", "MaxVelocity","PantsTemplate","ShirtTemplate","SoundId","Pitch","IsPlaying","IsPaused","Looped","PlayOnRemove","StudsPerTileU","StudsPerTileV", "Name", "DataCost", "Value", "MaxPlayers" , "PersonalServerRank" ,"NumPlayers" , "Text", "Reflectance","FogEnd", "FogStart","WaterTransparency", "Transparency", "Heat", "TeamName", "WalkSpeed", "Health", "MaxHealth", "Size", "Position", "AccountAge", "TeamColor", "userId", "Brightness", "Ambient", "OsPlatform", "SimulationRadius", "ChatMode", "AccountAgeReplicate", "Character", "Steer", "Style","NetworkOwnerV3", "CanCollide", "CFrame", "TimeOfDay", "FieldOfView", "CameraType", "LinkedSource", "MachineAddress", "Port"}
  86. BoolProperties = {"BoolValue", "Archivable", "Anchored", "AllowInsertFreeModels","SuperSafeChatReplicate", "Player", "HangDetection", "FullScriptCode", "DataModelJobs", "DeviceLost", "SSAO", "SoundEnabled", "SoftwareSound", "TextFits", "TextWrap", "Draggable",  "BubbleChat" , "AutoRuns", "Guest", "LocalSaveEnabled", "PlatformStand", "AutoRotate", "CelestialBodiesShown","HasBuildTools" , "ClassicChat" , "DevEnableMouseLock" ,"Netural", "CanCollide", "Disabled", "Outlines" ,"Jump", "Sit", "Visible", "IsSmooth" , "Enabled", "Locked", "FilteringEnabled", "StreamingEnabled", "GlobalShadows", "RobloxLocked", "ScriptsDisabled"}
  87. BrickColorProperties = {"BrickColor", "Color", "TeamColor", "AllowSweep", "WaterColor", "ParallelPhysics", "Is30FpsThrottleEnabled", "HeadsUpDisplay",  "Texture", "WaterColor", "SkinColor", "SparkleColor", "FogColor", "HeadColor", "LeftArmColor", "RightArmColor", "TorsoColor", "RightLegColor", "LeftLegColor","ShadowColor", "Ambient", "SecondaryColor"}
  88.  
  89. local Current = game
  90.  
  91. function CheckProperty(Object, Property)
  92.     local Success = pcall(function()
  93.         if Object[Property] then
  94.             return
  95.         end
  96.     end)
  97.     return Success
  98. end
  99.  
  100. function CreateProperties(Parent)
  101.     for _,p in pairs(Properties:GetChildren()) do
  102.         if p.Name ~= "Properties" then
  103.             p:Destroy()
  104.         end
  105.     end
  106.    
  107.     local PrevProp = Properties.Properties
  108.    
  109.     for _,v in pairs(TextProperties) do
  110.        
  111.         local Checker = CheckProperty(Parent, v)
  112.        
  113.         if Checker then
  114.             local List = Instance.new("TextButton")
  115.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  116.             List.Name = tostring(v)
  117.             List.Text = tostring(v)
  118.             List.Size = UDim2.new(0.5, 0, 0, 35)
  119.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  120.             List.Font = "SciFi"
  121.             List.FontSize = "Size24"
  122.             List.Position = PrevProp.Position+UDim2.new(0, 0, 0, 36)
  123.             List.Parent = Properties
  124.             local List2 = Instance.new("TextBox")
  125.             List2.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  126.             List2.Name = tostring(v).."Box"
  127.             List2.Text = tostring(Parent[v])
  128.             List2.BackgroundColor3 = Color3.new(255/255, 255/255, 255/255)
  129.             List2.Size = UDim2.new(0.5, 0, 0, 35)
  130.             List2.Font = "SciFi"
  131.             List2.FontSize = "Size24"
  132.             List2.Position = PrevProp.Position+UDim2.new(0.5, 0, 0, 36)
  133.             List2.ClearTextOnFocus = false
  134.             List2.Parent = Properties
  135.             List2.FocusLost:connect(function()
  136.                 Parent[v] = List2.Text
  137.             end)
  138.             PrevProp = List
  139.             Properties.CanvasSize = UDim2.new(0, 0, 0, List2.Position.Y.Offset+45)
  140.         end
  141.     end
  142.    
  143.     for _,c in pairs(BoolProperties) do
  144.         local Checker = CheckProperty(Parent, c)
  145.         if Checker then
  146.             local List = Instance.new("TextButton")
  147.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  148.             List.Name = tostring(c)
  149.             List.Text = tostring(c)
  150.             List.Size = UDim2.new(0.5, 0, 0, 35)
  151.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  152.             List.Font = "SciFi"
  153.             List.FontSize = "Size24"
  154.             List.Position = PrevProp.Position+UDim2.new(0, 0, 0, 36)
  155.             List.Parent = Properties
  156.             local List2 = Instance.new("TextButton")
  157.             List2.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  158.             List2.Name = tostring(c).."Box"
  159.             List2.Text = tostring(Parent[c])
  160.             List2.BackgroundColor3 = Color3.new(255/255, 255/255, 255/255)
  161.             List2.Size = UDim2.new(0.5, 0, 0, 35)
  162.             List2.Font = "SciFi"
  163.             List2.FontSize = "Size24"
  164.             List2.Position = PrevProp.Position+UDim2.new(0.5, 0, 0, 36)
  165.             List2.Parent = Properties
  166.             List2.MouseButton1Down:connect(function()
  167.                 Parent[c] = not Parent[c]
  168.                 List2.Text = tostring(Parent[c])
  169.             end)
  170.             PrevProp = List
  171.             Properties.CanvasSize = UDim2.new(0, 0, 0, List2.Position.Y.Offset+45)
  172.         end
  173.     end
  174.  
  175.     for _,q in pairs(BrickColorProperties) do
  176.         local Checker = CheckProperty(Parent, q)
  177.         if Checker then
  178.             local List = Instance.new("TextButton")
  179.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  180.             List.Name = tostring(q)
  181.             List.Text = tostring(q)
  182.             List.Size = UDim2.new(0.5, 0, 0, 35)
  183.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  184.             List.Font = "SciFi"
  185.             List.FontSize = "Size24"
  186.             List.Position = PrevProp.Position+UDim2.new(0, 0, 0, 36)
  187.             List.Parent = Properties
  188.             local List2 = Instance.new("TextBox")
  189.             List2.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  190.             List2.Name = tostring(q).."Box"
  191.             List2.Text = tostring(Parent[q])
  192.             List2.BackgroundColor3 = Color3.new(255/255, 255/255, 255/255)
  193.             List2.Size = UDim2.new(0.5, 0, 0, 35)
  194.             List2.Font = "SciFi"
  195.             List2.FontSize = "Size24"
  196.             List2.Position = PrevProp.Position+UDim2.new(0.5, 0, 0, 36)
  197.             List2.ClearTextOnFocus = false
  198.             List2.Parent = Properties
  199.             List2.FocusLost:connect(function()
  200.                 Parent[q] = List2.Text
  201.             end)
  202.             PrevProp = List
  203.             Properties.CanvasSize = UDim2.new(0, 0, 0, List2.Position.Y.Offset+45)
  204.         end
  205.     end
  206. end
  207.  
  208. function CheckExistance(Object)
  209.     local Exists = pcall(function()
  210.             if Object.Name then
  211.                 return
  212.             end
  213.         end)
  214.         return Exists
  215. end
  216.  
  217. function CreateSearchList(Parent)
  218.     CreateProperties(Parent)
  219.     Explorer.CanvasSize = UDim2.new(0, 0, 0, 0)
  220.     for _,c in pairs(Explorer:GetChildren()) do
  221.         if c.Name ~= "Back" then
  222.             c:Destroy()
  223.         end
  224.     end
  225.     local PrevButton = Explorer.Back
  226.     for _,v in pairs(Parent:GetChildren()) do
  227.         local Exists = CheckExistance(v)
  228.         if Exists then
  229.             if string.find(string.lower(v.Name), string.lower(SearchBar.Text)) or string.find(string.lower(v.ClassName), string.lower(SearchBar.Text)) or string.find(v.ClassName, "Value") and string.find(string.lower(v.Value), string.lower(SearchBar.Text)) then
  230.                 local List = Instance.new("TextButton")
  231.                 List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  232.                 pcall(function()
  233.                     if v:IsA("ModuleScript") or v:IsA("LocalScript") or v:IsA("RemoteEvent") or v:IsA("RemoteFunction") or string.find(v.ClassName, "Value") then
  234.                         List.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  235.                     end
  236.                 end)
  237.                 List.Name = tostring(v)
  238.                 List.Text = tostring(v).." ("..v.ClassName..")"
  239.                 List.Size = UDim2.new(1, 0, 0, 35)
  240.                 List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  241.                 List.Font = "SciFi"
  242.                 List.FontSize = "Size24"
  243.                 List.Position = PrevButton.Position+UDim2.new(0, 0, 0, 36)
  244.                 List.Parent = Explorer
  245.                 PrevButton = List
  246.                 Explorer.CanvasSize = UDim2.new(0, 0, 0, List.Position.Y.Offset+45)
  247.                 List.MouseButton1Down:connect(function()
  248.                     Current = Parent[List.Name]
  249.                     CreateList(Current)
  250.                 end)
  251.             end
  252.         end
  253.     end
  254.     Current.ChildAdded:connect(function(v)
  255.         if Current:FindFirstChild(tostring(v)) then
  256.             local List = Instance.new("TextButton")
  257.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  258.             pcall(function()
  259.                 if v:IsA("ModuleScript") or v:IsA("LocalScript") or v:IsA("RemoteEvent") or v:IsA("RemoteFunction") or string.find(v.ClassName, "Value") then
  260.                     List.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  261.                 end
  262.             end)
  263.             List.Name = tostring(v)
  264.             List.Text = tostring(v).." ("..v.ClassName..")"
  265.             List.Size = UDim2.new(1, 0, 0, 35)
  266.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  267.             List.Font = "SciFi"
  268.             List.FontSize = "Size24"
  269.             List.Position = PrevButton.Position+UDim2.new(0, 0, 0, 36)
  270.             List.Parent = Explorer
  271.             PrevButton = List
  272.             Explorer.CanvasSize = UDim2.new(0, 0, 0, List.Position.Y.Offset+45)
  273.             List.MouseButton1Down:connect(function()
  274.                 Current = Parent[List.Text]
  275.                 CreateList(Current)
  276.             end)
  277.         end
  278.     end)
  279. end
  280.  
  281. function CreateList(Parent)
  282.     CreateProperties(Parent)
  283.     Explorer.CanvasSize = UDim2.new(0, 0, 0, 0)
  284.     for _,c in pairs(Explorer:GetChildren()) do
  285.         if c.Name ~= "Back" then
  286.             c:Destroy()
  287.         end
  288.     end
  289.     local PrevButton = Explorer.Back
  290.     for _,v in pairs(Parent:GetChildren()) do
  291.         local Exists = CheckExistance(v)
  292.         if Exists then
  293.             local List = Instance.new("TextButton")
  294.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  295.             pcall(function()
  296.                 if v:IsA("ModuleScript") or v:IsA("LocalScript") or v:IsA("RemoteEvent") or v:IsA("RemoteFunction") or string.find(v.ClassName, "Value") then
  297.                     List.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  298.                 end
  299.             end)
  300.             List.Name = tostring(v)
  301.             List.Text = tostring(v).." ("..v.ClassName..")"
  302.             List.Size = UDim2.new(1, 0, 0, 35)
  303.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  304.             List.Font = "SciFi"
  305.             List.FontSize = "Size24"
  306.             List.Position = PrevButton.Position+UDim2.new(0, 0, 0, 36)
  307.             List.Parent = Explorer
  308.             PrevButton = List
  309.             Explorer.CanvasSize = UDim2.new(0, 0, 0, List.Position.Y.Offset+45)
  310.             List.MouseButton1Down:connect(function()
  311.                 Current = Parent[List.Name]
  312.                 CreateList(Current)
  313.             end)
  314.         end
  315.     end
  316.     Current.ChildAdded:connect(function(v)
  317.         if Current:FindFirstChild(tostring(v)) then
  318.             local List = Instance.new("TextButton")
  319.             List.TextColor3 = Color3.new(0/255, 0/255, 0/255)
  320.             pcall(function()
  321.                 if v:IsA("ModuleScript") or v:IsA("LocalScript") or v:IsA("RemoteEvent") or v:IsA("RemoteFunction") or string.find(v.ClassName, "Value") then
  322.                     List.TextColor3 = Color3.new(255/255, 0/255, 0/255)
  323.                 end
  324.             end)
  325.             List.Name = tostring(v)
  326.             List.Text = tostring(v).." ("..v.ClassName..")"
  327.             List.Size = UDim2.new(1, 0, 0, 35)
  328.             List.Style = Enum.ButtonStyle.RobloxRoundDropdownButton
  329.             List.Font = "SciFi"
  330.             List.FontSize = "Size24"
  331.             List.Position = PrevButton.Position+UDim2.new(0, 0, 0, 36)
  332.             List.Parent = Explorer
  333.             PrevButton = List
  334.             Explorer.CanvasSize = UDim2.new(0, 0, 0, List.Position.Y.Offset+45)
  335.             List.MouseButton1Down:connect(function()
  336.                 Current = Parent[List.Text]
  337.                 CreateList(Current)
  338.             end)
  339.         end
  340.     end)
  341. end
  342.  
  343. SearchBar.FocusLost:connect(function()
  344.     CreateSearchList(Current)
  345. end)
  346.  
  347. Explorer.Back.MouseButton1Down:connect(function()
  348.     if Current.Parent ~= nil then
  349.         Current = Current.Parent
  350.         CreateList(Current)
  351.     end
  352. end)
  353.  
  354. CreateList(Current)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement