--Converted with ttyyuu12345's model to script plugin v4 function sandbox(var,func) local env = getfenv(func) local newenv = setmetatable({},{ __index = function(self,k) if k=="script" then return var else return env[k] end end, }) setfenv(func,newenv) return func end cors = {} mas = Instance.new("Model",game:GetService("Lighting")) Part0 = Instance.new("Part") SurfaceGui1 = Instance.new("SurfaceGui") Frame2 = Instance.new("Frame") Frame3 = Instance.new("Frame") ImageLabel4 = Instance.new("ImageLabel") Frame5 = Instance.new("Frame") Script6 = Instance.new("Script") Frame7 = Instance.new("Frame") ImageLabel8 = Instance.new("ImageLabel") Script9 = Instance.new("Script") Sound10 = Instance.new("Sound") LocalScript11 = Instance.new("LocalScript") Frame12 = Instance.new("Frame") ImageLabel13 = Instance.new("ImageLabel") Part0.Name = "vis" Part0.Parent = mas Part0.CFrame = CFrame.new(-19.4236393, 12.2008896, 3.28381348, 0, 0, -1, 0, 1, 0, 1, 0, 0) Part0.Orientation = Vector3.new(0, -90, 0) Part0.Position = Vector3.new(-19.42363929748535, 12.200889587402344, 3.2838134765625) Part0.Rotation = Vector3.new(0, -90, 0) Part0.Color = Color3.new(0.105882, 0.164706, 0.207843) Part0.Transparency = 0.8500000238418579 Part0.Size = Vector3.new(20, 15, 0.05000000074505806) Part0.Anchored = true Part0.BottomSurface = Enum.SurfaceType.Smooth Part0.BrickColor = BrickColor.new("Black") Part0.CanCollide = false Part0.Material = Enum.Material.Glass Part0.TopSurface = Enum.SurfaceType.Smooth Part0.brickColor = BrickColor.new("Black") SurfaceGui1.Parent = Part0 SurfaceGui1.LightInfluence = 1 SurfaceGui1.AlwaysOnTop = true Frame2.Name = "Holder" Frame2.Parent = SurfaceGui1 Frame2.Size = UDim2.new(1, 0, 1, 0) Frame2.BackgroundColor = BrickColor.new("Institutional white") Frame2.BackgroundColor3 = Color3.new(1, 1, 1) Frame2.BackgroundTransparency = 1 Frame2.BorderSizePixel = 0 Frame3.Name = "BG" Frame3.Parent = Frame2 Frame3.Size = UDim2.new(1, 0, 1, 0) Frame3.BackgroundColor = BrickColor.new("Really black") Frame3.BackgroundColor3 = Color3.new(0, 0, 0) Frame3.BackgroundTransparency = 0.550000011920929 Frame3.BorderColor = BrickColor.new("Lime green") Frame3.BorderColor3 = Color3.new(0, 1, 0) Frame3.BorderSizePixel = 3 ImageLabel4.Name = "Main" ImageLabel4.Parent = Frame3 ImageLabel4.Position = UDim2.new(0.386000007, 0, 0.344999999, 0) ImageLabel4.Size = UDim2.new(0, 200, 0, 200) ImageLabel4.BackgroundColor = BrickColor.new("Institutional white") ImageLabel4.BackgroundColor3 = Color3.new(1, 1, 1) ImageLabel4.BackgroundTransparency = 1 ImageLabel4.ZIndex = 3 ImageLabel4.Image = "rbxassetid://1038376176" Frame5.Name = "BarHolder" Frame5.Parent = Frame2 Frame5.Position = UDim2.new(0.484871984, 0, 0.475429982, 0) Frame5.Size = UDim2.new(0, 40, 0, 40) Frame5.BackgroundColor = BrickColor.new("Institutional white") Frame5.BackgroundColor3 = Color3.new(1, 1, 1) Frame5.BackgroundTransparency = 0.800000011920929 Frame5.BorderColor = BrickColor.new("Really black") Frame5.BorderColor3 = Color3.new(0, 0, 0) Script6.Name = "BarMaker" Script6.Parent = Frame5 table.insert(cors,sandbox(Script6,function() ------------------------------------ ToAng = 360 MainBar = script:WaitForChild("Frame") Holder = script.Parent Bars = 48 ------------------------------------ MathValue1 = ToAng/Bars print(MathValue1) for i = 0,Bars-1,1 do --wait() local ClonedBar = MainBar:Clone() local ang = MathValue1*(i+1) ClonedBar.Name = i ClonedBar.Rotation = ang ClonedBar.Parent = Holder ClonedBar.Bar.Size= UDim2.new(1,0,0,5) ClonedBar.Bar.ImageColor3=Color3.new(0,1,0) end Holder.Vis.Disabled = false end)) Frame7.Parent = Script6 Frame7.Size = UDim2.new(0, 40, 0, 40) Frame7.BackgroundColor = BrickColor.new("Institutional white") Frame7.BackgroundColor3 = Color3.new(1, 1, 1) Frame7.BackgroundTransparency = 1 Frame7.ZIndex = 2 ImageLabel8.Name = "Bar" ImageLabel8.Parent = Frame7 ImageLabel8.Position = UDim2.new(0, 0, 0, 100) ImageLabel8.Rotation = 180 ImageLabel8.Size = UDim2.new(1, 0, 0, 1) ImageLabel8.BackgroundColor = BrickColor.new("Institutional white") ImageLabel8.BackgroundColor3 = Color3.new(1, 1, 1) ImageLabel8.BackgroundTransparency = 1 ImageLabel8.Image = "rbxassetid://257495502" ImageLabel8.ImageTransparency = 0.25 Script9.Name = "Vis" Script9.Parent = Frame5 table.insert(cors,sandbox(Script9,function() local Soundbar=script.Parent local Sound=Soundbar.Sound local sClone = Sound:Clone() --[[ local Height=1.75 -- Max height of the bars local Bars={} for i,v in next,Soundbar:children() do if v:IsA("Frame") then table.insert(Bars,v) end end Height=Height*1.75 local nBars,Tweens=#Bars-1,{} -- EASING FUNCTIONS -- local function quadIn(t,b,c,d) t=t/d; return c*t*t+b; end; local function quadOut(t,b,c,d) t=t/d; return -c*t*(t-2)+b; end; local function Quad(obj,val,ease,d) local t,f,con,nt,st,sd=tick() Tweens[obj]=t -- Set identifier st=obj.Size.Y.Scale -- Start Value sd=val-st -- Change in Value f=ease=='In' and quadIn or quadOut -- Choose between Out/In con=game:GetService'RunService'.RenderStepped:connect(function() nt=tick()-t if Tweens[obj]~=t then -- Check for override con:disconnect() return end local nv=math.max(.2,f(math.min(d,nt),st,sd,d)) -- New Value obj.Size= UDim2.new(1,0,nv,nv) obj.ImageColor3=Color3.new(1,0,0):lerp(Color3.new(1,0,0),nv/Height) if nt>d then -- Easing done? con:disconnect() if ease~='In' then Quad(obj,.2,'In',.3) -- Drop the bar end end end) end -- BAR MANIPULATION -- local function CheckSet(N,S,D) -- Number, Scale, Direction local nS=Soundbar[tostring(N)].Bar.Size.Y.Scale if S>nS then Set(N,nS+(S-nS)/3,D) end end function Set(N,S,D) -- Number, Scale, Direction Quad(Soundbar[tostring(N)].Bar,S,'Out',.1) -- Grabs the bar and tweens if N>0 and D~=1 then -- Checks left for smaller bars to manipulate -- CheckSet(N-1,S,-1) end if Nd then -- Easing done? con:disconnect() if ease~='In' then Quad(obj,.2,'In',.3) -- Drop the bar end end end) end -- BAR MANIPULATION -- local function CheckSet(N,S,D) -- Number, Scale, Direction local nS=Soundbar[tostring(N)].Bar.Size.Y.Scale if S>nS then Set(N,nS+(S-nS)/3,D) end end function Set(N,S,D) -- Number, Scale, Direction Quad(Soundbar[tostring(N)].Bar,S,'Out',.1) -- Grabs the bar and tweens if N>0 and D~=1 then -- Checks left for smaller bars to manipulate -- CheckSet(N-1,S,-1) end if N .15 then rval= (PL/900-.15)*math.sin(Sound.TimePosition*(PL/1000*2)) end randomval = Vector3.new(Soundbar.Rotation,0,0):lerp(Vector3.new(Soundbar.Rotation+1,rval*5,10),PL/1500) gui.Holder.BG.BorderSizePixel = randomval.Z*2 gui.Holder.Rotation = randomval.Y gui.Holder.BG.Main.Rotation = -randomval.Y*1.5 --print(randomval.X) Soundbar.Rotation = randomval.X if Sound.IsPlaying and PL==PL then -- Sound is playing & PlaybackLoudness is not undefined if curr~=Sound.SoundId then MPL=0 -- Reset the relative Max PlaybackLoudness on song change curr=Sound.SoundId end MPL=math.max(PL,MPL) PL=PL/MPL -- Normalize PL based on relative Max PlaybackLoudness if PL==PL then Set(math.floor(PL*nBars),PL*Height) -- Modify bar relative to PlaybackLoudness end end end) while workspace:FindFirstChild("vis") do wait(5) Sound= Soundbar:WaitForChild("Sound") end end)) Frame12.Parent = Frame2 Frame12.Visible = false Frame12.Size = UDim2.new(1, 0, 1, 0) Frame12.BackgroundColor = BrickColor.new("Institutional white") Frame12.BackgroundColor3 = Color3.new(1, 1, 1) Frame12.BackgroundTransparency = 1 ImageLabel13.Parent = Frame12 ImageLabel13.Position = UDim2.new(0.25, 0, 0.25, 0) ImageLabel13.Visible = false ImageLabel13.Size = UDim2.new(0.5, 0, 0.5, 0) ImageLabel13.BackgroundColor = BrickColor.new("Institutional white") ImageLabel13.BackgroundColor3 = Color3.new(1, 1, 1) ImageLabel13.BackgroundTransparency = 1 ImageLabel13.ZIndex = 2 ImageLabel13.Image = "rbxassetid://255447206" for i,v in pairs(mas:GetChildren()) do v.Parent = workspace pcall(function() v:MakeJoints() end) end mas:Destroy() for i,v in pairs(cors) do spawn(function() pcall(v) end) end