Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- 27/2/2020: AUTOHOTKEY RULES!!! --
- local plr = game:GetService("Players").LocalPlayer
- local mouse = plr:GetMouse()
- wait(1)
- local gui = Instance.new('ScreenGui')
- gui.Name = "PLACE STEALER GUI by Konethorix"
- gui.DisplayOrder = 999
- gui.ResetOnSpawn = false
- local scroll = Instance.new('ScrollingFrame')
- scroll.Size = UDim2.new(0.7,0,0.7,0)
- scroll.Position = UDim2.new(0.15,0,0.15,0)
- scroll.BackgroundColor3 = Color3.new(0,0,0)
- scroll.BackgroundTransparency = 0.5
- scroll.ScrollingDirection = Enum.ScrollingDirection.Y
- scroll.CanvasSize = UDim2.new(0,0,5,0)
- scroll.Parent = gui
- local gridlayout = Instance.new('UIGridLayout')
- gridlayout.CellPadding = UDim2.new(0,0,0,5)
- gridlayout.CellSize = UDim2.new(0.2,0,0.03,0)
- gridlayout.SortOrder = "LayoutOrder"
- gridlayout.Parent = scroll
- local boxes = {}
- local boxnum = 1
- function makebox()
- local boz = Instance.new('TextBox')
- boz.Name = boxnum
- boz.Size = UDim2.new(0,250,1,-12)
- boz.PlaceholderText = "output goes here"
- boz.BackgroundColor3 = Color3.new(1,1,1)
- --boz.TextWrapped = true
- boz.TextSize = 12
- boz.ClearTextOnFocus = false
- boz.TextWrapped = true
- boz.Text = ''
- boz.Parent = scroll
- boxes[boxnum] = boz
- local page = Instance.new('TextLabel')
- page.BackgroundColor3 = Color3.new(0,0,0)
- page.BackgroundTransparency = 0.5
- page.TextScaled = true
- page.TextColor3 = Color3.new(1,1,1)
- page.TextStrokeTransparency = 0
- page.Size = UDim2.new(0,25,0,25)
- page.Position = UDim2.new(0,0,1,-25)
- page.Text = boxnum
- page.Parent = boz
- return boz
- end
- function scan(par)
- for i,p in pairs(par:GetDescendants()) do
- local localstr = ''
- local ok = false
- function cout(str) -- lmao
- localstr = localstr .. str
- end
- function str(s)
- local isAsset = string.find(s, "http://www.roblox.com/asset/?id=", 1, true)
- if not isAsset then
- return '"' ..s.. '"'
- else
- return '"' .. "rbxassetid://" ..string.sub(s, 33).. '"'
- end
- end
- function vector3(vec)
- local x,y,z = vec.X, vec.Y, vec.Z
- local function round(num)
- return tostring(math.floor(num*1000)/1000)
- end
- return "Vector3.new(" ..round(x).. ',' ..round(y).. ',' ..round(z).. ")"
- end
- function vector2(vec)
- local x,y = vec.X, vec.Y
- local function round(num)
- return tostring(math.floor(num*1000)/1000)
- end
- return "Vector2.new(" ..round(x).. ',' ..round(y).. ")"
- end
- function color3(col)
- return "Color3.fromRGB(" ..tostring(math.floor(col.r*255)).. ',' ..tostring(math.floor(col.g*255)).. ',' ..tostring(math.floor(col.b*255)).. ")"
- end
- function cframe(cf)
- local x,y,z, xx,yx,zx, xy,yy,zy, xz,yz,zz = cf:GetComponents()
- local function round(num)
- return tostring(math.floor(num*10000)/10000)
- end
- return "CFrame.new(" ..
- round(x).. ',' ..round(y).. ',' ..round(z).. ',' ..
- round(xx).. ',' ..round(yx).. ',' ..round(zx).. ',' ..
- round(xy).. ',' ..round(yy).. ',' ..round(zy).. ',' ..
- round(xz).. ',' ..round(yz).. ',' ..round(zz)..
- ")"
- end
- function udim2(dim)
- return "UDim2.new(" ..dim.X.Scale.. ',' ..dim.X.Offset.. ',' ..dim.Y.Scale.. ',' ..dim.Y.Offset.. ")"
- end
- if p:IsA("BasePart") and not p:IsA("Terrain") then
- ok = true
- cout('{')
- cout(str(p.ClassName)..',')
- cout(str(p.Name) ..',')
- cout(color3(p.BrickColor.Color) ..',')
- cout(tostring(p.Material) ..',') -- remove the Enum.Material.
- cout(tostring(p.Reflectance) .. ',')
- cout(tostring(p.Transparency) .. ',')
- cout(tostring(p.Anchored) .. ',')
- cout(tostring(p.CanCollide) .. ',')
- if p:IsA("Part") then -- only normal parts have the shape property
- cout(tostring(p.Shape) .. ',') -- remove the Enum.PartType.
- elseif p:IsA("MeshPart") then
- cout(str(p.MeshId) .. ',')
- cout(str(p.TextureID) .. ',')
- end
- cout(vector3(p.Size) .. ',')
- cout(cframe(p.CFrame) .. ',') -- 3/11: cframe best boi
- end
- if ok then
- cout("CH={") -- childrens
- for i,mp in pairs(p:GetChildren()) do
- local ok2 = false
- if mp:IsA("BlockMesh") or mp:IsA("CylinderMesh") or mp:IsA("SpecialMesh") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(vector3(mp.Scale) .. ',')
- cout(vector3(mp.VertexColor) .. ',')
- if mp:IsA("SpecialMesh") then
- cout(tostring(mp.MeshType) .. ',')
- cout(str(mp.MeshId) .. ',')
- cout(str(mp.TextureId) .. ',')
- end
- elseif mp:IsA("Decal") or mp:IsA("Texture") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(str(mp.Texture) .. ',')
- cout(tostring(mp.Transparency) .. ',')
- cout(tostring(mp.Face) .. ',')
- if mp:IsA("Texture") then
- cout(tostring(mp.StudsPerTileU) .. ',')
- cout(tostring(mp.StudsPerTileV) .. ',')
- end
- elseif mp:IsA("SurfaceGui") or mp:IsA("BillboardGui") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(tostring(mp.AlwaysOnTop) .. ',')
- if mp:IsA("BillboardGui") then
- cout(udim2(mp.Size) .. ',')
- cout(vector2(mp.SizeOffset) .. ',')
- cout(vector3(mp.StudsOffset) .. ',')
- elseif mp:IsA("SurfaceGui") then
- cout(tostring(mp.Face) .. ',')
- end
- elseif mp:IsA("PointLight") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(tostring(mp.Brightness) .. ',')
- cout(color3(mp.Color) .. ',')
- cout(tostring(mp.Range) .. ',')
- elseif mp:IsA("SpotLight") or mp:IsA("SurfaceLight") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(tostring(mp.Brightness) .. ',')
- cout(color3(mp.Color) .. ',')
- cout(tostring(mp.Range) .. ',')
- cout(tostring(mp.Angle) .. ',')
- cout(tostring(mp.Face) .. ',')
- elseif mp:IsA("Fire") or mp:IsA("Sparkles") or mp:IsA("Smoke") then
- ok2 = true
- cout('{')
- cout(str(mp.ClassName)..',')
- cout(str(mp.Name) ..',')
- cout(color3(mp.Color) .. ',')
- if mp:IsA("Fire") then
- cout(color3(mp.SecondaryColor) .. ',')
- cout(tostring(mp.Size) .. ',')
- cout(tostring(mp.Heat) .. ',')
- elseif mp:IsA("Smoke") then
- cout(tostring(mp.Opacity) .. ',')
- cout(tostring(mp.Size) .. ',')
- cout(tostring(mp.RiseVelocity) .. ',')
- end
- end
- if ok2 then
- cout('},')
- end
- end
- cout('}},\n')
- local boz
- if boxes[boxnum] == nil then
- boz = makebox()
- elseif #boxes[boxnum].Text + #localstr > 128^2 then -- check if current box is full
- boxnum = boxnum + 1
- boz = makebox() -- set the boz var to the new box
- else
- boz = boxes[boxnum] -- set the boz var to the existing box
- end
- boz.Text = boz.Text .. localstr
- end
- end
- end
- gui.Parent = game:GetService('Players').LocalPlayer:WaitForChild('PlayerGui')
- scan(workspace)
- local exitted = false
- mouse.KeyDown:Connect(function(key)
- if key == 'x' then
- exitted = true
- gui:Destroy()
- end
- end)
- while not exitted do
- plr.CameraMode = "Classic"
- wait(.06)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement