View difference between Paste ID: 3Lfu2WxK and QKeTXA8F
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3
local RealPlayer = Player
4
do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer
5
	script.Parent = InternalData.RealOwner.Character
6
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
7
	local function createObject (connections, index)
8
    	local proxy = newproxy (true);local meta = getmetatable (proxy);
9
    	local runbind = function (self, i, ...) connections[i]:Fire (...); end;
10
		while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
11
    	meta.__index = function (self, i)
12
        	if (i == 'TriggerEvent') then return runbind end;
13
        	return connections[i] and connections[i].Event or index[i];
14
    	end;
15
    	meta.__newindex = index;meta.__metatable = false;return proxy
16
	end;
17
	local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
18
	local UserInputService = createObject({"InputBegan","InputEnded"},{})
19
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
20
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
21
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
22
	Event.OnServerEvent:Connect(function(FiredBy,Input)
23
		if FiredBy ~= InternalData.RealOwner then return end
24
		if Input.MouseEvent then
25
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
26
		elseif Input.Sound then
27
			if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
28
		else
29
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
30
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
31
			for _,Action in pairs(ContextActionService.Actions) do
32
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
33
			end
34
			Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
35
		end
36
	end)
37
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
38
	Event.Parent = NLS([[
39
		local Player = owner;
40
		local Sounds = {};
41
		local Event = script:WaitForChild("UserInput");
42
		local UserInputService = game:GetService("UserInputService");
43
		local Mouse = Player:GetMouse();
44
		local Input = function(Input,gameProcessedEvent)
45
			if gameProcessedEvent then return end
46
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
47
		end
48
		Event.OnClientEvent:connect(function(Args)
49
			if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
50
		end)
51
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
52
		local Hit,Target
53
		while wait(1/30) do
54
			for x,Sound in pairs(Sounds) do
55
				if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
56
			end
57
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
58
				Hit = Mouse.Hit;Target = Mouse.Target;
59
				Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
60
			end
61
		end
62
	]],InternalData.RealOwner.Character)
63
end
64
InternalData.NewOwner = setmetatable({},{
65
	__index = function (self,Index)
66
			local Type = type(InternalData.RealOwner[Index])
67
			if Type == "function" then
68
				if Index:lower() == "getmouse" or Index:lower() == "mouse" then
69
				return function (self)return InternalData["Mouse"] end
70
				end
71
			return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
72
		elseif Index == "FakePlayer" then
73
			return true
74
		end
75
		return InternalData.RealOwner[Index]
76
	end;
77
	__tostring = function(self) return tostring(InternalData.RealOwner) end
78
})
79
--LoadLibrary("RbxUtility").Create
80
InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
81
	if Library == "RbxUtility" then
82
		return setmetatable({},{
83
			__tostring = function() return "RbxUtility" end;
84
			__index = function(self, Index)
85
				if Index:lower() == "create" then
86
					return function(Type)
87
						return function(Data)
88
							Data = Data or {}
89
							local Inst = Instance.new(Type)
90
							for x,y in pairs(Data) do
91
								if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
92
								if y == owner then y = InternalData.RealOwner end
93
								Inst[x] = y
94
							end
95
							return Inst
96
						end
97
					end
98
				end
99
				return InternalData.LoadLibrary(Library)[Index]
100
			end
101
		})
102
	end
103
	return InternalData.LoadLibrary(Library)
104
end
105
InternalData.RealInstance = Instance;Instance = setmetatable({},{
106
	__index = function (self,Index)
107
		if Index:lower() == 'new' then
108
			return function (Type, Parent)
109
				if Parent == owner then Parent = InternalData.RealOwner end
110
				if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
111
				local Real = InternalData.RealInstance.new(Type,Parent)
112
				if not Type then return end
113
				if Type == "BillboardGui" then
114
					local ToReturn = setmetatable({},{
115
						__index = function (self,Index)
116
							if type(Real[Index]) == "function" then
117
								if Index:lower() == "clone" then
118
									return function (self)
119
										local Real = Real:Clone()
120
										local ToReturn = setmetatable({RealObject = Real},{
121
											__index = function (self,Index)
122
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
123
												return Real[Index]
124
											end;
125
											__newindex = function (self,Index,Value)
126
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
127
												if Value == owner then Value = InternalData.RealOwner end
128
												Real[Index] = Value
129
											end;
130
											__tostring = function(self) return tostring(Real) end;
131
										})
132
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
133
									end
134
								end
135
								return function (self,...) return Real[Index](Real,...)end
136
							end
137
							return Real[Index]
138
						end;
139
						__newindex = function (self,Index,Value)
140
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
141
							if Value == owner then Value = InternalData.RealOwner end
142
							Real[Index] = Value
143
						end;
144
						__tostring = function(self) return tostring(Real) end;
145
					})
146
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
147
				elseif Type:lower() == "sound" then
148
					Real.Parent = owner.Character;
149
					local ToReturn = setmetatable({RealObject = Real},{
150
						__index = function (self,Index)
151
							if Index:lower() == "playbackloudness" then
152
								return InternalData.SoundLoudness[Real] or 0
153
							elseif type(Real[Index]) == "function" then
154
								if Index:lower() == "clone" then
155
									return function (self)
156
										local Real = Real:Clone()
157
										local ToReturn = setmetatable({},{
158
											__index = function (self,Index)
159
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
160
												return Real[Index]
161
											end;
162
											__newindex = function (self,Index,Value)
163
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
164
												if Value == owner then Value = InternalData.RealOwner end
165
												Real[Index] = Value
166
											end;
167
											__tostring = function(self) return tostring(Real) end;
168
										})
169
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
170
									end
171
								end
172
								return function (self,...) return Real[Index](Real,...)end
173
							end
174
							return Real[Index]
175
						end;
176
						__newindex = function (self,Index,Value)
177
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
178
							if Value == owner then Value = InternalData.RealOwner end
179
							Real[Index] = Value
180
						end;
181
						__tostring = function(self) return tostring(Real) end;
182
					})
183
					InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
184
				else
185
					local ToReturn = setmetatable({RealObject = Real},{
186
						__index = function (self,Index)
187
							if type(Real[Index]) == "function" then
188
								if Index:lower() == "clone" then
189
									return function (self)
190
										local Real = Real:Clone()
191
										local ToReturn = setmetatable({},{
192
											__index = function (self,Index)
193
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
194
												return Real[Index]
195
											end;
196
											__newindex = function (self,Index,Value)
197
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
198
												if Value == owner then Value = InternalData.RealOwner end
199
												Real[Index] = Value
200
											end;
201
											__tostring = function(self) return tostring(Real) end;
202
										})
203
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
204
									end
205
								end
206
								return function (self,...) return Real[Index](Real,...)end
207
							end
208
							return Real[Index]
209
						end;
210
						__newindex = function (self,Index,Value)
211
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
212
							if Value == owner then Value = InternalData.RealOwner end
213
							Real[Index] = Value
214
						end;
215
						__tostring = function(self) return tostring(Real) end;
216
					})
217
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
218
				end
219
			end
220
		end
221
		return InternalData.RealInstance[Index]
222
	end;
223
	__tostring = function(self) return tostring(InternalData.RealInstance) end;
224
});
225
InternalData.RealGame = game;game = setmetatable({},{
226
	__index = function (self,Index)
227
		if InternalData.RealGame[Index] then
228
			local Type = type(InternalData.RealGame[Index])
229
			if Type == "function" then
230
				if Index:lower() == "getservice" or Index:lower() == "service" then
231
					return function (self,Service)
232
						local FakeServices = {
233
							["players"] = function()
234
								return setmetatable({},{
235
									__index = function (self2,Index2)
236
										local RealService = InternalData.RealGame:GetService(Service)
237
										local Type2 = type(RealService[Index2])
238
										if Type2 == "function" then
239
											return function (self,...) return RealService[Index2](RealService,...)end
240
										else
241
											if Index2:lower() == "localplayer" then return InternalData.NewOwner end
242
											return RealService[Index2]
243
										end
244
									end;
245
									__tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
246
								})
247
							end;
248
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
249
							["userinputservice"] = function() return InternalData["UserInputService"] end;
250
							["debris"] = function()
251
								return setmetatable({},{
252
									__index = function(self2,Index2)
253
										local RealService = InternalData.RealGame:GetService(Service)
254
										local Type2 = type(RealService[Index2])
255
										if Type2 == "function" then
256
											if Index2:lower() == "additem" then
257
												return function (self,Item,Time)
258
													if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
259
													return RealService:AddItem(Item,Time)
260
												end
261
											end
262
											return function (self,...) return RealService[Index2](RealService,...) end
263
										end
264
										return RealService[Index2]
265
									end;
266
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
267
								})
268
							end;
269
							["runservice"] = function()
270
								return setmetatable({},{
271
									__index = function(self2,Index2)
272
										local RealService = InternalData.RealGame:GetService(Service)
273
										local Type2 = type(RealService[Index2])
274
										if Type2 == "function" then
275
											return function (self,...) return RealService[Index2](RealService,...) end
276
										else
277
											local RunServices = {
278
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
279
												["renderstepped"] = function() return RealService["Stepped"] end
280
											}
281
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
282
											return RealService[Index2]
283
										end
284
									end;
285
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
286
								})
287
							end
288
						}
289
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
290
						return InternalData.RealGame:GetService(Service)
291
					end
292
				end
293
				return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
294
			else
295
				if game:GetService(Index) then return game:GetService(Index) end
296
				return InternalData.RealGame[Index]
297
			end
298
		end
299
		return nil
300
	end;
301
	__tostring = function(self) return tostring(InternalData.game) end
302
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
303
304
305
--change my name to yours
306
if game.Players.LocalPlayer.Name ~="TameDoNotClick" then game.Players.LocalPlayer.Character.Head:Remove()
307
end
308
local runDummyScript = function(f,scri)
309
local oldenv = getfenv(f)
310
local play = false
311
local newenv = setmetatable({}, {
312
__index = function(_, k)
313
if k:lower() == 'script' then
314
return scri
315
else
316
return oldenv[k]
317
end
318
end
319
})
320
setfenv(f, newenv)
321
ypcall(function() f() end)
322
end
323
function cycle(num)
324
	local section=num % 1 * 3;
325
	local secondary=0.5 * math.pi * (section % 1);
326
	if section < 1 then
327
		return 1,1 - math.cos(secondary),1 - math.sin(secondary);
328
	elseif section < 2 then
329
		return 1 - math.sin(secondary),1,1 - math.cos(secondary);
330
	else
331
		return 1 - math.cos(secondary),1 - math.sin(secondary),1;
332
	end
333
end
334
cors = {}
335
mas = Instance.new("Model",game:GetService("Lighting")) 
336
mas.Name = "CompiledModel"
337
o1 = Instance.new("Model")
338
o1.Name = "Soundbar"
339
o1.Parent = mas
340
o2 = Instance.new("Part")
341
o2.Name = "0"
342
o2.Parent = o1
343
o2.Position = Vector3.new(9.5, 0.200000018, 0)
344
o2.Anchored = true
345
o2.CFrame = CFrame.new(9.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
346
o2.CanCollide = false
347
o2.Size = Vector3.new(0.5, 0.200000003, 0.5)
348
o2.BottomSurface = Enum.SurfaceType.Smooth
349
o2.TopSurface = Enum.SurfaceType.Smooth
350
o3 = Instance.new("SpecialMesh")
351
o3.Parent = o2
352
o3.MeshId = "rbxassetid://9856898"
353
o3.Scale = Vector3.new(1, 0.400000006, 1)
354
o3.TextureId = "rbxassetid://2114473"
355
o3.MeshType = Enum.MeshType.FileMesh
356
o4 = Instance.new("Part")
357
o4.Name = "9"
358
o4.Parent = o1
359
o4.Position = Vector3.new(5, 0.200000018, 0)
360
o4.Anchored = true
361
o4.CFrame = CFrame.new(5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
362
o4.CanCollide = false
363
o4.Size = Vector3.new(0.5, 0.200000003, 0.5)
364
o4.BottomSurface = Enum.SurfaceType.Smooth
365
o4.TopSurface = Enum.SurfaceType.Smooth
366
o5 = Instance.new("SpecialMesh")
367
o5.Parent = o4
368
o5.MeshId = "rbxassetid://9856898"
369
o5.Scale = Vector3.new(1, 0.400000006, 1)
370
o5.TextureId = "rbxassetid://2114473"
371
o5.MeshType = Enum.MeshType.FileMesh
372
o6 = Instance.new("Part")
373
o6.Name = "10"
374
o6.Parent = o1
375
o6.Position = Vector3.new(4.5, 0.200000018, 0)
376
o6.Anchored = true
377
o6.CFrame = CFrame.new(4.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
378
o6.CanCollide = false
379
o6.Size = Vector3.new(0.5, 0.200000003, 0.5)
380
o6.BottomSurface = Enum.SurfaceType.Smooth
381
o6.TopSurface = Enum.SurfaceType.Smooth
382
o7 = Instance.new("SpecialMesh")
383
o7.Parent = o6
384
o7.MeshId = "rbxassetid://9856898"
385
o7.Scale = Vector3.new(1, 0.400000006, 1)
386
o7.TextureId = "rbxassetid://2114473"
387
o7.MeshType = Enum.MeshType.FileMesh
388
o8 = Instance.new("Part")
389
o8.Name = "11"
390
o8.Parent = o1
391
o8.Position = Vector3.new(4, 0.200000018, 0)
392
o8.Anchored = true
393
o8.CFrame = CFrame.new(4, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
394
o8.CanCollide = false
395
o8.Size = Vector3.new(0.5, 0.200000003, 0.5)
396
o8.BottomSurface = Enum.SurfaceType.Smooth
397
o8.TopSurface = Enum.SurfaceType.Smooth
398
o9 = Instance.new("SpecialMesh")
399
o9.Parent = o8
400
o9.MeshId = "rbxassetid://9856898"
401
o9.Scale = Vector3.new(1, 0.400000006, 1)
402
o9.TextureId = "rbxassetid://2114473"
403
o9.MeshType = Enum.MeshType.FileMesh
404
o10 = Instance.new("Part")
405
o10.Name = "12"
406
o10.Parent = o1
407
o10.Position = Vector3.new(3.5, 0.200000018, 0)
408
o10.Anchored = true
409
o10.CFrame = CFrame.new(3.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
410
o10.CanCollide = false
411
o10.Size = Vector3.new(0.5, 0.200000003, 0.5)
412
o10.BottomSurface = Enum.SurfaceType.Smooth
413
o10.TopSurface = Enum.SurfaceType.Smooth
414
o11 = Instance.new("SpecialMesh")
415
o11.Parent = o10
416
o11.MeshId = "rbxassetid://9856898"
417
o11.Scale = Vector3.new(1, 0.400000006, 1)
418
o11.TextureId = "rbxassetid://2114473"
419
o11.MeshType = Enum.MeshType.FileMesh
420
o12 = Instance.new("Part")
421
o12.Name = "13"
422
o12.Parent = o1
423
o12.Position = Vector3.new(3, 0.200000018, 0)
424
o12.Anchored = true
425
o12.CFrame = CFrame.new(3, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
426
o12.CanCollide = false
427
o12.Size = Vector3.new(0.5, 0.200000003, 0.5)
428
o12.BottomSurface = Enum.SurfaceType.Smooth
429
o12.TopSurface = Enum.SurfaceType.Smooth
430
o13 = Instance.new("SpecialMesh")
431
o13.Parent = o12
432
o13.MeshId = "rbxassetid://9856898"
433
o13.Scale = Vector3.new(1, 0.400000006, 1)
434
o13.TextureId = "rbxassetid://2114473"
435
o13.MeshType = Enum.MeshType.FileMesh
436
o14 = Instance.new("Part")
437
o14.Name = "1"
438
o14.Parent = o1
439
o14.Position = Vector3.new(9, 0.200000018, 0)
440
o14.Anchored = true
441
o14.CFrame = CFrame.new(9, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
442
o14.CanCollide = false
443
o14.Size = Vector3.new(0.5, 0.200000003, 0.5)
444
o14.BottomSurface = Enum.SurfaceType.Smooth
445
o14.TopSurface = Enum.SurfaceType.Smooth
446
o15 = Instance.new("SpecialMesh")
447
o15.Parent = o14
448
o15.MeshId = "rbxassetid://9856898"
449
o15.Scale = Vector3.new(1, 0.400000006, 1)
450
o15.TextureId = "rbxassetid://2114473"
451
o15.MeshType = Enum.MeshType.FileMesh
452
o16 = Instance.new("Part")
453
o16.Name = "19"
454
o16.Parent = o1
455
o16.Position = Vector3.new(0, 0.200000018, 0)
456
o16.Anchored = true
457
o16.CFrame = CFrame.new(0, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
458
o16.CanCollide = false
459
o16.Size = Vector3.new(0.5, 0.200000003, 0.5)
460
o16.BottomSurface = Enum.SurfaceType.Smooth
461
o16.TopSurface = Enum.SurfaceType.Smooth
462
o17 = Instance.new("SpecialMesh")
463
o17.Parent = o16
464
o17.MeshId = "rbxassetid://9856898"
465
o17.Scale = Vector3.new(1, 0.400000006, 1)
466
o17.TextureId = "rbxassetid://2114473"
467
o17.MeshType = Enum.MeshType.FileMesh
468
o18 = Instance.new("Part")
469
o18.Name = "20"
470
o18.Parent = o1
471
o18.Position = Vector3.new(-0.5, 0.200000018, 0)
472
o18.Anchored = true
473
o18.CFrame = CFrame.new(-0.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
474
o18.CanCollide = false
475
o18.Size = Vector3.new(0.5, 0.200000003, 0.5)
476
o18.BottomSurface = Enum.SurfaceType.Smooth
477
o18.TopSurface = Enum.SurfaceType.Smooth
478
o19 = Instance.new("SpecialMesh")
479
o19.Parent = o18
480
o19.MeshId = "rbxassetid://9856898"
481
o19.Scale = Vector3.new(1, 0.400000006, 1)
482
o19.TextureId = "rbxassetid://2114473"
483
o19.MeshType = Enum.MeshType.FileMesh
484
o20 = Instance.new("Part")
485
o20.Name = "21"
486
o20.Parent = o1
487
o20.Position = Vector3.new(-1, 0.200000018, 0)
488
o20.Anchored = true
489
o20.CFrame = CFrame.new(-1, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
490
o20.CanCollide = false
491
o20.Size = Vector3.new(0.5, 0.200000003, 0.5)
492
o20.BottomSurface = Enum.SurfaceType.Smooth
493
o20.TopSurface = Enum.SurfaceType.Smooth
494
o21 = Instance.new("SpecialMesh")
495
o21.Parent = o20
496
o21.MeshId = "rbxassetid://9856898"
497
o21.Scale = Vector3.new(1, 0.400000006, 1)
498
o21.TextureId = "rbxassetid://2114473"
499
o21.MeshType = Enum.MeshType.FileMesh
500
o22 = Instance.new("Part")
501
o22.Name = "22"
502
o22.Parent = o1
503
o22.Position = Vector3.new(-1.5, 0.200000018, 0)
504
o22.Anchored = true
505
o22.CFrame = CFrame.new(-1.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
506
o22.CanCollide = false
507
o22.Size = Vector3.new(0.5, 0.200000003, 0.5)
508
o22.BottomSurface = Enum.SurfaceType.Smooth
509
o22.TopSurface = Enum.SurfaceType.Smooth
510
o23 = Instance.new("SpecialMesh")
511
o23.Parent = o22
512
o23.MeshId = "rbxassetid://9856898"
513
o23.Scale = Vector3.new(1, 0.400000006, 1)
514
o23.TextureId = "rbxassetid://2114473"
515
o23.MeshType = Enum.MeshType.FileMesh
516
o24 = Instance.new("Part")
517
o24.Name = "23"
518
o24.Parent = o1
519
o24.Position = Vector3.new(-2, 0.200000018, 0)
520
o24.Anchored = true
521
o24.CFrame = CFrame.new(-2, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
522
o24.CanCollide = false
523
o24.Size = Vector3.new(0.5, 0.200000003, 0.5)
524
o24.BottomSurface = Enum.SurfaceType.Smooth
525
o24.TopSurface = Enum.SurfaceType.Smooth
526
o25 = Instance.new("SpecialMesh")
527
o25.Parent = o24
528
o25.MeshId = "rbxassetid://9856898"
529
o25.Scale = Vector3.new(1, 0.400000006, 1)
530
o25.TextureId = "rbxassetid://2114473"
531
o25.MeshType = Enum.MeshType.FileMesh
532
o26 = Instance.new("Part")
533
o26.Name = "2"
534
o26.Parent = o1
535
o26.Position = Vector3.new(8.5, 0.200000018, 0)
536
o26.Anchored = true
537
o26.CFrame = CFrame.new(8.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
538
o26.CanCollide = false
539
o26.Size = Vector3.new(0.5, 0.200000003, 0.5)
540
o26.BottomSurface = Enum.SurfaceType.Smooth
541
o26.TopSurface = Enum.SurfaceType.Smooth
542
o27 = Instance.new("SpecialMesh")
543
o27.Parent = o26
544
o27.MeshId = "rbxassetid://9856898"
545
o27.Scale = Vector3.new(1, 0.400000006, 1)
546
o27.TextureId = "rbxassetid://2114473"
547
o27.MeshType = Enum.MeshType.FileMesh
548
o28 = Instance.new("Part")
549
o28.Name = "29"
550
o28.Parent = o1
551
o28.Position = Vector3.new(-5, 0.200000018, 0)
552
o28.Anchored = true
553
o28.CFrame = CFrame.new(-5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
554
o28.CanCollide = false
555
o28.Size = Vector3.new(0.5, 0.200000003, 0.5)
556
o28.BottomSurface = Enum.SurfaceType.Smooth
557
o28.TopSurface = Enum.SurfaceType.Smooth
558
o29 = Instance.new("SpecialMesh")
559
o29.Parent = o28
560
o29.MeshId = "rbxassetid://9856898"
561
o29.Scale = Vector3.new(1, 0.400000006, 1)
562
o29.TextureId = "rbxassetid://2114473"
563
o29.MeshType = Enum.MeshType.FileMesh
564
o30 = Instance.new("Part")
565
o30.Name = "30"
566
o30.Parent = o1
567
o30.Position = Vector3.new(-5.5, 0.200000018, 0)
568
o30.Anchored = true
569
o30.CFrame = CFrame.new(-5.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
570
o30.CanCollide = false
571
o30.Size = Vector3.new(0.5, 0.200000003, 0.5)
572
o30.BottomSurface = Enum.SurfaceType.Smooth
573
o30.TopSurface = Enum.SurfaceType.Smooth
574
o31 = Instance.new("SpecialMesh")
575
o31.Parent = o30
576
o31.MeshId = "rbxassetid://9856898"
577
o31.Scale = Vector3.new(1, 0.400000006, 1)
578
o31.TextureId = "rbxassetid://2114473"
579
o31.MeshType = Enum.MeshType.FileMesh
580
o32 = Instance.new("Part")
581
o32.Name = "31"
582
o32.Parent = o1
583
o32.Position = Vector3.new(-6, 0.200000018, 0)
584
o32.Anchored = true
585
o32.CFrame = CFrame.new(-6, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
586
o32.CanCollide = false
587
o32.Size = Vector3.new(0.5, 0.200000003, 0.5)
588
o32.BottomSurface = Enum.SurfaceType.Smooth
589
o32.TopSurface = Enum.SurfaceType.Smooth
590
o33 = Instance.new("SpecialMesh")
591
o33.Parent = o32
592
o33.MeshId = "rbxassetid://9856898"
593
o33.Scale = Vector3.new(1, 0.400000006, 1)
594
o33.TextureId = "rbxassetid://2114473"
595
o33.MeshType = Enum.MeshType.FileMesh
596
o34 = Instance.new("Part")
597
o34.Name = "32"
598
o34.Parent = o1
599
o34.Position = Vector3.new(-6.5, 0.200000018, 0)
600
o34.Anchored = true
601
o34.CFrame = CFrame.new(-6.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
602
o34.CanCollide = false
603
o34.Size = Vector3.new(0.5, 0.200000003, 0.5)
604
o34.BottomSurface = Enum.SurfaceType.Smooth
605
o34.TopSurface = Enum.SurfaceType.Smooth
606
o35 = Instance.new("SpecialMesh")
607
o35.Parent = o34
608
o35.MeshId = "rbxassetid://9856898"
609
o35.Scale = Vector3.new(1, 0.400000006, 1)
610
o35.TextureId = "rbxassetid://2114473"
611
o35.MeshType = Enum.MeshType.FileMesh
612
o36 = Instance.new("Part")
613
o36.Name = "33"
614
o36.Parent = o1
615
o36.Position = Vector3.new(-7, 0.200000018, 0)
616
o36.Anchored = true
617
o36.CFrame = CFrame.new(-7, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
618
o36.CanCollide = false
619
o36.Size = Vector3.new(0.5, 0.200000003, 0.5)
620
o36.BottomSurface = Enum.SurfaceType.Smooth
621
o36.TopSurface = Enum.SurfaceType.Smooth
622
o37 = Instance.new("SpecialMesh")
623
o37.Parent = o36
624
o37.MeshId = "rbxassetid://9856898"
625
o37.Scale = Vector3.new(1, 0.400000006, 1)
626
o37.TextureId = "rbxassetid://2114473"
627
o37.MeshType = Enum.MeshType.FileMesh
628
o38 = Instance.new("Part")
629
o38.Name = "3"
630
o38.Parent = o1
631
o38.Position = Vector3.new(8, 0.200000018, 0)
632
o38.Anchored = true
633
o38.CFrame = CFrame.new(8, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
634
o38.CanCollide = false
635
o38.Size = Vector3.new(0.5, 0.200000003, 0.5)
636
o38.BottomSurface = Enum.SurfaceType.Smooth
637
o38.TopSurface = Enum.SurfaceType.Smooth
638
o39 = Instance.new("SpecialMesh")
639
o39.Parent = o38
640
o39.MeshId = "rbxassetid://9856898"
641
o39.Scale = Vector3.new(1, 0.400000006, 1)
642
o39.TextureId = "rbxassetid://2114473"
643
o39.MeshType = Enum.MeshType.FileMesh
644
o40 = Instance.new("Part")
645
o40.Name = "14"
646
o40.Parent = o1
647
o40.Position = Vector3.new(2.5, 0.200000018, 0)
648
o40.Anchored = true
649
o40.CFrame = CFrame.new(2.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
650
o40.CanCollide = false
651
o40.Size = Vector3.new(0.5, 0.200000003, 0.5)
652
o40.BottomSurface = Enum.SurfaceType.Smooth
653
o40.TopSurface = Enum.SurfaceType.Smooth
654
o41 = Instance.new("SpecialMesh")
655
o41.Parent = o40
656
o41.MeshId = "rbxassetid://9856898"
657
o41.Scale = Vector3.new(1, 0.400000006, 1)
658
o41.TextureId = "rbxassetid://2114473"
659
o41.MeshType = Enum.MeshType.FileMesh
660
o42 = Instance.new("Part")
661
o42.Name = "24"
662
o42.Parent = o1
663
o42.Position = Vector3.new(-2.5, 0.200000018, 0)
664
o42.Anchored = true
665
o42.CFrame = CFrame.new(-2.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
666
o42.CanCollide = false
667
o42.Size = Vector3.new(0.5, 0.200000003, 0.5)
668
o42.BottomSurface = Enum.SurfaceType.Smooth
669
o42.TopSurface = Enum.SurfaceType.Smooth
670
o43 = Instance.new("SpecialMesh")
671
o43.Parent = o42
672
o43.MeshId = "rbxassetid://9856898"
673
o43.Scale = Vector3.new(1, 0.400000006, 1)
674
o43.TextureId = "rbxassetid://2114473"
675
o43.MeshType = Enum.MeshType.FileMesh
676
o44 = Instance.new("Part")
677
o44.Name = "4"
678
o44.Parent = o1
679
o44.Position = Vector3.new(7.5, 0.200000018, 0)
680
o44.Anchored = true
681
o44.CFrame = CFrame.new(7.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
682
o44.CanCollide = false
683
o44.Size = Vector3.new(0.5, 0.200000003, 0.5)
684
o44.BottomSurface = Enum.SurfaceType.Smooth
685
o44.TopSurface = Enum.SurfaceType.Smooth
686
o45 = Instance.new("SpecialMesh")
687
o45.Parent = o44
688
o45.MeshId = "rbxassetid://9856898"
689
o45.Scale = Vector3.new(1, 0.400000006, 1)
690
o45.TextureId = "rbxassetid://2114473"
691
o45.MeshType = Enum.MeshType.FileMesh
692
o46 = Instance.new("Part")
693
o46.Name = "34"
694
o46.Parent = o1
695
o46.Position = Vector3.new(-7.5, 0.200000018, 0)
696
o46.Anchored = true
697
o46.CFrame = CFrame.new(-7.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
698
o46.CanCollide = false
699
o46.Size = Vector3.new(0.5, 0.200000003, 0.5)
700
o46.BottomSurface = Enum.SurfaceType.Smooth
701
o46.TopSurface = Enum.SurfaceType.Smooth
702
o47 = Instance.new("SpecialMesh")
703
o47.Parent = o46
704
o47.MeshId = "rbxassetid://9856898"
705
o47.Scale = Vector3.new(1, 0.400000006, 1)
706
o47.TextureId = "rbxassetid://2114473"
707
o47.MeshType = Enum.MeshType.FileMesh
708
o48 = Instance.new("Part")
709
o48.Name = "15"
710
o48.Parent = o1
711
o48.Position = Vector3.new(2, 0.200000018, 0)
712
o48.Anchored = true
713-
    local txt1 = "Music Spectrum by iMannyz"
713+
714-
    local txt2 = "Credits: DevGamerzz - Interface Help\n iAmAura - Clutch Interface Fix <3\n(DID NOT GIVE ttyyuu12345 credit for the m2s plugin)"
714+
715
o48.Size = Vector3.new(0.5, 0.200000003, 0.5)
716
o48.BottomSurface = Enum.SurfaceType.Smooth
717
o48.TopSurface = Enum.SurfaceType.Smooth
718
o49 = Instance.new("SpecialMesh")
719
o49.Parent = o48
720
o49.MeshId = "rbxassetid://9856898"
721
o49.Scale = Vector3.new(1, 0.400000006, 1)
722
o49.TextureId = "rbxassetid://2114473"
723
o49.MeshType = Enum.MeshType.FileMesh
724
o50 = Instance.new("Part")
725
o50.Name = "25"
726
o50.Parent = o1
727
o50.Position = Vector3.new(-3, 0.200000018, 0)
728
o50.Anchored = true
729
o50.CFrame = CFrame.new(-3, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
730
o50.CanCollide = false
731
o50.Size = Vector3.new(0.5, 0.200000003, 0.5)
732
o50.BottomSurface = Enum.SurfaceType.Smooth
733
o50.TopSurface = Enum.SurfaceType.Smooth
734
o51 = Instance.new("SpecialMesh")
735
o51.Parent = o50
736
o51.MeshId = "rbxassetid://9856898"
737
o51.Scale = Vector3.new(1, 0.400000006, 1)
738
o51.TextureId = "rbxassetid://2114473"
739
o51.MeshType = Enum.MeshType.FileMesh
740
o52 = Instance.new("Part")
741
o52.Name = "5"
742
o52.Parent = o1
743
o52.Position = Vector3.new(7, 0.200000018, 0)
744
o52.Anchored = true
745
o52.CFrame = CFrame.new(7, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
746
o52.CanCollide = false
747
o52.Size = Vector3.new(0.5, 0.200000003, 0.5)
748
o52.BottomSurface = Enum.SurfaceType.Smooth
749
o52.TopSurface = Enum.SurfaceType.Smooth
750
o53 = Instance.new("SpecialMesh")
751
o53.Parent = o52
752
o53.MeshId = "rbxassetid://9856898"
753
o53.Scale = Vector3.new(1, 0.400000006, 1)
754
o53.TextureId = "rbxassetid://2114473"
755
o53.MeshType = Enum.MeshType.FileMesh
756
o54 = Instance.new("Part")
757
o54.Name = "35"
758
o54.Parent = o1
759
o54.Position = Vector3.new(-8, 0.200000018, 0)
760
o54.Anchored = true
761
o54.CFrame = CFrame.new(-8, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
762
o54.CanCollide = false
763
o54.Size = Vector3.new(0.5, 0.200000003, 0.5)
764
o54.BottomSurface = Enum.SurfaceType.Smooth
765
o54.TopSurface = Enum.SurfaceType.Smooth
766
o55 = Instance.new("SpecialMesh")
767
o55.Parent = o54
768
o55.MeshId = "rbxassetid://9856898"
769
o55.Scale = Vector3.new(1, 0.400000006, 1)
770
o55.TextureId = "rbxassetid://2114473"
771
o55.MeshType = Enum.MeshType.FileMesh
772
o56 = Instance.new("Part")
773
o56.Name = "16"
774
o56.Parent = o1
775
o56.Position = Vector3.new(1.5, 0.200000018, 0)
776
o56.Anchored = true
777
o56.CFrame = CFrame.new(1.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
778
o56.CanCollide = false
779
o56.Size = Vector3.new(0.5, 0.200000003, 0.5)
780
o56.BottomSurface = Enum.SurfaceType.Smooth
781
o56.TopSurface = Enum.SurfaceType.Smooth
782
o57 = Instance.new("SpecialMesh")
783
o57.Parent = o56
784
o57.MeshId = "rbxassetid://9856898"
785
o57.Scale = Vector3.new(1, 0.400000006, 1)
786
o57.TextureId = "rbxassetid://2114473"
787
o57.MeshType = Enum.MeshType.FileMesh
788
o58 = Instance.new("Part")
789
o58.Name = "6"
790
o58.Parent = o1
791
o58.Position = Vector3.new(6.5, 0.200000018, 0)
792
o58.Anchored = true
793
o58.CFrame = CFrame.new(6.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
794
o58.CanCollide = false
795
o58.Size = Vector3.new(0.5, 0.200000003, 0.5)
796
o58.BottomSurface = Enum.SurfaceType.Smooth
797
o58.TopSurface = Enum.SurfaceType.Smooth
798
o59 = Instance.new("SpecialMesh")
799
o59.Parent = o58
800
o59.MeshId = "rbxassetid://9856898"
801
o59.Scale = Vector3.new(1, 0.400000006, 1)
802
o59.TextureId = "rbxassetid://2114473"
803
o59.MeshType = Enum.MeshType.FileMesh
804
o60 = Instance.new("Part")
805
o60.Name = "26"
806
o60.Parent = o1
807
o60.Position = Vector3.new(-3.5, 0.200000018, 0)
808
o60.Anchored = true
809
o60.CFrame = CFrame.new(-3.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
810
o60.CanCollide = false
811
o60.Size = Vector3.new(0.5, 0.200000003, 0.5)
812
o60.BottomSurface = Enum.SurfaceType.Smooth
813
o60.TopSurface = Enum.SurfaceType.Smooth
814
o61 = Instance.new("SpecialMesh")
815
o61.Parent = o60
816
o61.MeshId = "rbxassetid://9856898"
817
o61.Scale = Vector3.new(1, 0.400000006, 1)
818
o61.TextureId = "rbxassetid://2114473"
819
o61.MeshType = Enum.MeshType.FileMesh
820
o62 = Instance.new("Part")
821
o62.Name = "36"
822
o62.Parent = o1
823
o62.Position = Vector3.new(-8.5, 0.200000018, 0)
824
o62.Anchored = true
825
o62.CFrame = CFrame.new(-8.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
826
o62.CanCollide = false
827
o62.Size = Vector3.new(0.5, 0.200000003, 0.5)
828
o62.BottomSurface = Enum.SurfaceType.Smooth
829
o62.TopSurface = Enum.SurfaceType.Smooth
830
o63 = Instance.new("SpecialMesh")
831
o63.Parent = o62
832
o63.MeshId = "rbxassetid://9856898"
833
o63.Scale = Vector3.new(1, 0.400000006, 1)
834
o63.TextureId = "rbxassetid://2114473"
835
o63.MeshType = Enum.MeshType.FileMesh
836
o64 = Instance.new("Part")
837
o64.Name = "17"
838
o64.Parent = o1
839
o64.Position = Vector3.new(1, 0.200000018, 0)
840
o64.Anchored = true
841
o64.CFrame = CFrame.new(1, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
842
o64.CanCollide = false
843
o64.Size = Vector3.new(0.5, 0.200000003, 0.5)
844
o64.BottomSurface = Enum.SurfaceType.Smooth
845
o64.TopSurface = Enum.SurfaceType.Smooth
846
o65 = Instance.new("SpecialMesh")
847
o65.Parent = o64
848
o65.MeshId = "rbxassetid://9856898"
849
o65.Scale = Vector3.new(1, 0.400000006, 1)
850
o65.TextureId = "rbxassetid://2114473"
851
o65.MeshType = Enum.MeshType.FileMesh
852
o66 = Instance.new("Part")
853
o66.Name = "27"
854
o66.Parent = o1
855
o66.Position = Vector3.new(-4, 0.200000018, 0)
856
o66.Anchored = true
857
o66.CFrame = CFrame.new(-4, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
858
o66.CanCollide = false
859
o66.Size = Vector3.new(0.5, 0.200000003, 0.5)
860
o66.BottomSurface = Enum.SurfaceType.Smooth
861
o66.TopSurface = Enum.SurfaceType.Smooth
862
o67 = Instance.new("SpecialMesh")
863
o67.Parent = o66
864
o67.MeshId = "rbxassetid://9856898"
865
o67.Scale = Vector3.new(1, 0.400000006, 1)
866
o67.TextureId = "rbxassetid://2114473"
867
o67.MeshType = Enum.MeshType.FileMesh
868
o68 = Instance.new("Part")
869
o68.Name = "7"
870
o68.Parent = o1
871
o68.Position = Vector3.new(6, 0.200000018, 0)
872
o68.Anchored = true
873
o68.CFrame = CFrame.new(6, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
874
o68.CanCollide = false
875
o68.Size = Vector3.new(0.5, 0.200000003, 0.5)
876
o68.BottomSurface = Enum.SurfaceType.Smooth
877
o68.TopSurface = Enum.SurfaceType.Smooth
878
o69 = Instance.new("SpecialMesh")
879
o69.Parent = o68
880
o69.MeshId = "rbxassetid://9856898"
881
o69.Scale = Vector3.new(1, 0.400000006, 1)
882
o69.TextureId = "rbxassetid://2114473"
883
o69.MeshType = Enum.MeshType.FileMesh
884
o70 = Instance.new("Part")
885
o70.Name = "37"
886
o70.Parent = o1
887
o70.Position = Vector3.new(-9, 0.200000018, 0)
888
o70.Anchored = true
889
o70.CFrame = CFrame.new(-9, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
890
o70.CanCollide = false
891
o70.Size = Vector3.new(0.5, 0.200000003, 0.5)
892
o70.BottomSurface = Enum.SurfaceType.Smooth
893
o70.TopSurface = Enum.SurfaceType.Smooth
894
o71 = Instance.new("SpecialMesh")
895
o71.Parent = o70
896
o71.MeshId = "rbxassetid://9856898"
897
o71.Scale = Vector3.new(1, 0.400000006, 1)
898
o71.TextureId = "rbxassetid://2114473"
899
o71.MeshType = Enum.MeshType.FileMesh
900
o72 = Instance.new("Part")
901
o72.Name = "8"
902
o72.Parent = o1
903
o72.Position = Vector3.new(5.5, 0.200000018, 0)
904
o72.Anchored = true
905
o72.CFrame = CFrame.new(5.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
906
o72.CanCollide = false
907
o72.Size = Vector3.new(0.5, 0.200000003, 0.5)
908
o72.BottomSurface = Enum.SurfaceType.Smooth
909
o72.TopSurface = Enum.SurfaceType.Smooth
910
o73 = Instance.new("SpecialMesh")
911
o73.Parent = o72
912
o73.MeshId = "rbxassetid://9856898"
913
o73.Scale = Vector3.new(1, 0.400000006, 1)
914
o73.TextureId = "rbxassetid://2114473"
915
o73.MeshType = Enum.MeshType.FileMesh
916
o74 = Instance.new("Part")
917
o74.Name = "18"
918
o74.Parent = o1
919
o74.Position = Vector3.new(0.5, 0.200000018, 0)
920
o74.Anchored = true
921
o74.CFrame = CFrame.new(0.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
922
o74.CanCollide = false
923
o74.Size = Vector3.new(0.5, 0.200000003, 0.5)
924
o74.BottomSurface = Enum.SurfaceType.Smooth
925
o74.TopSurface = Enum.SurfaceType.Smooth
926
o75 = Instance.new("SpecialMesh")
927
o75.Parent = o74
928
o75.MeshId = "rbxassetid://9856898"
929
o75.Scale = Vector3.new(1, 0.400000006, 1)
930
o75.TextureId = "rbxassetid://2114473"
931
o75.MeshType = Enum.MeshType.FileMesh
932
o76 = Instance.new("Part")
933
o76.Name = "28"
934
o76.Parent = o1
935
o76.Position = Vector3.new(-4.5, 0.200000018, 0)
936
o76.Anchored = true
937
o76.CFrame = CFrame.new(-4.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
938
o76.CanCollide = false
939
o76.Size = Vector3.new(0.5, 0.200000003, 0.5)
940
o76.BottomSurface = Enum.SurfaceType.Smooth
941
o76.TopSurface = Enum.SurfaceType.Smooth
942
o77 = Instance.new("SpecialMesh")
943
o77.Parent = o76
944
o77.MeshId = "rbxassetid://9856898"
945
o77.Scale = Vector3.new(1, 0.400000006, 1)
946
o77.TextureId = "rbxassetid://2114473"
947
o77.MeshType = Enum.MeshType.FileMesh
948
o78 = Instance.new("Part")
949
o78.Name = "38"
950
o78.Parent = o1
951
o78.Position = Vector3.new(-9.5, 0.200000018, 0)
952
o78.Anchored = true
953
o78.CFrame = CFrame.new(-9.5, 0.200000018, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
954
o78.CanCollide = false
955
o78.Size = Vector3.new(0.5, 0.200000003, 0.5)
956
o78.BottomSurface = Enum.SurfaceType.Smooth
957
o78.TopSurface = Enum.SurfaceType.Smooth
958
o79 = Instance.new("SpecialMesh")
959
o79.Parent = o78
960
o79.MeshId = "rbxassetid://9856898"
961
o79.Scale = Vector3.new(1, 0.400000006, 1)
962
o79.TextureId = "rbxassetid://2114473"
963
o79.MeshType = Enum.MeshType.FileMesh
964
o80 = Instance.new("SpecialMesh")
965
o80.Parent = o1
966
o80.MeshId = "rbxassetid://9856898"
967
o80.Scale = Vector3.new(40, 0.400000006, 2)
968
o80.TextureId = "rbxassetid://2114473"
969
o80.VertexColor = Vector3.new(0, 0, 0)
970
o80.MeshType = Enum.MeshType.FileMesh
971
mas.Parent = game.Players.LocalPlayer.Character.Torso
972
mas:MakeJoints()
973
local mas1 = mas:GetChildren()
974
for i=1,#mas1 do
975
	mas1[i].Parent = game.Players.LocalPlayer.Character.Torso
976
	ypcall(function() mas1[i]:MakeJoints() end)
977
end
978
mas:Destroy()
979
for i=1,#cors do
980
coroutine.resume(cors[i])
981
end
982
983
local Height=9 -- Max height of the bars
984
local plr=game.Players.LocalPlayer
985
986
o81 = Instance.new("Sound")
987
o81.Parent = plr.Character.Torso
988
o81.SoundId = "rbxassetid://"
989
o81.Volume = 1
990
o81.Looped = false
991
992
o82 = Instance.new("PointLight")
993
o82.Parent = plr.Character.Torso
994
o82.Range = 24
995
996
--Startup Interface--
997
local head = game.Players.LocalPlayer.Character.Head
998
local bg = Instance.new("BillboardGui",head)
999
bg.Name = "Startup"
1000
bg.AlwaysOnTop = true
1001
bg.StudsOffset = Vector3.new(0,4,0)
1002
local bgframe = Instance.new("Frame",bg)
1003
bgframe.BackgroundTransparency = 1
1004
bgframe.Size = UDim2.new(0,200,0,25)
1005
bgframe.Position = UDim2.new(0.5,-100,0.5,-12)
1006
local bgtxt = Instance.new("TextLabel",bgframe)
1007
bgtxt.Size = UDim2.new(0,200,0,25)
1008
bgtxt.FontSize = "Size24"
1009
bgtxt.Position = UDim2.new(0.5,-100,0.5,-12)
1010
bgtxt.BackgroundTransparency = 1
1011
bgtxt.TextColor3 = BrickColor.new("Gold").Color
1012
bgtxt.TextStrokeColor3=Color3.new(0,0,0)
1013
bgtxt.TextStrokeTransparency = 0
1014
bgtxt.Font = "SciFi"
1015
bgtxt.TextScaled = false
1016
spawn(function()
1017
    local txt1 = "hi, its me, tame lol"
1018
    local txt2 = "credits: me sir, im so good (not)"
1019
    for i=1,#txt1 do
1020
        bgtxt.Text = txt1:sub(1,i)
1021
        wait()
1022
    end
1023
    wait()
1024
    for i=#txt1,1,-1 do
1025
        bgtxt.Text = txt1:sub(1,i)
1026
        wait()
1027
    end
1028
    wait()
1029
    for i=1,#txt2 do
1030
        bgtxt.Text = txt2:sub(1,i)
1031
        wait()
1032
    end
1033
    wait()
1034
    for i=#txt2,1,-1 do
1035
        bgtxt.Text = txt2:sub(1,i)
1036
        wait()
1037
    end
1038
    wait()
1039
    for i=0,1,0.1 do
1040
        bgtxt.TextTransparency = i
1041
		bgtxt.TextStrokeTransparency = i
1042
        wait()
1043
    end
1044
    bg:Destroy()
1045
end)
1046
--Startup Interface--
1047
1048
local Soundbar=game.Players.LocalPlayer.Character.Torso.Soundbar
1049
local Sound=plr.Character.Torso.Sound
1050
local Bars={}	for i,v in next,Soundbar:children() do
1051
					if v:IsA'BasePart' then
1052
						table.insert(Bars,v)
1053
					end
1054
				end Height=Height*2
1055
local nBars,Tweens=#Bars-1,{}
1056
1057
-- EASING FUNCTIONS --
1058
local function quadIn(t,b,c,d) t=t/d; return c*t*t+b; end;
1059
local function quadOut(t,b,c,d) t=t/d; return -c*t*(t-2)+b; end;
1060
local function Quad(obj,val,ease,d)
1061
	local t,f,con,nt,st,sd=tick()
1062
	Tweens[obj]=t -- Set identifier
1063
	st=obj.Scale.Y -- Start Value
1064
	sd=val-st -- Change in Value
1065
	f=ease=='In' and quadIn or quadOut -- Choose between Out/In
1066
	con=game:GetService'RunService'.RenderStepped:connect(function() nt=tick()-t
1067
		if Tweens[obj]~=t then -- Check for override
1068
			con:disconnect()
1069
			return
1070
		end
1071
		local nv=math.max(.2,f(math.min(d,nt),st,sd,d)) -- New Value
1072
		obj.Scale=Vector3.new(.9,nv,.9)
1073
		obj.Offset=Vector3.new(0,nv/4,0)
1074
		obj.VertexColor=Vector3.new(cycle(tick()))
1075
		o82.Color = Color3.new(cycle(tick()))
1076
		if nt>d then -- Easing done?
1077
			con:disconnect()
1078
			if ease~='In' then
1079
				Quad(obj,.2,'In',.3) -- Drop the bar
1080
			end
1081
		end
1082
	end)
1083
end
1084
1085
-- BAR MANIPULATION --
1086
local function CheckSet(N,S,D) -- Number, Scale, Direction
1087
	local nS=Soundbar[tostring(N)].Mesh.Scale.Y
1088
	if S>nS then
1089
		Set(N,nS+(S-nS)/3,D)
1090
	end
1091
end
1092
1093
function Set(N,S,D) -- Number, Scale, Direction
1094
	Quad(Soundbar[tostring(N)].Mesh,S,'Out',.1) -- Grabs the bar and tweens
1095
	if N>0 and D~=1 then -- Checks left for smaller bars to manipulate
1096
		CheckSet(N-1,S,-1)
1097
	end
1098
	if N<nBars and D~=-1 then -- Checks right...
1099
		CheckSet(N+1,S,1)
1100
	end
1101
end
1102
1103
-- RENDER LOOP --
1104
local MPL,PL,curr=0 curr=Sound.SoundId
1105
spawn(function()
1106
game:service'RunService'.RenderStepped:connect(function()
1107
	PL=Sound.PlaybackLoudness
1108
	if Sound.IsPlaying and PL==PL then -- Sound is playing & PlaybackLoudness is not undefined
1109
		if curr~=Sound.SoundId then MPL=0 -- Reset the relative Max PlaybackLoudness on song change
1110
			curr=Sound.SoundId
1111
		end
1112
		MPL=math.max(PL,MPL) PL=PL/MPL -- Normalize PL based on relative Max PlaybackLoudness
1113
		if PL==PL then
1114
			Set(math.floor(PL*nBars),PL*Height*1) -- Modify bar relative to PlaybackLoudness
1115
		end
1116
	end
1117
end)
1118
end)
1119
1120
local play = false
1121
--Function Chat Start--
1122
function Chat(Message)
1123
	pcall(function()
1124
		for i,v in pairs(game.Players.LocalPlayer.Character.Head:GetChildren()) do
1125
		if v.ClassName == "BillboardGui" and v.Name ~= "Startup" then
1126
        v.Frame.TextLabel.TextTransparency = v.Frame.TextLabel.TextTransparency - 0.5
1127
        wait()
1128
		v:Remove()
1129
		end
1130
	end 
1131
end)
1132
local head = game.Players.LocalPlayer.Character.Head
1133
local bg = Instance.new("BillboardGui",head)
1134
bg.Name = "MusicNotify"
1135
bg.AlwaysOnTop = true
1136
bg.StudsOffset = Vector3.new(0,4,0)
1137
local bgframe = Instance.new("Frame",bg)
1138
bgframe.BackgroundTransparency = 1
1139
bgframe.Size = UDim2.new(0,200,0,25)
1140
bgframe.Position = UDim2.new(0.5,-100,0.5,-12)
1141
local bgtxt = Instance.new("TextLabel",bgframe)
1142
bgtxt.Size = UDim2.new(0,200,0,25)
1143
bgtxt.FontSize = "Size24"
1144
bgtxt.Position = UDim2.new(0.5,-100,0.5,-12)
1145
bgtxt.BackgroundTransparency = 1
1146
bgtxt.TextColor3 = BrickColor.new("Gold").Color
1147
bgtxt.TextStrokeColor3=Color3.new(0,0,0)
1148
bgtxt.TextStrokeTransparency = 0
1149
bgtxt.Font = "SciFi"
1150
bgtxt.TextScaled = false
1151
spawn(function()
1152
    local txt1 = Message
1153
    for i=1,#txt1 do
1154
        bgtxt.Text = txt1:sub(1,i)
1155
        wait()
1156
    end
1157
    wait()
1158
    for i=#txt1,1,-1 do
1159
        bgtxt.Text = txt1:sub(1,i)
1160
        wait()
1161
    end
1162
    wait()
1163
    for i=0,1,0.1 do
1164
        bgtxt.TextTransparency = i
1165
        wait()
1166
    end
1167
    bg:Destroy()
1168
	end)
1169
end
1170
1171
local play = true
1172
local Pause = false
1173
--function chat end--
1174
local Songs = {
1175
{SongName = 'Avril Lavigne - Girlfriend', SongDesc = 'Nil', Creator = 'Ayeekillerpro', ID = 333259850};		
1176
{SongName = 'Chris Brown & Tyga - Ayo [Jason Nevins Remix]', SongDesc = 'Nil', Creator = 'Nil', ID = 262514615};	
1177
{SongName = 'Charli XCX - Boom clap', SongDesc = 'Nil', Creator = 'brightnikki', ID = 160594536};	
1178
{SongName = 'Calvin Harris & Alesso - Under control ft. Hurts', SongDesc = 'Nil', Creator = 'Nil', ID = 152190091};
1179
{SongName = 'Soulja Boy Tell\'em - Crank That', SongDesc = 'Nil', Creator = 'jdude567', ID = 174655936};
1180
{SongName = 'Love Me Harder- Ariana Grande', SongDesc = 'Nil', Creator = 'Violisse', ID = 174577922};
1181
}
1182
1183
function PlayList()
1184
	local sng = Songs[math.random(1,#Songs)]
1185
	Sound.SoundId = 'rbxassetid://'..sng.ID
1186
	Sound:Play()
1187
	Chat("Now Playing: \n"..game:GetService("MarketplaceService"):GetProductInfo(sng.ID).Name)
1188
	repeat wait() until Sound.IsPaused == true
1189
    if play == false then return end
1190
    if Pause == true then return end
1191
	PlayList()
1192
end
1193
local Loop = false
1194
local Locked
1195
p = game:GetService('Players').LocalPlayer
1196
p.Chatted:connect(function(msg)
1197
	if msg:sub(1,5):lower()=='play/' then
1198
		play = true
1199
		local val = Instance.new("NumberValue", p.Character)
1200
		val.Name = "SongID"
1201
		val.Value = tonumber(msg:sub(6))
1202
		local id = val.Value
1203
		Sound:Stop()
1204
		Sound.SoundId='rbxassetid://'..id
1205
		Sound:Play()
1206
		Chat("Now Playing: \n"..game:GetService("MarketplaceService"):GetProductInfo(val.Value).Name)
1207
		wait(1)
1208
		val:Remove()
1209
	elseif msg:sub(1,4):lower()=='vol/' then
1210
		local val = Instance.new("NumberValue", p.Character)
1211
		val.Name = "VolID"
1212
		val.Value = tonumber(msg:sub(5))
1213
		if val.Value > 10 then val.Value = 10
1214
		end
1215
		local id = val.Value
1216
		Sound.Volume = id
1217
		Chat("Set Volume To: "..id.."")
1218
		val:Remove()
1219
		
1220
	elseif msg:sub(1,5):lower()=='dist/' then
1221
		local val = Instance.new("NumberValue", p.Character)
1222
		val.Name = "Distance"
1223
		val.Value = tonumber(msg:sub(6))
1224
		if val.Value > 10000 then val.Value = 10000
1225
		end
1226
		local id = val.Value
1227
		Sound.MaxDistance = id
1228
		Chat("Set Max Distance To: "..id.."")
1229
		val:Remove()		
1230
1231
	elseif msg:sub(1,6) == 'start/' then
1232
		play = true
1233
		PlayList()
1234
1235
	elseif msg:sub(1,5) == 'loop/' and Loop == false then
1236
		Loop = true
1237
		Chat("Music Loop Enabled")
1238
		game.Players.LocalPlayer.Character.Torso.Sound.Looped = true
1239
1240
	elseif msg:sub(1,5) == 'loop/' and Loop == true then
1241
		Loop = false
1242
		Chat("Music Loop Disabled")
1243
		game.Players.LocalPlayer.Character.Torso.Sound.Looped = false
1244
1245
	elseif msg:sub(1,6) == 'pause/' and Pause == false then
1246
		Pause = true
1247
		Chat("Music Paused")
1248
		game.Players.LocalPlayer.Character.Torso.Sound:Pause()
1249
1250
	elseif msg:sub(1,6) == 'pause/' and Pause == true then
1251
		Pause = false
1252
		Chat("Music Unpaused")
1253
		game.Players.LocalPlayer.Character.Torso.Sound:Resume()
1254
1255
	elseif msg:sub(1,5) == 'skip/' then
1256
		play = false
1257
	    	Sound:Stop()
1258
		play = true
1259
	   	 PlayList()
1260
1261
	elseif msg:sub(1,5) == 'stop/' then
1262
		Chat("Stopped Music Spectrum")
1263
		play = false
1264
	    	Sound:Stop()
1265
	end
1266
1267
end)
1268
1269
local CRot = 1
1270
local rad,sin,ceil=math.rad,math.sin,math.ceil
1271
	
1272
Sound:Play()
1273
1274
local Parts = {}
1275
for Index,v in pairs(o1:children'') do
1276
	if v:IsA'Part' then
1277
		table.insert(Parts,v)
1278
	end
1279
end
1280
1281
	spawn(function()
1282
game:service'RunService'.RenderStepped:connect(function()
1283
	for Index,v in pairs(o1:children'') do
1284
		if v:IsA'Part' then
1285
v.CFrame = CFrame.new(plr.Character.Torso.Position)
1286
								*CFrame.Angles(0,rad((360/#Parts*Index+(tick())*60/(#Parts ~= 0 and #Parts or 1))%360),0)
1287
								*CFrame.new(0, -3, (5+#Parts)*.35+v.Size.X)
1288
								*CFrame.Angles(0,90+CRot,0)
1289
							end
1290
				end
1291
1292
		end)
1293
end)