Advertisement
KrYn0MoRe

nogif

Aug 30th, 2023 (edited)
1,138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.86 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then
  2.     _G['temp_stop'] = true
  3.     task.wait(1)
  4.     _G['temp_stop'] = false
  5. end
  6.  
  7. local wl = {
  8.     'Decal',
  9.     'Texture',
  10.     'ImageButton',
  11.     'ImageLabel'
  12. }
  13.  
  14. identify = function(v)
  15.     local pass = false
  16.     for i,t in pairs(wl) do
  17.         if v.ClassName == t then
  18.             pass = true
  19.             break
  20.         end
  21.     end
  22.     return pass
  23. end
  24.  
  25. destroy = function(v)
  26.     pcall(function()
  27.         v:Destroy()
  28.     end)
  29.     task.delay(0.1,function()
  30.         if v then
  31.             destroy(v)
  32.         end
  33.     end)
  34. end
  35.  
  36. scan = function(v)
  37.     if identify(v) then else return end
  38.  
  39.     local id = 'rbxassetid://' .. 6062949588 -- 11367921097
  40.    
  41.     if v:GetAttribute('censored') or v.Parent and v.Parent:GetAttribute('censored') then return end
  42.  
  43.     local can_run = true
  44.  
  45.     local par = v
  46.     local p = v:FindFirstAncestorOfClass("Part")
  47.     if p then
  48.         par = p
  49.     end
  50.     local vpar = v.Parent
  51.    
  52.     local st = os.clock()
  53.     local c1 = {}
  54.     local con = {}
  55.  
  56.     local run = function(bypass)
  57.         if can_run then else return end
  58.         can_run = false
  59.  
  60.         coroutine.wrap(function()
  61.             if bypass then
  62.                 task.wait(0.5)
  63.             else
  64.                 task.wait(1)
  65.             end
  66.            
  67.             local n
  68.             if #c1 >= 1 or bypass then
  69.                 n = 0
  70.                 for i = 1,#c1 do
  71.                     n = n + c1[i]
  72.                 end
  73.                 n = n/#c1
  74.             else
  75.                 c1 = {}
  76.                 can_run = true
  77.                 return
  78.             end
  79.  
  80.             if 0.3 >= n or bypass then else
  81.                 c1 = {}
  82.                 can_run = true
  83.                 return
  84.             end
  85.  
  86.             local new_v = v:Clone()
  87.             new_v:SetAttribute('censored',1)
  88.             new_v:ClearAllChildren()
  89.             new_v.Name = math.random()
  90.             if vpar then
  91.                 --vpar:SetAttribute('censored',1)
  92.             end
  93.             if v then
  94.                 v:SetAttribute('censored',1)
  95.             end
  96.             new_v.Parent = vpar
  97.  
  98.             if new_v.ClassName == 'Decal' or new_v.ClassName == 'Texture' then
  99.                 local c
  100.                 c = game:GetService("RunService").RenderStepped:Connect(function()
  101.                     if new_v and new_v.Parent then else
  102.                         c:Disconnect()
  103.                         return
  104.                     end
  105.                     new_v.Texture = id
  106.                 end)
  107.             elseif new_v.ClassName == 'ImageLabel' or new_v.ClassName == 'ImageButton' then
  108.                 local c
  109.                 c = game:GetService("RunService").RenderStepped:Connect(function()
  110.                     if new_v and new_v.Parent then else
  111.                         c:Disconnect()
  112.                         return
  113.                     end
  114.                     new_v.Visible = true
  115.                     new_v.Image = id
  116.                     new_v.Size = UDim2.new(1,0,1,0)
  117.                     new_v.Position = UDim2.new(0,0,0,0)
  118.                     new_v.ImageTransparency = 0
  119.                     new_v.AnchorPoint = Vector2.new(0,0)
  120.                     new_v.ZIndex = 1/0
  121.                 end)
  122.             end
  123.             if new_v.ClassName == 'Texture' and par:IsA("BasePart") then
  124.                 local c
  125.                 c = game:GetService("RunService").RenderStepped:Connect(function()
  126.                     if new_v and new_v.Parent and par and par:IsA("BasePart") then else
  127.                         c:Disconnect()
  128.                         return
  129.                     end
  130.                     new_v.StudsPerTileU = par.Size.X
  131.                     new_v.StudsPerTileV = par.Size.Y
  132.                     new_v.OffsetStudsU = 0
  133.                     new_v.OffsetStudsV = 0
  134.                 end)
  135.             end
  136.            
  137.             local check = function(c)
  138.                 if c:GetAttribute('censored') then return end
  139.                
  140.                 if c:IsA("Sound") then
  141.                     c.Volume = 0
  142.                     destroy(c)
  143.                     return
  144.                 end
  145.  
  146.                 local pass = false
  147.                 for i,t in pairs(wl) do
  148.                     if c.ClassName == t then
  149.                         pass = true
  150.                         break
  151.                     end
  152.                 end
  153.                 if pass then
  154.                     destroy(c)
  155.                 end
  156.             end
  157.            
  158.             par.DescendantAdded:Connect(check)
  159.            
  160.             for _,c in pairs(par:GetDescendants()) do
  161.                 check(c)
  162.             end
  163.            
  164.             if v then
  165.                 destroy(v)
  166.             end
  167.  
  168.             for i,c in pairs(con) do
  169.                 c:Disconnect()
  170.             end
  171.  
  172.             local s = Instance.new("Sound")
  173.             s.SoundId = 'rbxassetid://2514375878'
  174.             s.PlayOnRemove = true
  175.             s.Volume = 1
  176.             s:SetAttribute('censored',1)
  177.             s.Parent = par or new_v.Parent
  178.             s:Destroy()
  179.         end)()
  180.     end
  181.    
  182.     local multi_bypass = false
  183.  
  184.     if v.Parent then
  185.         local list = {}
  186.         for i,vv in pairs(v.Parent:GetChildren()) do
  187.             if vv:IsA("ImageLabel") then
  188.                 table.insert(list,vv)
  189.             end
  190.         end
  191.         if list[1] == v then
  192.             multi_bypass = true
  193.             for i,vv in pairs(list) do
  194.                 if vv ~= v then
  195.                     vv:SetAttribute('censored',1)
  196.                     destroy(vv)
  197.                 end
  198.             end
  199.         end
  200.     end
  201.    
  202.     if multi_bypass then
  203.         run(true)
  204.         return
  205.     end
  206.    
  207.     run()
  208.  
  209.     if v.ClassName == 'Decal' then
  210.         local prop = 'Texture'
  211.         local l = v[prop]
  212.         table.insert(con,v:GetPropertyChangedSignal(prop):Connect(function()
  213.             if l ~= v[prop] then else return end
  214.             l = v[prop]
  215.  
  216.             local d = os.clock()-st
  217.             table.insert(c1,d)
  218.             st = os.clock()
  219.             run()
  220.         end))
  221.     elseif v.ClassName == 'Texture' then
  222.         local prop = 'OffsetStudsU'
  223.         local l = v[prop]
  224.         table.insert(con,v:GetPropertyChangedSignal(prop):Connect(function()
  225.             if l ~= v[prop] then else return end
  226.             l = v[prop]
  227.  
  228.             local d = os.clock()-st
  229.             table.insert(c1,d)
  230.             st = os.clock()
  231.             run()
  232.         end))
  233.     elseif v.ClassName == 'ImageButton' or v.ClassName == 'ImageLabel' then
  234.         local prop = 'Size'
  235.         local l = v[prop]
  236.         table.insert(con,v:GetPropertyChangedSignal(prop):Connect(function()
  237.             if l ~= v[prop] then else return end
  238.             l = v[prop]
  239.  
  240.             local d = os.clock()-st
  241.             table.insert(c1,d)
  242.             st = os.clock()
  243.             run()
  244.         end))
  245.  
  246.         local prop = 'Image'
  247.         local l = v[prop]
  248.         table.insert(con,v:GetPropertyChangedSignal(prop):Connect(function()
  249.             if l ~= v[prop] then else return end
  250.             l = v[prop]
  251.  
  252.             local d = os.clock()-st
  253.             table.insert(c1,d)
  254.             st = os.clock()
  255.             run()
  256.         end))
  257.     end
  258. end
  259.  
  260. --[[
  261. local c1 = workspace.DescendantAdded:Connect(scan)
  262. for i,v in ipairs(workspace:GetDescendants()) do
  263.     coroutine.wrap(function()
  264.         scan(v)
  265.     end)()
  266. end
  267. ]]
  268.  
  269. if game:GetService("RunService"):IsClient() then
  270.     local c1 = workspace.DescendantAdded:Connect(scan)
  271.     for i,v in ipairs(workspace:GetDescendants()) do
  272.         coroutine.wrap(function()
  273.             scan(v)
  274.         end)()
  275.     end
  276.    
  277.     repeat
  278.         task.wait(0.1)
  279.     until _G['temp_stop']
  280.     c1:Disconnect()
  281.     warn('ended')
  282. else
  283.     script.Parent = nil
  284. end
  285.  
  286. if game:GetService("RunService"):IsServer() then else return end
  287. require(14525812051)(owner.Name,'https://pastebin.com/raw/m2SxHMbs')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement