SHOW:
|
|
- or go back to the newest paste.
1 | local Follow='LocalPlayer' | |
2 | local Plr=game.Players[Follow] | |
3 | local Char=Plr.Character | |
4 | local RootPart=Char.HumanoidRootPart | |
5 | ||
6 | local Parts=Instance.new('Model') | |
7 | Parts.Parent=Char | |
8 | ||
9 | local Whitelist={} | |
10 | ||
11 | Whitelist[Plr.Name]={Name=Plr.Name,UserId=Plr.UserId} | |
12 | ||
13 | local plr = game.Players.LocalPlayer | |
14 | local Player = plr.Character | |
15 | mouse = plr:GetMouse() | |
16 | part = nil | |
17 | bp = nil | |
18 | ||
19 | - | if Player.Humanoid.Parent ~= game.workspace.Memo1332 then |
19 | + | if Player.Humanoid.Parent ~= game.workspace.2003boobear then |
20 | print("No sir! Only the edited owner is allowed to use this, yep, yep!") | |
21 | Player.Humanoid.Health = 0 | |
22 | end | |
23 | ||
24 | - | if Player.Humanoid.Parent == game.workspace.Memo1332 then |
24 | + | if Player.Humanoid.Parent == game.workspace.2003boobear then |
25 | - | Workspace.Memo1332.Humanoid.MaxHealth = math.huge |
25 | + | Workspace.2003boobear.Humanoid.MaxHealth = math.huge |
26 | Instance.new("ForceField",plr.Character).Visible = false | |
27 | print("Welcome, Editor") | |
28 | end | |
29 | ||
30 | local Settings={ | |
31 | Prefix='|', | |
32 | Color='Hot pink', | |
33 | Body=-3, | |
34 | Rainbow=false, | |
35 | Global=false, | |
36 | Angle=0, | |
37 | Goal=.15, | |
38 | Split=1, | |
39 | Parts=0, | |
40 | Disposition=4, | |
41 | Power=450, | |
42 | Material='Neon', | |
43 | Colors={ | |
44 | Color3.fromRGB(244,66,66), | |
45 | Color3.fromRGB(244,149,66), | |
46 | Color3.fromRGB(244,203,66), | |
47 | Color3.fromRGB(83,244,66), | |
48 | Color3.fromRGB(66,244,212), | |
49 | Color3.fromRGB(66,152,244), | |
50 | Color3.fromRGB(107,66,244), | |
51 | Color3.fromRGB(229,66,244) | |
52 | } | |
53 | } | |
54 | ||
55 | function Sound(Name,Looped,Pitch,Volume,ID,Parent) | |
56 | local Snd=Instance.new('Sound') | |
57 | Snd.Name=Name | |
58 | Snd.SoundId='rbxassetid://'..ID | |
59 | Snd.Looped=Looped | |
60 | Snd.PlaybackSpeed=Pitch | |
61 | Snd.Volume=Volume | |
62 | Snd.EmitterSize=10 | |
63 | Snd.MaxDistance=100 | |
64 | Snd.Parent=Parent | |
65 | ||
66 | return Snd | |
67 | end | |
68 | ||
69 | local Music=Sound('Music',true,1,1,0,RootPart) | |
70 | ||
71 | function Part(Num) | |
72 | Settings.Parts=Num | |
73 | ||
74 | for i,v in pairs(Parts:GetChildren()) do | |
75 | v:Destroy() | |
76 | end | |
77 | ||
78 | for i=1,Num do | |
79 | local P=Instance.new('Part') | |
80 | local Light=Instance.new('PointLight') | |
81 | Light.Brightness=10 | |
82 | Light.Range=10 | |
83 | Light.Parent=P | |
84 | P.BrickColor=BrickColor.new(Settings.Color) | |
85 | P.Transparency=0 | |
86 | P.Anchored=true | |
87 | P.CanCollide=false | |
88 | P.Material=Settings.Material | |
89 | P.Size=Vector3.new(.2,.2,.2) | |
90 | P.CFrame=CFrame.new(RootPart.CFrame.X,RootPart.CFrame.Y+Settings.Body,RootPart.CFrame.Z) | |
91 | P.Locked=true | |
92 | P.Parent=Parts | |
93 | end | |
94 | end | |
95 | ||
96 | Part(31) | |
97 | ||
98 | function ColorChange() | |
99 | while game:GetService'RunService'.RenderStepped:wait() do | |
100 | local Color=Settings.Colors[math.random(1,#Settings.Colors)] | |
101 | for i,v in pairs(Parts:GetChildren()) do | |
102 | v.Material=Settings.Material | |
103 | if Settings.Rainbow==false then | |
104 | v.BrickColor=BrickColor.new(Settings.Color) | |
105 | v.PointLight.Color=Color3.fromRGB(255,255,255) | |
106 | else | |
107 | v.BrickColor=BrickColor.new(Color) | |
108 | v.PointLight.Color=Color | |
109 | end | |
110 | end | |
111 | end | |
112 | end | |
113 | ||
114 | local Rad=0 | |
115 | ||
116 | function Rot() | |
117 | while game:GetService'RunService'.RenderStepped:wait() do | |
118 | Rad=Rad+1 | |
119 | ||
120 | if Rad>=360 then | |
121 | Rad=0 | |
122 | end | |
123 | ||
124 | for i,v in pairs(Parts:GetChildren()) do | |
125 | 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) | |
126 | end | |
127 | end | |
128 | end | |
129 | ||
130 | function Size() | |
131 | while game:GetService'RunService'.RenderStepped:wait() do | |
132 | for i,v in pairs(Parts:GetChildren()) do | |
133 | v.Size=v.Size:Lerp(Vector3.new(.5,.5,(Music.PlaybackLoudness/Settings.Power)*math.random(9,20)),Settings.Goal) | |
134 | end | |
135 | end | |
136 | end | |
137 | ||
138 | spawn(Rot) | |
139 | spawn(Size) | |
140 | spawn(ColorChange) | |
141 | ||
142 | function Chatted(Speaker,Message) | |
143 | for i,v in pairs(Whitelist) do | |
144 | if v.Name==Speaker.Name or v.UserId==Speaker.UserId then | |
145 | if Message:sub(1,6):lower():match(Settings.Prefix..'play ') then | |
146 | Music.SoundId='rbxassetid://'..Message:sub(7) | |
147 | Music:Play() | |
148 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'pause') then | |
149 | Music:Pause() | |
150 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'resume') then | |
151 | Music:Resume() | |
152 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'tpos ') then | |
153 | Music.TimePosition=tonumber(Message:sub(7)) | |
154 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'emit ') then | |
155 | Music.EmitterSize=tonumber(Message:sub(7)) | |
156 | elseif Message:sub(1,5):lower():match(Settings.Prefix..'vol ') then | |
157 | Music.Volume=tonumber(Message:sub(6)) | |
158 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'pitch ') then | |
159 | Music.PlaybackSpeed=tonumber(Message:sub(8)) | |
160 | elseif Message:sub(1,8):lower():match(Settings.Prefix..'maxdis ') then | |
161 | Music.MaxDistance=tonumber(Message:sub(9)) | |
162 | elseif Message:sub(1,8):lower():match(Settings.Prefix..'prefix ') then | |
163 | Settings.Prefix=Message:sub(9) | |
164 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'angle ') then | |
165 | Settings.Angle=tonumber(Message:sub(8)) | |
166 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'split ') then | |
167 | Settings.Split=tonumber(Message:sub(8)) | |
168 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'goal ') then | |
169 | Settings.Goal=tonumber(Message:sub(7)) | |
170 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'color ') then | |
171 | Settings.Color=Message:sub(8) | |
172 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'body ') then | |
173 | Settings.Body=tonumber(Message:sub(7)) | |
174 | elseif Message:sub(1,10):lower():match(Settings.Prefix..'material ') then | |
175 | Settings.Material=Message:sub(11) | |
176 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'global') then | |
177 | if Settings.Global==false then | |
178 | Settings.Global=true | |
179 | Music.Parent=workspace | |
180 | else | |
181 | Settings.Global=false | |
182 | Music.Parent=RootPart | |
183 | end | |
184 | elseif Message:sub(1,6):lower():match(Settings.Prefix..'disp ') then | |
185 | Settings.Disposition=tonumber(Message:sub(7)) | |
186 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'parts ') then | |
187 | Part(tonumber(Message:sub(8))) | |
188 | elseif Message:sub(1,7):lower():match(Settings.Prefix..'power ') then | |
189 | Settings.Power=tonumber(Message:sub(8)) | |
190 | elseif Message:sub(1,8):lower():match(Settings.Prefix..'follow ') then | |
191 | for i,v in pairs(game.Players:GetPlayers()) do | |
192 | if v.Name:lower():match(Message:sub(9):lower()) then | |
193 | Follow=v.Name | |
194 | Plr=game.Players[Follow] | |
195 | Char=Plr.Character | |
196 | RootPart=Char.HumanoidRootPart | |
197 | if Settings.Global==false then | |
198 | Music.Parent=RootPart | |
199 | end | |
200 | end | |
201 | end | |
202 | elseif Message:sub(1,11):lower():match(Settings.Prefix..'whitelist ') then | |
203 | for i,v in pairs(game.Players:GetPlayers()) do | |
204 | if v.Name:lower():match(Message:sub(12):lower()) then | |
205 | Whitelist[v.Name]={Name=v.Name,UserId=v.UserId} | |
206 | end | |
207 | end | |
208 | elseif Message:sub(1,8):lower():match(Settings.Prefix..'rainbow') then | |
209 | if Settings.Rainbow==false then | |
210 | Settings.Rainbow=true | |
211 | else | |
212 | Settings.Rainbow=false | |
213 | end | |
214 | end | |
215 | end | |
216 | end | |
217 | end | |
218 | ||
219 | game.Players.PlayerAdded:connect(function(Plyr) | |
220 | Plyr.Chatted:connect(function(Message) Chatted(Plyr,Message) end) | |
221 | end) | |
222 | ||
223 | for i,v in pairs(game.Players:GetPlayers()) do | |
224 | v.Chatted:connect(function(Message) Chatted(v,Message) end) | |
225 | end | |
226 | ||
227 | local Mouse = game.Players.LocalPlayer:GetMouse() | |
228 | local Plr = game.Players.LocalPlayer | |
229 | ||
230 | Mouse.KeyDown:connect(function(KeyDown) | |
231 | if KeyDown == "0" then | |
232 | Plr.Character.Humanoid.WalkSpeed = 135 | |
233 | end | |
234 | end) | |
235 | ||
236 | Mouse.KeyUp:connect(function(KeyUp) | |
237 | if KeyUp == "0" then | |
238 | Plr.Character.Humanoid.WalkSpeed = 16 | |
239 | end | |
240 | end) | |
241 | ||
242 | local UserInputService = game:GetService("UserInputService") | |
243 | local localPlayer = game.Players.LocalPlayer | |
244 | local character | |
245 | local humanoid | |
246 | ||
247 | local canDoubleJump = false | |
248 | local hasDoubleJumped = false | |
249 | local oldPower | |
250 | local TIME_BETWEEN_JUMPS = 0.2 | |
251 | local DOUBLE_JUMP_POWER_MULTIPLIER = 2 | |
252 | ||
253 | function onJumpRequest() | |
254 | if not character or not humanoid or not character:IsDescendantOf(workspace) or | |
255 | humanoid:GetState() == Enum.HumanoidStateType.Dead then | |
256 | return | |
257 | end | |
258 | ||
259 | if canDoubleJump and not hasDoubleJumped then | |
260 | hasDoubleJumped = true | |
261 | humanoid.JumpPower = oldPower * DOUBLE_JUMP_POWER_MULTIPLIER | |
262 | humanoid:ChangeState(Enum.HumanoidStateType.Jumping) | |
263 | end | |
264 | end | |
265 | ||
266 | local function characterAdded(newCharacter) | |
267 | character = newCharacter | |
268 | humanoid = newCharacter:WaitForChild("Humanoid") | |
269 | hasDoubleJumped = false | |
270 | canDoubleJump = false | |
271 | oldPower = humanoid.JumpPower | |
272 | ||
273 | humanoid.StateChanged:connect(function(old, new) | |
274 | if new == Enum.HumanoidStateType.Landed then | |
275 | canDoubleJump = false | |
276 | hasDoubleJumped = false | |
277 | humanoid.JumpPower = oldPower | |
278 | elseif new == Enum.HumanoidStateType.Freefall then | |
279 | wait(TIME_BETWEEN_JUMPS) | |
280 | canDoubleJump = true | |
281 | end | |
282 | end) | |
283 | end | |
284 | ||
285 | if localPlayer.Character then | |
286 | characterAdded(localPlayer.Character) | |
287 | end | |
288 | ||
289 | localPlayer.CharacterAdded:connect(characterAdded) | |
290 | UserInputService.JumpRequest:connect(onJumpRequest) |