View difference between Paste ID: ZCistfw7 and S6rgf26A
SHOW: | | - or go back to the newest paste.
1
--- THE BELOW WILL FILTER ALL OBJS THAT APPEAR IN WORKSPACE WITH A TEXT PROPERTY
2
do
3
    local filteredMessages = { ['___'] = '___' };
4
    local onPropertyChanged = function (obj)   
5
        if (obj:isDescendantOf (workspace)) then   
6
            local objText = obj.Text;
7
           
8
            if (objText ~= '___' and objText:find '(%S)') then
9
                if (filteredMessages [objText] and filteredMessages [objText] ~= objText) then 
10
                    obj.Text = filteredMessages [objText];
11
                elseif (not filteredMessages [objText]) then
12
                    obj.Text = '___';
13
                   
14
                    local filtered = game:service 'Chat':FilterStringForBroadcast (objText, game:service 'Players'.localPlayer);
15-
    Color='Light red',
15+
                   
16
                    filteredMessages [objText] = filtered;
17
                    filteredMessages [filtered] = filtered;
18
                   
19
                    obj.Text = filtered;
20
                end;
21
            end;
22
        end;
23
    end;
24
   
25
    local newInstance = Instance.new;
26
    Instance = {
27
        new = function (class, parent)
28
            local obj = newInstance (class, parent);
29
           
30
            if (pcall (function()return obj.Text;end)) then
31
                obj:getPropertyChangedSignal ('Parent'):connect (function () onPropertyChanged (obj) end);
32
                obj:getPropertyChangedSignal ('Text'):connect (function() onPropertyChanged (obj) end);
33
            end;
34
           
35
            return obj;
36
        end;
37
    };
38
end;
39
--- THE ABOVE
40
plrrr = game.Players.LocalPlayer
41
42
base = Instance.new("ScreenGui",plrrr.PlayerGui)
43
bbg = Instance.new("BillboardGui",plrrr.Character.Head)
44
bbg.Size = UDim2.new(0,200,0,50)
45
bbg.StudsOffset = Vector3.new(0,3,0)
46
bbgTl = Instance.new("TextLabel",bbg)
47
bbgTl.BackgroundTransparency = 1
48
bbgTl.Size = UDim2.new(10,0,1,0)
49
bbgTl.Position = UDim2.new(-4.5,0,0,0)
50
bbgTl.Font = "SourceSansItalic"
51
bbgTl.Text = " "
52
bbgTl.TextSize = 34
53
bbgTl.TextStrokeColor3 = Color3.new(1,1,1)
54
bbgTl.TextColor3 = Color3.new(1,0,1)
55
bbgTl.TextStrokeTransparency = 0
56
bbgTl.TextWrapped = true
57
plrrr.Chatted:connect(function(msg)
58
    bbgTl.Text = msg
59
    wait(9)
60
    if bbgTl.Text == msg then
61
        bbgTl.Text = " "
62
    end
63
end)
64
65
local Follow='LocalPlayer'
66
local Plr=game.Players[Follow]
67
local Char=Plr.Character
68
local RootPart=Char.HumanoidRootPart
69
70
local Parts=Instance.new('Model')
71
Parts.Parent=Char
72
73
local Whitelist={}
74
75
Whitelist[Plr.Name]={Name=Plr.Name,UserId=Plr.UserId}
76
77
local plr = game.Players.LocalPlayer
78
local Player = plr.Character
79
mouse = plr:GetMouse()
80
part = nil
81
bp = nil
82
83
if Player.Humanoid.Parent ~= game.workspace.Memo1332 then
84
print("No sir! Only the edited owner is allowed to use this, yep, yep!")
85
Player.Humanoid.Health = 0
86
end
87
88
if Player.Humanoid.Parent == game.workspace.Memo1332 then
89
Workspace.Memo1332.Humanoid.MaxHealth = math.huge
90
Instance.new("ForceField",plr.Character).Visible = false
91
print("Welcome, Editor")
92
end
93
94
mouse.Button1Down:connect(function()
95
    if plr.Character.Parent ~= workspace.Camera then
96
        if mouse ~= nil then
97
            if mouse.Target ~= nil then
98
                part = mouse.Target
99
                bp = Instance.new("BodyPosition",part)
100
                bp.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
101
                bp.Position = part.Position
102
                particles = Instance.new("ParticleEmitter",part)
103
                particles.Color = ColorSequence.new(Color3.new(0,0,0))
104
                particles.Size = NumberSequence.new(1)
105
                particles.Texture = "rbxassetid://292289455"
106
                particles.VelocitySpread = 360
107
                particles.Speed = NumberRange.new(0)
108
                particles.RotSpeed = NumberRange.new(0)
109
                particles.Rotation = NumberRange.new(0)
110
                particles.Rate = 250
111
                particles.Lifetime = NumberRange.new(.2,.4)
112
                particles.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(.12,.688,0),NumberSequenceKeypoint.new(.891,.887,0),NumberSequenceKeypoint.new(1,1,0)})
113
                dwn = true
114
            end
115
        end
116
        while dwn == true do
117
            wait() 
118
            bp.Position = mouse.hit.p
119
            if part then
120
                if part.Parent:FindFirstChildOfClass("Humanoid") then
121
                    part.Parent:FindFirstChildOfClass("Humanoid").PlatformStand = true
122
                end
123
            end
124
        end
125
    end
126
end)
127
mouse.Button1Up:connect(function()
128
    dwn = false
129
    if part then if part.Parent:FindFirstChildOfClass("Humanoid") then part.Parent:FindFirstChildOfClass("Humanoid").PlatformStand = false end part = nil end
130
    if bp then bp:Destroy() end
131
    if particles then particles:Destroy() end
132
end)
133
134
local Settings={
135
    Prefix='|',
136
    Color='Hot pink',
137
    Body=-3,
138
    Rainbow=false,
139
    Global=false,
140
    Angle=0,
141
    Goal=.15,
142
    Split=1,
143
    Parts=0,
144
    Disposition=4,
145
    Power=450,
146
    Material='Neon',
147
    Colors={
148
        Color3.fromRGB(244,66,66),
149
        Color3.fromRGB(244,149,66),
150
        Color3.fromRGB(244,203,66),
151
        Color3.fromRGB(83,244,66),
152
        Color3.fromRGB(66,244,212),
153
        Color3.fromRGB(66,152,244),
154
        Color3.fromRGB(107,66,244),
155
        Color3.fromRGB(229,66,244)
156
    }
157
}
158
159
function Sound(Name,Looped,Pitch,Volume,ID,Parent)
160
    local Snd=Instance.new('Sound')
161
    Snd.Name=Name
162
    Snd.SoundId='rbxassetid://'..ID
163
    Snd.Looped=Looped
164
    Snd.PlaybackSpeed=Pitch
165
    Snd.Volume=Volume
166
    Snd.EmitterSize=10
167
    Snd.MaxDistance=100
168
    Snd.Parent=Parent
169
    
170
    return Snd
171
end
172
173
local Music=Sound('Music',true,1,1,0,RootPart)
174
175
function Part(Num)
176
    Settings.Parts=Num
177
178
    for i,v in pairs(Parts:GetChildren()) do
179
        v:Destroy()
180
    end
181
182
    for i=1,Num do
183
        local P=Instance.new('Part')
184
        local Light=Instance.new('PointLight')
185
        Light.Brightness=10
186
        Light.Range=10
187
        Light.Parent=P
188
        P.BrickColor=BrickColor.new(Settings.Color)
189
        P.Transparency=0
190
        P.Anchored=true
191
        P.CanCollide=false
192
        P.Material=Settings.Material
193
        P.Size=Vector3.new(.2,.2,.2)
194
        P.CFrame=CFrame.new(RootPart.CFrame.X,RootPart.CFrame.Y+Settings.Body,RootPart.CFrame.Z)
195
        P.Locked=true
196
        P.Parent=Parts
197
    end
198
end
199
200
Part(31)
201
202
function ColorChange()
203
    while game:GetService'RunService'.RenderStepped:wait() do
204
        local Color=Settings.Colors[math.random(1,#Settings.Colors)]
205
        for i,v in pairs(Parts:GetChildren()) do
206
            v.Material=Settings.Material
207
            if Settings.Rainbow==false then
208-
end
208+
209
                v.PointLight.Color=Color3.fromRGB(255,255,255)
210
            else
211
                v.BrickColor=BrickColor.new(Color)
212
                v.PointLight.Color=Color
213
            end
214
        end
215
    end
216
end
217
218
local Rad=0
219
220
function Rot()
221
    while game:GetService'RunService'.RenderStepped:wait() do
222
        Rad=Rad+1
223
        
224
        if Rad>=360 then
225
            Rad=0
226
        end
227
        
228
        for i,v in pairs(Parts:GetChildren()) do
229
            v.CFrame=v.CFrame:Lerp(CFrame.new(RootPart.CFrame.X,RootPart.CFrame.Y+Settings.Body,RootPart.CFrame.Z)*CFrame.Angles(9,math.rad((360/Settings.Parts)*((i+(i*Settings.Angle))/Settings.Split)+Rad),0)*CFrame.new(8,-8,Settings.Disposition+(v.Size.Z)),Settings.Goal)
230
        end
231
    end
232
end
233
234
function Size()
235
    while game:GetService'RunService'.RenderStepped:wait() do
236
        for i,v in pairs(Parts:GetChildren()) do
237
            v.Size=v.Size:Lerp(Vector3.new(.5,.5,(Music.PlaybackLoudness/Settings.Power)*math.random(9,20)),Settings.Goal)
238
        end
239
    end
240
end
241
242
spawn(Rot)
243
spawn(Size)
244
spawn(ColorChange)
245
246
function Chatted(Speaker,Message)
247
    for i,v in pairs(Whitelist) do
248
        if v.Name==Speaker.Name or v.UserId==Speaker.UserId then
249
            if Message:sub(1,6):lower():match(Settings.Prefix..'play ') then
250
                Music.SoundId='rbxassetid://'..Message:sub(7)
251
                Music:Play()
252
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'pause') then
253
                Music:Pause()
254
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'resume') then
255
                Music:Resume()
256
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'tpos ') then
257
                Music.TimePosition=tonumber(Message:sub(7))
258
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'emit ') then
259
                Music.EmitterSize=tonumber(Message:sub(7))
260
            elseif Message:sub(1,5):lower():match(Settings.Prefix..'vol ') then
261
                Music.Volume=tonumber(Message:sub(6))
262
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'pitch ') then
263
                Music.PlaybackSpeed=tonumber(Message:sub(8))
264
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'maxdis ') then
265
                Music.MaxDistance=tonumber(Message:sub(9))
266
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'prefix ') then
267
                Settings.Prefix=Message:sub(9)
268
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'angle ') then
269
                Settings.Angle=tonumber(Message:sub(8))
270
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'split ') then
271
                Settings.Split=tonumber(Message:sub(8))
272
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'goal ') then
273
                Settings.Goal=tonumber(Message:sub(7))
274
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'color ') then
275
                Settings.Color=Message:sub(8)
276
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'body ') then
277
                Settings.Body=tonumber(Message:sub(7))
278
            elseif Message:sub(1,10):lower():match(Settings.Prefix..'material ') then
279
                Settings.Material=Message:sub(11)
280
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'global') then
281
                if Settings.Global==false then
282
                    Settings.Global=true
283
                    Music.Parent=workspace
284
                else
285
                    Settings.Global=false
286
                    Music.Parent=RootPart
287
                end
288
            elseif Message:sub(1,6):lower():match(Settings.Prefix..'disp ') then
289
                Settings.Disposition=tonumber(Message:sub(7))
290
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'parts ') then
291
                Part(tonumber(Message:sub(8)))
292
            elseif Message:sub(1,7):lower():match(Settings.Prefix..'power ') then
293
                Settings.Power=tonumber(Message:sub(8))
294
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'follow ') then
295
                for i,v in pairs(game.Players:GetPlayers()) do
296
                    if v.Name:lower():match(Message:sub(9):lower()) then
297
                        Follow=v.Name
298
                        Plr=game.Players[Follow]
299
                        Char=Plr.Character
300
                        RootPart=Char.HumanoidRootPart
301
                        if Settings.Global==false then
302
                            Music.Parent=RootPart
303
                        end
304
                    end
305
                end
306
            elseif Message:sub(1,11):lower():match(Settings.Prefix..'whitelist ') then
307
                for i,v in pairs(game.Players:GetPlayers()) do
308
				    if v.Name:lower():match(Message:sub(12):lower()) then
309
                        Whitelist[v.Name]={Name=v.Name,UserId=v.UserId} 
310
				    end
311
			    end
312
            elseif Message:sub(1,8):lower():match(Settings.Prefix..'rainbow') then
313
                if Settings.Rainbow==false then
314
                    Settings.Rainbow=true
315
                else
316
                    Settings.Rainbow=false
317
                end
318
            end
319
        end
320
    end
321
end
322
323
game.Players.PlayerAdded:connect(function(Plyr)
324
    Plyr.Chatted:connect(function(Message) Chatted(Plyr,Message) end)
325
end)
326
327
for i,v in pairs(game.Players:GetPlayers()) do
328
    v.Chatted:connect(function(Message) Chatted(v,Message) end)
329
end
330
331
local Mouse = game.Players.LocalPlayer:GetMouse()
332
local Plr = game.Players.LocalPlayer
333
334
Mouse.KeyDown:connect(function(KeyDown)
335
if KeyDown == "0" then
336
Plr.Character.Humanoid.WalkSpeed = 135
337
end
338
end)
339
340
Mouse.KeyUp:connect(function(KeyUp)
341
if KeyUp == "0" then
342
Plr.Character.Humanoid.WalkSpeed = 16
343
end
344
end)
345
346
local UserInputService = game:GetService("UserInputService")
347
local localPlayer = game.Players.LocalPlayer
348
local character
349
local humanoid
350
 
351
local canDoubleJump = false
352
local hasDoubleJumped = false
353
local oldPower
354
local TIME_BETWEEN_JUMPS = 0.2
355
local DOUBLE_JUMP_POWER_MULTIPLIER = 2
356
 
357
function onJumpRequest()
358
	if not character or not humanoid or not character:IsDescendantOf(workspace) or
359
	 humanoid:GetState() == Enum.HumanoidStateType.Dead then
360
		return
361
	end
362
 
363
	if canDoubleJump and not hasDoubleJumped then
364
		hasDoubleJumped = true
365
		humanoid.JumpPower = oldPower * DOUBLE_JUMP_POWER_MULTIPLIER
366
		humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
367
	end
368
end
369
 
370
local function characterAdded(newCharacter)
371
	character = newCharacter
372
	humanoid = newCharacter:WaitForChild("Humanoid")
373
	hasDoubleJumped = false
374
	canDoubleJump = false
375
	oldPower = humanoid.JumpPower
376
 
377
	humanoid.StateChanged:connect(function(old, new)
378
		if new == Enum.HumanoidStateType.Landed then
379
			canDoubleJump = false
380
			hasDoubleJumped = false
381
			humanoid.JumpPower = oldPower
382
		elseif new == Enum.HumanoidStateType.Freefall then
383
			wait(TIME_BETWEEN_JUMPS)
384
			canDoubleJump = true
385
		end
386
	end)
387
end
388
 
389
if localPlayer.Character then
390
	characterAdded(localPlayer.Character)
391
end
392
 
393
localPlayer.CharacterAdded:connect(characterAdded)
394
UserInputService.JumpRequest:connect(onJumpRequest)