View difference between Paste ID: H9Hku0tL and J6FWXS0F
SHOW: | | - or go back to the newest paste.
1
--Created with PenguinAnonymous's compiler
2
--PenguinAnonymous is not responsible for damages caused to your game
3
--This plugin does not remove things
4
--PenguinAnonymous cannot be held resonsible for manual deletion for the purpose of testing
5
--Keep in mind, any items that cause errors in compilation will be skipped and documented within the last line of the disclaimer comments
6
--Thank you for using my plugin and enjoy :)
7
--It is free to use
8
--If you use this plugin to create your own, please give me credit
9
--Z_V edited my plugin to look like his own and published it without giving me credit, and that makes me very angry
10
--Errors: 
11
local runDummyScript = function(f,scri)
12
local oldenv = getfenv(f)
13
local newenv = setmetatable({}, {
14
__index = function(_, k)
15
if k:lower() == 'script' then
16
return scri
17
else
18
return oldenv[k]
19
end
20
end
21
})
22
setfenv(f, newenv)
23
ypcall(function() f() end)
24
end
25
cors = {}
26
mas = Instance.new("Model",game:GetService("Lighting")) 
27
mas.Name = "CompiledModel"
28
o1 = Instance.new("Tool")
29
o2 = Instance.new("Script")
30
o3 = Instance.new("Script")
31
o4 = Instance.new("Animation")
32
o5 = Instance.new("Animation")
33
o6 = Instance.new("LocalScript")
34
o7 = Instance.new("Script")
35
o8 = Instance.new("Script")
36
o9 = Instance.new("Script")
37
o10 = Instance.new("SpecialMesh")
38
o11 = Instance.new("SpecialMesh")
39
o12 = Instance.new("Script")
40
o13 = Instance.new("Script")
41
o14 = Instance.new("Sound")
42
o15 = Instance.new("Sound")
43
o16 = Instance.new("Sound")
44
o17 = Instance.new("Sound")
45
o18 = Instance.new("Sound")
46
o19 = Instance.new("Sound")
47
o20 = Instance.new("Sound")
48
o21 = Instance.new("Sound")
49
o22 = Instance.new("Sound")
50
o23 = Instance.new("Sound")
51
o24 = Instance.new("Sound")
52
o25 = Instance.new("Sound")
53
o26 = Instance.new("Sound")
54
o27 = Instance.new("Sound")
55
o28 = Instance.new("Sound")
56
o29 = Instance.new("Sound")
57
o30 = Instance.new("Sound")
58
o31 = Instance.new("Sound")
59
o32 = Instance.new("SpecialMesh")
60
o33 = Instance.new("SpecialMesh")
61
o34 = Instance.new("SpecialMesh")
62
o35 = Instance.new("SpecialMesh")
63
o36 = Instance.new("ParticleEmitter")
64
o37 = Instance.new("Script")
65
o38 = Instance.new("Script")
66
o39 = Instance.new("Vector3Value")
67
o40 = Instance.new("Sound")
68
o41 = Instance.new("BillboardGui")
69
o42 = Instance.new("ImageLabel")
70
o43 = Instance.new("Script")
71
o44 = Instance.new("BodyForce")
72
o45 = Instance.new("Script")
73
o46 = Instance.new("Script")
74
o47 = Instance.new("Script")
75
o48 = Instance.new("Vector3Value")
76
o49 = Instance.new("Part")
77
o50 = Instance.new("Sound")
78
o51 = Instance.new("Sound")
79
o52 = Instance.new("Sound")
80
o53 = Instance.new("ParticleEmitter")
81
o54 = Instance.new("ParticleEmitter")
82
o55 = Instance.new("ParticleEmitter")
83
o56 = Instance.new("ParticleEmitter")
84
o57 = Instance.new("ParticleEmitter")
85
o1.Name = "Mlg"
86-
o1.Parent = game.Players.nornorm.Backpack
86+
o1.Parent = game.Players.timetodie23232223.Backpack
87
o1.ToolTip = "Shots Fired"
88
o2.Name = "Welding"
89
o2.Parent = o1
90
o2.Disabled = true
91
table.insert(cors,coroutine.create(function()
92
wait()
93
runDummyScript(function()
94
function Weld(x,y)
95
	local W = Instance.new("Weld")
96
	W.Part0 = x
97
	W.Part1 = y
98
	local CJ = CFrame.new(x.Position)
99
	local C0 = x.CFrame:inverse()*CJ
100
	local C1 = y.CFrame:inverse()*CJ
101
	W.C0 = C0
102
	W.C1 = C1
103
	W.Parent = x
104
end
105
106
function Get(A)
107
	if A.className == "Part" then
108
		Weld(script.Parent.Handle, A)
109
		A.Anchored = false
110
	else
111
		local C = A:GetChildren()
112
		for i=1, #C do
113
		Get(C[i])
114
		end
115
	end
116
end
117
118
function Finale()
119
	Get(script.Parent)
120
end
121
122
script.Parent.Equipped:connect(Finale)
123
script.Parent.Unequipped:connect(Finale)
124
Finale()
125
end,o2)
126
end))
127
o3.Name = "Weld"
128
o3.Parent = o1
129
o3.Disabled = true
130
table.insert(cors,coroutine.create(function()
131
wait()
132
runDummyScript(function()
133
local prev
134
local parts = script.Parent:GetChildren()
135
for i = 1,#parts do
136
--remove any of the following parts that say "(parts[i].className == [className])" if you want to exclude that particular className type from the Weld
137
	if ((parts[i].className == "Part") or (parts[i].Name == "Handle") or (parts[i].className == "TrussPart") or (parts[i].className == "VehicleSeat") or (parts[i].className == "SkateboardPlatform")) then
138
		if (prev ~= nil) then
139
			local weld = Instance.new("Weld")
140
			weld.Part0 = prev
141
			weld.Part1 = parts[i]
142
			weld.C0 = prev.CFrame:inverse()
143
			weld.C1 = parts[i].CFrame:inverse()
144
			weld.Parent = prev
145
			parts[i].Anchored = false
146
		end
147
		prev = parts[i]
148
	end
149
end
150
wait(3)
151
152
end,o3)
153
end))
154
o4.Name = "PullPin"
155
o4.Parent = o1
156
o4.AnimationId = "http://www.roblox.com/asset/?id=88743592"
157
o5.Name = "Throwing"
158
o5.Parent = o1
159
o5.AnimationId = "http://www.roblox.com/asset/?id=88743566"
160
o6.Name = "Launcher"
161
o6.Parent = o1
162
table.insert(cors,coroutine.create(function()
163
wait()
164
runDummyScript(function()
165
print 'Hello world!'
166
Tool = script.Parent
167
thrown = true
168
VELOCITY = 150
169
local Pull_Pin
170
local Pull_Pin
171
function Nade()
172
	local model = Instance.new("Model")
173
	model.Name = "Nade"
174
	babacaca=Tool.Weld:clone()
175
	model.Parent = game.Workspace
176
	nade = Tool.Handle:clone()
177
--	nade1 = Tool.Handle1:clone()
178
--	nade2 = Tool.Handle2:clone()
179
--	nade3 = Tool.Handle3:clone()
180
--	nade4 = Tool.Handle4:clone()
181
	nade.Parent = model
182
--	nade1.Parent = model
183
--	nade2.Parent = model
184
--	nade3.Parent = model
185
--	nade4.Parent= model
186
	nade.CanCollide = true
187
	--nade1.CanCollide = true
188
	--nade2.CanCollide = true
189
	--nade3.CanCollide = true
190
--nade4.CanCollide= true
191
--	nade1.Transparency=1
192
	--nade2.Transparency=1
193
--	nade4.Transparency=1
194
	babacaca.Parent=model
195
	babacaca.Disabled=false
196
	local script = Tool.NadeScript:clone()
197
	script.Disabled = false
198
	script.Parent = nade
199
	return model
200
end
201
202
function lob(mousepos)
203
204
	
205
	local vCharacter = Tool.Parent
206
	local vPlayer = game.Players:playerFromCharacter(vCharacter)
207
	local head = Tool:findFirstChild("Handle")
208
	if head == nil then return end
209
	local dir = mousepos - head.Position
210
	dir = computeDirection(dir)
211
	local launch = head.Position + 1 * dir
212
	local delta = mousepos - launch
213
	local dy = delta.y
214
	local new_delta = Vector3.new(delta.x, 0, delta.z)
215
	delta = new_delta
216
	local dx = delta.magnitude
217
	local unit_delta = delta.unit
218
	local g = (-9.81 * 5)
219
	local theta = computeLaunchAngle(dx, dy, g)
220
	local vy = math.sin(theta)
221
	local xz = math.cos(theta)
222
	local vx = unit_delta.x * xz
223
	local vz = unit_delta.z * xz
224
	local missile = Nade()
225
	missile.Handle.Position = launch
226
	missile.Handle.Velocity = Vector3.new(vx, vy, vz) * VELOCITY
227
	local creator_tag = Instance.new("ObjectValue")
228
	creator_tag.Value = vPlayer
229
	creator_tag.Name = "creator"
230
	creator_tag.Parent = missile.Handle
231
	script.Parent.Handle.Throw:play()
232
	
233
	
234
	script.Parent.Handle.Transparency=1
235
	script.Parent.Part.Transparency=1
236
	--script.Parent.Handle1.Transparency=1
237
	--script.Parent.Handle2.Transparency=1
238
	--script.Parent.Handle3.Transparency=1
239
	--script.Parent.Handle4.Transparency=1
240
	
241
	
242
	
243
	
244
	
245
	
246
end
247
248
249
function computeLaunchAngle(dx, dy, grav)
250
	
251
	
252
	-- http://en.wikipedia.org/wiki/Trajectory_of_a_projectile
253
	local g = math.abs(grav)
254
	local inRoot = (VELOCITY*VELOCITY*VELOCITY*VELOCITY) - (g * ((g*dx*dx) + (2*dy*VELOCITY*VELOCITY)))
255
	if inRoot <= 0 then
256
		return .25 * math.pi
257
	end
258
	local root = math.sqrt(inRoot)
259
	local inATan1 = ((VELOCITY*VELOCITY) + root) / (g*dx)
260
	local inATan2 = ((VELOCITY*VELOCITY) - root) / (g*dx)
261
	local answer1 = math.atan(inATan1)
262
	local answer2 = math.atan(inATan2)
263
	if answer1 < answer2 then return answer1 end
264
	return answer2
265
end
266
267
function computeDirection(vec)
268
	local lenSquared = vec.magnitude * vec.magnitude
269
	local invSqrt = 1 / math.sqrt(lenSquared)
270
	return Vector3.new(vec.x * invSqrt, vec.y * invSqrt, vec.z * invSqrt)
271
end
272
273
274
275
function onThrow()
276
	if thrown == true then return end
277
	thrown = true
278
	local character = Tool.Parent
279
	local humanoid = character.Humanoid
280
	if humanoid == nil then return end
281
	local targetPos = humanoid.TargetPoint
282
	Pull_Pin:Play()
283
		wait(.15)
284
		--Pull_pin() -- Pin will be pulled at the same time the anim shows the "pulling the pin" part.
285
		wait(.35)
286
		Throwing:Play()
287
		--Make_Nade()
288
	
289
	
290
	
291
	lob(targetPos)
292
	--wait(0)
293
	wait(.1)
294
		Throwing:Stop()
295
		Pull_Pin:Stop()
296
	
297
	
298
	
299
300
	wait(1)
301
	script.Parent.Handle.Transparency=0
302
	
303
		script.Parent.Part.Transparency=0
304
	thrown = false
305
	
306
	
307
	--script.Parent:Remove()
308
end
309
	
310
function onEquipped()
311
	
312
		local Pull = script.Parent.PullPin -- PULL PIN & THROW + ANIMATIONS!
313
	local Throw = script.Parent.Throwing
314
	
315
	Pull_Pin = script.Parent.Parent.Humanoid:LoadAnimation(Pull)
316
	Throwing = script.Parent.Parent.Humanoid:LoadAnimation(Throw)
317
	
318
	
319
	
320
	
321
	
322
323
end
324
325
function onUnequipped()
326
	
327
end
328
329
thrown = false
330
331
Tool.Equipped:connect(onEquipped)
332
Tool.Unequipped:connect(onUnequipped)
333
Tool.Activated:connect(onThrow)
334
335
end,o6)
336
end))
337
o7.Name = "WELD"
338
o7.Parent = o1
339
table.insert(cors,coroutine.create(function()
340
wait()
341
runDummyScript(function()
342
-- Created by Quenty (@Quenty, follow me on twitter).
343
-- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
344
-- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
345
346
--[[ INSTRUCTIONS
347
- Place in the model
348
- Make sure model is anchored
349
- That's it. It will weld the model and all children. 
350
351
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
352
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
353
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
354
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
355
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
356
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
357
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
358
THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED. 
359
360
This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes. 
361
]]
362
363
--[[ DOCUMENTATION
364
- Will work in tools. If ran more than once it will not create more than one weld.  This is especially useful for tools that are dropped and then picked up again.
365
- Will work in PBS servers
366
- Will work as long as it starts out with the part anchored
367
- Stores the relative CFrame as a CFrame value
368
- Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
369
- Utilizes a recursive algorith to find all parts in the model
370
- Will reweld on script reparent if the script is initially parented to a tool.
371
- Welds as fast as possible
372
]]
373
374
-- qPerfectionWeld.lua
375
-- Created 10/6/2014
376
-- Author: Quenty
377
-- Version 1.0.3
378
379
-- Updated 10/14/2014 - Updated to 1.0.1
380
--- Bug fix with existing ROBLOX welds ? Repro by asimo3089
381
382
-- Updated 10/14/2014 - Updated to 1.0.2
383
--- Fixed bug fix. 
384
385
-- Updated 10/14/2014 - Updated to 1.0.3
386
--- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
387
388
local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
389
390
391
local function CallOnChildren(Instance, FunctionToCall)
392
	-- Calls a function on each of the children of a certain object, using recursion.  
393
394
	FunctionToCall(Instance)
395
396
	for _, Child in next, Instance:GetChildren() do
397
		CallOnChildren(Child, FunctionToCall)
398
	end
399
end
400
401
local function GetNearestParent(Instance, ClassName)
402
	-- Returns the nearest parent of a certain class, or returns nil
403
404
	local Ancestor = Instance
405
	repeat
406
		Ancestor = Ancestor.Parent
407
		if Ancestor == nil then
408
			return nil
409
		end
410
	until Ancestor:IsA(ClassName)
411
412
	return Ancestor
413
end
414
415
local function GetBricks(StartInstance)
416
	local List = {}
417
418
	-- if StartInstance:IsA("BasePart") then
419
	-- 	List[#List+1] = StartInstance
420
	-- end
421
422
	CallOnChildren(StartInstance, function(Item)
423
		if Item:IsA("BasePart") then
424
			List[#List+1] = Item;
425
		end
426
	end)
427
428
	return List
429
end
430
431
local function Modify(Instance, Values)
432
	-- Modifies an Instance by using a table.  
433
434
	assert(type(Values) == "table", "Values is not a table");
435
436
	for Index, Value in next, Values do
437
		if type(Index) == "number" then
438
			Value.Parent = Instance
439
		else
440
			Instance[Index] = Value
441
		end
442
	end
443
	return Instance
444
end
445
446
local function Make(ClassType, Properties)
447
	-- Using a syntax hack to create a nice way to Make new items.  
448
449
	return Modify(Instance.new(ClassType), Properties)
450
end
451
452
local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
453
local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
454
455
local function HasWheelJoint(Part)
456
	for _, SurfaceName in pairs(Surfaces) do
457
		for _, HingSurfaceName in pairs(HingSurfaces) do
458
			if Part[SurfaceName].Name == HingSurfaceName then
459
				return true
460
			end
461
		end
462
	end
463
	
464
	return false
465
end
466
467
local function ShouldBreakJoints(Part)
468
	--- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
469
	--  definitely some edge cases. 
470
471
	if NEVER_BREAK_JOINTS then
472
		return false
473
	end
474
	
475
	if HasWheelJoint(Part) then
476
		return false
477
	end
478
	
479
	local Connected = Part:GetConnectedParts()
480
	
481
	if #Connected == 1 then
482
		return false
483
	end
484
	
485
	for _, Item in pairs(Connected) do
486
		if HasWheelJoint(Item) then
487
			return false
488
		elseif not Item:IsDescendantOf(script.Parent) then
489
			return false
490
		end
491
	end
492
	
493
	return true
494
end
495
496
local function WeldTogether(Part0, Part1, JointType, WeldParent)
497
	--- Weld's 2 parts together
498
	-- @param Part0 The first part
499
	-- @param Part1 The second part (Dependent part most of the time).
500
	-- @param [JointType] The type of joint. Defaults to weld.
501
	-- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
502
	-- @return The weld created.
503
504
	JointType = JointType or "Weld"
505
	local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
506
	
507
	local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
508
	Modify(NewWeld, {
509
		Name = "qCFrameWeldThingy";
510
		Part0  = Part0;
511
		Part1  = Part1;
512
		C0     = CFrame.new();--Part0.CFrame:inverse();
513
		C1     = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
514
		Parent = Part1;
515
	})
516
517
	if not RelativeValue then
518
		RelativeValue = Make("CFrameValue", {
519
			Parent     = Part1;
520
			Name       = "qRelativeCFrameWeldValue";
521
			Archivable = true;
522
			Value      = NewWeld.C1;
523
		})
524
	end
525
526
	return NewWeld
527
end
528
529
local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
530
	-- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
531
	-- @param MainPart The part to weld the model to (can be in the model).
532
	-- @param [JointType] The type of joint. Defaults to weld. 
533
	-- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
534
	
535
	for _, Part in pairs(Parts) do
536
		if ShouldBreakJoints(Part) then
537
			Part:BreakJoints()
538
		end
539
	end
540
	
541
	for _, Part in pairs(Parts) do
542
		if Part ~= MainPart then
543
			WeldTogether(MainPart, Part, JointType, MainPart)
544
		end
545
	end
546
547
	if not DoNotUnanchor then
548
		for _, Part in pairs(Parts) do
549
			Part.Anchored = false
550
		end
551
		MainPart.Anchored = false
552
	end
553
end
554
555
local function PerfectionWeld()	
556
	local Tool = GetNearestParent(script, "Tool")
557
558
	local Parts = GetBricks(script.Parent)
559
	local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
560
561
	if PrimaryPart then
562
		WeldParts(Parts, PrimaryPart, "Weld", false)
563
	else
564
		warn("qWeld - Unable to weld part")
565
	end
566
	
567
	return Tool
568
end
569
570
local Tool = PerfectionWeld()
571
572
573
if Tool and script.ClassName == "Script" then
574
	--- Don't bother with local scripts
575
576
	script.Parent.AncestryChanged:connect(function()
577
		PerfectionWeld()
578
	end)
579
end
580
581
-- Created by Quenty (@Quenty, follow me on twitter).
582
583
end,o7)
584
end))
585
o8.Name = "NadeScript"
586
o8.Parent = o1
587
o8.Disabled = true
588
table.insert(cors,coroutine.create(function()
589
wait()
590
runDummyScript(function()
591
script.Parent.ParticleEmitter.Enabled=true
592
wait(3)
593
local dud = math.random(1,10)
594
if dud == 10 then
595
	script.Parent.ParticleEmitter.Enabled=false
596
script.Parent.Activate2.Enabled=false
597
script.Parent.Activate.Enabled=false
598
	script.Parent.dud.Enabled=true
599
	script.Parent.dudsound:play()
600
	wait(10)
601
	script.Parent.dud.Enabled=false
602
	wait(5)
603
	script.Parent:Remove()
604
end
605
script.Parent.Activate.Enabled=true
606
script.LAAAAA:Play()
607
script.Parent.zap.Enabled=true
608
wait(2)
609
script.Parent.ParticleEmitter.Enabled=false
610
script.Parent.Activate2.Enabled=true
611
script.Parent.Activate.Enabled=false
612
script.Parent.Anchored=true
613
script.Parent.Transparency=1
614
script.LAAAAA:Stop()
615
--IM FIRIN MA LASEOR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
616
a=script:GetChildren()
617
for i=1,#a do
618
if a[i].ClassName=="Sound" and a[i].Name~="LAAAAA" and a[i].Name~="Blam" then
619
	a[i]:Play()
620
end
621
end
622
	--big radius
623
	a=script.attract:Clone()
624
	a.Parent=script.Parent
625
	a.Disabled=false
626
	caca=script.magic:clone()
627
	caca.Parent=script.Parent
628
	caca.Enabled=true
629
	bc=Instance.new("Part")
630
	bc.TopSurface=0
631
	bc.BottomSurface=0
632
	bc.Anchored=false
633
	bc.CanCollide=false
634
	bc.formFactor="Custom"
635
	bc.Size=Vector3.new(1,1,1)
636
	
637
	bc.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
638
	bc.Name="poop"
639
	bc.BrickColor=BrickColor.new "White"
640
	ac=script.MAMAMesh:clone()
641
	ac.Parent = bc
642
	bc.Parent=game.Workspace
643
	
644
	--end radius thing
645
	
646
	--baca
647
	
648
	
649
	--bacamaca
650
	
651
	ba=Instance.new("Part")
652
	ba.TopSurface=0
653
	ba.BottomSurface=0
654
	ba.Anchored=false
655
	ba.CanCollide=false
656
	ba.formFactor="Custom"
657
	ba.Size=Vector3.new(1,0.1,1)
658
	ba.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
659
	ba.Name="Effect"
660
	ba.BrickColor=BrickColor.new "White"
661
	ao=script.RingMesh:clone()
662
	ao.Parent = ba
663
	ba.Parent=game.Workspace
664
	
665
	fo=Instance.new("BodyPosition")
666
	fo.maxForce= Vector3.new (99999999999999999,99999999999999999,99999999999999999)
667
	fo.position = ba.Position
668
	fo.Parent = ba
669
	aa=Instance.new("BodyAngularVelocity")
670
	aa.P=3000
671
	aa.maxTorque=aa.maxTorque*30
672
	aa.angularvelocity=Vector3.new(math.random(-70,70)/3,math.random(-70,70)/3,math.random(-70,70)/5)*100
673
	aa.Parent=ba
674
	
675
	
676
	
677
	
678
	-- spinning thing
679
	
680
	baa=Instance.new("Part")
681
	baa.TopSurface=0
682
	baa.BottomSurface=0
683
	baa.Anchored=false
684
	baa.CanCollide=false
685
	baa.formFactor="Custom"
686
	baa.Size=Vector3.new(1,0.1,1)
687
	baa.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
688
	baa.Name="Effect"
689
	baa.BrickColor=BrickColor.new "White"
690
	aao=script.RingMesh:clone()
691
	aao.Parent = baa
692
	baa.Parent=game.Workspace
693
	
694
	foo=Instance.new("BodyPosition")
695
	foo.maxForce= Vector3.new (99999999999999999,99999999999999999,99999999999999999)
696
	foo.position = baa.Position
697
	foo.Parent = baa
698
	aaa=Instance.new("BodyAngularVelocity")
699
	aaa.P=3000
700
	aaa.maxTorque=aaa.maxTorque*30
701
	aaa.angularvelocity=Vector3.new(math.random(-70,70)/3,math.random(-70,70)/3,math.random(-70,70)/5)*100
702
	aaa.Parent=baa
703
	
704
	
705
	
706
	
707
	
708
	
709
	
710
	
711
	
712
	
713
	
714
	--spinning thing 2
715
	
716
	baaa=Instance.new("Part")
717
	baaa.TopSurface=0
718
	baaa.BottomSurface=0
719
	baaa.Anchored=false
720
	baaa.CanCollide=false
721
	baaa.formFactor="Custom"
722
	baaa.Size=Vector3.new(1,0.1,1)
723
	baaa.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
724
	baaa.Name="Effect"
725
	baaa.BrickColor=BrickColor.new "White"
726
	aaao=script.RingMesh:clone()
727
	aaao.Parent = baaa
728
	baaa.Parent=game.Workspace
729
	
730
	fooo=Instance.new("BodyPosition")
731
	fooo.maxForce= Vector3.new (99999999999999999,99999999999999999,99999999999999999)
732
	fooo.position = baaa.Position
733
	fooo.Parent = baaa
734
	aaaa=Instance.new("BodyAngularVelocity")
735
	aaaa.P=3000
736
	aaaa.maxTorque=aaaa.maxTorque*30
737
	aaaa.angularvelocity=Vector3.new(math.random(-70,70)/3,math.random(-70,70)/3,math.random(-70,70)/5)*100
738
	aaaa.Parent=baaa
739
	
740
	
741
	
742
	
743
	
744
	
745
	
746
	--spinning thing 3
747
	
748
	
749
	
750
	
751
	
752
	
753
	
754
	
755
	c=Instance.new("Part")
756
	c.TopSurface=0
757
	c.BottomSurface=0
758
	c.Anchored=true
759
	c.CanCollide=false
760
	c.formFactor="Symmetric"
761
	c.Size=Vector3.new(1,1,1)
762
	c.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
763
	c.Name="Effect"
764
	c.BrickColor=BrickColor.new "Bright yellow"
765
	o=script.MAMAMesh:clone()
766
	o.Parent = c
767
	c.Parent=game.Workspace
768
	
769
	
770
	
771
	q=Instance.new("Part")
772
	q.TopSurface=0
773
	q.BottomSurface=0
774
	q.Anchored=true
775
	q.CanCollide=false
776
	q.formFactor="Symmetric"
777
	q.Size=Vector3.new(1,1,1)
778
	q.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
779
	q.Name="Effect2"
780
	q.BrickColor=BrickColor.new "Bright yellow"
781
	b=script.MAMAMesh:clone()
782
	b.Parent = q
783
	q.Parent=game.Workspace
784
	
785
	
786
	
787
	
788
	    no =Instance.new ("PointLight")
789
		no.Range=60
790
		no.Brightness=9999999999999999999
791
		no.Parent=q
792
	
793
	
794
	e=Instance.new("Part")
795
	e.TopSurface=0
796
	e.BottomSurface=0
797
	e.Anchored=true
798
	e.CanCollide=false
799
	e.formFactor="Plate"
800
	e.Size=Vector3.new(20,.4,20)
801
	e.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
802
	e.Name="Effect die!!!"
803
	e.BrickColor=BrickColor.new "White"
804
	r=script.RingMesh:clone()
805
	r.Parent=e
806
	e.Parent=game.Workspace
807
	
808
	coroutine.resume(coroutine.create(function(mesh) for l=1, 180 do aaao.Parent.Transparency=l/180 aaao.Scale=aaao.Scale+Vector3.new(20/l,20/l,0.1) wait() end aaao.Parent.Parent=nil end),aaao)
809
	coroutine.resume(coroutine.create(function(mesh) for l=1, 180 do aao.Parent.Transparency=l/180 aao.Scale=aao.Scale+Vector3.new(20/l,20/l,0.1) wait() end aao.Parent.Parent=nil end),aao)
810
	coroutine.resume(coroutine.create(function(mesh) for l=1, 180 do ao.Parent.Transparency=l/180 ao.Scale=ao.Scale+Vector3.new(20/l,20/l,0.1) wait() end ao.Parent.Parent=nil end),ao)
811
	coroutine.resume(coroutine.create(function(mesh) for l=1, 50 do o.Parent.Transparency=l/90 o.Scale=o.Scale+Vector3.new(20/l,20/l,25) wait() end  end),o)
812
	coroutine.resume(coroutine.create(function(mesh) for l=1, 50 do b.Parent.Transparency=l/50 b.Scale=b.Scale+Vector3.new(80/l,80/l,10) wait() end b.Parent.Parent=nil end),b)
813
	coroutine.resume(coroutine.create(function(mesh) for l=1, 60 do r.Parent.Transparency=l/60 r.Scale=r.Scale+Vector3.new(60/l,60/l,.02) wait() end r.Parent.Parent=nil end),r)
814
	coroutine.resume(coroutine.create(function(mesh) for l=1, 60 do ac.Parent.Transparency=l/20 ac.Scale=ac.Scale+Vector3.new(200/l,200/l,50) wait() end ac.Parent.Parent=nil end),ac)
815
	
816
	wait(1.4)
817
	coroutine.resume(coroutine.create(function(mesh) for l=1, 50 do o.Parent.Transparency=l/50 o.Scale=o.Scale+Vector3.new(-20/l,-20/l,30) wait() end o.Parent.Parent=nil end),o)
818
	wait(3)
819
	
820
	wait(4.5)
821
	script.Parent.attract.Disabled=true
822
	for i=1,5 do
823
		a=script.Blam:Clone()
824
		a.Parent=script
825
		a:play()
826
		game:GetService("Debris"):AddItem(a,6)
827
	end
828
for i = 1,35 do
829
 local   puff = Instance.new("Part")
830
    script.Parent.Anchored=true
831
script.ya:clone().Parent=puff
832
	puff.CanCollide = false
833
	puff.Anchored = false
834
	puff.Name = "smoke"
835
	puff.Transparency = 1
836
	puff.BrickColor = BrickColor.new("New Yeller")
837
	puff.formFactor = "Custom"
838
	puff.TopSurface = 0
839
	puff.BottomSurface = 0
840
	puff.Size = Vector3.new(4,4,4)
841
	
842
--[[	local erasee = script.smoke:clone()
843
	erasee.Parent = puff
844
	erasee.Enabled = true]]--
845
	local erase = script.Fade:clone()
846
	erase.Parent = puff
847
	erase.Disabled = false
848
	puff.Parent = game.Workspace
849
	
850
	
851
	
852
	
853
	
854
	
855
	
856
	--puff.Velocity= Vector3.new(math.random(0,800),math.random(-800,800),math.random(-800,800))
857
	puff.CFrame = script.Parent.CFrame + Vector3.new((math.random(-1,1)),(math.random(-1,1)),(math.random(-1,1)))
858
	
859
	local a = puff.Position
860
		local b = script.Parent.Position
861
862
		local dir = (a - b).unit
863
864
		puff.Velocity = dir * 50
865
		puff.Velocity = puff.Velocity+Vector3.new(0,math.random(20,150),0)
866
		
867
	
868
	end
869
	
870
	
871
	for i = 1,35 do
872
local    puff = Instance.new("Part")
873
    script.Parent.Anchored=true
874
script.ya:clone().Parent=puff
875
	puff.CanCollide = false
876
	puff.Anchored = false
877
	puff.Name = "smoke2"
878
	puff.Transparency = 1
879
	puff.BrickColor = BrickColor.new("New Yeller")
880
	puff.formFactor = "Custom"
881
	puff.TopSurface = 0
882
	puff.BottomSurface = 0
883
	puff.Size = Vector3.new(4,4,4)
884
	
885
	--[[	local erasee = script.smoke:clone()
886
	erasee.Parent = puff
887
	erasee.Enabled = true]]--
888
	local erase = script.Fade:clone()
889
	erase.Parent = puff
890
	erase.Disabled = false
891
	puff.Parent = game.Workspace
892
	--puff.Velocity= Vector3.new(math.random(-800,800),math.random(-800,800),math.random(-800,800))
893
	puff.CFrame = script.Parent.CFrame + Vector3.new((math.random(-1,1)),(math.random(-1,1)),(math.random(-1,1)))
894
	
895
	
896
	
897
		local a = puff.Position
898
		local b = script.Parent.Position
899
900
		local dir = (a - b).unit
901
902
		puff.Velocity = dir*0
903
		puff.Velocity = puff.Velocity+Vector3.new(math.random(-250,250),0,math.random(-250,250))
904
		
905
	
906
	end
907
	
908
	
909
	for i = 1,25 do
910
	
911
 local   puffa = Instance.new("Part")
912
    script.Parent.Anchored=true
913
--script.ya:clone().Parent=puff
914
	puffa.CanCollide = false
915
	puffa.Anchored = false
916
	puffa.Name = "debris"
917
	puffa.Transparency = 0
918
	puffa.BrickColor = BrickColor.new("Brown")
919
	puffa.formFactor = "Custom"
920
	puffa.TopSurface = 0
921
	puffa.BottomSurface = 0
922
	puffa.Size = Vector3.new(math.random(0.6,3),math.random(0.6,3),math.random(0.6,3))
923
	game:GetService("Debris"):AddItem(puffa,5)
924
	puffa.Parent=game.Workspace
925
	puffa.CFrame = script.Parent.CFrame + Vector3.new((math.random(-1,1)),(math.random(-1,1)),(math.random(-1,1)))
926
	
927
	
928
	puffa.Velocity = puffa.Velocity+Vector3.new(math.random(-50,50),math.random(100,200),math.random(-50,50))
929
		puffa.RotVelocity = puffa.RotVelocity+Vector3.new(math.random(-50,50),math.random(100,200),math.random(-50,50))
930
		
931
	
932
	end
933
	function onPlayerBlownUp2(part)
934
	
935
	if part.Anchored==false then
936
		local f = Instance.new("Fire")
937
f.Parent = part
938
f.Size = part:getMass()
939
f.Heat = part:getMass()
940
a=script.fireableno:Clone()
941
a.Parent=f
942
a.Disabled=false
943
game:GetService("Debris"):AddItem(f,15)
944
	
945
	end
946
	end
947
script.Parent.Anchored=true
948
script.Parent.Transparency=1
949
local exp = Instance.new("Explosion")
950
exp.BlastRadius = 180   --super wussy units
951
exp.BlastPressure = 3000000 -- final bam
952
exp.Position = script.Parent.Position
953
exp.Parent = game.Workspace
954
script.Parent.Anchored=true
955
script.Parent.Transparency=1
956
script.Parent.magic.Enabled=false
957
	exp.Hit:connect(function(part)  onPlayerBlownUp2(part) end)
958
script.Parent.Activate2.Enabled=false
959
	
960
	c=Instance.new("Part")
961
	c.TopSurface=0
962
	c.BottomSurface=0
963
	c.Anchored=true
964
	c.CanCollide=false
965
	c.formFactor="Symmetric"
966
	c.Size=Vector3.new(1,1,1)
967
	c.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
968
	c.Name="Effect"
969
	c.BrickColor=BrickColor.new "Bright yellow"
970
	o=script.MAMAMesh:clone()
971
	o.Parent = c
972
	c.Parent=game.Workspace
973
	
974
	
975
	e=Instance.new("Part")
976
	e.TopSurface=0
977
	e.BottomSurface=0
978
	e.Anchored=true
979
	e.CanCollide=false
980
	e.formFactor="Plate"
981
	e.Size=Vector3.new(20,.4,20)
982
	e.CFrame=CFrame.new(script.Parent.CFrame.p)*CFrame.fromEulerAnglesXYZ(math.pi/2,0,0)
983
	e.Name="Effect die!!!"
984
	e.BrickColor=BrickColor.new "White"
985
	r=script.RingMesh:clone()
986
	r.Parent=e
987
	e.Parent=game.Workspace
988
	
989
	
990
	function onPlayerBlownUp(part)
991
	
992
	if part.Anchored==false then
993
		
994
	
995
	local b = part.Parent:findFirstChild("Humanoid")
996
	
997
	if b ~= nil  then
998
		local a = game.Players:GetPlayerFromCharacter(b.Parent)
999
		if a~= nil then
1000
			local lol = a.PlayerGui:findFirstChild("shake")
1001
			if lol == nil then
1002
			local ad = script.shake:Clone()
1003
			ad.Parent=a.PlayerGui
1004
			ad.Disabled=false
1005
			
1006
				local ad = script.Blur:Clone()
1007
				ad.Disabled=false
1008
			ad.Parent=a.PlayerGui
1009
			
1010
			
1011
			end
1012
		end
1013
	end
1014
	end
1015
end
1016
	coroutine.resume(coroutine.create(function(mesh) for l=1, 60 do r.Parent.Transparency=l/60 r.Scale=r.Scale+Vector3.new(60/l,60/l,.02) wait() end r.Parent.Parent=nil end),r)
1017
	
1018
	coroutine.resume(coroutine.create(function(mesh) for l=1, 50 do o.Parent.Transparency=l/90 o.Scale=o.Scale+Vector3.new(20/l,20/l,250) wait() end  end),o)
1019
1020
script.Parent.zap.Enabled=false
1021
local a = Instance.new("Explosion")
1022
a.Position=script.Parent.Position
1023
a.Parent=game.Workspace
1024
a.BlastPressure=0
1025
a.BlastRadius=1000
1026
script.light.Disabled=false
1027
a.Hit:connect(function(part)  onPlayerBlownUp(part) end)
1028
script.Parent.Activate2.Enabled=false
1029
local i = 0
1030
local x = script.Parent.Position.x
1031
local y = script.Parent.Position.y
1032
local z = script.Parent.Position.z
1033
for i = 1, 60,1 do
1034
		local ex = Instance.new("Explosion")
1035
		ex.Parent = script.Parent
1036
		ex.Name = "Brick"
1037
		ex.BlastPressure = 100000 
1038
		ex.BlastRadius = 900
1039
		ex.DestroyJointRadiusPercent = 0.1
1040
		ex.Position=Vector3.new(100*math.cos(math.rad(i*6)) + x, y, 100*math.sin(math.rad(i*6)) + z)
1041
		ex.Hit:connect(function(part)  onPlayerBlownUp(part) end)
1042
1043
		--wait()
1044
	end
1045
wait(1.4)
1046
	coroutine.resume(coroutine.create(function(mesh) for l=1, 50 do o.Parent.Transparency=l/50 o.Scale=o.Scale+Vector3.new(-20/l,-20/l,300) wait() end o.Parent.Parent=nil end),o)
1047
	
1048
1049
		
1050
	
1051
1052
	
1053
	
1054
	
1055
	
1056
	wait(15)
1057
script.Berserk:stop()
1058
script.Parent.Parent:Remove()	
1059
	
1060
end,o8)
1061
end))
1062
o9.Name = "Fade"
1063
o9.Parent = o8
1064
o9.Disabled = true
1065
table.insert(cors,coroutine.create(function()
1066
wait()
1067
runDummyScript(function()
1068
1069
1070
wait(3)
1071
a=script.Parent:FindFirstChild("Fire")
1072
if a ~= nil then
1073
	a.Enabled=false
1074
end
1075
wait(2)
1076
script.Parent.Parent:remove()
1077
end,o9)
1078
end))
1079
o10.Name = "TMesh"
1080
o10.Parent = o8
1081
o10.MeshId = "http://www.roblox.com/asset/?id=1051557"
1082
o10.Scale = Vector3.new(12, 9, 12)
1083
o10.MeshType = Enum.MeshType.FileMesh
1084
o11.Name = "SpikeMesh"
1085
o11.Parent = o8
1086
o11.MeshId = "http://www.roblox.com/asset/?id=1033714"
1087
o11.Scale = Vector3.new(7, 16, 7)
1088
o11.MeshType = Enum.MeshType.FileMesh
1089
o12.Name = "Fade0"
1090
o12.Parent = o8
1091
o12.Disabled = true
1092
table.insert(cors,coroutine.create(function()
1093
wait()
1094
runDummyScript(function()
1095
wait()
1096
script.Parent.BrickColor = BrickColor.new("New Yeller")
1097
script.Parent.Transparency = script.Parent.Transparency + 0.05
1098
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.92,0.92,0)
1099
wait(.01)
1100
script.Parent.BrickColor = BrickColor.new("New Yeller")
1101
script.Parent.Transparency = script.Parent.Transparency + 0.0
1102
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.92,0.92,0.)
1103
wait(.01)
1104
script.Parent.BrickColor = BrickColor.new("Deep orange")
1105
script.Parent.Transparency = script.Parent.Transparency + 0.0
1106
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.92,0.92,0)
1107
wait(.1)
1108
script.Parent.BrickColor = BrickColor.new("Deep orange")
1109
script.Parent.Transparency = script.Parent.Transparency + 0.0
1110
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.94,0.942,0.)
1111
wait(.1)
1112
1113
wait(.01)
1114
script.Parent.BrickColor = BrickColor.new("Deep orange")
1115
script.Parent.Transparency = script.Parent.Transparency + 0.05
1116
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.943,0.943,0.)
1117
wait(.01)
1118
script.Parent.BrickColor = BrickColor.new("Deep orange")
1119
script.Parent.Transparency = script.Parent.Transparency + 0.0
1120
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.943,0.943,0.)
1121
wait(.01)
1122
1123
1124
1125
script.Parent.BrickColor = BrickColor.new("White")
1126
script.Parent.Transparency = script.Parent.Transparency + 0.0
1127
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.943,0.943,0.)
1128
wait(.1)
1129
script.Parent.BrickColor = BrickColor.new("White")
1130
script.Parent.Transparency = script.Parent.Transparency + 0.00
1131
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.943,0.943,0.)
1132
1133
1134
1135
wait(.1)
1136
script.Parent.BrickColor = BrickColor.new("White")
1137
script.Parent.Transparency = script.Parent.Transparency + 0.08
1138
script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.943,0.943,0.)
1139
wait(.1)
1140
for i = 1,150 do
1141
	script.Parent.Transparency = script.Parent.Transparency + 0.005
1142
	script.Parent.Mesh0.Scale = script.Parent.Mesh0.Scale + Vector3.new(0.641,0.641,0.1)
1143
	wait()
1144
end
1145
wait(1)
1146
script.Parent:remove()
1147
end,o12)
1148
end))
1149
o13.Name = "light"
1150
o13.Parent = o8
1151
o13.Disabled = true
1152
table.insert(cors,coroutine.create(function()
1153
wait()
1154
runDummyScript(function()
1155
print 'Hello world!'
1156
g=game.Lighting.Ambient.g
1157
b=game.Lighting.Ambient.b
1158
r=game.Lighting.Ambient.r
1159
local a = 1000/255
1160
game.Lighting.Ambient=Color3.new(r+a,g+a,b+a)
1161
1162
wait(1)
1163
	for i=1,100 do
1164
		local a =10/255
1165
		g=game.Lighting.Ambient.g
1166
b=game.Lighting.Ambient.b
1167
r=game.Lighting.Ambient.r
1168
	game.Lighting.Ambient=Color3.new(r-a,g-a,b-a)
1169
1170
wait(0.05)
1171
end
1172
end,o13)
1173
end))
1174
o14.Name = "Abscond"
1175
o14.Parent = o8
1176
o14.SoundId = "http://www.roblox.com/asset/?id=2767090"
1177
o14.Volume = 1
1178
o15.Name = "Berserk"
1179
o15.Parent = o8
1180
o15.SoundId = "rbxassetid://362846090"
1181
o15.Volume = 1
1182
o16.Name = "Break"
1183
o16.Parent = o8
1184
o16.Pitch = 0.75
1185
o16.SoundId = "http://www.roblox.com/asset/?id=3264793"
1186
o16.Volume = 1
1187
o17.Name = "Curse"
1188
o17.Parent = o8
1189
o17.Pitch = 0.40000000596046
1190
o17.SoundId = "http://www.roblox.com/asset/?id=13775494"
1191
o17.Volume = 1
1192
o18.Name = "DBC"
1193
o18.Parent = o8
1194
o18.Pitch = 0.55000001192093
1195
o18.SoundId = "http://www.roblox.com/asset/?id=2101137"
1196
o18.Volume = 1
1197
o19.Name = "DBCha"
1198
o19.Parent = o8
1199
o19.Pitch = 0.30000001192093
1200
o19.SoundId = "http://www.roblox.com/asset/?id=2101137"
1201
o19.Volume = 1
1202
o20.Name = "DBExplode"
1203
o20.Parent = o8
1204
o20.SoundId = "rbxassetid://204032720"
1205
o20.Volume = 1
1206
o21.Name = "DCHHIT"
1207
o21.Parent = o8
1208
o21.Pitch = 0.5
1209
o21.SoundId = "http://www.roblox.com/asset/?id=2801263"
1210
o21.Volume = 1
1211
o22.Name = "DS"
1212
o22.Parent = o8
1213
o22.Pitch = 0.69999998807907
1214
o22.SoundId = "http://www.roblox.com/asset/?id=2691586"
1215
o22.Volume = 1
1216
o23.Name = "DSHit"
1217
o23.Parent = o8
1218
o23.Pitch = 1.5
1219
o23.SoundId = "http://www.roblox.com/asset/?id=2101148"
1220
o23.Volume = 1
1221
o24.Name = "Defile"
1222
o24.Parent = o8
1223
o24.Pitch = 1.125
1224
o24.SoundId = "http://www.roblox.com/asset/?id=3264923"
1225
o24.Volume = 1
1226
o25.Name = "Elec"
1227
o25.Parent = o8
1228
o25.Pitch = 0.69999998807907
1229
o25.SoundId = "http://www.roblox.com/asset/?id=2800815"
1230
o25.Volume = 1
1231
o26.Name = "GB1"
1232
o26.Parent = o8
1233
o26.Pitch = 0.69999998807907
1234
o26.SoundId = "http://www.roblox.com/asset?id=1369158"
1235
o26.Volume = 1
1236
o27.Name = "GB2"
1237
o27.Parent = o8
1238
o27.Pitch = 0.80000001192093
1239
o27.SoundId = "http://www.roblox.com/asset/?id=2974000"
1240
o27.Volume = 1
1241
o28.Name = "GB3"
1242
o28.Parent = o8
1243
o28.Pitch = 0.20000000298023
1244
o28.SoundId = "http://www.roblox.com/asset/?id=12222124"
1245
o28.Volume = 1
1246
o29.Name = "GB4"
1247
o29.Parent = o8
1248
o29.Pitch = 0.64999997615814
1249
o29.SoundId = "http://www.roblox.com/asset/?id=2974249"
1250
o29.Volume = 1
1251
o30.Name = "Imbue"
1252
o30.Parent = o8
1253
o30.SoundId = "http://www.roblox.com/asset/?id=2785493"
1254
o30.Volume = 1
1255
o31.Name = "LAAAAA"
1256
o31.Parent = o8
1257
o31.SoundId = "rbxassetid://643035411"
1258
o31.Volume = 5
1259
o32.Name = "BlastMesh"
1260
o32.Parent = o8
1261
o32.MeshId = "http://www.roblox.com/asset/?id=20329976"
1262
o32.Scale = Vector3.new(1, 0.100000001, 1)
1263
o32.MeshType = Enum.MeshType.FileMesh
1264
o33.Name = "CYMesh"
1265
o33.Parent = o8
1266
o33.Scale = Vector3.new(12, 9, 12)
1267
o33.MeshType = Enum.MeshType.Cylinder
1268
o34.Name = "MAMAMesh"
1269
o34.Parent = o8
1270
o34.MeshType = Enum.MeshType.Sphere
1271
o35.Name = "RingMesh"
1272
o35.Parent = o8
1273
o35.MeshId = "http://www.roblox.com/asset/?id=3270017"
1274
o35.Scale = Vector3.new(0.100000001, 0.100000001, 0.100000001)
1275
o35.MeshType = Enum.MeshType.FileMesh
1276
o36.Name = "magic"
1277
o36.Parent = o8
1278
o36.Size = NumberSequence.new(10,2.6875,0)
1279
o36.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 1, 1))
1280
o36.Enabled = false
1281
o36.LightEmission = 10000
1282
o36.Texture = "http://www.roblox.com/asset/?id=241650934"
1283
o36.ZOffset = 3
1284
o36.Lifetime = NumberRange.new(0.5,2)
1285
o36.Rate = 10000000000
1286
o36.RotSpeed = NumberRange.new(-280,280)
1287
o36.Speed = NumberRange.new(0,0)
1288
o36.VelocitySpread = 360
1289
o37.Name = "attractO"
1290
o37.Parent = o8
1291
table.insert(cors,coroutine.create(function()
1292
wait()
1293
runDummyScript(function()
1294
function onPlayerBlownUp(part, distance, creator)
1295
	
1296
	if part.Anchored==false then
1297
		
1298
	aa=	script.gotopos:Clone()
1299
	aa.Disabled=false
1300
	aa.Value.Value=script.Parent.Position
1301
	aa.Parent=part
1302
	game:GetService("Debris"):AddItem(aa,10)
1303
	local b = part.Parent:findFirstChild("Humanoid")
1304
	local c = part.Parent:findFirstChild("Humanoid")
1305
	if b == nil and c == nil then
1306
		local a = math.random(1,7)
1307
		if a == 1 then
1308
			part:BreakJoints()
1309
		end
1310
	end
1311
	end
1312
end
1313
local a = Instance.new("Explosion")
1314
a.Position=script.Parent.Position
1315
a.Parent=game.Workspace
1316
a.BlastPressure=0
1317
a.BlastRadius=200
1318
a.Hit:connect(function(part, distance)  onPlayerBlownUp(part, distance) end)
1319
	
1320
1321
end,o37)
1322
end))
1323
o38.Name = "gotopos"
1324
o38.Parent = o37
1325
o38.Disabled = true
1326
table.insert(cors,coroutine.create(function()
1327
wait()
1328
runDummyScript(function()
1329
print 'Hello world!'
1330
local b = script.Value.Value
1331
while true do
1332
	wait(0.1)
1333
	
1334
		local a = script.Parent.Position
1335
1336
		local dir = (a - b).unit
1337
dir=dir*-1
1338
		script.Parent.Velocity = dir*30
1339
end
1340
end,o38)
1341
end))
1342
o39.Parent = o38
1343
o40.Name = "Blam"
1344
o40.Parent = o8
1345
o40.SoundId = "rbxassetid://193444173"
1346
o40.Volume = 1
1347
o41.Name = "smoke"
1348
o41.Parent = o8
1349
o41.Size = UDim2.new(7.5,0,7.5,0)
1350
o41.Enabled = false
1351
o42.Parent = o41
1352
o42.Position = UDim2.new(-3.5,0,-3.5,0)
1353
o42.Size = UDim2.new(8,0,8,0)
1354
o42.Position = UDim2.new(-3.5,0,-3.5,0)
1355
o42.BackgroundColor3 = Color3.new(1, 1, 1)
1356
o42.BackgroundTransparency = 1
1357
o42.BorderSizePixel = 0
1358
o42.Image = "http://www.roblox.com/asset/?id=31727915"
1359
o43.Parent = o42
1360
table.insert(cors,coroutine.create(function()
1361
wait()
1362
runDummyScript(function()
1363
while true do
1364
	script.Parent.Rotation = script.Parent.Rotation+1
1365
	wait(0.1)
1366
end
1367
end,o43)
1368
end))
1369
o44.Name = "ya"
1370
o44.Parent = o8
1371
o44.force = Vector3.new(0, 8790, 0)
1372
o45.Name = "fireableno"
1373
o45.Parent = o8
1374
o45.Disabled = true
1375
table.insert(cors,coroutine.create(function()
1376
wait()
1377
runDummyScript(function()
1378
print 'Hello world!'
1379
wait(10)
1380
script.Parent.Enabled=false
1381
end,o45)
1382
end))
1383
o46.Name = "attract"
1384
o46.Parent = o8
1385
table.insert(cors,coroutine.create(function()
1386
wait()
1387
runDummyScript(function()
1388
local hole = script.Parent
1389
local childList = {}
1390
1391
local massConstant = 5.8 -- Generally a good value
1392
1393
local mass = 40000 * massConstant
1394
1395
-- This is basically a function that finds all unanchored parts and adds them to childList.
1396
-- Note: This should only be run once for each object
1397
function checkObject(obj)
1398
	if (obj ~= hole) and (obj.className == "Part") then
1399
		if (obj.Anchored == false) then
1400
			table.insert(childList, 1, obj)
1401
		end
1402
	elseif (obj.className == "Model") or (obj.className == "Hat") or (obj.className == "Tool") or (obj == workspace) then
1403
		local child = obj:GetChildren()
1404
		for x = 1, #child do
1405
			checkObject(child[x])
1406
		end
1407
		obj.ChildAdded:connect(checkObject)
1408
	end
1409
end
1410
1411
checkObject(workspace)
1412
1413
print("Black Hole script loaded.")
1414
1415
local n = 0
1416
while true do
1417
	if n < #childList then
1418
		n = n + 1
1419
		if n % 800 == 0 then
1420
			wait(0.5)
1421
		end
1422
	else
1423
		n = 1
1424
		wait(0.5)
1425
	end
1426
1427
	local child = childList[n]
1428
	if (child ~= hole) and (child.className == "Part") and (child.Anchored == false) then
1429
		local relPos = hole.Position - child.Position
1430
		local motivator = child:FindFirstChild("BlackHole Influence")
1431
		if relPos.magnitude * 350 * massConstant < mass then
1432
			
1433
			local a = math.random(1,25)
1434
			if a == 1 and child.Parent:findFirstChild("Humanoid") == nil then
1435
			child:BreakJoints()
1436
			
1437
	
1438
			end
1439
			
1440
			if (relPos.magnitude * 320 * massConstant < mass) and (child.Size.z + hole.Size.x >  relPos.magnitude * 2 - 4) then
1441
				mass = mass + child:GetMass()
1442
			--	child:Remove()
1443
				table.remove(childList, n)
1444
				n = n - 1 -- This is the reason I need a counter of my own design
1445
			else
1446
			--	child.CanCollide = false -- I Can assume that things won't escape the black hole.
1447
				if motivator == nil then
1448
					motivator = Instance.new("BodyPosition")
1449
					motivator.Parent = child
1450
					game:GetService("Debris"):AddItem(motivator,0.4)
1451
					motivator.Name = "BlackHole Influence"
1452
				end
1453
				if child.Parent:findFirstChild("Humanoid") ~= nil then
1454
					motivator.position = hole.Position
1455
				motivator.maxForce = Vector3.new(1000, 1000, 1000)-- * mass * child:GetMass() / (relPos.magnitude * massConstant)
1456
			motivator:remove()
1457
			local posfind = child.Parent:findFirstChild("Torso")
1458
			if posfind ~= nil then
1459
			local posfind2 = posfind:findFirstChild("gotopos")
1460
			if posfind2== nil then
1461
			aa=	script.gotopos:Clone()
1462
	aa.Disabled=false
1463
	game:GetService("Debris"):AddItem(aa,10)
1464
	aa.Value.Value=script.Parent.Position
1465
	aa.Parent=child.Parent.Torso
1466
			end
1467
			end
1468
					else
1469
				motivator.position = hole.Position
1470
				motivator.maxForce = Vector3.new(1500, 1500, 1500)-- * mass * child:GetMass() / (relPos.magnitude * massConstant)
1471
			
1472
				end
1473
				
1474
			end
1475
		elseif motivator ~= nil then
1476
			motivator:Remove()
1477
		end
1478
	end
1479
end
1480
end,o46)
1481
end))
1482
o47.Name = "gotopos"
1483
o47.Parent = o46
1484
o47.Disabled = true
1485
table.insert(cors,coroutine.create(function()
1486
wait()
1487
runDummyScript(function()
1488
print 'Hello world!'
1489
local b = script.Value.Value
1490
while true do
1491
	wait(0.1)
1492
	
1493
		local a = script.Parent.Position
1494
1495
		local dir = (a - b).unit
1496
dir=dir*-1
1497
		script.Parent.Velocity = dir*30
1498
end
1499
end,o47)
1500
end))
1501
o48.Parent = o47
1502
o49.Name = "Handle"
1503
o49.Parent = o1
1504
o49.Size = Vector3.new(4, 1, 2)
1505
o50.Name = "Blam"
1506
o50.Parent = o49
1507
o50.Pitch = 0.89999997615814
1508
o50.SoundId = "rbxassetid://164012897"
1509
o50.Volume = 1
1510
o51.Name = "Throw"
1511
o51.Parent = o49
1512
o51.SoundId = "http://www.roblox.com/asset/?id=18426149"
1513
o51.Volume = 1
1514
o52.Name = "dudsound"
1515
o52.Parent = o49
1516
o52.SoundId = "rbxassetid://148635119"
1517
o52.Volume = 1
1518
o53.Name = "Activate"
1519
o53.Parent = o49
1520
o53.Size = NumberSequence.new(2,0.1875,0)
1521
o53.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 1, 0))
1522
o53.Enabled = false
1523
o53.LightEmission = 1
1524
o53.Texture = "http://www.roblox.com/asset/?id=241650934"
1525
o53.Lifetime = NumberRange.new(0.20000000298023,0.60000002384186)
1526
o53.Rate = 100000
1527
o53.Speed = NumberRange.new(10,10)
1528
o53.VelocitySpread = 360
1529
o54.Name = "Activate2"
1530
o54.Parent = o49
1531
o54.Size = NumberSequence.new(2,0.1875,0.062499601393938,10)
1532
o54.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 1, 0))
1533
o54.Enabled = false
1534
o54.LightEmission = 1
1535
o54.Texture = "http://www.roblox.com/asset/?id=241650934"
1536
o54.Lifetime = NumberRange.new(3,3)
1537
o54.Rate = 100000
1538
o54.Speed = NumberRange.new(10,10)
1539
o54.VelocitySpread = 360
1540
o55.Parent = o49
1541
o55.Size = NumberSequence.new(2,0.1875,0)
1542
o55.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 1, 0))
1543
o55.Enabled = false
1544
o55.LightEmission = 1
1545
o55.Texture = "http://www.roblox.com/asset/?id=241650934"
1546
o55.Lifetime = NumberRange.new(0.20000000298023,0.60000002384186)
1547
o55.Rate = 100000
1548
o55.Speed = NumberRange.new(0,0)
1549
o56.Name = "dud"
1550
o56.Parent = o49
1551
o56.Transparency = NumberSequence.new(0,0.98749995231628)
1552
o56.Size = NumberSequence.new(0,3.875,4.9375,7.3125)
1553
o56.Color = ColorSequence.new(Color3.new(0.639216, 0.635294, 0.647059),Color3.new(0.639216, 0.635294, 0.647059))
1554
o56.Enabled = false
1555
o56.Texture = "rbxasset://textures/particles/smoke_main.dds"
1556
o56.Acceleration = Vector3.new(0, 1, 0)
1557
o56.Lifetime = NumberRange.new(5,5)
1558
o56.Rate = 10
1559
o56.RotSpeed = NumberRange.new(0,10)
1560
o56.Speed = NumberRange.new(0,0)
1561
o56.VelocitySpread = 10
1562
o57.Name = "zap"
1563
o57.Parent = o49
1564
o57.Transparency = NumberSequence.new(0.89999997615814,0.89999997615814)
1565
o57.Rotation = NumberRange.new(-360,360)
1566
o57.Size = NumberSequence.new(1.0429400205612,8.9375,0,8.875,0,8.9375,0,8.875,0.030674900859594,9.0625,0,8.875,0,9,0,8.375)
1567
o57.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 1, 1))
1568
o57.Enabled = false
1569
o57.LightEmission = 1
1570
o57.Texture = "http://www.roblox.com/asset/?id=243098098"
1571
o57.Lifetime = NumberRange.new(0.20000000298023,0.20000000298023)
1572
o57.Rate = 250
1573
o57.Speed = NumberRange.new(0,0)
1574
mas.Parent = workspace
1575
mas:MakeJoints()
1576
local mas1 = mas:GetChildren()
1577
for i=1,#mas1 do
1578
	mas1[i].Parent = script 
1579
	ypcall(function() mas1[i]:MakeJoints() end)
1580
end
1581
mas:Destroy()
1582
for i=1,#cors do
1583
coroutine.resume(cors[i])
1584
end