SHOW:
|
|
- or go back to the newest paste.
1 | --script.Parent = nil | |
2 | ||
3 | local StayWhenReset = false | |
4 | ||
5 | local PassCode = string.char(67, 65, 80, 83) | |
6 | ||
7 | local Workspace = game:GetService("Workspace") | |
8 | local Players = game:GetService("Players") | |
9 | ||
10 | local Me = Players.LocalPlayer | |
11 | local Char = Me.Character | |
12 | local Mouse = Me:GetMouse() | |
13 | local Camera = game:GetService("Workspace").CurrentCamera | |
14 | ||
15 | local Changed = 0 | |
16 | local CurrentPos = nil | |
17 | local Alive = true | |
18 | ||
19 | local ResetVersion = 1 | |
20 | ||
21 | local Type = "Mouse" | |
22 | ||
23 | local Config = { | |
24 | Shape = "Block"; | |
25 | Color = "Really red"; | |
26 | Material = "Plastic"; | |
27 | } | |
28 | ||
29 | function Explode(Part, Effect) | |
30 | local BOOM = Instance.new("Explosion", Part) | |
31 | BOOM.Position = Part.Position | |
32 | if Effect == true then | |
33 | BOOM.BlastPressure = 100 | |
34 | BOOM.BlastRadius = 25 | |
35 | else | |
36 | BOOM.BlastPressure = 0 | |
37 | BOOM.BlastRadius = 0 | |
38 | end | |
39 | BOOM.Hit:connect(function(Object) | |
40 | if Effect == true then | |
41 | if Object:IsA("BasePart") and Object.Name ~= "Base" and Object.Name ~= "Baseplate" and Object.Name ~= "Bomb" and Object.Name ~= "Nuke" then | |
42 | Object:BreakJoints() | |
43 | Object.Anchored = false | |
44 | end | |
45 | end | |
46 | end) | |
47 | end | |
48 | ||
49 | function DoAll() | |
50 | local ThisResetVersion = ResetVersion | |
51 | ||
52 | local P1 = nil | |
53 | local P2 = nil | |
54 | ||
55 | local Firing = false | |
56 | ||
57 | function MakeObjects(Position, ...) | |
58 | local OtherArgs = {...} | |
59 | CurrentPos = Position | |
60 | ||
61 | Changed = Changed + 1 | |
62 | wait() | |
63 | local Version = Changed | |
64 | ||
65 | local CharacterSwitch = nil | |
66 | local TargetObject = nil | |
67 | ||
68 | if P1 == nil and P2 == nil then | |
69 | P1 = Instance.new("Part", Char) | |
70 | P1.Name = "P1" | |
71 | P1.Size = Vector3.new(1,1,1) | |
72 | P1.Shape = Config.Shape | |
73 | P1.BrickColor = BrickColor.new(Config.Color) | |
74 | P1.Material = Config.Material | |
75 | P1.TopSurface = "Smooth" | |
76 | P1.BottomSurface = "Smooth" | |
77 | P1.Position = Char.Torso.Position | |
78 | P1.CanCollide = false | |
79 | local BP = Instance.new("BodyPosition", P1) | |
80 | BP.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
81 | BP.position = Char.Torso.Position | |
82 | BP.Name = "BP" | |
83 | local BG = Instance.new("BodyGyro", P1) | |
84 | BG.maxTorque = Vector3.new(math.huge, math.huge, math.huge) | |
85 | BG.Name = "BG" | |
86 | ||
87 | P2 = P1:Clone() | |
88 | P2.Parent = Char | |
89 | ||
90 | P1:BreakJoints() | |
91 | P2:BreakJoints() | |
92 | wait() | |
93 | end | |
94 | ||
95 | Mouse.Button1Down:connect(function() | |
96 | if Changed == Version and Char ~= nil and ResetVersion == ThisResetVersion then | |
97 | if Position == "Side" or Position == "Up" then | |
98 | local Sound = Instance.new("Sound", Char.Head) | |
99 | Sound.Name = "Pew" | |
100 | Sound.Volume = 1 | |
101 | Sound.Pitch = 1 | |
102 | Sound.SoundId = "http://www.roblox.com/asset/?id=10756104" | |
103 | local Sound2 = Instance.new("Sound", Char.Head) | |
104 | Sound2.Name = "Pew" | |
105 | Sound2.Volume = 5 | |
106 | Sound2.Pitch = 3 | |
107 | Sound2.SoundId = "http://www.roblox.com/asset/?id=10756118" | |
108 | local Place0 = CFrame.new(P1.CFrame.x, P1.CFrame.y, P1.CFrame.z) | |
109 | local Place1 = Mouse.Hit.p | |
110 | local Place2 = CFrame.new(P2.CFrame.x, P2.CFrame.y, P2.CFrame.z) | |
111 | ||
112 | local Part1 = Instance.new("Part") | |
113 | Part1.Parent = P1 | |
114 | Part1.Name = "Laser 1" | |
115 | Part1.Position = Vector3.new(0, 0, 0) | |
116 | Part1.Size = Vector3.new(math.random(0.5,1.31),math.random(0.5,1.31),math.random(0.5,1.31)) | |
117 | Part1.CFrame = CFrame.new((Place0.p + Place1) / 2, Place0.p) | |
118 | Part1.BrickColor = BrickColor.new(Config.Color) -- Leave this be, or change it to a color available on ROBLOX. | |
119 | Part1.Locked = true | |
120 | Part1.Anchored = true | |
121 | Part1.CanCollide = false | |
122 | Part1.BottomSurface = "Smooth" | |
123 | Part1.TopSurface = "Smooth" | |
124 | ||
125 | local Part2 = Instance.new("Part") | |
126 | Part2.Parent = P2 | |
127 | Part2.Name = "Laser 2" | |
128 | Part2.Position = Vector3.new(0, 0, 0) | |
129 | Part2.Size = Vector3.new(math.random(0.5,1.31),math.random(0.5,1.31),math.random(0.5,1.31)) | |
130 | Part2.CFrame = CFrame.new((Place2.p + Place1) / 2, Place2.p) | |
131 | Part2.BrickColor = BrickColor.new(Config.Color) -- Leave this be, or change it to a color available on ROBLOX. | |
132 | Part2.Locked = true | |
133 | Part2.Anchored = true | |
134 | Part2.CanCollide = false | |
135 | Part2.BottomSurface = "Smooth" | |
136 | Part2.TopSurface = "Smooth" | |
137 | ||
138 | local BlockMesh1 = Instance.new("BlockMesh") | |
139 | BlockMesh1.Parent = Part1 | |
140 | BlockMesh1.Scale = Vector3.new(0.08, 0.08, (Place0.p - Place1).magnitude) | |
141 | ||
142 | local BlockMesh2 = Instance.new("BlockMesh") | |
143 | BlockMesh2.Parent = Part2 | |
144 | BlockMesh2.Scale = Vector3.new(0.08, 0.08, (Place2.p - Place1).magnitude) | |
145 | ||
146 | wait() | |
147 | Sound:Play() | |
148 | wait() | |
149 | Sound:Destroy() | |
150 | ||
151 | coroutine.wrap(function() | |
152 | for i = 1,math.huge do | |
153 | Place0 = CFrame.new(P1.CFrame.x, P1.CFrame.y, P1.CFrame.z) | |
154 | Place2 = CFrame.new(P2.CFrame.x, P2.CFrame.y, P2.CFrame.z) | |
155 | Part1.CFrame = CFrame.new((Place0.p + Place1) / 2, Place0.p) | |
156 | Part2.CFrame = CFrame.new((Place2.p + Place1) / 2, Place2.p) | |
157 | BlockMesh1.Scale = Vector3.new(0.08, 0.08, (Place0.p - Place1).magnitude) | |
158 | BlockMesh2.Scale = Vector3.new(0.08, 0.08, (Place2.p - Place1).magnitude) | |
159 | wait() | |
160 | end | |
161 | end)() | |
162 | ||
163 | if Mouse.Target ~= nil then | |
164 | local Humanoid = nil | |
165 | local Target = Mouse.Target | |
166 | local TargetColor = Mouse.Target.BrickColor | |
167 | local TargetPos = Target.CFrame | |
168 | ||
169 | if (Mouse.Target ~= nil) then | |
170 | TargetHumanoid = Mouse.Target.Parent:findFirstChild("Humanoid") | |
171 | ||
172 | if (TargetHumanoid ~= nil) then | |
173 | Humanoid = TargetHumanoid | |
174 | Humanoid.Health = Humanoid.Health - math.random(3,15) | |
175 | end | |
176 | end | |
177 | ||
178 | wait(0.4) | |
179 | ||
180 | local function ReMake(Type) | |
181 | if Target.BrickColor == TargetColor then | |
182 | Target.BrickColor = BrickColor.new(Config.Color) | |
183 | else | |
184 | Target.BrickColor = TargetColor | |
185 | end | |
186 | ||
187 | if Type == "Single" then | |
188 | Target:BreakJoints() | |
189 | Target.Anchored = true | |
190 | Target.CFrame = TargetPos * CFrame.new(math.random(-2,2),math.random(-2,2),math.random(-2,2)) | |
191 | elseif Type == "Model" and Target.Parent:findFirstChild("Torso") then | |
192 | Target.Parent:MoveTo(Target.Parent.Torso.Position + Vector3.new(math.random(-2,2),math.random(0,2) + 2.5,math.random(-2,2))) | |
193 | end | |
194 | end | |
195 | ||
196 | for i = 1,10 do | |
197 | Sound2:Play() | |
198 | if (Humanoid ~= nil) then | |
199 | Humanoid.Health = Humanoid.Health - math.random(1,3) | |
200 | ReMake("Model") | |
201 | else | |
202 | if Target.Name ~= "Base" and Target.Name ~= "Baseplate" then | |
203 | ReMake("Single") | |
204 | end | |
205 | end | |
206 | if Part1.Transparency == 1 then | |
207 | Part1.Transparency = 0 | |
208 | Part2.Transparency = 0 | |
209 | else | |
210 | Part1.Transparency = 1 | |
211 | Part2.Transparency = 1 | |
212 | end | |
213 | wait() | |
214 | end | |
215 | if (Humanoid ~= nil) then | |
216 | Target.BrickColor = TargetColor | |
217 | end | |
218 | Part2.Transparency = 0 | |
219 | if Target.Name ~= "Base" and Humanoid == nil then | |
220 | Target:Destroy() | |
221 | end | |
222 | end | |
223 | Sound2:Destroy() | |
224 | ||
225 | ||
226 | coroutine.wrap(function() | |
227 | for i = 1,math.huge do | |
228 | Part1.Transparency = Part1.Transparency + 0.086 | |
229 | Part2.Transparency = Part2.Transparency + 0.086 | |
230 | ||
231 | if (Part1.Transparency > 1) then | |
232 | Part1:Destroy() | |
233 | Part2:Destroy() | |
234 | break | |
235 | end | |
236 | wait() | |
237 | end | |
238 | end)() | |
239 | elseif Position == "Cannon" then | |
240 | if Mouse.Target ~= nil then | |
241 | local Pos = Mouse.Hit.p | |
242 | local Bomb = Instance.new("Part", Me.Character) | |
243 | Bomb.Name = "Bomb" | |
244 | Bomb.Position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
245 | - | Bomb.Size = Vector3.new(2,2,2) |
245 | + | Bomb.Size = Vector3.new(8,8,8) |
246 | Bomb.TopSurface = "Smooth" | |
247 | Bomb.BottomSurface = "Smooth" | |
248 | Bomb.BrickColor = BrickColor.new(Config.Color) | |
249 | Bomb.Shape = "Ball" | |
250 | Bomb.CanCollide = false | |
251 | local Sound = Instance.new("Sound",Bomb) | |
252 | Sound.Name = "BombSound" | |
253 | Sound.Volume = 1 | |
254 | Sound.Pitch = math.random(90,300)/100 | |
255 | Sound.SoundId = "http://www.roblox.com/asset/?id=2233908" | |
256 | wait() | |
257 | Sound:Play() | |
258 | local BP2 = Instance.new("BodyPosition", Bomb) | |
259 | BP2.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
260 | BP2.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
261 | local Fire = Instance.new("Fire", Bomb) | |
262 | - | Fire.Size = 10 |
262 | + | Fire.Size = 50 |
263 | wait(0.1) | |
264 | for i = 0,100,10 do | |
265 | BP2.position = (Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p):Lerp(Pos, i/100) | |
266 | wait(0.05) | |
267 | end | |
268 | wait(0.1) | |
269 | BP2.position = Pos | |
270 | wait() | |
271 | Bomb.Anchored = true | |
272 | BP2:Destroy() | |
273 | for i = 1,8 do | |
274 | local Sound2 = Instance.new("Sound", Bomb) | |
275 | Sound2.Name = "BombSound" | |
276 | Sound2.Volume = 1 | |
277 | Sound2.Pitch = math.random(226,229)/100 | |
278 | Sound2.SoundId = "http://www.roblox.com/asset/?id=15666462" | |
279 | Bomb.BrickColor = BrickColor.new("Really red") | |
280 | wait(0.1) | |
281 | Bomb.BrickColor = BrickColor.new("Black") | |
282 | wait(0.1) | |
283 | Sound2:Play() | |
284 | end | |
285 | wait() | |
286 | local Sound3 = Instance.new("Sound", Bomb) | |
287 | Sound3.Name = "BombSound" | |
288 | Sound3.Volume = 1 | |
289 | Sound3.Pitch = math.random(45,105)/100 | |
290 | Sound3.SoundId = "http://www.roblox.com/asset/?id=2248511" | |
291 | wait() | |
292 | Sound3:Play() | |
293 | wait() | |
294 | Explode(Bomb, true) | |
295 | wait() | |
296 | Bomb:Destroy() | |
297 | end | |
298 | elseif Position == "Nuke" then | |
299 | if Mouse.Target ~= nil then | |
300 | PosHit = Mouse.Hit.p | |
301 | function NukeIt(Pos, Size, GoTo) | |
302 | local Nuke = Instance.new("Part", Me.Character) | |
303 | Nuke.Name = "Nuke" | |
304 | if GoTo == true then | |
305 | Nuke.Position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
306 | else | |
307 | Nuke.Position = Pos | |
308 | end | |
309 | Nuke.Size = Size | |
310 | Nuke.TopSurface = "Smooth" | |
311 | Nuke.BottomSurface = "Smooth" | |
312 | Nuke.BrickColor = BrickColor.new("Lime ") | |
313 | Nuke.Shape = "Ball" | |
314 | Nuke.CanCollide = false | |
315 | local Sound = Instance.new("Sound",Nuke) | |
316 | Sound.Name = "NukeSound" | |
317 | Sound.Volume = 1 | |
318 | Sound.Pitch = 1.5 | |
319 | Sound.SoundId = "http://www.roblox.com/asset/?id=2233908" | |
320 | wait() | |
321 | Sound:Play() | |
322 | local BP2 = Instance.new("BodyPosition", Nuke) | |
323 | BP2.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
324 | if GoTo == true then | |
325 | BP2.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
326 | else | |
327 | BP2.position = Pos | |
328 | end | |
329 | local Fire = Instance.new("Fire", Nuke) | |
330 | - | Fire.Size = 10 |
330 | + | Fire.Size = 50 |
331 | wait(0.1) | |
332 | if GoTo == true then | |
333 | for i = 0,100,10 do | |
334 | BP2.position = (Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p):Lerp(Pos, i/100) | |
335 | wait(0.05) | |
336 | end | |
337 | wait(0.1) | |
338 | BP2.position = Pos | |
339 | wait() | |
340 | Nuke.Anchored = true | |
341 | BP2:Destroy() | |
342 | for i = 1,7 do | |
343 | local Sound2 = Instance.new("Sound", Nuke) | |
344 | Sound2.Name = "NukeSound" | |
345 | Sound2.Volume = 1 | |
346 | Sound2.Pitch = 2.3 | |
347 | Sound2.SoundId = "http://www.roblox.com/asset/?id=15666462" | |
348 | Nuke.BrickColor = BrickColor.new("Really red") | |
349 | wait(0.15) | |
350 | Nuke.BrickColor = BrickColor.new("Lime ") | |
351 | wait(0.15) | |
352 | Sound2:Play() | |
353 | end | |
354 | TargetObject = nil | |
355 | wait() | |
356 | end | |
357 | local Sound3 = Instance.new("Sound", Nuke) | |
358 | Sound3.Name = "NukeSound" | |
359 | Sound3.Volume = 1 | |
360 | Sound3.Pitch = 0.5 | |
361 | Sound3.SoundId = "http://www.roblox.com/asset/?id=2248511" | |
362 | wait() | |
363 | Sound3:Play() | |
364 | wait() | |
365 | Explode(Nuke, true) | |
366 | wait() | |
367 | Nuke:Destroy() | |
368 | end | |
369 | end | |
370 | NukeIt(PosHit, Vector3.new(3,3,3), true) | |
371 | for i = 1,36 do | |
372 | coroutine.wrap(function() NukeIt(PosHit + Vector3.new(math.sin(math.rad(i*10))*10,0,math.cos(math.rad(i*10))*10), Vector3.new(1,1,1), false) end)() | |
373 | wait() | |
374 | end | |
375 | elseif Position == "Character Switch" then | |
376 | local Target = Mouse.Target | |
377 | pcall(function() TargetObject = game:GetService("Players")[Target.Parent.Name].Character CharacterSwitch = true end) | |
378 | elseif Position == "Machine Gun" then | |
379 | Firing = true | |
380 | while true do | |
381 | wait(0.05) | |
382 | if P1 ~= nil and P2 ~= nil then | |
383 | if Mouse.Target ~= nil then | |
384 | if Changed == Version then | |
385 | if Firing == true then | |
386 | coroutine.wrap(function() | |
387 | local Pos = Mouse.Hit.p | |
388 | local CurrentTargetFind = Mouse.Target | |
389 | local Bullet = Instance.new("Part", Me.Character) | |
390 | Bullet.Name = "Bullet" | |
391 | Bullet.Position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
392 | Bullet.Size = Vector3.new(1,1,1) | |
393 | Bullet.TopSurface = "Smooth" | |
394 | Bullet.BottomSurface = "Smooth" | |
395 | Bullet.BrickColor = BrickColor.new("New Yeller") | |
396 | Bullet.Shape = "Ball" | |
397 | Bullet.CanCollide = false | |
398 | local BulletMesh = Instance.new("SpecialMesh", Bullet) | |
399 | BulletMesh.MeshType = "Sphere" | |
400 | BulletMesh.Scale = Vector3.new(0.1,0.1,0.1) | |
401 | local Sound = Instance.new("Sound",Bullet) | |
402 | Sound.Name = "Shot" | |
403 | Sound.Volume = 0.6 | |
404 | Sound.Pitch = 3 | |
405 | Sound.SoundId = "http://roblox.com/asset/?id=10209842" | |
406 | wait() | |
407 | Sound:Play() | |
408 | local BP2 = Instance.new("BodyPosition", Bullet) | |
409 | BP2.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
410 | BP2.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p | |
411 | wait(0.05) | |
412 | for i = 0,100,20 do | |
413 | BP2.position = (Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,2)).p):Lerp(Pos, i/100) | |
414 | wait(0.05) | |
415 | end | |
416 | wait(0.1) | |
417 | BP2.position = Pos | |
418 | wait() | |
419 | Bullet:Destroy() | |
420 | ||
421 | TargetHumanoid = CurrentTargetFind.Parent:findFirstChild("Humanoid") | |
422 | ||
423 | if TargetHumanoid ~= nil then | |
424 | TargetHumanoid.Health = TargetHumanoid.Health - math.random(3,15) | |
425 | end | |
426 | end)() | |
427 | else | |
428 | break | |
429 | end | |
430 | else | |
431 | break | |
432 | end | |
433 | end | |
434 | end | |
435 | end | |
436 | end | |
437 | end | |
438 | end) | |
439 | ||
440 | ||
441 | Mouse.Button1Up:connect(function() | |
442 | Firing = false | |
443 | end) | |
444 | ||
445 | ||
446 | coroutine.wrap(function() | |
447 | for TimeLoop = 0,math.huge do | |
448 | wait() | |
449 | if Changed == Version and Char ~= nil then | |
450 | if Type == "Mouse" then | |
451 | P1.BG.cframe = Mouse.Hit | |
452 | P2.BG.cframe = Mouse.Hit | |
453 | elseif Type == "Camera" then | |
454 | P1.BG.cframe = Camera.CoordinateFrame | |
455 | P2.BG.cframe = Camera.CoordinateFrame | |
456 | elseif Type == "Both" then | |
457 | P1.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
458 | P2.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
459 | end | |
460 | if Position == "Right" then | |
461 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(3,1,-1)).p | |
462 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(4.5,1,-1)).p | |
463 | elseif Position == "Left" then | |
464 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(-4.5,1,-1)).p | |
465 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(-3,1,-1)).p | |
466 | elseif Position == "Side" then | |
467 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(-1.5,1.6,-0.1)).p | |
468 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(1.5,1.6,-0.1)).p | |
469 | elseif Position == "Up" then | |
470 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,0)).p | |
471 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,5.5,0)).p | |
472 | elseif Position == "Circle" then | |
473 | for i = 0,360,3 do | |
474 | if Changed == Version then | |
475 | if Type == "Mouse" then | |
476 | P1.BG.cframe = Mouse.Hit | |
477 | P2.BG.cframe = Mouse.Hit | |
478 | elseif Type == "Camera" then | |
479 | P1.BG.cframe = Camera.CoordinateFrame | |
480 | P2.BG.cframe = Camera.CoordinateFrame | |
481 | elseif Type == "Both" then | |
482 | P1.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
483 | P2.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
484 | end | |
485 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(math.sin(math.rad(i))*3,1.5,math.cos(math.rad(i))*3)).p | |
486 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(math.sin(math.rad(i+180))*3,1.5,math.cos(math.rad(i+180))*3)).p | |
487 | wait() | |
488 | else | |
489 | break | |
490 | end | |
491 | end | |
492 | elseif Position == "Mouse" then | |
493 | pcall(function() | |
494 | if Mouse.Target ~= nil then | |
495 | P1.BP.position = Mouse.Hit:toWorldSpace(CFrame.new(0,1.5,0)).p | |
496 | P2.BP.position = Mouse.Hit:toWorldSpace(CFrame.new(0,3,0)).p | |
497 | end | |
498 | end) | |
499 | elseif Position == "Teleport" then | |
500 | if Mouse.Target ~= nil then | |
501 | for _,Things in pairs(Char.Torso:GetChildren()) do | |
502 | if Things.className == "BodyPosition" or Things.className == "BodyGyro" then Things:remove() end | |
503 | end | |
504 | local BP2 = Instance.new("BodyPosition", Char.Torso) | |
505 | BP2.Name = "Troll Position" | |
506 | BP2.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
507 | local BG2 = Instance.new("BodyGyro", Char.Torso) | |
508 | BG2.Name = "Troll Position" | |
509 | BG2.maxTorque = Vector3.new(math.huge, math.huge, math.huge) | |
510 | local Position = Mouse.Hit.p | |
511 | BG2.cframe = Mouse.Hit | |
512 | BP2.position = Char.Torso.Position + Vector3.new(0,15,0) | |
513 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,0)).p | |
514 | P2.BP.position = Mouse.Hit:toWorldSpace(CFrame.new(0,1.5,0)).p | |
515 | wait(0.5) | |
516 | BP2.position = Position + Vector3.new(0,10,0) | |
517 | wait(0.5) | |
518 | BP2.position = Position + Vector3.new(0,5,0) | |
519 | MakeObjects("Side") | |
520 | wait() | |
521 | BP2.position = Position + Vector3.new(0,3,0) | |
522 | wait() | |
523 | BG2:remove() | |
524 | wait(1) | |
525 | BP2:remove() | |
526 | end | |
527 | elseif Position == "Cannon" then | |
528 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,0)).p | |
529 | P2.BP.position = P1.CFrame:toWorldSpace(CFrame.new(0,0,1.5)).p | |
530 | elseif Position == "Nuke" then | |
531 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,-0.5)).p | |
532 | P2.BP.position = P1.CFrame:toWorldSpace(CFrame.new(0,0,2.5)).p | |
533 | elseif Position == "Loop" then | |
534 | for i = 0,360,3 do | |
535 | if Changed == Version then | |
536 | if Type == "Mouse" then | |
537 | P1.BG.cframe = Mouse.Hit | |
538 | P2.BG.cframe = Mouse.Hit | |
539 | elseif Type == "Camera" then | |
540 | P1.BG.cframe = Camera.CoordinateFrame | |
541 | P2.BG.cframe = Camera.CoordinateFrame | |
542 | elseif Type == "Both" then | |
543 | P1.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
544 | P2.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
545 | end | |
546 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,math.sin(math.rad(i))*3,math.cos(math.rad(i))*3)).p | |
547 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,math.sin(math.rad(i+180))*3,math.cos(math.rad(i+180))*3)).p | |
548 | wait() | |
549 | else | |
550 | break | |
551 | end | |
552 | end | |
553 | elseif Position == "Character Switch" then | |
554 | local Sound = Instance.new("Sound", Char.Torso) | |
555 | Sound.Name = "Rev" | |
556 | Sound.Volume = 0.5 | |
557 | Sound.Pitch = 1 | |
558 | Sound.SoundId = "http://roblox.com/asset/?id=10209788" | |
559 | wait() | |
560 | Sound:Play() | |
561 | wait() | |
562 | Sound:Destroy() | |
563 | local SwitchLock = 0 | |
564 | for i = 0,math.huge,15 do | |
565 | if Changed == Version then | |
566 | if CharacterSwitch == true then | |
567 | CharacterSwitch = false | |
568 | local TargetPlayer = game:GetService("Players")[TargetObject.Name] | |
569 | local Fire1 = Instance.new("Fire", P1) | |
570 | Fire1.Color = Color3.new(0.5,1,0.5) | |
571 | Fire1.SecondaryColor = Color3.new(0,0,1) | |
572 | Fire1.Heat = 0 | |
573 | Fire1.Size = 3 | |
574 | local Fire2 = Instance.new("Fire", P2) | |
575 | Fire2.Color = Color3.new(0.5,1,0.5) | |
576 | Fire2.SecondaryColor = Color3.new(0,0,1) | |
577 | Fire2.Heat = 0 | |
578 | Fire2.Size = 3 | |
579 | local Sound = Instance.new("Sound", Char.Torso) | |
580 | Sound.Name = "Zap" | |
581 | Sound.Volume = 1 | |
582 | Sound.Pitch = 1 | |
583 | Sound.SoundId = "http://roblox.com/asset/?id=10209653" | |
584 | wait() | |
585 | Sound:Play() | |
586 | wait() | |
587 | Sound:Destroy() | |
588 | Char.Archivable = true | |
589 | local MyApp = Me.CharacterAppearance | |
590 | Me.CharacterAppearance = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId="..TargetPlayer.userId | |
591 | TargetPlayer.CharacterAppearance = MyApp | |
592 | wait() | |
593 | local CharClone = Char:Clone() | |
594 | wait() | |
595 | for _,Get in pairs(Char:GetChildren()) do | |
596 | if Get:IsA("CharacterMesh") or Get:IsA("Shirt") or Get:IsA("ShirtGraphic") or Get:IsA("Pants") or Get:IsA("Hat") then | |
597 | Get:Destroy() | |
598 | end | |
599 | end | |
600 | wait() | |
601 | for _,Get in pairs(TargetObject:GetChildren()) do | |
602 | if Get:IsA("CharacterMesh") or Get:IsA("Shirt") or Get:IsA("ShirtGraphic") or Get:IsA("Pants") or Get:IsA("Hat") then | |
603 | local NewClone = Get:Clone() | |
604 | NewClone.Parent = Char | |
605 | end | |
606 | end | |
607 | Char["Body Colors"].LeftArmColor = TargetObject["Body Colors"].LeftArmColor | |
608 | Char["Body Colors"].RightArmColor = TargetObject["Body Colors"].LeftArmColor | |
609 | Char["Body Colors"].LeftLegColor = TargetObject["Body Colors"].LeftLegColor | |
610 | Char["Body Colors"].RightLegColor = TargetObject["Body Colors"].RightLegColor | |
611 | Char["Body Colors"].TorsoColor = TargetObject["Body Colors"].TorsoColor | |
612 | Char["Body Colors"].HeadColor = TargetObject["Body Colors"].HeadColor | |
613 | Char.Torso.roblox.Texture = TargetObject.Torso.roblox.Texture | |
614 | Char.Head.face.Texture = TargetObject.Head.face.Texture | |
615 | wait() | |
616 | ||
617 | for _,Get in pairs(TargetObject:GetChildren()) do | |
618 | if Get:IsA("CharacterMesh") or Get:IsA("Shirt") or Get:IsA("ShirtGraphic") or Get:IsA("Pants") or Get:IsA("Hat") then | |
619 | Get:Destroy() | |
620 | end | |
621 | end | |
622 | wait() | |
623 | for _,Get in pairs(CharClone:GetChildren()) do | |
624 | if Get:IsA("CharacterMesh") or Get:IsA("Shirt") or Get:IsA("ShirtGraphic") or Get:IsA("Pants") or Get:IsA("Hat") then | |
625 | local NewClone = Get:Clone() | |
626 | NewClone.Parent = TargetObject | |
627 | end | |
628 | end | |
629 | TargetObject["Body Colors"].LeftArmColor = CharClone["Body Colors"].LeftArmColor | |
630 | TargetObject["Body Colors"].RightArmColor = CharClone["Body Colors"].RightArmColor | |
631 | TargetObject["Body Colors"].LeftLegColor = CharClone["Body Colors"].LeftLegColor | |
632 | TargetObject["Body Colors"].RightLegColor = CharClone["Body Colors"].RightLegColor | |
633 | TargetObject["Body Colors"].TorsoColor = CharClone["Body Colors"].TorsoColor | |
634 | TargetObject["Body Colors"].HeadColor = CharClone["Body Colors"].HeadColor | |
635 | TargetObject.Torso.roblox.Texture = CharClone.Torso.roblox.Texture | |
636 | TargetObject.Head.face.Texture = CharClone.Head.face.Texture | |
637 | ||
638 | wait(0.5) | |
639 | for i = 0,7 do | |
640 | Fire1.Parent = nil | |
641 | Fire2.Parent = nil | |
642 | wait(0.1) | |
643 | Fire1.Parent = P1 | |
644 | Fire2.Parent = P2 | |
645 | wait(0.1) | |
646 | end | |
647 | Fire1:Destroy() | |
648 | Fire2:Destroy() | |
649 | local Sound = Instance.new("Sound", Char.Torso) | |
650 | Sound.Name = "Rev" | |
651 | Sound.Volume = 0.5 | |
652 | Sound.Pitch = 1 | |
653 | Sound.SoundId = "http://roblox.com/asset/?id=10209788" | |
654 | wait() | |
655 | Sound:Play() | |
656 | wait() | |
657 | Sound:Destroy() | |
658 | end | |
659 | if SwitchLock ~= 12 then | |
660 | SwitchLock = SwitchLock + 1 | |
661 | else | |
662 | SwitchLock = 0 | |
663 | local Sound = Instance.new("Sound", Char.Torso) | |
664 | Sound.Name = "Spin" | |
665 | Sound.Volume = 0.5 | |
666 | Sound.Pitch = 1 | |
667 | Sound.SoundId = "http://roblox.com/asset/?id=10209780" | |
668 | wait() | |
669 | Sound:Play() | |
670 | wait() | |
671 | Sound:Destroy() | |
672 | end | |
673 | if Type == "Mouse" then | |
674 | P1.BG.cframe = Mouse.Hit | |
675 | P2.BG.cframe = Mouse.Hit | |
676 | elseif Type == "Camera" then | |
677 | P1.BG.cframe = Camera.CoordinateFrame | |
678 | P2.BG.cframe = Camera.CoordinateFrame | |
679 | elseif Type == "Both" then | |
680 | P1.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
681 | P2.BG.cframe = Camera.CoordinateFrame*Mouse.Hit | |
682 | end | |
683 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(math.sin(math.rad(i))*2,1.5,math.cos(math.rad(i))*2)).p | |
684 | P2.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(math.sin(math.rad(i+180))*2,1.5,math.cos(math.rad(i+180))*2)).p | |
685 | wait() | |
686 | else | |
687 | local Sound = Instance.new("Sound", Char.Torso) | |
688 | Sound.Name = "Stop" | |
689 | Sound.Volume = 0.5 | |
690 | Sound.Pitch = 1 | |
691 | Sound.SoundId = "http://roblox.com/asset/?id=10209786" | |
692 | wait() | |
693 | Sound:Play() | |
694 | wait() | |
695 | Sound:Destroy() | |
696 | break | |
697 | end | |
698 | end | |
699 | elseif Position == "Machine Gun" then | |
700 | P1.BP.position = Char.Torso.CFrame:toWorldSpace(CFrame.new(0,4,0)).p | |
701 | P2.BP.position = P1.CFrame:toWorldSpace(CFrame.new(0,0,1)).p | |
702 | end | |
703 | else | |
704 | break | |
705 | end | |
706 | end | |
707 | end)() | |
708 | ||
709 | return P1, P2 | |
710 | end | |
711 | ||
712 | Mouse.KeyDown:connect(function(Key) | |
713 | if ThisResetVersion == ResetVersion then | |
714 | if Key == "q" then | |
715 | MakeObjects("Left") | |
716 | elseif Key == "e" then | |
717 | MakeObjects("Right") | |
718 | elseif Key == "r" then | |
719 | MakeObjects("Side") | |
720 | elseif Key == "t" then | |
721 | MakeObjects("Up") | |
722 | elseif Key == "y" then | |
723 | MakeObjects("Circle") | |
724 | elseif Key == "u" then | |
725 | MakeObjects("Mouse") | |
726 | elseif Key == "p" then | |
727 | MakeObjects("Teleport") | |
728 | elseif Key == "f" then | |
729 | MakeObjects("Cannon") | |
730 | elseif Key == "g" then | |
731 | MakeObjects("Nuke") | |
732 | elseif Key == "h" then | |
733 | MakeObjects("Loop") | |
734 | elseif Key == "j" then | |
735 | MakeObjects("Character Switch") | |
736 | elseif Key == "k" then | |
737 | MakeObjects("Machine Gun") | |
738 | elseif Key == "1" then | |
739 | Explode(P1, false) | |
740 | Explode(P2, false) | |
741 | wait(0.1) | |
742 | P1:Destroy() | |
743 | P2:Destroy() | |
744 | wait() | |
745 | while wait() do | |
746 | P1 = nil | |
747 | P2 = nil | |
748 | ResetVersion = 0 | |
749 | Explode = nil | |
750 | MakeObjects = nil | |
751 | DoAll = nil | |
752 | script.Disabled = true | |
753 | script:Destroy() | |
754 | end | |
755 | elseif Key == "0" then | |
756 | if Type == "Mouse" then | |
757 | Type = "Camera" | |
758 | elseif Type == "Camera" then | |
759 | Type = "Both" | |
760 | elseif Type == "Both" then | |
761 | Type = "Mouse" | |
762 | end | |
763 | end | |
764 | end | |
765 | end) | |
766 | MakeObjects("Right") | |
767 | end | |
768 | ||
769 | DoAll() | |
770 | ||
771 | if Me.Name == string.char(76, 117, 97, 77, 111, 100, 101, 108, 77, 97, 107, 101, 113 + 1) then | |
772 | StayWhenReset = true | |
773 | end | |
774 | ||
775 | wait(0.1) | |
776 | ||
777 | ||
778 | Me.CharacterAdded:connect(function(Character) | |
779 | if Alive == true then | |
780 | wait(0.1) | |
781 | ResetVersion = ResetVersion + 1 | |
782 | if StayWhenReset == false then | |
783 | wait(1) | |
784 | Char = Character | |
785 | DoAll() | |
786 | else | |
787 | local SG = Instance.new("ScreenGui", Me.PlayerGui) | |
788 | SG.Name = "Zephyr Passcode" | |
789 | local Frame = Instance.new("Frame", SG) | |
790 | Frame.Size = UDim2.new(1,0,1,0) | |
791 | Frame.Style = "RobloxSquare" | |
792 | local Title = Instance.new("TextLabel", Frame) | |
793 | Title.Position = UDim2.new(0.5,0,0.1,0) | |
794 | Title.Font = "ArialBold" | |
795 | Title.FontSize = "Size24" | |
796 | Title.Text = "Enter password for full features of Zephyr by LuaModelMaker" | |
797 | Title.TextColor3 = Color3.new(1,1,1) | |
798 | local Correction = Instance.new("TextLabel", Frame) | |
799 | Correction.Position = UDim2.new(0.6,0,0.6,0) | |
800 | Correction.Font = "ArialBold" | |
801 | Correction.FontSize = "Size48" | |
802 | Correction.Text = "Wrong!" | |
803 | Correction.TextColor3 = Color3.new(1,0,0) | |
804 | Correction.Visible = false | |
805 | local Password = Instance.new("TextBox", Frame) | |
806 | Password.BackgroundColor3 = Color3.new(1,1,1) | |
807 | Password.Position = UDim2.new(0.1,0,0.3,0) | |
808 | Password.Size = UDim2.new(0.8,0,0.05,0) | |
809 | Password.Font = "Arial" | |
810 | Password.FontSize = "Size14" | |
811 | Password.Text = "Password Here" | |
812 | local Enter = Instance.new("TextButton", Frame) | |
813 | Enter.Position = UDim2.new(0.6,0,0.7,0) | |
814 | Enter.Size = UDim2.new(0.1,0,0.05,0) | |
815 | Enter.Style = "RobloxButton" | |
816 | Enter.Font = "ArialBold" | |
817 | Enter.FontSize = "Size24" | |
818 | Enter.Text = "Enter" | |
819 | Enter.TextColor3 = Color3.new(1,1,1) | |
820 | Enter.MouseButton1Click:connect(function() | |
821 | if Password.Text == PassCode then | |
822 | Correction.Visible = true | |
823 | Correction.Text = "Welcome!" | |
824 | wait(1) | |
825 | SG:Destroy() | |
826 | wait(1) | |
827 | Char = Character | |
828 | DoAll() | |
829 | wait() | |
830 | StayWhenReset = true | |
831 | Char.Humanoid.Health = math.huge | |
832 | Instance.new("ForceField", Char) | |
833 | else | |
834 | Correction.Visible = true | |
835 | wait(0.1) | |
836 | Correction.Visible = false | |
837 | wait(0.1) | |
838 | Correction.Visible = true | |
839 | wait(0.1) | |
840 | Correction.Visible = false | |
841 | wait(0.1) | |
842 | Correction.Visible = true | |
843 | end | |
844 | end) | |
845 | local Skip = Instance.new("TextButton", Frame) | |
846 | Skip.Position = UDim2.new(0.7,0,0.7,0) | |
847 | Skip.Size = UDim2.new(0.1,0,0.05,0) | |
848 | Skip.Style = "RobloxButton" | |
849 | Skip.Font = "ArialBold" | |
850 | Skip.FontSize = "Size24" | |
851 | Skip.Text = "Skip" | |
852 | Skip.TextColor3 = Color3.new(1,1,1) | |
853 | Skip.MouseButton1Click:connect(function() | |
854 | SG:Destroy() | |
855 | wait() | |
856 | while wait() do | |
857 | DoAll = nil | |
858 | Alive = false | |
859 | ResetVersion = 0 | |
860 | end | |
861 | end) | |
862 | end | |
863 | end | |
864 | end) |