SHOW:
|
|
- or go back to the newest paste.
1 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
2 | local Player,Mouse,mouse,UserInputService,ContextActionService = owner | |
3 | do | |
4 | - | p = game.Players.LocalPlayer |
4 | + | print("FE Compatibility code by Mokiros") |
5 | script.Parent = Player.Character | |
6 | ||
7 | --RemoteEvent for communicating | |
8 | local Event = Instance.new("RemoteEvent") | |
9 | Event.Name = "UserInput_Event" | |
10 | ||
11 | --Fake event to make stuff like Mouse.KeyDown work | |
12 | local function fakeEvent() | |
13 | local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end} | |
14 | t.connect = t.Connect | |
15 | return t | |
16 | end | |
17 | - | local mouse = p:GetMouse() |
17 | + | |
18 | --Creating fake input objects with fake variables | |
19 | local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()} | |
20 | local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} | |
21 | local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) | |
22 | CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil | |
23 | end} | |
24 | --Merged 2 functions into one by checking amount of arguments | |
25 | CAS.UnbindAction = CAS.BindAction | |
26 | ||
27 | --This function will trigger the events that have been :Connect()'ed | |
28 | local function te(self,ev,...) | |
29 | local t = m[ev] | |
30 | if t and t._fakeEvent and t.Function then | |
31 | t.Function(...) | |
32 | end | |
33 | end | |
34 | m.TrigEvent = te | |
35 | UIS.TrigEvent = te | |
36 | ||
37 | Event.OnServerEvent:Connect(function(plr,io) | |
38 | if plr~=Player then return end | |
39 | if io.isMouse then | |
40 | m.Target = io.Target | |
41 | m.Hit = io.Hit | |
42 | else | |
43 | local b = io.UserInputState == Enum.UserInputState.Begin | |
44 | if io.UserInputType == Enum.UserInputType.MouseButton1 then | |
45 | return m:TrigEvent(b and "Button1Down" or "Button1Up") | |
46 | end | |
47 | for _,t in pairs(CAS.Actions) do | |
48 | for _,k in pairs(t.Keys) do | |
49 | if k==io.KeyCode then | |
50 | t.Function(t.Name,io.UserInputState,io) | |
51 | end | |
52 | end | |
53 | end | |
54 | m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) | |
55 | UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false) | |
56 | end | |
57 | end) | |
58 | Event.Parent = NLS([==[ | |
59 | local Player = game:GetService("Players").LocalPlayer | |
60 | local Event = script:WaitForChild("UserInput_Event") | |
61 | ||
62 | local UIS = game:GetService("UserInputService") | |
63 | local input = function(io,a) | |
64 | if a then return end | |
65 | --Since InputObject is a client-side instance, we create and pass table instead | |
66 | Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState}) | |
67 | end | |
68 | UIS.InputBegan:Connect(input) | |
69 | UIS.InputEnded:Connect(input) | |
70 | ||
71 | local Mouse = Player:GetMouse() | |
72 | local h,t | |
73 | --Give the server mouse data 30 times every second, but only if the values changed | |
74 | --If player is not moving their mouse, client won't fire events | |
75 | while wait(1/30) do | |
76 | if h~=Mouse.Hit or t~=Mouse.Target then | |
77 | h,t=Mouse.Hit,Mouse.Target | |
78 | Event:FireServer({isMouse=true,Target=t,Hit=h}) | |
79 | end | |
80 | end]==],Player.Character) | |
81 | Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS | |
82 | end | |
83 | ||
84 | --Pyro by madiik | |
85 | --Note, The PYRO script doesn't support Airblast yet, It's still being created. | |
86 | ||
87 | p = owner | |
88 | c = p.Character | |
89 | torso = c.Torso | |
90 | local firee = false | |
91 | local damage = 1 | |
92 | local debounce = false | |
93 | local debounced = false | |
94 | local debounceair = false | |
95 | local firedebounce = false | |
96 | local removehatchet = false | |
97 | local hatchetequipped = false | |
98 | RunService = game:service'RunService' | |
99 | Debris = game:service'Debris' | |
100 | damagelist = {} | |
101 | time_until_extinguish = 50 | |
102 | for _,v in pairs(c:children()) do | |
103 | pcall(function() | |
104 | if v.className == "Hat" then | |
105 | v:remove() | |
106 | end | |
107 | end) | |
108 | end | |
109 | ra = c["Right Arm"] | |
110 | la = c["Left Arm"] | |
111 | rs = c.Torso["Right Shoulder"] | |
112 | ls = c.Torso["Left Shoulder"] | |
113 | ||
114 | ||
115 | mask = Instance.new("Part") | |
116 | mask.Size = Vector3.new(2, 1, 1) | |
117 | mask.BrickColor = BrickColor.new("Dark stone grey") | |
118 | mask:BreakJoints() | |
119 | mask.Name = "Mask" | |
120 | mask.Parent = c | |
121 | ms4 = Instance.new("SpecialMesh", mask) | |
122 | ms4.Scale = Vector3.new(1.3, 1.15, 1.3) | |
123 | w9 = Instance.new("Weld", mask) | |
124 | w9.Part0 = mask | |
125 | w9.Part1 = c.Head | |
126 | w9.C0 = CFrame.new(0, 0, 0) | |
127 | ||
128 | mask2 = Instance.new("Part") | |
129 | mask2.FormFactor = "Custom" | |
130 | mask2.Size = Vector3.new(0.4, 0.5, 0.4) | |
131 | mask2.BrickColor = BrickColor.new("Dark stone grey") | |
132 | mask2:BreakJoints() | |
133 | mask2.Parent = c | |
134 | ms5 = Instance.new("CylinderMesh", mask2) | |
135 | ms5.Scale = Vector3.new(1, 1, 1) | |
136 | w8 = Instance.new("Weld", mask2) | |
137 | w8.Part0 = mask2 | |
138 | w8.Part1 = c.Head | |
139 | w8.C0 = CFrame.new(0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
140 | ||
141 | mask3 = Instance.new("Part") | |
142 | mask3.FormFactor = "Custom" | |
143 | mask3.Size = Vector3.new(0.4, 0.5, 0.4) | |
144 | mask3.BrickColor = BrickColor.new("Dark stone grey") | |
145 | mask3:BreakJoints() | |
146 | mask3.Parent = c | |
147 | ms6 = Instance.new("CylinderMesh", mask3) | |
148 | ms6.Scale = Vector3.new(1, 1, 1) | |
149 | w10 = Instance.new("Weld", mask3) | |
150 | w10.Part0 = mask3 | |
151 | w10.Part1 = c.Head | |
152 | w10.C0 = CFrame.new(-0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
153 | ||
154 | mask4 = Instance.new("Part") | |
155 | mask4.FormFactor = "Custom" | |
156 | mask4.Size = Vector3.new(0.35, 0.51, 0.35) | |
157 | mask4.BrickColor = BrickColor.new("Black") | |
158 | mask4:BreakJoints() | |
159 | mask4.Reflectance = 0.4 | |
160 | mask4.Parent = c | |
161 | ms7 = Instance.new("CylinderMesh", mask4) | |
162 | ms7.Scale = Vector3.new(1, 1, 1) | |
163 | w11 = Instance.new("Weld", mask4) | |
164 | w11.Part0 = mask4 | |
165 | w11.Part1 = c.Head | |
166 | w11.C0 = CFrame.new(0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
167 | ||
168 | mask5 = Instance.new("Part") | |
169 | mask5.FormFactor = "Custom" | |
170 | mask5.Size = Vector3.new(0.35, 0.51, 0.35) | |
171 | mask5.BrickColor = BrickColor.new("Black") | |
172 | mask5.Reflectance = 0.4 | |
173 | mask5:BreakJoints() | |
174 | mask5.Parent = c | |
175 | ms8 = Instance.new("CylinderMesh", mask5) | |
176 | ms8.Scale = Vector3.new(1, 1, 1) | |
177 | w12 = Instance.new("Weld", mask5) | |
178 | w12.Part0 = mask5 | |
179 | w12.Part1 = c.Head | |
180 | w12.C0 = CFrame.new(-0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
181 | ||
182 | mask7 = Instance.new("Part") | |
183 | mask7.FormFactor = "Custom" | |
184 | mask7.Size = Vector3.new(0.2, 1.1, 0.2) | |
185 | mask7.BrickColor = BrickColor.new("Dark stone grey") | |
186 | mask7:BreakJoints() | |
187 | mask7.Parent = c | |
188 | ms8 = Instance.new("CylinderMesh", mask7) | |
189 | ms8.Scale = Vector3.new(1, 1, 1) | |
190 | w12 = Instance.new("Weld", mask7) | |
191 | w12.Part0 = mask7 | |
192 | w12.Part1 = c.Head | |
193 | w12.C0 = CFrame.new(-0.6, -0.3, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
194 | spot = Instance.new("SpotLight", mask) | |
195 | spot.Range = 60 | |
196 | spot.Angle = 70 | |
197 | spot.Color = Color3.new(1, 1, 0) | |
198 | ||
199 | mask6 = Instance.new("Part") | |
200 | mask6.FormFactor = "Custom" | |
201 | mask6.Size = Vector3.new(0.35, 0.65, 0.35) | |
202 | mask6.BrickColor = BrickColor.new("Dark stone grey") | |
203 | mask6:BreakJoints() | |
204 | mask6.Parent = c | |
205 | ms9 = Instance.new("CylinderMesh", mask6) | |
206 | ms9.Scale = Vector3.new(1, 1, 1) | |
207 | w13 = Instance.new("Weld", mask6) | |
208 | w13.Part0 = mask6 | |
209 | w13.Part1 = c.Head | |
210 | w13.C0 = CFrame.new(0.2, -0.4, 0) * CFrame.Angles(math.rad(115), math.rad(22.5), 0) | |
211 | ||
212 | ||
213 | tool = Instance.new("HopperBin", p.Backpack) | |
214 | tool.Name = "Pyro" | |
215 | tool.Selected:connect(function(mouse) | |
216 | bg2 = Instance.new("BodyGyro",c.Torso) | |
217 | bg2.P = 20e+003 | |
218 | bg2.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge | |
219 | ||
220 | ||
221 | game:service("RunService").Stepped:connect(function() | |
222 | bg2.cframe = CFrame.new(c.Torso.Position,Vector3.new(mouse.hit.p.x,c.Torso.Position.y,mouse.hit.p.z)) * CFrame.Angles(0, math.rad(-60), 0) | |
223 | end) | |
224 | ||
225 | ||
226 | ||
227 | rs.Part0 = nil | |
228 | rs.Part1 = nil | |
229 | ls.Part0 = nil | |
230 | ls.Part1 = nil | |
231 | rweld = Instance.new("Weld", c) | |
232 | rweld.C0 = CFrame.new(-1.48,0,0.2) * CFrame.Angles(math.rad(-18), math.rad(0), math.rad(0)) | |
233 | rweld.Part0 = ra | |
234 | rweld.Part1 = torso | |
235 | lweld = Instance.new("Weld", c) | |
236 | lweld.C0 = CFrame.new(1.5,0.2,0.2) * CFrame.Angles(math.rad(-50), math.rad(22.5), math.rad(0)) | |
237 | lweld.Part0 = la | |
238 | lweld.Part1 = torso | |
239 | neck = c.Torso.Neck | |
240 | neck.C0 = neck.C0 * CFrame.Angles(math.rad(0), math.rad(0), math.rad(60)) wait(0.01) | |
241 | ||
242 | ballon1 = Instance.new("Part") | |
243 | ballon1.Size = Vector3.new(1, 2, 1) | |
244 | ballon1.BrickColor = BrickColor.new("White") | |
245 | ballon1:BreakJoints() | |
246 | ballon1.Parent = c | |
247 | Instance.new("SpecialMesh", ballon1) | |
248 | w = Instance.new("Weld", ballon1) | |
249 | w.Part0 = ballon1 | |
250 | w.Part1 = torso | |
251 | w.C0 = CFrame.new(0.45, 0, -0.8) | |
252 | ||
253 | ballon2 = Instance.new("Part") | |
254 | ballon2.Size = Vector3.new(1, 2, 1) | |
255 | ballon2.BrickColor = BrickColor.new("White") | |
256 | ballon2:BreakJoints() | |
257 | ballon2.Parent = c | |
258 | Instance.new("SpecialMesh", ballon2) | |
259 | w1 = Instance.new("Weld", ballon2) | |
260 | w1.Part0 = ballon2 | |
261 | w1.Part1 = torso | |
262 | w1.C0 = CFrame.new(-0.45, 0, -0.8) | |
263 | ||
264 | base = Instance.new("Part") | |
265 | base.FormFactor = "Custom" | |
266 | base.Size = Vector3.new(0.4, 5, 0.4) | |
267 | base:breakJoints() | |
268 | base.BrickColor = BrickColor.Black() | |
269 | base.Parent = c | |
270 | Instance.new("CylinderMesh", base) | |
271 | w2 = Instance.new("Weld", base) | |
272 | w2.Part0 = base | |
273 | w2.Part1 = torso | |
274 | w2.C0 = CFrame.new(1.1, 0.5, 0.5) * CFrame.Angles(math.pi/2,math.rad(120), 0) | |
275 | ||
276 | sound = Instance.new("Sound", base) | |
277 | sound.SoundId = "http://roblox.com/asset/?id=10209616" | |
278 | sound.Volume = 1 | |
279 | sound.Looped = true | |
280 | ||
281 | fire = Instance.new("Part") | |
282 | fire.Parent = nil | |
283 | fire.FormFactor = "Custom" | |
284 | fire.Size = Vector3.new(8, 55, 4) | |
285 | fire.Transparency = 1 | |
286 | fire.CanCollide = false | |
287 | fire.Anchored = true | |
288 | pl = Instance.new("PointLight", fire) | |
289 | pl.Range = 24 | |
290 | pl.Color = Color3.new(255/255, 170/255, 0/255) | |
291 | ||
292 | coroutine.wrap(function() | |
293 | while true do | |
294 | fire.CFrame = base.CFrame * CFrame.new(0, -30, 0) | |
295 | RunService.Stepped:wait() | |
296 | end | |
297 | end)() | |
298 | ||
299 | ||
300 | sm = Instance.new("Part", c) | |
301 | sm.FormFactor = "Custom" | |
302 | sm.BottomSurface = 0 | |
303 | sm.TopSurface = 0 | |
304 | sm.BrickColor = BrickColor.Black() | |
305 | sm.Size = Vector3.new(0.5, 0.5, 0.5) | |
306 | sm.Transparency = 0 | |
307 | sm:BreakJoints() | |
308 | ||
309 | pl7 = Instance.new("PointLight", sm) | |
310 | pl7.Range = 12 | |
311 | pl7.Color = Color3.new(255/255, 170/255, 0/255) | |
312 | ||
313 | smoke = Instance.new("Smoke", sm) | |
314 | smoke.Enabled = false | |
315 | smoke.Color = Color3.new(255/255, 170/255, 0/255) | |
316 | smoke.RiseVelocity = 15 | |
317 | smoke.Size = 1 | |
318 | w3 = Instance.new("Weld", sm) | |
319 | w3.Part0 = sm | |
320 | w3.Part1 = base | |
321 | w3.C0 = CFrame.new(0, -2.5, 0) * CFrame.Angles(math.pi, 0, 0) | |
322 | ||
323 | p1 = Instance.new("Part", c) | |
324 | p1.FormFactor = "Custom" | |
325 | p1.BrickColor = BrickColor.Gray() | |
326 | p1.Size = Vector3.new(0.8, 1.7, 0.8) | |
327 | p1:BreakJoints() | |
328 | Instance.new("CylinderMesh", p1) | |
329 | w4 = Instance.new("Weld", p1) | |
330 | w4.Part0 = p1 | |
331 | w4.Part1 = base | |
332 | w4.C0 = CFrame.new(0, 0.5, 0.3) | |
333 | ||
334 | p2 = Instance.new("Part", c) | |
335 | p2.FormFactor = "Custom" | |
336 | p2.BrickColor = BrickColor.Black() | |
337 | p2.Size = Vector3.new(0.4, 1, 0.4) | |
338 | p2:BreakJoints() | |
339 | p2.BottomSurface = 0 | |
340 | p2.TopSurface = 0 | |
341 | w5 = Instance.new("Weld", p2) | |
342 | w5.Part0 = p2 | |
343 | w5.Part1 = base | |
344 | w5.C0 = CFrame.new(0, 0, -2.5) * CFrame.Angles(math.pi/2, 0, 0) | |
345 | ||
346 | ||
347 | p3 = Instance.new("Part", c) | |
348 | p3.FormFactor = "Custom" | |
349 | p3.BrickColor = BrickColor.Black() | |
350 | p3.Size = Vector3.new(0.3, 1, 0.2) | |
351 | p3:BreakJoints() | |
352 | p3.BottomSurface = 0 | |
353 | p3.TopSurface = 0 | |
354 | w6 = Instance.new("Weld", p3) | |
355 | w6.Part0 = p3 | |
356 | w6.Part1 = base | |
357 | w6.C0 = CFrame.new(0, -1, -0.3) * CFrame.Angles(math.pi/6, 0, 0) | |
358 | ||
359 | ||
360 | p4 = Instance.new("Part", c) | |
361 | p4.FormFactor = "Custom" | |
362 | p4.BrickColor = BrickColor.Black() | |
363 | p4.Size = Vector3.new(0.3, 1, 0.2) | |
364 | p4:BreakJoints() | |
365 | p4.BottomSurface = 0 | |
366 | p4.TopSurface = 0 | |
367 | w7 = Instance.new("Weld", p4) | |
368 | w7.Part0 = p4 | |
369 | w7.Part1 = base | |
370 | w7.C0 = CFrame.new(0, -0.1, -1.5) * CFrame.Angles(math.pi/2, 0, 0) | |
371 | ||
372 | ||
373 | ||
374 | ||
375 | ||
376 | ||
377 | ||
378 | ||
379 | fiaar = Instance.new("Fire", sm) | |
380 | fiaar.Size = 1 | |
381 | fiaar.Heat = 200 | |
382 | fiaar.Enabled = false | |
383 | ||
384 | ||
385 | ||
386 | ||
387 | ||
388 | ||
389 | ||
390 | mouse.KeyDown:connect(function(key) | |
391 | if key == "e" then | |
392 | if debounceair then return end | |
393 | if firee then return end | |
394 | debounceair = true | |
395 | airblast() | |
396 | end | |
397 | if string.byte(key) == 48 then | |
398 | c.Humanoid.WalkSpeed = 28 | |
399 | end | |
400 | ||
401 | ||
402 | end) | |
403 | mouse.KeyUp:connect(function(key) | |
404 | if string.byte(key) == 48 then | |
405 | c.Humanoid.WalkSpeed = 16 | |
406 | end | |
407 | end) | |
408 | ||
409 | ||
410 | mouse.Button1Down:connect(function() | |
411 | if firee == false then | |
412 | firee = true | |
413 | end | |
414 | end) | |
415 | ||
416 | mouse.Button1Up:connect(function() | |
417 | if firee == true then | |
418 | firee = false | |
419 | end | |
420 | end) | |
421 | ||
422 | end) | |
423 | tool.Deselected:connect(function(mouse) | |
424 | ballon1:Destroy() | |
425 | ballon2:Destroy() | |
426 | base:Destroy() | |
427 | sm:Destroy() | |
428 | fire:Destroy() | |
429 | neck.C0 = neck.C0 * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-60)) wait(0.01) | |
430 | bg2:Destroy() | |
431 | p1:Destroy() | |
432 | p2:Destroy() | |
433 | p3:Destroy() | |
434 | p4:Destroy() | |
435 | rs.Part0 = c.Torso | |
436 | rs.Part1 = ra | |
437 | ls.Part0 = c.Torso | |
438 | ls.Part1 = la | |
439 | rweld:Destroy() | |
440 | lweld:Destroy() | |
441 | ||
442 | end) | |
443 | function ahh(hit) | |
444 | if hit.Parent.Name == game.Players.LocalPlayer.Name then return end | |
445 | if hit ~= nil and hit.Parent ~= nil then | |
446 | ||
447 | if hit.Parent:findFirstChild("Humanoid") ~= nil then | |
448 | coroutine.wrap(function() | |
449 | if not damagelist[hit.Parent.Name] then | |
450 | if hit.Parent.Humanoid.Health ~= 0 then | |
451 | damagelist[hit.Parent.Name] = {humanoid = hit.Parent.Humanoid, time = time_until_extinguish} | |
452 | for i,v in pairs(hit.Parent:children()) do | |
453 | if v:IsA("Part") then | |
454 | Instance.new("Fire", v) | |
455 | end | |
456 | end | |
457 | end | |
458 | else | |
459 | damagelist[hit.Parent.Name].time = time_until_extinguish | |
460 | end | |
461 | end)() | |
462 | end | |
463 | end | |
464 | end | |
465 | ||
466 | coroutine.wrap(function() | |
467 | while wait() do | |
468 | for i,damageobject in pairs(damagelist) do | |
469 | damageobject.humanoid.Health = damageobject.humanoid.Health - damage | |
470 | damageobject.time = damageobject.time - 1 | |
471 | ||
472 | if damageobject.time < 1 then | |
473 | if damageobject.humanoid then | |
474 | for _,n in pairs(damageobject.humanoid.Parent:children()) do | |
475 | if n:IsA("Part") and n.Parent:IsA("Model") ~= nil and n:findFirstChild("Fire") ~= nil then | |
476 | n.Fire:Destroy() | |
477 | end | |
478 | end | |
479 | end | |
480 | damagelist[i] = nil | |
481 | end | |
482 | end | |
483 | if not debounceair then | |
484 | if firee then | |
485 | --coroutine.wrap(function() | |
486 | if base ~= nil then | |
487 | smoke.Enabled = true | |
488 | pl7.Enabled = true | |
489 | fiaar.Enabled = true | |
490 | fire.Parent = Workspace | |
491 | sound:play() | |
492 | ||
493 | fire.Touched:connect(ahh) | |
494 | end | |
495 | ||
496 | --end)() | |
497 | else | |
498 | if base ~= nil then | |
499 | smoke.Enabled = false | |
500 | fire.Parent = nil | |
501 | pl7.Enabled = false | |
502 | fiaar.Enabled = false | |
503 | sound:stop() | |
504 | end | |
505 | end | |
506 | end | |
507 | end | |
508 | ||
509 | end)() | |
510 | ||
511 | ||
512 | function airblast() | |
513 | if hatchetequipped then return end | |
514 | if air ~= nil then return end | |
515 | air = Instance.new("Part") | |
516 | air.FormFactor = "Custom" | |
517 | air.Size = Vector3.new(8, 3, 8) | |
518 | air.Transparency = 0.8 | |
519 | air:BreakJoints() | |
520 | air.BottomSurface = 0 | |
521 | air.TopSurface = 0 | |
522 | air.CanCollide = false | |
523 | air.Anchored = true | |
524 | air.Parent = Workspace | |
525 | coroutine.wrap(function() | |
526 | wait(0.15) | |
527 | air.CanCollide = true | |
528 | end)() | |
529 | ||
530 | coroutine.wrap(function() | |
531 | for i = 0, 40, 1.2 do | |
532 | air.CFrame = base.CFrame * CFrame.new(0, -i, 0) | |
533 | RunService.Stepped:wait(0.0000001) | |
534 | end | |
535 | end)() | |
536 | coroutine.wrap(function() | |
537 | while air ~= nil do | |
538 | for _, model in pairs(workspace:children()) do | |
539 | if model:IsA("Model") and model:findFirstChild("Humanoid") ~= nil and model.Name ~= p.Name then | |
540 | if (model.Torso.CFrame.Position - air.CFrame.Position).magnitude < 3 then | |
541 | model.Torso.CFrame = base.CFrame * CFrame.new(0, 0, 30) | |
542 | end | |
543 | end | |
544 | end | |
545 | wait() | |
546 | end | |
547 | end)() | |
548 | wait(2) | |
549 | air:Destroy() | |
550 | ||
551 | end |