View difference between Paste ID: E5JkycRh and cB5RmC5T
SHOW: | | - or go back to the newest paste.
1
  if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
141
142
--[[
143
144
    CEIRIOS' SOUND VISUALIZER
145
146
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
147
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
148
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
149
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
150
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
151
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
152
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
153
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
154
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
155
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
156
157
    CEIRIOS' SOUND VISUALIZER
158
159
    There are several commands for this;
160
    Prefix - the symbol before saying a command, make sure it is 1 character long, the default is @.
161
    Color - the default color when the Rainbow command isn't active.
162
    Body - how high up or low the parts are from the HumanoidRootPart.
163
    Rainbow - depicts if the parts and pointlights are changing colors or not.
164
    Global - if the music is in the workspace or not.
165
    Angle - used to create shapes with the visualizer.
166
    Goal -  [DON'T GO OVER 1 OR BELOW 0, IT'LL LAG THE GAME] how fast the parts reach their destination point.
167
    Split - another command to help create shapes with the visualizer.
168
    Parts - how many parts there're in the visualizer.
169
    Disp - how far away the parts are from the player.
170
    Power - how much the PlaybackLoudness is divided by. (depicts how long the parts get.)
171
    Material - the material of the parts.
172
    Play - changes the SoundId of the music, ex: Play 226205163
173
    Don't forget the Prefix before Play.
174
    Pause - pauses the sound.
175
    Resume - resumes the sound.
176
    Tpos - how far it is into the sound.
177
    MaxDis - how far the sound reaches in distance.
178
    Emit - how far before the sound starts getting quiet.
179
    Vol - how loud the sound is.
180
    Pitch - defines the pitch of the sound.
181
    Follow - changes who the parts follow.
182
    Whitelist - allows other people to use the commands above, including this one.
183
184
    Made entirely by Ceirios.
185
186
187
188
189
190
191
192
    
193
194
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
195
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
196
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
197
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
198
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
199
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
200
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
201
    DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU'RE DOING, YOU'LL BREAK IT IF YOU MESS ANYTHING UP!
202
203
]]--
204
205
local Follow='LocalPlayer'
206
local Plr=game.Players[Follow]
207
local Char=Plr.Character
208
local RootPart=Char.HumanoidRootPart
209
210
local Parts=Instance.new('Model')
211
Parts.Parent=Char
212
213
local Whitelist={}
214
215
Whitelist[Plr.Name]={Name=Plr.Name,UserId=Plr.UserId}
216
217
local Settings={
218
    Prefix='@',
219
    Color='Light blue',
220
    Body=-3,
221
    Rainbow=false,
222
    Global=false,
223
    Angle=24,
224
    Goal=.15,
225
    Split=2,
226
    Parts=0,
227
    Disposition=4,
228
    Power=450,
229
    Material='Neon',
230
    Colors={
231
        Color3.fromRGB(244,66,66),
232
        Color3.fromRGB(244,149,66),
233
        Color3.fromRGB(244,203,66),
234
        Color3.fromRGB(83,244,66),
235
        Color3.fromRGB(66,244,212),
236
        Color3.fromRGB(66,152,244),
237
        Color3.fromRGB(107,66,244),
238
        Color3.fromRGB(229,66,244)
239
    }
240
}
241
242
function Sound(Name,Looped,Pitch,Volume,ID,Parent)
243
    local Snd=Instance.new('Sound')
244
    Snd.Name=Name
245
    Snd.SoundId='rbxassetid://'..ID
246
    Snd.Looped=Looped
247
    Snd.PlaybackSpeed=Pitch
248
    Snd.Volume=Volume
249
    Snd.EmitterSize=10
250
    Snd.MaxDistance=100
251
    Snd.Parent=Parent
252
    
253
    return Snd
254
end
255
256
local Music=Sound('Music',true,1,1,0,RootPart)
257
258
function Part(Num)
259
    Settings.Parts=Num
260
261
    for i,v in pairs(Parts:GetChildren()) do
262
        v:Destroy()
263
    end
264
265
    for i=1,Num do
266
        local P=Instance.new('Part')
267
        local Light=Instance.new('PointLight')
268
        Light.Brightness=10
269
        Light.Range=10
270
        Light.Parent=P
271
        P.BrickColor=BrickColor.new(Settings.Color)
272
        P.Transparency=0
273
        P.Anchored=true
274
        P.CanCollide=false
275
        P.Material=Settings.Material
276
        P.Size=Vector3.new(.2,.2,.2)
277
        P.CFrame=CFrame.new(RootPart.CFrame.X,RootPart.CFrame.Y+Settings.Body,RootPart.CFrame.Z)
278
        P.Locked=true
279
        P.Parent=Parts
280
    end
281
end
282
283
Part(31)
284
285
function ColorChange()
286
    while game:GetService'RunService'.RenderStepped:wait() do
287
        local Color=Settings.Colors[math.random(1,#Settings.Colors)]
288
        for i,v in pairs(Parts:GetChildren()) do
289
            v.Material=Settings.Material
290
            if Settings.Rainbow==false then
291
                v.BrickColor=BrickColor.new(Settings.Color)
292
                v.PointLight.Color=Color3.fromRGB(255,255,255)
293
            else
294
                v.BrickColor=BrickColor.new(Color)
295
                v.PointLight.Color=Color
296
            end
297
        end
298
    end
299
end
300
301
local Rad=0
302
303
function Rot()
304
    while game:GetService'RunService'.RenderStepped:wait() do
305
        Rad=Rad+1
306
        
307
        if Rad>=360 then
308
            Rad=0
309
        end
310
        
311
        for i,v in pairs(Parts:GetChildren()) do
312
            v.CFrame=v.CFrame:Lerp(CFrame.new(RootPart.CFrame.X,RootPart.CFrame.Y+Settings.Body,RootPart.CFrame.Z)*CFrame.Angles(0,math.rad((360/Settings.Parts)*((i+(i*Settings.Angle))/Settings.Split)+Rad),0)*CFrame.new(0,0,Settings.Disposition+(v.Size.Z)),Settings.Goal)
313
        end
314
    end
315
end
316
317
function Size()
318
    while game:GetService'RunService'.RenderStepped:wait() do
319
        for i,v in pairs(Parts:GetChildren()) do
320
            v.Size=v.Size:Lerp(Vector3.new(.2,.2,(Music.PlaybackLoudness/Settings.Power)*math.random(4,8)),Settings.Goal)
321
        end
322
    end
323
end
324
325
spawn(Rot)
326
spawn(Size)
327
spawn(ColorChange)
328
329
function Chatted(Speaker,Message)
330
    for i,v in pairs(Whitelist) do
331
        if v.Name==Speaker.Name or v.UserId==Speaker.UserId then
332
            if Message:sub(1,6):lower():match(Settings.Prefix..'play ') then
333
                Music.SoundId='rbxassetid://'..Message:sub(7)
334
                Music:Play()
335
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'pause') then
336
                Music:Pause()
337
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'resume') then
338
                Music:Resume()
339
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'tpos ') then
340
                Music.TimePosition=tonumber(Message:sub(7))
341
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'emit ') then
342
                Music.EmitterSize=tonumber(Message:sub(7))
343
            elseif Message:sub(1,5):lower():match(Settings.Prefix..'vol ') then
344
                Music.Volume=tonumber(Message:sub(6))
345
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'pitch ') then
346
                Music.PlaybackSpeed=tonumber(Message:sub(8))
347
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'maxdis ') then
348
                Music.MaxDistance=tonumber(Message:sub(9))
349
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'prefix ') then
350
                Settings.Prefix=Message:sub(9)
351
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'angle ') then
352
                Settings.Angle=tonumber(Message:sub(8))
353
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'split ') then
354
                Settings.Split=tonumber(Message:sub(8))
355
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'goal ') then
356
                Settings.Goal=tonumber(Message:sub(7))
357
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'color ') then
358
                Settings.Color=Message:sub(8)
359
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'body ') then
360
                Settings.Body=tonumber(Message:sub(7))
361
            elseif Message:sub(1,10):lower():match(Settings.Prefix..'material ') then
362
                Settings.Material=Message:sub(11)
363
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'global') then
364
                if Settings.Global==false then
365
                    Settings.Global=true
366
                    Music.Parent=workspace
367
                else
368
                    Settings.Global=false
369
                    Music.Parent=RootPart
370
                end
371
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'disp ') then
372
                Settings.Disposition=tonumber(Message:sub(7))
373
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'parts ') then
374
                Part(tonumber(Message:sub(8)))
375
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'power ') then
376
                Settings.Power=tonumber(Message:sub(8))
377
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'follow ') then
378
                for i,v in pairs(game.Players:GetPlayers()) do
379
                    if v.Name:lower():match(Message:sub(9):lower()) then
380
                        Follow=v.Name
381
                        Plr=game.Players[Follow]
382
                        Char=Plr.Character
383
                        RootPart=Char.HumanoidRootPart
384
                        if Settings.Global==false then
385
                            Music.Parent=RootPart
386
                        end
387
                    end
388
                end
389
            elseif Message:sub(1,11):lower():match(Settings.Prefix..'whitelist ') then
390
                for i,v in pairs(game.Players:GetPlayers()) do
391
				    if v.Name:lower():match(Message:sub(12):lower()) then
392
                        Whitelist[v.Name]={Name=v.Name,UserId=v.UserId} 
393
				    end
394
			    end
395
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'rainbow') then
396
                if Settings.Rainbow==false then
397
                    Settings.Rainbow=true
398
                else
399
                    Settings.Rainbow=false
400
                end
401
            end
402
        end
403
    end
404
end
405
406
game.Players.PlayerAdded:connect(function(Plyr)
407
    Plyr.Chatted:connect(function(Message) Chatted(Plyr,Message) end)
408
end)
409
410
for i,v in pairs(game.Players:GetPlayers()) do
411
    v.Chatted:connect(function(Message) Chatted(v,Message) end)
412
end
413
414
--[[
415
416
    CEIRIOS' SOUND VISUALIZER
417
418
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
419
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
420
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
421
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
422
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
423
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
424
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
425
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
426
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
427
    READ THE ENTIRE COMMENT SECTION TO LEARN HOW TO USE!
428
429
    CEIRIOS' SOUND VISUALIZER
430
431
    There are several commands for this;
432
    Prefix - the symbol before saying a command, make sure it is 1 character long, the default is @.
433
    Color - the default color when the Rainbow command isn't active.
434
    Body - how high up or low the parts are from the HumanoidRootPart.
435
    Rainbow - depicts if the parts and pointlights are changing colors or not.
436
    Global - if the music is in the workspace or not.
437
    Angle - used to create shapes with the visualizer.
438
    Goal -  [DON'T GO OVER 1 OR BELOW 0, IT'LL LAG THE GAME] how fast the parts reach their destination point.
439
    Split - another command to help create shapes with the visualizer.
440
    Parts - how many parts there're in the visualizer.
441
    Disp - how far away the parts are from the player.
442
    Power - how much the PlaybackLoudness is divided by. (depicts how long the parts get.)
443
    Material - the material of the parts.
444
    Play - changes the SoundId of the music, ex: Play 226205163
445
    Don't forget the Prefix before Play.
446
    Pause - pauses the sound.
447
    Resume - resumes the sound.
448
    Tpos - how far it is into the sound.
449
    MaxDis - how far the sound reaches in distance.
450
    Emit - how far before the sound starts getting quiet.
451
    Vol - how loud the sound is.
452
    Pitch - defines the pitch of the sound.
453
    Follow - changes who the parts follow.
454
    Whitelist - allows other people to use the commands above, including this one.
455
456
    Made entirely by Ceirios.
457
458
]]--