SHOW:
|
|
- or go back to the newest paste.
1 | --https://github.com/Mokiros/roblox-FE-compatibility | |
2 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
3 | local Player,game,owner = owner,game | |
4 | local RealPlayer = Player | |
5 | do | |
6 | print("FE Compatibility code V2 by Mokiros") | |
7 | local RealPlayer = RealPlayer | |
8 | script.Parent = RealPlayer.Character | |
9 | ||
10 | --Fake event to make stuff like Mouse.KeyDown work | |
11 | local Disconnect_Function = function(this) | |
12 | this[1].Functions[this[2]] = nil | |
13 | end | |
14 | local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}} | |
15 | local FakeEvent_Metatable = {__index={ | |
16 | Connect = function(this,f) | |
17 | local i = tostring(math.random(0,10000)) | |
18 | while this.Functions[i] do | |
19 | i = tostring(math.random(0,10000)) | |
20 | end | |
21 | this.Functions[i] = f | |
22 | return setmetatable({this,i},Disconnect_Metatable) | |
23 | end | |
24 | }} | |
25 | FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect | |
26 | local function fakeEvent() | |
27 | return setmetatable({Functions={}},FakeEvent_Metatable) | |
28 | end | |
29 | ||
30 | --Creating fake input objects with fake variables | |
31 | local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()} | |
32 | FakeMouse.keyUp = FakeMouse.KeyUp | |
33 | FakeMouse.keyDown = FakeMouse.KeyDown | |
34 | local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} | |
35 | local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) | |
36 | CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil | |
37 | end} | |
38 | --Merged 2 functions into one by checking amount of arguments | |
39 | CAS.UnbindAction = CAS.BindAction | |
40 | ||
41 | --This function will trigger the events that have been :Connect()'ed | |
42 | local function TriggerEvent(self,ev,...) | |
43 | for _,f in pairs(self[ev].Functions) do | |
44 | f(...) | |
45 | end | |
46 | end | |
47 | FakeMouse.TriggerEvent = TriggerEvent | |
48 | UIS.TriggerEvent = TriggerEvent | |
49 | ||
50 | --Client communication | |
51 | local Event = Instance.new("RemoteEvent") | |
52 | Event.Name = "UserInput_Event" | |
53 | Event.OnServerEvent:Connect(function(plr,io) | |
54 | if plr~=RealPlayer then return end | |
55 | FakeMouse.Target = io.Target | |
56 | FakeMouse.Hit = io.Hit | |
57 | if not io.isMouse then | |
58 | local b = io.UserInputState == Enum.UserInputState.Begin | |
59 | if io.UserInputType == Enum.UserInputType.MouseButton1 then | |
60 | return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up") | |
61 | end | |
62 | if io.UserInputType == Enum.UserInputType.MouseButton2 then | |
63 | return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up") | |
64 | end | |
65 | for _,t in pairs(CAS.Actions) do | |
66 | for _,k in pairs(t.Keys) do | |
67 | if k==io.KeyCode then | |
68 | t.Function(t.Name,io.UserInputState,io) | |
69 | end | |
70 | end | |
71 | end | |
72 | FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) | |
73 | UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false) | |
74 | end | |
75 | end) | |
76 | Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event") | |
77 | local Mouse = owner:GetMouse() | |
78 | local UIS = game:GetService("UserInputService") | |
79 | local input = function(io,RobloxHandled) | |
80 | if RobloxHandled then return end | |
81 | --Since InputObject is a client-side instance, we create and pass table instead | |
82 | Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) | |
83 | end | |
84 | UIS.InputBegan:Connect(input) | |
85 | UIS.InputEnded:Connect(input) | |
86 | ||
87 | local h,t | |
88 | --Give the server mouse data every second frame, but only if the values changed | |
89 | --If player is not moving their mouse, client won't fire events | |
90 | local HB = game:GetService("RunService").Heartbeat | |
91 | while true do | |
92 | if h~=Mouse.Hit or t~=Mouse.Target then | |
93 | h,t=Mouse.Hit,Mouse.Target | |
94 | Event:FireServer({isMouse=true,Target=t,Hit=h}) | |
95 | end | |
96 | --Wait 2 frames | |
97 | for i=1,2 do | |
98 | HB:Wait() | |
99 | end | |
100 | end]==],script) | |
101 | ||
102 | ----Sandboxed game object that allows the usage of client-side methods and services | |
103 | --Real game object | |
104 | local RealGame = game | |
105 | ||
106 | --Metatable for fake service | |
107 | local FakeService_Metatable = { | |
108 | __index = function(self,k) | |
109 | local s = rawget(self,"_RealService") | |
110 | if s then | |
111 | return typeof(s[k])=="function" | |
112 | and function(_,...)return s[k](s,...)end or s[k] | |
113 | end | |
114 | end, | |
115 | __newindex = function(self,k,v) | |
116 | local s = rawget(self,"_RealService") | |
117 | if s then s[k]=v end | |
118 | end | |
119 | } | |
120 | local function FakeService(t,RealService) | |
121 | t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService | |
122 | return setmetatable(t,FakeService_Metatable) | |
123 | end | |
124 | ||
125 | --Fake game object | |
126 | local FakeGame = { | |
127 | GetService = function(self,s) | |
128 | return rawget(self,s) or RealGame:GetService(s) | |
129 | end, | |
130 | Players = FakeService({ | |
131 | LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player) | |
132 | },"Players"), | |
133 | UserInputService = FakeService(UIS,"UserInputService"), | |
134 | ContextActionService = FakeService(CAS,"ContextActionService"), | |
135 | RunService = FakeService({ | |
136 | _btrs = {}, | |
137 | RenderStepped = RealGame:GetService("RunService").Heartbeat, | |
138 | BindToRenderStep = function(self,name,_,fun) | |
139 | self._btrs[name] = self.Heartbeat:Connect(fun) | |
140 | end, | |
141 | UnbindFromRenderStep = function(self,name) | |
142 | self._btrs[name]:Disconnect() | |
143 | end, | |
144 | },"RunService") | |
145 | } | |
146 | rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer) | |
147 | FakeGame.service = FakeGame.GetService | |
148 | FakeService(FakeGame,game) | |
149 | --Changing owner to fake player object to support owner:GetMouse() | |
150 | game,owner = FakeGame,FakeGame.Players.LocalPlayer | |
151 | end | |
152 | ||
153 | A = true | |
154 | if A == true then | |
155 | Model = Instance.new("Model") | |
156 | Model.Name = "Weapon" | |
157 | p = Instance.new("Part", Model) | |
158 | p.Name = "Part" | |
159 | p.TopSurface = 0 | |
160 | p.BottomSurface = 0 | |
161 | p.formFactor = "Custom" | |
162 | p.Size = Vector3.new(10, 12, 10) | |
163 | p.CFrame = CFrame.new(35.4000015, 7.0999999, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
164 | p.BrickColor = BrickColor.new("Medium stone grey") | |
165 | p.Transparency = 0 | |
166 | p.Reflectance = .1 | |
167 | p.Material = Enum.Material.Concrete | |
168 | m = Instance.new("CylinderMesh") | |
169 | m.Scale = Vector3.new(1, 1.02999997, 1) | |
170 | m.Parent = p | |
171 | p = Instance.new("Part", Model) | |
172 | p.Name = "Part" | |
173 | p.TopSurface = 0 | |
174 | p.BottomSurface = 0 | |
175 | p.formFactor = "Custom" | |
176 | p.Size = Vector3.new(2, 12.8, 2) | |
177 | p.CFrame = CFrame.new(35.4000015, 7.19999981, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
178 | p.BrickColor = BrickColor.new("Bright yellow") | |
179 | p.Transparency = 0 | |
180 | p.Reflectance = .1 | |
181 | p.Material = Enum.Material.Plastic | |
182 | m = Instance.new("CylinderMesh") | |
183 | m.Scale = Vector3.new(1, 1, 1) | |
184 | m.Parent = p | |
185 | p = Instance.new("Part", Model) | |
186 | p.Name = "Part" | |
187 | p.TopSurface = 0 | |
188 | p.BottomSurface = 0 | |
189 | p.formFactor = "Custom" | |
190 | p.Size = Vector3.new(1.79, 5, 1) | |
191 | p.CFrame = CFrame.new(29.7000179, 8.89999485, 63.3000221, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
192 | p.BrickColor = BrickColor.new("Bright yellow") | |
193 | p.Transparency = 0 | |
194 | p.Reflectance = .1 | |
195 | p.Material = Enum.Material.Plastic | |
196 | p = Instance.new("Part", Model) | |
197 | p.Name = "Part" | |
198 | p.TopSurface = 0 | |
199 | p.BottomSurface = 0 | |
200 | p.formFactor = "Custom" | |
201 | p.Size = Vector3.new(5, 1.40, 0.99) | |
202 | p.CFrame = CFrame.new(29.7000198, 10.4999943, 63.3000031, -1.49008788e-008, -2.3933373e-007, 0.999990225, 6.6675625e-009, 0.99999392, 2.39334668e-007, -0.999994516, 6.66761935e-009, 7.45059765e-008) | |
203 | p.BrickColor = BrickColor.new("Bright yellow") | |
204 | p.Transparency = 0 | |
205 | p.Reflectance = .1 | |
206 | p.Material = Enum.Material.Plastic | |
207 | m = Instance.new("SpecialMesh") | |
208 | m.Scale = Vector3.new(1, 1, 1) | |
209 | m.Parent = p | |
210 | m.MeshType = Enum.MeshType.Wedge | |
211 | p = Instance.new("Part", Model) | |
212 | p.Name = "Center" | |
213 | p.TopSurface = 0 | |
214 | p.BottomSurface = 0 | |
215 | p.formFactor = "Custom" | |
216 | p.Size = Vector3.new(12.5, 5.80, 27.6) | |
217 | p.CFrame = CFrame.new(43.0000076, 9.30000114, 62.8999977, 1.06581131e-014, -8.74229471e-008, 1, -7.10542736e-015, 1, 8.742294e-008, -1, -7.10542736e-015, -4.37113776e-008) | |
218 | p.BrickColor = BrickColor.new("Bright yellow") | |
219 | p.Transparency = 1 | |
220 | p.Reflectance = .1 | |
221 | p.Material = Enum.Material.Plastic | |
222 | p = Instance.new("Part", Model) | |
223 | p.Name = "Part" | |
224 | p.TopSurface = 0 | |
225 | p.BottomSurface = 0 | |
226 | p.formFactor = "Custom" | |
227 | p.Size = Vector3.new(6.80, 1, 6.00) | |
228 | p.CFrame = CFrame.new(51.9999924, 9.06999207, 68.6000443, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
229 | p.BrickColor = BrickColor.new("Bright yellow") | |
230 | p.Transparency = 0 | |
231 | p.Reflectance = .1 | |
232 | p.Material = Enum.Material.Plastic | |
233 | p = Instance.new("Part", Model) | |
234 | p.Name = "Part" | |
235 | p.TopSurface = 0 | |
236 | p.BottomSurface = 0 | |
237 | p.formFactor = "Custom" | |
238 | p.Size = Vector3.new(11, 5.40, 2.79) | |
239 | p.CFrame = CFrame.new(56.5999718, 9.76999664, 63.0000076, 1.49011612e-008, 5.89458523e-007, -0.999990225, -3.49571337e-007, 0.99999392, 5.89460512e-007, 0.999994278, 3.49571422e-007, -4.47034836e-008) | |
240 | p.BrickColor = BrickColor.new("Bright yellow") | |
241 | p.Transparency = 0 | |
242 | p.Reflectance = .1 | |
243 | p.Material = Enum.Material.Plastic | |
244 | m = Instance.new("SpecialMesh") | |
245 | m.Scale = Vector3.new(1, 1, 1) | |
246 | m.Parent = p | |
247 | m.MeshType = Enum.MeshType.Wedge | |
248 | p = Instance.new("Part", Model) | |
249 | p.Name = "Part" | |
250 | p.TopSurface = 0 | |
251 | p.BottomSurface = 0 | |
252 | p.formFactor = "Custom" | |
253 | p.Size = Vector3.new(2.60, 11, 1.99) | |
254 | p.CFrame = CFrame.new(39.4000015, 10.7699995, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
255 | p.BrickColor = BrickColor.new("Bright yellow") | |
256 | p.Transparency = 0 | |
257 | p.Reflectance = .1 | |
258 | p.Material = Enum.Material.Plastic | |
259 | p = Instance.new("Part", Model) | |
260 | p.Name = "Part" | |
261 | p.TopSurface = 0 | |
262 | p.BottomSurface = 0 | |
263 | p.formFactor = "Custom" | |
264 | p.Size = Vector3.new(3.20, 11.0, 5) | |
265 | p.CFrame = CFrame.new(35.9000092, 11.0999928, 63.0000153, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
266 | p.BrickColor = BrickColor.new("Bright yellow") | |
267 | p.Transparency = 0 | |
268 | p.Reflectance = .1 | |
269 | p.Material = Enum.Material.Plastic | |
270 | p = Instance.new("Part", Model) | |
271 | p.Name = "Part" | |
272 | p.TopSurface = 0 | |
273 | p.BottomSurface = 0 | |
274 | p.formFactor = "Custom" | |
275 | p.Size = Vector3.new(1.99, 1, 1) | |
276 | p.CFrame = CFrame.new(51.8999863, 16.6699886, 58.4000015, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
277 | p.BrickColor = BrickColor.new("Mid gray") | |
278 | p.Transparency = 0 | |
279 | p.Reflectance = .1 | |
280 | p.Material = Enum.Material.Plastic | |
281 | p = Instance.new("Part", Model) | |
282 | p.Name = "Part" | |
283 | p.TopSurface = 0 | |
284 | p.BottomSurface = 0 | |
285 | p.formFactor = "Custom" | |
286 | p.Size = Vector3.new(1, 1, 4.59) | |
287 | p.CFrame = CFrame.new(49.099987, 18.1699905, 58.4000015, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
288 | p.BrickColor = BrickColor.new("Mid gray") | |
289 | p.Transparency = 0 | |
290 | p.Reflectance = .1 | |
291 | p.Material = Enum.Material.Plastic | |
292 | p = Instance.new("Part", Model) | |
293 | p.Name = "Part" | |
294 | p.TopSurface = 0 | |
295 | p.BottomSurface = 0 | |
296 | p.formFactor = "Custom" | |
297 | p.Size = Vector3.new(1, 12.6, 9.80) | |
298 | p.CFrame = CFrame.new(40.2999878, 6.77000237, 63.0000038, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
299 | p.BrickColor = BrickColor.new("Bright yellow") | |
300 | p.Transparency = 0 | |
301 | p.Reflectance = .1 | |
302 | p.Material = Enum.Material.Plastic | |
303 | p = Instance.new("Part", Model) | |
304 | p.Name = "Part" | |
305 | p.TopSurface = 0 | |
306 | p.BottomSurface = 0 | |
307 | p.formFactor = "Custom" | |
308 | p.Size = Vector3.new(5.19, 1.39, 2.39) | |
309 | p.CFrame = CFrame.new(32.2000008, 12.5999899, 63.2999992, -1.49008788e-008, -2.3933373e-007, 0.999990225, 6.6675625e-009, 0.99999392, 2.39334668e-007, -0.999994516, 6.66761935e-009, 7.45059765e-008) | |
310 | p.BrickColor = BrickColor.new("Bright yellow") | |
311 | p.Transparency = 0 | |
312 | p.Reflectance = .1 | |
313 | p.Material = Enum.Material.Plastic | |
314 | m = Instance.new("SpecialMesh") | |
315 | m.Scale = Vector3.new(1, 1, 1) | |
316 | m.Parent = p | |
317 | m.MeshType = Enum.MeshType.Wedge | |
318 | p = Instance.new("Part", Model) | |
319 | p.Name = "Part" | |
320 | p.TopSurface = 0 | |
321 | p.BottomSurface = 0 | |
322 | p.formFactor = "Custom" | |
323 | p.Size = Vector3.new(11, 0.60, 1.99) | |
324 | p.CFrame = CFrame.new(39.3999825, 12.3699951, 63.0000267, 1.49008779e-008, 2.39330944e-007, -0.999990225, 6.66761935e-009, 0.99999392, 2.39331769e-007, 0.999994516, -6.66753408e-009, -7.45059765e-008) | |
325 | p.BrickColor = BrickColor.new("Bright yellow") | |
326 | p.Transparency = 0 | |
327 | p.Reflectance = .1 | |
328 | p.Material = Enum.Material.Plastic | |
329 | m = Instance.new("SpecialMesh") | |
330 | m.Scale = Vector3.new(1, 1, 1) | |
331 | m.Parent = p | |
332 | m.MeshType = Enum.MeshType.Wedge | |
333 | p = Instance.new("Part", Model) | |
334 | p.Name = "Part" | |
335 | p.TopSurface = 0 | |
336 | p.BottomSurface = 0 | |
337 | p.formFactor = "Custom" | |
338 | p.Size = Vector3.new(3.20, 11, 5.60) | |
339 | p.CFrame = CFrame.new(50.1999855, 14.0699921, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
340 | p.BrickColor = BrickColor.new("Bright yellow") | |
341 | p.Transparency = 0 | |
342 | p.Reflectance = .1 | |
343 | p.Material = Enum.Material.Plastic | |
344 | p = Instance.new("Part", Model) | |
345 | p.Name = "Part" | |
346 | p.TopSurface = 0 | |
347 | p.BottomSurface = 0 | |
348 | p.formFactor = "Custom" | |
349 | p.Size = Vector3.new(5, 13, 3.79) | |
350 | p.CFrame = CFrame.new(43.2999916, 9.56999779, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
351 | p.BrickColor = BrickColor.new("Bright yellow") | |
352 | p.Transparency = 0 | |
353 | p.Reflectance = .1 | |
354 | p.Material = Enum.Material.Plastic | |
355 | p = Instance.new("Part", Model) | |
356 | p.Name = "Part" | |
357 | p.TopSurface = 0 | |
358 | p.BottomSurface = 0 | |
359 | p.formFactor = "Custom" | |
360 | p.Size = Vector3.new(5.19, 1.39, 2.39) | |
361 | p.CFrame = CFrame.new(39.6000061, 12.599987, 63.2999992, 1.49011612e-008, 5.89458523e-007, -0.999990225, -3.49571337e-007, 0.99999392, 5.89460512e-007, 0.999994278, 3.49571422e-007, -4.47034836e-008) | |
362 | p.BrickColor = BrickColor.new("Bright yellow") | |
363 | p.Transparency = 0 | |
364 | p.Reflectance = .1 | |
365 | p.Material = Enum.Material.Plastic | |
366 | m = Instance.new("SpecialMesh") | |
367 | m.Scale = Vector3.new(1, 1, 1) | |
368 | m.Parent = p | |
369 | m.MeshType = Enum.MeshType.Wedge | |
370 | p = Instance.new("Part", Model) | |
371 | p.Name = "Part" | |
372 | p.TopSurface = 0 | |
373 | p.BottomSurface = 0 | |
374 | p.formFactor = "Custom" | |
375 | p.Size = Vector3.new(5.19, 1, 1) | |
376 | p.CFrame = CFrame.new(46.2999878, 15.069993, 67.5999985, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
377 | p.BrickColor = BrickColor.new("Mid gray") | |
378 | p.Transparency = 0 | |
379 | p.Reflectance = .1 | |
380 | p.Material = Enum.Material.Plastic | |
381 | p = Instance.new("Part", Model) | |
382 | p.Name = "Part" | |
383 | p.TopSurface = 0 | |
384 | p.BottomSurface = 0 | |
385 | p.formFactor = "Custom" | |
386 | p.Size = Vector3.new(3.20, 5, 4) | |
387 | p.CFrame = CFrame.new(32.200016, 9.59999657, 63.3000221, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
388 | p.BrickColor = BrickColor.new("Bright yellow") | |
389 | p.Transparency = 0 | |
390 | p.Reflectance = .1 | |
391 | p.Material = Enum.Material.Plastic | |
392 | p = Instance.new("Part", Model) | |
393 | p.Name = "Part" | |
394 | p.TopSurface = 0 | |
395 | p.BottomSurface = 0 | |
396 | p.formFactor = "Custom" | |
397 | p.Size = Vector3.new(6, 6.79, 2.79) | |
398 | p.CFrame = CFrame.new(51.9999924, 9.06999302, 70.5000458, -1, 0, -4.37113883e-008, 0, 1, 0, 4.37113883e-008, 0, -1) | |
399 | p.BrickColor = BrickColor.new("Bright yellow") | |
400 | p.Transparency = 0 | |
401 | p.Reflectance = .1 | |
402 | p.Material = Enum.Material.Plastic | |
403 | m = Instance.new("SpecialMesh") | |
404 | m.Scale = Vector3.new(1, 1, 1) | |
405 | m.Parent = p | |
406 | m.MeshType = Enum.MeshType.Wedge | |
407 | p = Instance.new("Part", Model) | |
408 | p.Name = "Part" | |
409 | p.TopSurface = 0 | |
410 | p.BottomSurface = 0 | |
411 | p.formFactor = "Custom" | |
412 | p.Size = Vector3.new(0.60, 7.40, 3.79) | |
413 | p.CFrame = CFrame.new(43.2999916, 12.3699942, 63.2000008, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
414 | p.BrickColor = BrickColor.new("Black") | |
415 | p.Transparency = 0 | |
416 | p.Reflectance = .1 | |
417 | p.Material = Enum.Material.Plastic | |
418 | p = Instance.new("Part", Model) | |
419 | p.Name = "Part" | |
420 | p.TopSurface = 0 | |
421 | p.BottomSurface = 0 | |
422 | p.formFactor = "Custom" | |
423 | p.Size = Vector3.new(6.80, 1, 6.00) | |
424 | p.CFrame = CFrame.new(51.9999924, 9.06999588, 57.3999977, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
425 | p.BrickColor = BrickColor.new("Bright yellow") | |
426 | p.Transparency = 0 | |
427 | p.Reflectance = .1 | |
428 | p.Material = Enum.Material.Plastic | |
429 | p = Instance.new("Part", Model) | |
430 | p.Name = "Part" | |
431 | p.TopSurface = 0 | |
432 | p.BottomSurface = 0 | |
433 | p.formFactor = "Custom" | |
434 | p.Size = Vector3.new(11, 3.20, 2.19) | |
435 | p.CFrame = CFrame.new(54.0999756, 14.0699921, 63.0000076, 1.49011612e-008, 5.89458523e-007, -0.999990225, -3.49571337e-007, 0.99999392, 5.89460512e-007, 0.999994278, 3.49571422e-007, -4.47034836e-008) | |
436 | p.BrickColor = BrickColor.new("Bright yellow") | |
437 | p.Transparency = 0 | |
438 | p.Reflectance = .1 | |
439 | p.Material = Enum.Material.Plastic | |
440 | m = Instance.new("SpecialMesh") | |
441 | m.Scale = Vector3.new(1, 1, 1) | |
442 | m.Parent = p | |
443 | m.MeshType = Enum.MeshType.Wedge | |
444 | p = Instance.new("Part", Model) | |
445 | p.Name = "Part" | |
446 | p.TopSurface = 0 | |
447 | p.BottomSurface = 0 | |
448 | p.formFactor = "Custom" | |
449 | p.Size = Vector3.new(2.60, 11, 2.39) | |
450 | p.CFrame = CFrame.new(32.1999741, 10.7699986, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
451 | p.BrickColor = BrickColor.new("Bright yellow") | |
452 | p.Transparency = 0 | |
453 | p.Reflectance = .1 | |
454 | p.Material = Enum.Material.Plastic | |
455 | p = Instance.new("Part", Model) | |
456 | p.Name = "Part" | |
457 | p.TopSurface = 0 | |
458 | p.BottomSurface = 0 | |
459 | p.formFactor = "Custom" | |
460 | p.Size = Vector3.new(5.19, 1, 1) | |
461 | p.CFrame = CFrame.new(46.2999878, 15.0699921, 58.4000015, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
462 | p.BrickColor = BrickColor.new("Mid gray") | |
463 | p.Transparency = 0 | |
464 | p.Reflectance = .1 | |
465 | p.Material = Enum.Material.Plastic | |
466 | p = Instance.new("Part", Model) | |
467 | p.Name = "Part" | |
468 | p.TopSurface = 0 | |
469 | p.BottomSurface = 0 | |
470 | p.formFactor = "Custom" | |
471 | p.Size = Vector3.new(5, 0.80, 0.79) | |
472 | p.CFrame = CFrame.new(30.6000195, 11.5999937, 63.3000107, -1.49008788e-008, -2.3933373e-007, 0.999990225, 6.6675625e-009, 0.99999392, 2.39334668e-007, -0.999994516, 6.66761935e-009, 7.45059765e-008) | |
473 | p.BrickColor = BrickColor.new("Bright yellow") | |
474 | p.Transparency = 0 | |
475 | p.Reflectance = .1 | |
476 | p.Material = Enum.Material.Plastic | |
477 | m = Instance.new("SpecialMesh") | |
478 | m.Scale = Vector3.new(1, 1, 1) | |
479 | m.Parent = p | |
480 | m.MeshType = Enum.MeshType.Wedge | |
481 | p = Instance.new("Part", Model) | |
482 | p.Name = "Part" | |
483 | p.TopSurface = 0 | |
484 | p.BottomSurface = 0 | |
485 | p.formFactor = "Custom" | |
486 | p.Size = Vector3.new(10, 12, 10) | |
487 | p.CFrame = CFrame.new(51.8000298, 7.099998, 63.0000191, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
488 | p.BrickColor = BrickColor.new("Medium stone grey") | |
489 | p.Transparency = 0 | |
490 | p.Reflectance = .1 | |
491 | p.Material = Enum.Material.Concrete | |
492 | m = Instance.new("CylinderMesh") | |
493 | m.Scale = Vector3.new(1, 1.02999997, 1) | |
494 | m.Parent = p | |
495 | p = Instance.new("Part", Model) | |
496 | p.Name = "Part" | |
497 | p.TopSurface = 0 | |
498 | p.BottomSurface = 0 | |
499 | p.formFactor = "Custom" | |
500 | p.Size = Vector3.new(0.60, 5.19, 5) | |
501 | p.CFrame = CFrame.new(35.9000015, 13, 63.2999992, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
502 | p.BrickColor = BrickColor.new("Bright yellow") | |
503 | p.Transparency = 0 | |
504 | p.Reflectance = .1 | |
505 | p.Material = Enum.Material.Plastic | |
506 | p = Instance.new("Part", Model) | |
507 | p.Name = "Part" | |
508 | p.TopSurface = 0 | |
509 | p.BottomSurface = 0 | |
510 | p.formFactor = "Custom" | |
511 | p.Size = Vector3.new(6, 6.79, 2.79) | |
512 | p.CFrame = CFrame.new(51.9999847, 9.06999207, 55.5, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
513 | p.BrickColor = BrickColor.new("Bright yellow") | |
514 | p.Transparency = 0 | |
515 | p.Reflectance = .1 | |
516 | p.Material = Enum.Material.Plastic | |
517 | m = Instance.new("SpecialMesh") | |
518 | m.Scale = Vector3.new(1, 1, 1) | |
519 | m.Parent = p | |
520 | m.MeshType = Enum.MeshType.Wedge | |
521 | p = Instance.new("Part", Model) | |
522 | p.Name = "Part" | |
523 | p.TopSurface = 0 | |
524 | p.BottomSurface = 0 | |
525 | p.formFactor = "Custom" | |
526 | p.Size = Vector3.new(2.79, 7.40, 0.79) | |
527 | p.CFrame = CFrame.new(44.7999916, 14.0699921, 63.2000008, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
528 | p.BrickColor = BrickColor.new("Black") | |
529 | p.Transparency = 0 | |
530 | p.Reflectance = .1 | |
531 | p.Material = Enum.Material.Plastic | |
532 | p = Instance.new("Part", Model) | |
533 | p.Name = "Part" | |
534 | p.TopSurface = 0 | |
535 | p.BottomSurface = 0 | |
536 | p.formFactor = "Custom" | |
537 | p.Size = Vector3.new(5.40, 11, 10) | |
538 | p.CFrame = CFrame.new(50.1999893, 9.76999474, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
539 | p.BrickColor = BrickColor.new("Bright yellow") | |
540 | p.Transparency = 0 | |
541 | p.Reflectance = .1 | |
542 | p.Material = Enum.Material.Plastic | |
543 | p = Instance.new("Part", Model) | |
544 | p.Name = "Part" | |
545 | p.TopSurface = 0 | |
546 | p.BottomSurface = 0 | |
547 | p.formFactor = "Custom" | |
548 | p.Size = Vector3.new(11, 0.60, 2.39) | |
549 | p.CFrame = CFrame.new(32.1999855, 12.3699961, 62.9999733, -1.49008788e-008, -2.3933373e-007, 0.999990225, 6.6675625e-009, 0.99999392, 2.39334668e-007, -0.999994516, 6.66761935e-009, 7.45059765e-008) | |
550 | p.BrickColor = BrickColor.new("Bright yellow") | |
551 | p.Transparency = 0 | |
552 | p.Reflectance = .1 | |
553 | p.Material = Enum.Material.Plastic | |
554 | m = Instance.new("SpecialMesh") | |
555 | m.Scale = Vector3.new(1, 1, 1) | |
556 | m.Parent = p | |
557 | m.MeshType = Enum.MeshType.Wedge | |
558 | p = Instance.new("Part", Model) | |
559 | p.Name = "Part" | |
560 | p.TopSurface = 0 | |
561 | p.BottomSurface = 0 | |
562 | p.formFactor = "Custom" | |
563 | p.Size = Vector3.new(4, 13, 1) | |
564 | p.CFrame = CFrame.new(40.8999939, 10.0700006, 63, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
565 | p.BrickColor = BrickColor.new("Bright yellow") | |
566 | p.Transparency = 0 | |
567 | p.Reflectance = .1 | |
568 | p.Material = Enum.Material.Plastic | |
569 | p = Instance.new("Part", Model) | |
570 | p.Name = "Part" | |
571 | p.TopSurface = 0 | |
572 | p.BottomSurface = 0 | |
573 | p.formFactor = "Custom" | |
574 | p.Size = Vector3.new(10.1, 1, 0.99) | |
575 | p.CFrame = CFrame.new(51.8999825, 18.1699867, 62.9999733, 1.49008796e-008, 2.39336913e-007, -0.999990225, 6.66744882e-009, 0.99999392, 2.39337737e-007, 0.999994516, -6.66736355e-009, -7.45059765e-008) | |
576 | p.BrickColor = BrickColor.new("Mid gray") | |
577 | p.Transparency = 0 | |
578 | p.Reflectance = .1 | |
579 | p.Material = Enum.Material.Plastic | |
580 | m = Instance.new("SpecialMesh") | |
581 | m.Scale = Vector3.new(1, 1, 1) | |
582 | m.Parent = p | |
583 | m.MeshType = Enum.MeshType.Wedge | |
584 | p = Instance.new("Part", Model) | |
585 | p.Name = "Part" | |
586 | p.TopSurface = 0 | |
587 | p.BottomSurface = 0 | |
588 | p.formFactor = "Custom" | |
589 | p.Size = Vector3.new(1, 1, 4.59) | |
590 | p.CFrame = CFrame.new(49.099987, 18.1699944, 67.5999985, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
591 | p.BrickColor = BrickColor.new("Mid gray") | |
592 | p.Transparency = 0 | |
593 | p.Reflectance = .1 | |
594 | p.Material = Enum.Material.Plastic | |
595 | p = Instance.new("Part", Model) | |
596 | p.Name = "Part" | |
597 | p.TopSurface = 0 | |
598 | p.BottomSurface = 0 | |
599 | p.formFactor = "Custom" | |
600 | p.Size = Vector3.new(1.99, 1, 1) | |
601 | p.CFrame = CFrame.new(51.8999863, 16.6699886, 67.5999908, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
602 | p.BrickColor = BrickColor.new("Mid gray") | |
603 | p.Transparency = 0 | |
604 | p.Reflectance = .1 | |
605 | p.Material = Enum.Material.Plastic | |
606 | p = Instance.new("Part", Model) | |
607 | p.Name = "Part" | |
608 | p.TopSurface = 0 | |
609 | p.BottomSurface = 0 | |
610 | p.formFactor = "Custom" | |
611 | p.Size = Vector3.new(1, 1, 4.59) | |
612 | p.CFrame = CFrame.new(49.099987, 18.1699867, 63.0000153, 0, -5.38727239e-028, 0.999999642, -0.999999642, -5.38727287e-028, 9.62964972e-035, 5.38727335e-028, -0.999999762, -4.37113776e-008) | |
613 | p.BrickColor = BrickColor.new("Mid gray") | |
614 | p.Transparency = 0 | |
615 | p.Reflectance = .1 | |
616 | p.Material = Enum.Material.Plastic | |
617 | p = Instance.new("Part", Model) | |
618 | p.Name = "Part" | |
619 | p.TopSurface = 0 | |
620 | p.BottomSurface = 0 | |
621 | p.formFactor = "Custom" | |
622 | p.Size = Vector3.new(10.1, 1, 0.99) | |
623 | p.CFrame = CFrame.new(46.2999916, 18.1699886, 63.0000229, -1.49008823e-008, -2.39345496e-007, 0.999990225, 6.66727829e-009, 0.99999392, 2.39346434e-007, -0.999994516, 6.66733513e-009, 7.45059765e-008) | |
624 | p.BrickColor = BrickColor.new("Mid gray") | |
625 | p.Transparency = 0 | |
626 | p.Reflectance = .1 | |
627 | p.Material = Enum.Material.Plastic | |
628 | m = Instance.new("SpecialMesh") | |
629 | m.Scale = Vector3.new(1, 1, 1) | |
630 | m.Parent = p | |
631 | m.MeshType = Enum.MeshType.Wedge | |
632 | ||
633 | Spawn = function() | |
634 | Modelc = Model:clone() | |
635 | for _, v in pairs(Modelc:children()) do | |
636 | if v.className == "Part" then | |
637 | if v.Name ~= "Center" then | |
638 | w = Instance.new("Weld") | |
639 | w.Part0 = Modelc.Center | |
640 | w.Part1 = v | |
641 | w.C1 = v.CFrame:inverse() * CFrame.new(v.Position) | |
642 | w.C0 = Modelc.Center.CFrame:inverse() * CFrame.new(v.Position) | |
643 | w.Parent = w.Part0 | |
644 | end | |
645 | end | |
646 | end | |
647 | return Modelc | |
648 | end | |
649 | ||
650 | CameraRadius = 66 | |
651 | TimeStopRadius = 66 | |
652 | ||
653 | RightShoulderC0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
654 | RightShoulderC1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
655 | LeftShoulderC0 = CFrame.new(-1, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
656 | LeftShoulderC1 = CFrame.new(0.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
657 | RightHipC0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
658 | RightHipC1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
659 | LeftHipC0 = CFrame.new(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
660 | LeftHipC1 = CFrame.new(-0.5, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
661 | NeckC0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
662 | NeckC1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
663 | RootJointC0 = CFrame.new(0, 0, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
664 | RootJointC1 = CFrame.new(0, 0, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
665 | ||
666 | getWelds = function(c) --designate weld variables | |
667 | local t = c.Torso | |
668 | local hrp = c.HumanoidRootPart.RootJoint | |
669 | RightShoulder = t:FindFirstChild("Right Shoulder") | |
670 | LeftShoulder = t:FindFirstChild("Left Shoulder") | |
671 | RightHip = t:FindFirstChild("Right Hip") | |
672 | LeftHip = t:FindFirstChild("Left Hip") | |
673 | RootJoint = hrp | |
674 | Neck = t:FindFirstChild("Neck") | |
675 | end | |
676 | resetWelds = function(ext, occ) --extent 1-3; occlusion | |
677 | --1 == reset desiredangle/currentangle | |
678 | --2 == reset C0/C1 | |
679 | --3 == reset both des/cur/c0/c1 | |
680 | local r = { | |
681 | RightShoulder, | |
682 | LeftShoulder, | |
683 | RightHip, | |
684 | LeftHip, | |
685 | RootJoint, | |
686 | Neck, | |
687 | Grip | |
688 | } | |
689 | for _, v in pairs(r) do | |
690 | for i = 1, #occ do | |
691 | if occ[i] == v then | |
692 | table.remove(r, _) | |
693 | end | |
694 | end | |
695 | end | |
696 | for _, v in pairs(r) do | |
697 | if v.Name == "Right Shoulder" then | |
698 | if ext == 1 then | |
699 | v.DesiredAngle = 0 | |
700 | v.CurrentAngle = 0 | |
701 | elseif ext == 2 then | |
702 | v.C0 = RightShoulderC0 | |
703 | v.C1 = RightShoulderC1 | |
704 | elseif ext == 3 then | |
705 | v.DesiredAngle = 0 | |
706 | v.CurrentAngle = 0 | |
707 | v.C0 = RightShoulderC0 | |
708 | v.C1 = RightShoulderC1 | |
709 | end | |
710 | elseif v.Name == "Left Shoulder" then | |
711 | if ext == 1 then | |
712 | v.DesiredAngle = 0 | |
713 | v.CurrentAngle = 0 | |
714 | elseif ext == 2 then | |
715 | v.C0 = LeftShoulderC0 | |
716 | v.C1 = LeftShoulderC1 | |
717 | elseif ext == 3 then | |
718 | v.DesiredAngle = 0 | |
719 | v.CurrentAngle = 0 | |
720 | v.C0 = LeftShoulderC0 | |
721 | v.C1 = LeftShoulderC1 | |
722 | end | |
723 | elseif v.Name == "Right Hip" then | |
724 | if ext == 1 then | |
725 | v.DesiredAngle = 0 | |
726 | v.CurrentAngle = 0 | |
727 | elseif ext == 2 then | |
728 | v.C0 = RightHipC0 | |
729 | v.C1 = RightHipC1 | |
730 | elseif ext == 3 then | |
731 | v.DesiredAngle = 0 | |
732 | v.CurrentAngle = 0 | |
733 | v.C0 = RightHipC0 | |
734 | v.C1 = RightHipC1 | |
735 | end | |
736 | elseif v.Name == "Left Hip" then | |
737 | if ext == 1 then | |
738 | v.DesiredAngle = 0 | |
739 | v.CurrentAngle = 0 | |
740 | elseif ext == 2 then | |
741 | v.C0 = LeftHipC0 | |
742 | v.C1 = LeftHipC1 | |
743 | elseif ext == 3 then | |
744 | v.DesiredAngle = 0 | |
745 | v.CurrentAngle = 0 | |
746 | v.C0 = LeftHipC0 | |
747 | v.C1 = LeftHipC1 | |
748 | end | |
749 | elseif v.Name == "Neck" then | |
750 | if ext == 1 then | |
751 | v.DesiredAngle = 0 | |
752 | v.CurrentAngle = 0 | |
753 | elseif ext == 2 then | |
754 | v.C0 = NeckC0 | |
755 | v.C1 = NeckC1 | |
756 | elseif ext == 3 then | |
757 | v.DesiredAngle = 0 | |
758 | v.CurrentAngle = 0 | |
759 | v.C0 = NeckC0 | |
760 | v.C1 = NeckC1 | |
761 | end | |
762 | elseif v.Name == "RootJoint" then | |
763 | if ext == 1 then | |
764 | v.DesiredAngle = 0 | |
765 | v.CurrentAngle = 0 | |
766 | elseif ext == 2 then | |
767 | v.C0 = RootJointC0 | |
768 | v.C1 = RootJointC1 | |
769 | elseif ext == 3 then | |
770 | v.DesiredAngle = 0 | |
771 | v.CurrentAngle = 0 | |
772 | v.C0 = RootJointC0 | |
773 | v.C1 = RootJointC1 | |
774 | end | |
775 | elseif v.Name == "RightGrip" then | |
776 | if ext == 1 then | |
777 | elseif ext == 2 then | |
778 | Grip.C0 = nGrip.C0 | |
779 | Grip.C1 = nGrip.C1 | |
780 | elseif ext == 3 then | |
781 | Grip.C0 = nGrip.C0 | |
782 | Grip.C1 = nGrip.C1 | |
783 | end | |
784 | end | |
785 | end | |
786 | end | |
787 | ||
788 | ||
789 | doitdocdoit = function() | |
790 | if deb == false then | |
791 | return | |
792 | end | |
793 | deb = false | |
794 | ||
795 | vPlayer = game.Players.LocalPlayer | |
796 | cPlayer = vPlayer.Character | |
797 | Anim = cPlayer.Animate | |
798 | Anim.Disabled = true | |
799 | Hum = cPlayer.Humanoid | |
800 | Hum.Name = "NOPE" | |
801 | Hum.WalkSpeed = 0 | |
802 | getWelds(cPlayer) | |
803 | resetWelds(3, {}) | |
804 | ||
805 | bodypos = Instance.new("BodyPosition") | |
806 | bodypos.P = 4000 | |
807 | bodypos.maxForce = Vector3.new(5000000, 50000000, 5000000) * 5000 | |
808 | bodypos.position = cPlayer.Torso.Position + Vector3.new(0, .5, 0) | |
809 | bodypos.Parent = cPlayer.Torso | |
810 | ||
811 | dir = cPlayer.HumanoidRootPart.CFrame.lookVector | |
812 | CPlayer = cPlayer | |
813 | partpos = Instance.new("Part", workspace) | |
814 | partpos.Transparency = 1 | |
815 | partpos.CanCollide = false | |
816 | partpos.Anchored = true | |
817 | partpos.CFrame = cPlayer.Torso.CFrame | |
818 | ||
819 | sound = Instance.new("Sound") | |
820 | sound.Parent = partpos | |
821 | sound.Volume = 1 | |
822 | sound.SoundId = "http://www.roblox.com/asset/?id=468760371" | |
823 | -- sound.SoundId="http://www.roblox.com/asset/?id=168009623" | |
824 | sound2 = Instance.new("Sound") | |
825 | sound2.Parent = workspace.CurrentCamera | |
826 | sound2.Volume = 1 | |
827 | sound2.SoundId = "http://www.roblox.com/asset/?id=468760371" | |
828 | -- sound2.SoundId="http://www.roblox.com/asset/?id=168009623" | |
829 | sound:Play() | |
830 | sound2:Play() | |
831 | expected = 10 | |
832 | did = false | |
833 | pooted = 0 | |
834 | sos = game:GetService("RunService").Stepped:connect(function() | |
835 | pooted = pooted + 1 | |
836 | if pooted >= expected + 1 then | |
837 | sos:disconnect() | |
838 | did = true | |
839 | return | |
840 | end | |
841 | resetWelds(3, {}) | |
842 | RightShoulder.C0 = RightShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted), math.rad(0), math.rad(0)) | |
843 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted), math.rad(0), math.rad(0)) | |
844 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted), math.rad(0), math.rad(0)) | |
845 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted), math.rad(0), math.rad(0)) | |
846 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
847 | RootJoint.C0 = RootJoint.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
848 | end) | |
849 | --[[sound=Instance.new("Sound") | |
850 | sound.Parent=cPlayer.Torso | |
851 | sound.Volume=1 | |
852 | sound.SoundId="http://www.roblox.com/asset/?id=316900066" | |
853 | sound:Play()]]-- | |
854 | while did == false do | |
855 | wait() | |
856 | end | |
857 | ||
858 | expected = 10 | |
859 | did = false | |
860 | pooted = 0 | |
861 | sos = game:GetService("RunService").Stepped:connect(function() | |
862 | pooted = pooted + 1 | |
863 | if pooted >= expected + 1 then | |
864 | sos:disconnect() | |
865 | did = true | |
866 | return | |
867 | end | |
868 | resetWelds(3, {}) | |
869 | RightShoulder.C0 = RightShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12 - pooted * 8), math.rad(0), math.rad(pooted)) | |
870 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, pooted * .1) * CFrame.fromEulerAnglesXYZ(math.rad(-12 - pooted * 9), math.rad(pooted * 9), math.rad(0)) | |
871 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12), math.rad(0), math.rad(0)) | |
872 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12), math.rad(0), math.rad(0)) | |
873 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(pooted / 2), math.rad(0), math.rad(-pooted * 9)) | |
874 | RootJoint.C0 = RootJoint.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted), math.rad(pooted / 3), math.rad(pooted * 10)) | |
875 | end) | |
876 | while did == false do | |
877 | wait() | |
878 | end | |
879 | wait(.2) | |
880 | expected = 5 | |
881 | did = false | |
882 | pooted = 0 | |
883 | nubhit = nil | |
884 | sos = game:GetService("RunService").Stepped:connect(function() | |
885 | pooted = pooted + 1 | |
886 | if pooted >= expected + 1 then | |
887 | sos:disconnect() | |
888 | did = true | |
889 | return | |
890 | end | |
891 | resetWelds(3, {}) | |
892 | RightShoulder.C0 = RightShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12 - pooted * 8), math.rad(0), math.rad(pooted)) | |
893 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, pooted * .1) * CFrame.fromEulerAnglesXYZ(math.rad(-12 - pooted * 9), math.rad(pooted * 9), math.rad(0)) | |
894 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12), math.rad(0), math.rad(0)) | |
895 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-12), math.rad(0), math.rad(0)) | |
896 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(5), math.rad(0), math.rad(-90 + pooted * 40)) | |
897 | RootJoint.C0 = RootJoint.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-10 + pooted * 4), math.rad(3.3), math.rad(90 - pooted * 34)) | |
898 | if nubhit == nil then | |
899 | bodypos.position = bodypos.position + dir * 4 | |
900 | cPlayer.Torso.CFrame = CFrame.new(bodypos.position + dir * 4, bodypos.position + dir * 20) | |
901 | --bodypos.position=bodypos.position + dir*9 | |
902 | --cPlayer.Torso.CFrame=CFrame.new(bodypos.position+dir*9,bodypos.position+dir*20) | |
903 | end | |
904 | if nubhit == nil and pooted >= 2 then | |
905 | pos = bodypos.position + dir * 2 | |
906 | radi = 6 | |
907 | for _, v in pairs(workspace:children()) do | |
908 | h = v:FindFirstChild("Humanoid") | |
909 | t = v:FindFirstChild("Torso") | |
910 | if h ~= nil and t ~= nil and v ~= cPlayer then | |
911 | if (t.Position - pos).magnitude <= radi then | |
912 | print(":>") | |
913 | nubhit = v | |
914 | break | |
915 | end | |
916 | end | |
917 | end | |
918 | end | |
919 | if nubhit ~= nil then | |
920 | if nubhit.Torso:FindFirstChild("PART1") == nil then | |
921 | v = Instance.new("BodyVelocity") | |
922 | v.P = 4000 | |
923 | v.maxForce = Vector3.new(500000000000, 500000000000, 500000000000) | |
924 | v.velocity = dir * 4 + Vector3.new(0, 4, 0) | |
925 | v.Name = "PART1" | |
926 | v.Parent = nubhit.Torso | |
927 | game:GetService("Debris"):AddItem(v, 5) | |
928 | coroutine.resume(coroutine.create(function(v) | |
929 | for i = 1, 100 do | |
930 | v.velocity = v.velocity - Vector3.new(0, .07, 0) | |
931 | wait() | |
932 | end | |
933 | end), v) | |
934 | v = Instance.new("BodyGyro") | |
935 | v.P = 20 | |
936 | v.D = 30 | |
937 | v.maxTorque = Vector3.new(5000000, 5000000, 5000000) | |
938 | v.cframe = CPlayer.Torso.CFrame * CFrame.fromEulerAnglesXYZ(math.pi / 2, math.pi, 0) | |
939 | v.Name = "PART1" | |
940 | v.Parent = nubhit.Torso | |
941 | game:GetService("Debris"):AddItem(v, 5) | |
942 | end | |
943 | end | |
944 | end) | |
945 | while did == false do | |
946 | wait() | |
947 | end | |
948 | if nubhit == nil then | |
949 | sound:Stop() | |
950 | wait(.5) | |
951 | sound2:Stop() | |
952 | else | |
953 | expected = 32 | |
954 | did = false | |
955 | pooted = 0 | |
956 | sos = game:GetService("RunService").Stepped:connect(function() | |
957 | pooted = pooted + 1 | |
958 | if pooted >= expected + 1 then | |
959 | sos:disconnect() | |
960 | did = true | |
961 | return | |
962 | end | |
963 | RightShoulder.C0 = RightShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-.03), math.rad(0), math.rad(.03)) | |
964 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, .02) * CFrame.fromEulerAnglesXYZ(math.rad(-.05), math.rad(.08), math.rad(0)) | |
965 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-.04), math.rad(0), math.rad(0)) | |
966 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-.04), math.rad(0), math.rad(0)) | |
967 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(.05), math.rad(0), math.rad(.1)) | |
968 | RootJoint.C0 = RootJoint.C0 * CFrame.fromEulerAnglesXYZ(math.rad(.2), math.rad(0.05), math.rad(-.05)) | |
969 | bodypos.position = bodypos.position + dir * .05 | |
970 | cPlayer.Torso.CFrame = CFrame.new(bodypos.position + dir * .05, bodypos.position + dir * 20) | |
971 | end) | |
972 | while did == false do | |
973 | wait() | |
974 | end | |
975 | bodypos.Parent = nil | |
976 | expected = 12 | |
977 | did = false | |
978 | pooted = 0 | |
979 | sos = game:GetService("RunService").Stepped:connect(function() | |
980 | pooted = pooted + 1 | |
981 | if pooted >= expected + 1 then | |
982 | sos:disconnect() | |
983 | did = true | |
984 | return | |
985 | end | |
986 | RightShoulder.C0 = RightShoulder.C0 * CFrame.fromEulerAnglesXYZ(math.rad(4.5), math.rad(0), math.rad(-.15)) | |
987 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, -.07) * CFrame.fromEulerAnglesXYZ(math.rad(5.6), math.rad(-4.5), math.rad(1.25)) | |
988 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1.24), math.rad(0), math.rad(0)) | |
989 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1.24), math.rad(0), math.rad(0)) | |
990 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(-2.5), math.rad(-8)) | |
991 | RootJoint.C0 = RootJoint.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-.5), math.rad(-.5), math.rad(7)) | |
992 | end) | |
993 | ||
994 | while did == false do | |
995 | wait() | |
996 | end | |
997 | expected = 6 | |
998 | did = false | |
999 | pooted = 0 | |
1000 | sos = game:GetService("RunService").Stepped:connect(function() | |
1001 | pooted = pooted + 1 | |
1002 | if pooted >= expected + 1 then | |
1003 | sos:disconnect() | |
1004 | did = true | |
1005 | return | |
1006 | end | |
1007 | resetWelds(3, {}) | |
1008 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 5), math.rad(0), math.rad(pooted * 18)) | |
1009 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 5), math.rad(0), math.rad(-pooted * 18)) | |
1010 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(pooted * 6)) | |
1011 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(-pooted * 6)) | |
1012 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(20 + pooted * 5), math.rad(0), math.rad(0)) | |
1013 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, pooted * .03, -pooted * .1) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 6), math.rad(0), math.rad(pooted * 1)) | |
1014 | print(":(") | |
1015 | end) | |
1016 | wait(.3) | |
1017 | while did == false do | |
1018 | wait() | |
1019 | end | |
1020 | resetWelds(3, { | |
1021 | "Neck" | |
1022 | }) | |
1023 | expected = 5 | |
1024 | did = false | |
1025 | pooted = 0 | |
1026 | p = Instance.new("Part", workspace) | |
1027 | p.Name = "ORB" | |
1028 | p.TopSurface = 0 | |
1029 | p.BottomSurface = 0 | |
1030 | p.formFactor = "Custom" | |
1031 | p.CFrame = cPlayer.Torso.CFrame | |
1032 | m = Instance.new("SpecialMesh", p) | |
1033 | m.MeshType = "Sphere" | |
1034 | p.BrickColor = BrickColor:White() | |
1035 | p.Size = Vector3.new(1, 1, 1) | |
1036 | p.CanCollide = false | |
1037 | p.Anchored = true | |
1038 | game:GetService("Debris"):AddItem(p, 5) | |
1039 | coroutine.resume(coroutine.create(function(p) | |
1040 | nubhit.Torso.Anchored = true | |
1041 | for i = 1, 10 do | |
1042 | p.Mesh.Scale = p.Mesh.Scale + Vector3.new(5, 5, 5) | |
1043 | p.Transparency = .5 + i / 20 | |
1044 | wait() | |
1045 | end | |
1046 | p:Remove() | |
1047 | end), p) | |
1048 | sos = game:GetService("RunService").Stepped:connect(function() | |
1049 | pooted = pooted + 1 | |
1050 | if pooted >= expected + 1 then | |
1051 | sos:disconnect() | |
1052 | did = true | |
1053 | return | |
1054 | end | |
1055 | resetWelds(3, {}) | |
1056 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 10), math.rad(-pooted * 12), math.rad(pooted * 10)) | |
1057 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 10), math.rad(pooted * 12), math.rad(-pooted * 10)) | |
1058 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(-pooted * 10)) | |
1059 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(pooted * 9)) | |
1060 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(20 - pooted * 6), math.rad(0), math.rad(0)) | |
1061 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, pooted * .03, -pooted * .1) * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 9.5), math.rad(0), math.rad(pooted * .2)) | |
1062 | print(":(") | |
1063 | end) | |
1064 | ||
1065 | while did == false do | |
1066 | wait() | |
1067 | end | |
1068 | wait(1) | |
1069 | expected = 5 | |
1070 | did = false | |
1071 | pooted = 0 | |
1072 | sos = game:GetService("RunService").Stepped:connect(function() | |
1073 | pooted = pooted + 1 | |
1074 | if pooted >= expected + 1 then | |
1075 | sos:disconnect() | |
1076 | did = true | |
1077 | return | |
1078 | end | |
1079 | resetWelds(3, {}) | |
1080 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0.05 * pooted, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 2), math.rad(0), math.rad(pooted * 6)) | |
1081 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 2), math.rad(0), math.rad(-pooted * 6)) | |
1082 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(-57 + pooted * 20)) | |
1083 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(57 - pooted * 20)) | |
1084 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 4), math.rad(0), math.rad(0)) | |
1085 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, -.1 * pooted) * CFrame.fromEulerAnglesXYZ(math.rad(-57 + pooted * 20), math.rad(0), math.rad(0)) | |
1086 | print(":(") | |
1087 | end) | |
1088 | while did == false do | |
1089 | wait() | |
1090 | end | |
1091 | wait(.8) | |
1092 | expected = 5 | |
1093 | did = false | |
1094 | pooted = 0 | |
1095 | bodypos.Parent = cPlayer.Torso | |
1096 | workspace.CurrentCamera.CameraType = "Follow" | |
1097 | sos = game:GetService("RunService").Stepped:connect(function() | |
1098 | pooted = pooted + 1 | |
1099 | if pooted >= expected + 1 then | |
1100 | sos:disconnect() | |
1101 | did = true | |
1102 | return | |
1103 | end | |
1104 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-2), math.rad(0), math.rad(-3)) | |
1105 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(2), math.rad(0), math.rad(3)) | |
1106 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(0), math.rad(-8)) | |
1107 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(0), math.rad(8)) | |
1108 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-14), math.rad(0), math.rad(0)) | |
1109 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, .05) * CFrame.fromEulerAnglesXYZ(math.rad(-7), math.rad(0), math.rad(0)) | |
1110 | ||
1111 | bodypos.position = bodypos.position + Vector3.new(0, 240, 0) | |
1112 | cPlayer.Torso.CFrame = cPlayer.Torso.CFrame + Vector3.new(0, 240, 0) | |
1113 | ||
1114 | print(":(") | |
1115 | end) | |
1116 | local DIOPLS = Instance.new("Sound", cPlayer.Torso) | |
1117 | DIOPLS.SoundId = "rbxassetid://316900066" | |
1118 | DIOPLS.Volume = 1 | |
1119 | DIOPLS:Play() | |
1120 | Instance.new("DistortionSoundEffect", DIOPLS).Level = 1 | |
1121 | game:GetService("Debris"):AddItem(DIOPLS, 19) | |
1122 | while did == false do | |
1123 | wait() | |
1124 | end | |
1125 | wait(.8) | |
1126 | LOL = Spawn() | |
1127 | LOL.Parent = workspace | |
1128 | LOL:MakeJoints() | |
1129 | LOL:MoveTo(cPlayer.Torso.CFrame.p) | |
1130 | C = LOL.Center | |
1131 | C.CFrame = CFrame.new(nubhit.Torso.Position + Vector3.new(0, 1200, 0)) * CFrame.new(8, 0, 0) | |
1132 | ||
1133 | bb = Instance.new("BodyPosition") | |
1134 | bb.Parent = C | |
1135 | bb.maxForce = Vector3.new(50000000000000000, 50000000000000000, 50000000000000000) | |
1136 | bb.position = bb.Parent.Position | |
1137 | C.CFrame = CFrame.new(bb.position) | |
1138 | orig = bb.position | |
1139 | ||
1140 | gg = Instance.new("BodyGyro") | |
1141 | gg.P = 15000 | |
1142 | gg.D = 100 | |
1143 | gg.maxTorque = Vector3.new(500000000, 500000000, 500000000) | |
1144 | gg.cframe = CFrame.new(C.Position, Vector3.new(nubhit.Torso.Position.x, C.Position.y, nubhit.Torso.Position.z)) * CFrame.fromEulerAnglesXYZ(-math.rad(10), math.rad(10), 0) | |
1145 | gg.Parent = C | |
1146 | ||
1147 | expected = 80 | |
1148 | did = false | |
1149 | pooted = 0 | |
1150 | ||
1151 | resetWelds(3, {}) | |
1152 | ||
1153 | Hum.PlatformStand = true | |
1154 | ||
1155 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, .4, 0) * CFrame.fromEulerAnglesXYZ(math.rad(30), math.rad(0), math.rad(180)) | |
1156 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, .4, 0) * CFrame.fromEulerAnglesXYZ(math.rad(30), math.rad(0), math.rad(-180)) | |
1157 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-8), math.rad(0), math.rad(-8)) | |
1158 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-8), math.rad(0), math.rad(8)) | |
1159 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-45), math.rad(0), math.rad(0)) | |
1160 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1161 | ||
1162 | bodypos.Parent = nil | |
1163 | w = Instance.new("Weld") | |
1164 | w.Part0 = C | |
1165 | w.Part1 = cPlayer.Torso | |
1166 | w.C0 = CFrame.new(.3, 5.6, -7) * CFrame.fromEulerAnglesXYZ(math.pi / .9, math.pi / 10, 0) | |
1167 | w.C0 = w.C0 * CFrame.fromEulerAnglesXYZ(0, 0, 0) | |
1168 | w.Parent = w.Part0 | |
1169 | ||
1170 | sos = game:GetService("RunService").Stepped:connect(function() | |
1171 | pooted = pooted + 1 | |
1172 | if pooted >= expected + 1 then | |
1173 | sos:disconnect() | |
1174 | did = true | |
1175 | return | |
1176 | end | |
1177 | ||
1178 | bb.position = orig - Vector3.new(0, 1202 / 80 * pooted, 0) | |
1179 | C.CFrame = C.CFrame - Vector3.new(0, 1202 / 80, 0) | |
1180 | print(":(") | |
1181 | end) | |
1182 | ||
1183 | while did == false do | |
1184 | wait() | |
1185 | end | |
1186 | C.CFrame = CFrame.new(nubhit.Torso.Position + Vector3.new(0, 4, 0), Vector3.new(nubhit.Torso.Position.x, C.Position.y, nubhit.Torso.Position.z)) * CFrame.fromEulerAnglesXYZ(-math.rad(5), math.rad(5), 0) | |
1187 | C.CFrame = C.CFrame * CFrame.new(8, 0, 0) | |
1188 | bl2 = Instance.new("Part") | |
1189 | bl2.TopSurface = 0 | |
1190 | bl2.BottomSurface = 0 | |
1191 | bl2.CanCollide = false | |
1192 | bl2.formFactor = "Symmetric" | |
1193 | local ShockWaveSound = Instance.new("Sound", bl2) | |
1194 | ShockWaveSound.SoundId = "rbxassetid://138186576" | |
1195 | ShockWaveSound.Pitch = 0.8 | |
1196 | ShockWaveSound.Volume = 1 | |
1197 | ShockWaveSound:Play() | |
1198 | Instance.new("DistortionSoundEffect", ShockWaveSound).Level = 1 | |
1199 | m = Instance.new("SpecialMesh") | |
1200 | m.MeshId = "http://www.roblox.com/asset/?id=20329976" | |
1201 | m.Scale = Vector3.new(1, 4, 1) | |
1202 | m.Parent = bl2 | |
1203 | bl2.Size = Vector3.new(1, 1, 1) | |
1204 | bl2.Anchored = false | |
1205 | bl2.Name = "c" | |
1206 | bl2.CFrame = CFrame.new(C.Position) - Vector3.new(0, 2, 0) | |
1207 | bl2.BrickColor = BrickColor.new("White") | |
1208 | bl2.Parent = CPlayer | |
1209 | coroutine.resume(coroutine.create(function(p) | |
1210 | for i = 1, 10 do | |
1211 | p.Mesh.Scale = p.Mesh.Scale + Vector3.new(8, 0, 8) | |
1212 | p.Transparency = .25 + i * .075 | |
1213 | p.CFrame = p.CFrame * CFrame.fromEulerAnglesXYZ(0, math.rad(5), 0) | |
1214 | wait() | |
1215 | end | |
1216 | p:Remove() | |
1217 | end), bl2) | |
1218 | bl2.Anchored = true | |
1219 | ||
1220 | bl2 = Instance.new("Part") | |
1221 | bl2.TopSurface = 0 | |
1222 | bl2.BottomSurface = 0 | |
1223 | bl2.CanCollide = false | |
1224 | bl2.formFactor = "Symmetric" | |
1225 | m = Instance.new("SpecialMesh") | |
1226 | m.MeshId = "http://www.roblox.com/asset/?id=20329976" | |
1227 | m.Scale = Vector3.new(1, 6, 1) | |
1228 | m.Parent = bl2 | |
1229 | bl2.Size = Vector3.new(1, 1, 1) | |
1230 | bl2.Anchored = false | |
1231 | bl2.Name = "c" | |
1232 | bl2.CFrame = CFrame.new(C.Position) - Vector3.new(0, 2, 0) | |
1233 | bl2.BrickColor = BrickColor.new("White") | |
1234 | bl2.Parent = CPlayer | |
1235 | coroutine.resume(coroutine.create(function(p) | |
1236 | for i = 1, 20 do | |
1237 | p.Mesh.Scale = p.Mesh.Scale + Vector3.new(6, 0, 6) | |
1238 | p.Transparency = i / 20 | |
1239 | p.CFrame = p.CFrame * CFrame.fromEulerAnglesXYZ(0, math.rad(3), 0) | |
1240 | wait() | |
1241 | end | |
1242 | p:Remove() | |
1243 | end), bl2) | |
1244 | bl2.Anchored = true | |
1245 | ||
1246 | gg.cframe = gg.cframe * CFrame.fromEulerAnglesXYZ(math.rad(10), -math.rad(10), 0) | |
1247 | expected = 3 | |
1248 | did = false | |
1249 | pooted = 0 | |
1250 | workspace.CurrentCamera.CameraType = "Follow" | |
1251 | sos = game:GetService("RunService").Stepped:connect(function() | |
1252 | pooted = pooted + 1 | |
1253 | if pooted >= expected + 1 then | |
1254 | sos:disconnect() | |
1255 | did = true | |
1256 | return | |
1257 | end | |
1258 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1259 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1260 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-4), math.rad(0), math.rad(0)) | |
1261 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(4), math.rad(0), math.rad(0)) | |
1262 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1263 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(5), math.rad(0), math.rad(0)) | |
1264 | ||
1265 | w.C0 = w.C0 * CFrame.fromEulerAnglesXYZ(math.rad(15), 0, 0) | |
1266 | ||
1267 | print(":(") | |
1268 | end) | |
1269 | while did == false do | |
1270 | wait() | |
1271 | end | |
1272 | wait(.3) | |
1273 | expected = 5 | |
1274 | did = false | |
1275 | pooted = 0 | |
1276 | workspace.CurrentCamera.CameraType = "Follow" | |
1277 | sos = game:GetService("RunService").Stepped:connect(function() | |
1278 | pooted = pooted + 1 | |
1279 | if pooted >= expected + 1 then | |
1280 | sos:disconnect() | |
1281 | did = true | |
1282 | return | |
1283 | end | |
1284 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1285 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1286 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(-8)) | |
1287 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(8)) | |
1288 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(5), math.rad(0), math.rad(0)) | |
1289 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(14), math.rad(0), math.rad(0)) | |
1290 | ||
1291 | w.C0 = w.C0 * CFrame.new(0, 0, -.04) * CFrame.fromEulerAnglesXYZ(math.rad(15), 0, 0) | |
1292 | ||
1293 | print(":(") | |
1294 | end) | |
1295 | while did == false do | |
1296 | wait() | |
1297 | end | |
1298 | expected = 203 | |
1299 | did = false | |
1300 | pooted = 0 | |
1301 | workspace.CurrentCamera.CameraType = "Follow" | |
1302 | sos = game:GetService("RunService").Stepped:connect(function() | |
1303 | pooted = pooted + 1 | |
1304 | if pooted >= expected + 1 then | |
1305 | sos:disconnect() | |
1306 | did = true | |
1307 | return | |
1308 | end | |
1309 | resetWelds(3, { | |
1310 | RightHip, | |
1311 | LeftHip, | |
1312 | RootJoint, | |
1313 | Neck | |
1314 | }) | |
1315 | RightShoulder.C0 = RightShoulderC0 * CFrame.new(math.random(-20, 20) / 200, math.cos(time() * 30), math.random(-20, 20) / 200) * CFrame.fromEulerAnglesXYZ(math.sin(time() * 20) / 3, math.sin(time() * 20) / 5, math.rad(60) - math.cos(time() * 70) * 2) | |
1316 | LeftShoulder.C0 = LeftShoulderC0 * CFrame.new(math.random(-20, 20) / 200, math.cos(time() * 30), math.random(-20, 20) / 200) * CFrame.fromEulerAnglesXYZ(math.sin(time() * 20) / 3, math.sin(time() * 20) / 5, math.rad(-60) + math.sin(time() * 60) * 2) | |
1317 | RightHip.C0 = RightHipC0 * CFrame.fromEulerAnglesXYZ(math.rad(-18), math.rad(0), math.rad(-30)) | |
1318 | LeftHip.C0 = LeftHipC0 * CFrame.fromEulerAnglesXYZ(math.rad(-18), math.rad(0), math.rad(30)) | |
1319 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(20), math.rad(0), math.rad(0)) | |
1320 | RootJoint.C0 = RootJointC0 * CFrame.new(math.random(-20, 20) / 200, math.random(-20, 20) / 200, math.random(-20, 20) / 200) * CFrame.fromEulerAnglesXYZ(math.rad(80), math.rad(0), math.rad(0)) | |
1321 | w.C0 = w.C0 * CFrame.new(math.random(-20, 20) / 2000, math.random(-20, 20) / 2000, math.random(-20, 20) / 2000) * CFrame.fromEulerAnglesXYZ(0, 0, 0) | |
1322 | C.CFrame = C.CFrame + Vector3.new(math.random(-20, 20) / 200, math.random(-20, 20) / 200, math.random(-20, 20) / 200) | |
1323 | ||
1324 | if pooted / 2 == math.floor(pooted / 2) then | |
1325 | p = cPlayer["Right Arm"]:clone() | |
1326 | p.Anchored = true | |
1327 | p.CanCollide = false | |
1328 | p.Parent = workspace | |
1329 | p.Transparency = .5 | |
1330 | game:GetService("Debris"):AddItem(p, .2) | |
1331 | p = cPlayer["Left Arm"]:clone() | |
1332 | p.Anchored = true | |
1333 | p.CanCollide = false | |
1334 | p.Parent = workspace | |
1335 | p.Transparency = .5 | |
1336 | game:GetService("Debris"):AddItem(p, .2) | |
1337 | ||
1338 | p = Instance.new("Part", workspace) | |
1339 | p.Name = "ORB" | |
1340 | p.TopSurface = 0 | |
1341 | p.BottomSurface = 0 | |
1342 | p.formFactor = "Custom" | |
1343 | p.CFrame = cPlayer.Torso.CFrame + cPlayer.Torso.CFrame.lookVector * 3 + Vector3.new(math.random(-20, 20) / 15, math.random(-20, 20) / 15 - .8, math.random(-20, 20) / 15) | |
1344 | m = Instance.new("SpecialMesh", p) | |
1345 | m.MeshType = "Sphere" | |
1346 | p.BrickColor = BrickColor:White() | |
1347 | p.Size = Vector3.new(.4, .4, .4) | |
1348 | p.CanCollide = false | |
1349 | p.Anchored = true | |
1350 | game:GetService("Debris"):AddItem(p, 5) | |
1351 | coroutine.resume(coroutine.create(function(p) | |
1352 | for i = 1, 8 do | |
1353 | p.Mesh.Scale = p.Mesh.Scale + Vector3.new(1, 1, 1) | |
1354 | p.Transparency = i / 8 | |
1355 | wait() | |
1356 | end | |
1357 | p:Remove() | |
1358 | end), p) | |
1359 | ||
1360 | end | |
1361 | ||
1362 | print(":)") | |
1363 | end) | |
1364 | while did == false do | |
1365 | wait() | |
1366 | end | |
1367 | wait(.5) | |
1368 | expected = 20 | |
1369 | did = false | |
1370 | pooted = 0 | |
1371 | workspace.CurrentCamera.CameraType = "Follow" | |
1372 | sos = game:GetService("RunService").Stepped:connect(function() | |
1373 | pooted = pooted + 1 | |
1374 | if pooted >= expected + 1 then | |
1375 | sos:disconnect() | |
1376 | did = true | |
1377 | return | |
1378 | end | |
1379 | resetWelds(3, { | |
1380 | Neck, | |
1381 | RootJoint, | |
1382 | RightHip, | |
1383 | LeftHip | |
1384 | }) | |
1385 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(2 * pooted), math.rad(0), math.rad(5 * pooted)) | |
1386 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(-9 * pooted)) | |
1387 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(-2)) | |
1388 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(4 * pooted)) | |
1389 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(2), math.rad(0), math.rad(2)) | |
1390 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1391 | w.C0 = w.C0 * CFrame.new(0, 0.03, .03) * CFrame.fromEulerAnglesXYZ(math.rad(2), math.rad(2), math.rad(0)) | |
1392 | print(":)") | |
1393 | end) | |
1394 | while did == false do | |
1395 | wait() | |
1396 | end | |
1397 | wait(2) | |
1398 | expected = 5 | |
1399 | did = false | |
1400 | pooted = 0 | |
1401 | workspace.CurrentCamera.CameraType = "Follow" | |
1402 | w.Parent = nil | |
1403 | bodypos.position = cPlayer.Torso.Position - Vector3.new(0, 1, 0) | |
1404 | poo = cPlayer.Torso.CFrame.lookVector | |
1405 | cPlayer.Torso.CFrame = CFrame.new(cPlayer.Torso.Position, cPlayer.Torso.Position + C.CFrame.lookVector * 50) | |
1406 | bodypos.Parent = cPlayer.Torso | |
1407 | sos = game:GetService("RunService").Stepped:connect(function() | |
1408 | pooted = pooted + 1 | |
1409 | if pooted >= expected + 1 then | |
1410 | sos:disconnect() | |
1411 | did = true | |
1412 | return | |
1413 | end | |
1414 | resetWelds(3, {}) | |
1415 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(80 - pooted * 35)) | |
1416 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(10), math.rad(0), math.rad(-190 + pooted * 28)) | |
1417 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(6), math.rad(0), math.rad(-80 + pooted * 4)) | |
1418 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(8), math.rad(0), math.rad(84 - pooted * 4)) | |
1419 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(20 + pooted * 10), math.rad(0), math.rad(0)) | |
1420 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, -pooted * .25) * CFrame.fromEulerAnglesXYZ(math.rad(-20 + pooted * 9), math.rad(0), math.rad(0)) | |
1421 | print(":)") | |
1422 | end) | |
1423 | while did == false do | |
1424 | wait() | |
1425 | end | |
1426 | wait(.7) | |
1427 | expected = 5 | |
1428 | did = false | |
1429 | pooted = 0 | |
1430 | sos = game:GetService("RunService").Stepped:connect(function() | |
1431 | pooted = pooted + 1 | |
1432 | if pooted >= expected + 1 then | |
1433 | sos:disconnect() | |
1434 | did = true | |
1435 | return | |
1436 | end | |
1437 | resetWelds(3, {}) | |
1438 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0.05 * pooted, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 2), math.rad(0), math.rad(pooted * 6)) | |
1439 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 2), math.rad(0), math.rad(-pooted * 6)) | |
1440 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(-57 + pooted * 20)) | |
1441 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-pooted * 2), math.rad(0), math.rad(57 - pooted * 20)) | |
1442 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(pooted * 4), math.rad(0), math.rad(0)) | |
1443 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, -.1 * pooted) * CFrame.fromEulerAnglesXYZ(math.rad(-57 + pooted * 20), math.rad(0), math.rad(0)) | |
1444 | print(":(") | |
1445 | end) | |
1446 | while did == false do | |
1447 | wait() | |
1448 | end | |
1449 | wait(.2) | |
1450 | expected = 10 | |
1451 | did = false | |
1452 | pooted = 0 | |
1453 | workspace.CurrentCamera.CameraType = "Follow" | |
1454 | g = Instance.new("BodyGyro") | |
1455 | g.Parent = cPlayer.Torso | |
1456 | sos = game:GetService("RunService").Stepped:connect(function() | |
1457 | pooted = pooted + 1 | |
1458 | if pooted >= expected + 1 then | |
1459 | sos:disconnect() | |
1460 | did = true | |
1461 | return | |
1462 | end | |
1463 | RightShoulder.C0 = RightShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-2), math.rad(0), math.rad(-2)) | |
1464 | LeftShoulder.C0 = LeftShoulder.C0 * CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(0), math.rad(2)) | |
1465 | RightHip.C0 = RightHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(0), math.rad(-4)) | |
1466 | LeftHip.C0 = LeftHip.C0 * CFrame.fromEulerAnglesXYZ(math.rad(1), math.rad(0), math.rad(4)) | |
1467 | Neck.C0 = Neck.C0 * CFrame.fromEulerAnglesXYZ(math.rad(-7), math.rad(0), math.rad(0)) | |
1468 | RootJoint.C0 = RootJoint.C0 * CFrame.new(0, 0, .05) * CFrame.fromEulerAnglesXYZ(math.rad(0), math.rad(0), math.rad(0)) | |
1469 | if pooted >= 2 then | |
1470 | bodypos.position = bodypos.position + Vector3.new(0, 12, 0) - dir * 5 | |
1471 | cPlayer.Torso.CFrame = cPlayer.Torso.CFrame + Vector3.new(0, 12, 0) - dir * 5 | |
1472 | end | |
1473 | print(":(") | |
1474 | end) | |
1475 | while did == false do | |
1476 | wait() | |
1477 | end | |
1478 | wait(.2) | |
1479 | bodypos:Remove() | |
1480 | wait(.5) | |
1481 | ||
1482 | e = Instance.new("Explosion") | |
1483 | e.BlastRadius = 30 | |
1484 | e.Position = C.Position | |
1485 | e.BlastPressure = e.BlastPressure * 2.5 | |
1486 | e.Parent = workspace | |
1487 | s = Instance.new("Sound", C) | |
1488 | s.SoundId = "rbxassetid://258057783" | |
1489 | s.Volume = 1 | |
1490 | s:Play() | |
1491 | Instance.new("DistortionSoundEffect", s).Level = 1 | |
1492 | g:Remove() | |
1493 | --dun | |
1494 | nubhit.Torso.Anchored = false | |
1495 | Hum.PlatformStand = false | |
1496 | C.Anchored = true | |
1497 | ||
1498 | coroutine.resume(coroutine.create(function(t) | |
1499 | wait(3) | |
1500 | p = Instance.new("Sound") | |
1501 | p.SoundId = "http://www.roblox.com/asset/?id=154677261" | |
1502 | p.Parent = t | |
1503 | p.Volume = 1 | |
1504 | p:Play() | |
1505 | end), C) | |
1506 | game:GetService("Debris"):AddItem(LOL, 5) | |
1507 | end | |
1508 | resetWelds(3, {}) | |
1509 | workspace.CurrentCamera.CameraType = "Custom" | |
1510 | Hum.WalkSpeed = 16 | |
1511 | Hum.Name = "Humanoid" | |
1512 | bodypos:Remove() | |
1513 | partpos:Remove() | |
1514 | Anim.Parent = nil | |
1515 | wait(.1) | |
1516 | Anim.Disabled = false | |
1517 | Anim.Parent = cPlayer | |
1518 | deb = true | |
1519 | end | |
1520 | ||
1521 | Tool = Instance.new("HopperBin") | |
1522 | Tool.Name = "ROAD ROLLER DA" | |
1523 | Tool.Parent = game.Players.LocalPlayer.Backpack | |
1524 | Tool.Selected:connect(function(mouse) | |
1525 | mouse.Button1Down:connect(function() | |
1526 | doitdocdoit() | |
1527 | end) | |
1528 | end) | |
1529 | ||
1530 | end |