View difference between Paste ID: H63DiaUz and HBhPLa6p
SHOW: | | - or go back to the newest paste.
1
local p = game.Players.LocalPlayer
2
local char = p.Character
3
local Character = char
4
local Mau5 = p:GetMouse()
5
local larm = char["Left Arm"]
6
local rarm = char["Right Arm"]
7
local lleg = char["Left Leg"]
8
local rleg = char["Right Leg"]
9
local hed = char.Head
10
local torso = char.Torso
11
local hum = char.Humanoid
12
local cam = game.Workspace.CurrentCamera
13
local root = char.HumanoidRootPart
14
local RootPart = root
15
local l = game:GetService("Lighting")
16
local debris = game:GetService("Debris")
17
local rs = game:GetService("RunService").RenderStepped
18
local Damaged = {}
19
it = Instance.new
20
vt = Vector3.new
21
cn = CFrame.new
22
euler = CFrame.fromEulerAnglesXYZ
23
angles = CFrame.Angles
24
local HandCF = CFrame.new(root.Position - Vector3.new(0, 3, 0)) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
25
Debounces = {
26
	CanAttack = true,
27
	NoIdle = false,
28
	Anger = false,
29
	OrbMove1 = false,
30
	OrbMove2 = false,
31
	OrbMove3 = false,
32
	OrbMove4 = false,
33
	OrbMove5 = false,
34
	OrbMove6 = false,
35
	OrbMove7 = false,
36
	OrbMove8 = false
37
}
38
function Lerp(a, b, t)
39
	local qa = {
40
		QuaternionFromCFrame(a)
41
	}
42
	local qb = {
43
		QuaternionFromCFrame(b)
44
	}
45
	local ax, ay, az = a.x, a.y, a.z
46
	local bx, by, bz = b.x, b.y, b.z
47
	local _t = 1 - t
48
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
49
end
50
local Lerp = CFrame.new().lerp
51
function QuaternionFromCFrame(cf)
52
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
53
	local trace = m00 + m11 + m22
54
	if trace > 0 then
55
		local s = math.sqrt(1 + trace)
56
		local recip = 0.5 / s
57
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
58
	else
59
		local i = 0
60
		if m00 < m11 then
61
			i = 1
62
		end
63
		if i == 0 and m00 or m11 < m22 then
64
			i = 2
65
		end
66
		if i == 0 then
67
			local s = math.sqrt(m00 - m11 - m22 + 1)
68
			local recip = 0.5 / s
69
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
70
		elseif i == 1 then
71
			local s = math.sqrt(m11 - m22 - m00 + 1)
72
			local recip = 0.5 / s
73
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
74
		elseif i == 2 then
75
			local s = math.sqrt(m22 - m00 - m11 + 1)
76
			local recip = 0.5 / s
77
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
78
		end
79
	end
80
end
81
function QuaternionToCFrame(px, py, pz, x, y, z, w)
82
	local xs, ys, zs = x + x, y + y, z + z
83
	local wx, wy, wz = w * xs, w * ys, w * zs
84
	local xx = x * xs
85
	local xy = x * ys
86
	local xz = x * zs
87
	local yy = y * ys
88
	local yz = y * zs
89
	local zz = z * zs
90
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
91
end
92
function QuaternionSlerp(a, b, t)
93
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
94
	local startInterp, finishInterp
95
	if cosTheta >= 1.0E-4 then
96
		if 1 - cosTheta > 1.0E-4 then
97
			local theta = math.acos(cosTheta)
98
			local invSinTheta = 1 / math.sin(theta)
99
			startInterp = math.sin((1 - t) * theta) * invSinTheta
100
			finishInterp = math.sin(t * theta) * invSinTheta
101
		else
102
			startInterp = 1 - t
103
			finishInterp = t
104
			if 1 + cosTheta > 1.0E-4 then
105
				local theta = math.acos(-cosTheta)
106
				local invSinTheta = 1 / math.sin(theta)
107
				startInterp = math.sin((t - 1) * theta) * invSinTheta
108
				finishInterp = math.sin(t * theta) * invSinTheta
109
			else
110
				startInterp = t - 1
111
				finishInterp = t
112
				return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
113
			end
114
		end
115
	end
116
end
117
function scaleTween(strt, fnsh, tim)
118
	local com1 = {
119
		strt.X,
120
		strt.Y,
121
		strt.Z
122
	}
123
	local com2 = {
124
		fnsh.X,
125
		fnsh.Y,
126
		fnsh.Z
127
	}
128
	for i, v in pairs(com1) do
129
		com1[i] = v + (com2[i] - v) * tim
130
	end
131
	return Vector3.new(com1[1], com1[2], com1[3])
132
end
133
function newWeld(wp0, wp1, wc0x, wc0y, wc0z)
134
	local wld = Instance.new("Weld", wp1)
135
	wld.Part0 = wp0
136
	wld.Part1 = wp1
137
	wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
138
end
139
140
function TakeDamage(a, b)
141
a:TakeDamage(b)
142
end
143
144
function WeldBetween(a, b)
145
	weld = Instance.new("Weld", a)
146
	weld.Name = "W"
147
	weld.Part0 = a
148
	weld.Part1 = b
149
	weld.C0 = a.CFrame:inverse() * b.CFrame
150
	return weld
151
end
152
function Lerp2(a, b, i)
153
	return a:lerp(b, i)
154
end
155
function HasntDamaged(plrname)
156
	local ret = true
157
	for _, v in pairs(Damaged) do
158
		if v == plrname then
159
			ret = false
160
		end
161
	end
162
	return ret
163
end
164
function nooutline(part)
165
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
166
end
167
function part(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
168
	local fp = it("Part")
169
	fp.formFactor = formfactor
170
	fp.Parent = parent
171
	fp.Reflectance = reflectance
172
	fp.Transparency = transparency
173
	fp.CanCollide = false
174
	fp.Locked = true
175
	fp.BrickColor = BrickColor.new(tostring(brickcolor))
176
	fp.Name = name
177
	fp.Size = size
178
	fp.Position = Character.Torso.Position
179
	nooutline(fp)
180
	fp.Material = material
181
	fp:BreakJoints()
182
	return fp
183
end
184
function mesh(Mesh, part, meshtype, meshid, offset, scale)
185
	local mesh = it(Mesh)
186
	mesh.Parent = part
187
	if Mesh == "SpecialMesh" then
188
		mesh.MeshType = meshtype
189
		mesh.MeshId = meshid
190
	end
191
	mesh.Offset = offset
192
	mesh.Scale = scale
193
	return mesh
194
end
195
function weld(parent, part0, part1, c0, c1)
196
	local weld = it("Weld")
197
	weld.Parent = parent
198
	weld.Part0 = part0
199
	weld.Part1 = part1
200
	weld.C0 = c0
201
	weld.C1 = c1
202
	return weld
203
end
204
function Damagefunc(Part, hit, minim, maxim, knockback, Type, Property, Delay, KnockbackType, decreaseblock)
205
	if hit.Parent == nil then
206
		return
207
	end
208
	local h = hit.Parent:FindFirstChild("Humanoid")
209
	for _, v in pairs(hit.Parent:children()) do
210
		if v:IsA("Humanoid") then
211
			h = v
212
		end
213
	end
214
	if hit.Parent.Parent:FindFirstChild("Torso") ~= nil then
215
		h = hit.Parent.Parent:FindFirstChild("Humanoid")
216
	end
217
	if hit.Parent.className == "Hat" then
218
		hit = hit.Parent.Parent:findFirstChild("Head")
219
	end
220
	if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
221
		if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
222
			return
223
		end
224
		local c = Instance.new("ObjectValue")
225
		c.Name = "creator"
226
		c.Value = game:service("Players").LocalPlayer
227
		c.Parent = h
228
		game:GetService("Debris"):AddItem(c, 0.5)
229
		local Damage = math.random(minim, maxim)
230
		local blocked = false
231
		local block = hit.Parent:findFirstChild("Block")
232
		if block ~= nil then
233
			print(block.className)
234
			if block.className == "NumberValue" and block.Value > 0 then
235
				blocked = true
236
				if decreaseblock == nil then
237
					block.Value = block.Value - 1
238
				end
239
			end
240
			if block.className == "IntValue" and block.Value > 0 then
241
				blocked = true
242
				if decreaseblock ~= nil then
243
					block.Value = block.Value - 1
244
				end
245
			end
246
		end
247
		if blocked == false then
248
			TakeDamage(h, Damage)
249-
			ShowDamage(hit.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, Part.BrickColor.Color)
249+
			ShowDamage(hit.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1000.5, Part.BrickColor.Color)
250
		else
251
			TakeDamage(h, Damage / 2)
252-
			ShowDamage(hit.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Bright blue").Color)
252+
			ShowDamage(hit.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1000.5, BrickColor.new("Bright blue").Color)
253
		end
254
		if Type == "Knockdown" then
255
			hum = hit.Parent.Humanoid
256
			hum.PlatformStand = true
257
			coroutine.resume(coroutine.create(function(HHumanoid)
258
				swait(1)
259
				HHumanoid.PlatformStand = false
260
			end), hum)
261
			local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
262
			local bodvol = Instance.new("BodyVelocity")
263
			bodvol.velocity = angle * knockback
264
			bodvol.P = 5000
265
			bodvol.maxForce = Vector3.new(8000, 8000, 8000)
266
			bodvol.Parent = hit
267
			local rl = Instance.new("BodyAngularVelocity")
268
			rl.P = 3000
269
			rl.maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000
270
			rl.angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10))
271
			rl.Parent = hit
272
			game:GetService("Debris"):AddItem(bodvol, 0.5)
273
			game:GetService("Debris"):AddItem(rl, 0.5)
274
		elseif Type == "Normal" then
275
			local vp = Instance.new("BodyVelocity")
276
			vp.P = 500
277
			vp.maxForce = Vector3.new(math.huge, 0, math.huge)
278
			if KnockbackType == 1 then
279
				vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
280
			elseif KnockbackType == 2 then
281
				vp.velocity = Property.CFrame.lookVector * knockback
282
			end
283
			if knockback > 0 then
284
				vp.Parent = hit.Parent.Torso
285
			end
286
			game:GetService("Debris"):AddItem(vp, 0.1)
287
		elseif Type == "Up" then
288
			local bodyVelocity = Instance.new("BodyVelocity")
289
			bodyVelocity.velocity = vt(0, 60, 0)
290
			bodyVelocity.P = 5000
291
			bodyVelocity.maxForce = Vector3.new(8000, 8000, 8000)
292
			bodyVelocity.Parent = hit
293
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
294
			local rl = Instance.new("BodyAngularVelocity")
295
			rl.P = 3000
296
			rl.maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000
297
			rl.angularvelocity = Vector3.new(math.random(-30, 30), math.random(-30, 30), math.random(-30, 30))
298
			rl.Parent = hit
299
			game:GetService("Debris"):AddItem(rl, 0.5)
300
		elseif Type == "Snare" then
301
			local bp = Instance.new("BodyPosition")
302
			bp.P = 2000
303
			bp.D = 100
304
			bp.maxForce = Vector3.new(math.huge, math.huge, math.huge)
305
			bp.position = hit.Parent.Torso.Position
306
			bp.Parent = hit.Parent.Torso
307
			game:GetService("Debris"):AddItem(bp, 1)
308
		elseif Type == "Target" then
309
			local Targetting = false
310
			if Targetting == false then
311
				local ZTarget = hit.Parent.Torso
312
				coroutine.resume(coroutine.create(function(Part)
313
					so("http://www.roblox.com/asset/?id=15666462", Part, 1, 1.5)
314
					swait(5)
315
					so("http://www.roblox.com/asset/?id=15666462", Part, 1, 1.5)
316
				end), ZTarget)
317
				local TargHum = ZTarget.Parent:findFirstChild("Humanoid")
318
				local targetgui = Instance.new("BillboardGui")
319
				targetgui.Parent = ZTarget
320
				targetgui.Size = UDim2.new(10, 100, 10, 100)
321
				local targ = Instance.new("ImageLabel")
322
				targ.Parent = targetgui
323
				targ.BackgroundTransparency = 1
324
				targ.Image = "rbxassetid://4834067"
325
				targ.Size = UDim2.new(1, 0, 1, 0)
326
				cam.CameraType = "Scriptable"
327
				cam.CoordinateFrame = CFrame.new(Head.CFrame.p, ZTarget.Position)
328
				local dir = Vector3.new(cam.CoordinateFrame.lookVector.x, 0, cam.CoordinateFrame.lookVector.z)
329
				workspace.CurrentCamera.CoordinateFrame = CFrame.new(Head.CFrame.p, ZTarget.Position)
330
				Targetting = true
331
				local RocketTarget = ZTarget
332
				for i = 1, Property do
333
					if 0 < TargHum.Health and Character.Parent ~= nil and 0 < TargHum.Health and TargHum.Parent ~= nil and Targetting == true then
334
						swait()
335
					end
336
					cam.CoordinateFrame = CFrame.new(Head.CFrame.p, ZTarget.Position)
337
					dir = Vector3.new(cam.CoordinateFrame.lookVector.x, 0, cam.CoordinateFrame.lookVector.z)
338
					cam.CoordinateFrame = CFrame.new(Head.CFrame.p, ZTarget.Position) * cf(0, 5, 10) * euler(-0.3, 0, 0)
339
				end
340
				Targetting = false
341
				RocketTarget = nil
342
				targetgui.Parent = nil
343
				cam.CameraType = "Custom"
344
			end
345
		end
346
		local debounce = Instance.new("BoolValue")
347
		debounce.Name = "DebounceHit"
348
		debounce.Parent = hit.Parent
349
		debounce.Value = true
350
		game:GetService("Debris"):AddItem(debounce, Delay)
351
		c = Instance.new("ObjectValue")
352
		c.Name = "creator"
353
		c.Value = Player
354
		c.Parent = h
355
		game:GetService("Debris"):AddItem(c, 0.5)
356
	end
357
end
358
function ShowDamage(Pos, Text, Time, Color)
359
	local Rate = 0.03333333333333333
360
	local Pos = Pos or Vector3.new(0, 0, 0)
361
	local Text = Text or ""
362
	local Time = Time or 2
363
	local Color = Color or Color3.new(1, 0, 0)
364
	local EffectPart = part("Custom", workspace, "Neon", 0, 1, BrickColor.new(Color), "Effect", vt(0, 0, 0))
365
	EffectPart.Anchored = true
366
	local BillboardGui = Instance.new("BillboardGui")
367
	BillboardGui.Size = UDim2.new(3, 3, 3, 3)
368
	BillboardGui.Adornee = EffectPart
369
	local TextLabel = Instance.new("TextLabel")
370
	TextLabel.BackgroundTransparency = 1
371
	TextLabel.Size = UDim2.new(3, 3, 3, 3)
372
	TextLabel.Text = Text
373
	TextLabel.TextColor3 = Color
374-
	TextLabel.TextStrokeColor3 = BrickColor.new("Really black").Color
374+
	TextLabel.TextStrokeColor3 = BrickColor.new("Toothpaste").Color
375
	TextLabel.TextScaled = true
376
	TextLabel.TextStrokeTransparency = 0
377
	TextLabel.Font = Enum.Font.SourceSansBold
378
	TextLabel.Parent = BillboardGui
379
	BillboardGui.Parent = EffectPart
380
	game.Debris:AddItem(EffectPart, Time + 0.1)
381
	EffectPart.Parent = game:GetService("Workspace")
382
	Delay(0, function()
383
		local Frames = Time / Rate
384
		for Frame = 1, Frames do
385
			wait(Rate)
386
			local Percent = Frame / Frames
387
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
388
			TextLabel.TextTransparency = Percent
389
			TextLabel.TextStrokeTransparency = Percent
390
		end
391
		if EffectPart and EffectPart.Parent then
392
			EffectPart:Destroy()
393
		end
394
	end)
395
end
396
function LoadOutfit()
397
	local Player = game.Players.LocalPlayer
398
	local InsertService = game:GetService("InsertService")
399
	local char = Player.Character
400
	local face = char.Head.face
401
	local color = char["Body Colors"]
402
	local Data = {
403
		Pants = "rbxassetid://163845518",
404
		Shirt = "rbxassetid://225706293",
405
		Hat = 30380659,
406
		Face = "rbxassetid://159139241",
407
		BodyColor = "Pastel brown"
408
	}
409
	for i, v in pairs(char:children()) do
410
		if v.ClassName == "Hat" then
411
			v:Destroy()
412
		elseif v.ClassName == "Shirt" then
413
			v:Destroy()
414
		elseif v.ClassName == "Pants" then
415
			v:Destroy()
416
		end
417
	end
418
	color.HeadColor = BrickColor.new("Pastel brown")
419
	color.TorsoColor = BrickColor.new("Pastel brown")
420
	color.LeftArmColor = BrickColor.new("Pastel brown")
421
	color.LeftLegColor = BrickColor.new("Pastel brown")
422
	color.RightArmColor = BrickColor.new("Pastel brown")
423
	color.RightLegColor = BrickColor.new("Pastel brown")
424
	face.Texture = Data.Face
425
	InsertService:LoadAsset(Data.Hat):children()[1].Parent = char
426
	local shirt = Instance.new("Shirt", char)
427
	shirt.ShirtTemplate = Data.Shirt
428
	local pants = Instance.new("Pants", char)
429
	pants.PantsTemplate = Data.Pants
430
end
431
function MakeOrb(Type)
432
	local this = {}
433
	local LightOrDark
434
	if Type == nil then
435
		LightOrDark = math.random(0, 1)
436
	else
437
		LightOrDark = Type
438
	end
439
	local Orb = Instance.new("Part", Orbs)
440
	Orb.Anchored = true
441
	Orb.Material = "Neon"
442
	if LightOrDark == 1 then
443-
		Orb.BrickColor = BrickColor.new("Fucking Gray")
443+
		Orb.BrickColor = BrickColor.new("Electric blue")
444
	else
445-
		Orb.BrickColor = BrickColor.new("Fucking Gray")
445+
		Orb.BrickColor = BrickColor.new("Electric blue")
446
	end
447
	Orb.CFrame = torso.CFrame
448
	Orb.CanCollide = false
449
	Orb.Shape = "Ball"
450
	Orb.Size = Vector3.new(0.9, 0.9, 0.9)
451
	Orb.BottomSurface = "Smooth"
452
	Orb.TopSurface = "Smooth"
453
	Orb.Locked = true
454
	local Outline = Instance.new("Part", Orbs)
455
	Outline.Anchored = true
456
	Outline.Material = "Neon"
457
	if LightOrDark == 1 then
458-
		Outline.BrickColor = BrickColor.new("Fucking Gray")
458+
		Outline.BrickColor = BrickColor.new("Electric blue")
459
	else
460-
		Outline.BrickColor = BrickColor.new("Fucking Gray")
460+
		Outline.BrickColor = BrickColor.new("Electric blue")
461
	end
462
	Outline.CFrame = torso.CFrame
463
	Outline.CanCollide = false
464
	Outline.Shape = "Ball"
465
	Outline.Size = Vector3.new(1, 1, 1)
466
	Outline.BottomSurface = "Smooth"
467
	Outline.TopSurface = "Smooth"
468
	Outline.Transparency = 0.75
469
	Outline.Locked = true
470
	local OrbWeld = newWeld(Outline, Orb, 0, 0, 0)
471
	weld = Instance.new("Weld", Orb)
472
	weld.Part0 = Orb
473
	weld.Part1 = Outline
474
	weld.C0 = CFrame.new(0, 0, 0)
475
	local OrbMesh = Instance.new("SpecialMesh", Orb)
476
	OrbMesh.MeshType = "Sphere"
477
	OrbMesh.Scale = Vector3.new(0.9, 0.9, 0.9)
478
	local OutlineMesh = Instance.new("SpecialMesh", Outline)
479
	OutlineMesh.MeshType = "Sphere"
480
	OutlineMesh.Scale = Vector3.new(1, 1, 1)
481
	function this.Size(v3)
482
		OrbMesh.Scale = Lerp2(OrbMesh.Scale, v3 - Vector3.new(0.1, 0.1, 0.1), 0.3)
483
		OutlineMesh.Scale = Lerp2(OutlineMesh.Scale, v3, 0.3)
484
	end
485
	function this.CFrame(cf)
486
		Orb.CFrame = cf
487
		Outline.CFrame = Orb.CFrame
488
	end
489
	return Orb, Outline, this
490
end
491
function TailedBeastBomb()
492
	local this = {}
493
	local TailedBeastBomb = Instance.new("Model", char)
494
	local Outer = Instance.new("Part", TailedBeastBomb)
495
	Outer.Material = "Neon"
496
	Outer.Name = "Outer"
497-
	Outer.BrickColor = BrickColor.new("Really black")
497+
	Outer.BrickColor = BrickColor.new("Electric blue")
498
	Outer.CFrame = CFrame.new(0, 0, 0)
499
	Outer.Locked = true
500
	Outer.Size = Vector3.new(4, 4, 4)
501
	Outer.CanCollide = false
502
	Outer.Transparency = 0.25
503
	local OuterMesh = Instance.new("SpecialMesh", Outer)
504
	OuterMesh.MeshType = "Sphere"
505
	OuterMesh.Scale = Vector3.new(1, 1, 1)
506
	local Inner = Instance.new("Part", TailedBeastBomb)
507
	Inner.Material = "Neon"
508
	Inner.Name = "Inner"
509-
	Inner.BrickColor = BrickColor.new("Institutional white")
509+
	Inner.BrickColor = BrickColor.new("Electric blue")
510
	Inner.CFrame = Outer.CFrame
511
	Inner.Locked = true
512
	Inner.Size = Outer.Size - Vector3.new(1, 1, 1)
513
	Inner.CanCollide = false
514
	Inner.Transparency = 0.8
515
	local InnerMesh = Instance.new("SpecialMesh", Inner)
516
	InnerMesh.MeshType = "Sphere"
517
	InnerMesh.Scale = Vector3.new(1, 1, 1)
518
	local InnerOuterWeld = Instance.new("Weld", Inner)
519
	InnerOuterWeld.Part0 = Inner
520
	InnerOuterWeld.Part1 = Outer
521
	InnerOuterWeld.C0 = CFrame.new(0, 0, 0)
522
	local Core = Instance.new("Part", TailedBeastBomb)
523
	Core.Material = "Neon"
524
	Core.Name = "Core"
525-
	Core.BrickColor = BrickColor.new("New Yeller")
525+
	Core.BrickColor = BrickColor.new("Electric blue")
526
	Core.CFrame = Outer.CFrame
527
	Core.Locked = true
528
	Core.Size = Inner.Size - Vector3.new(2, 2, 2)
529
	Core.CanCollide = false
530
	Core.Shape = 0
531
	Core.Transparency = 0
532
	local CoreMesh = Instance.new("SpecialMesh", Core)
533
	CoreMesh.MeshType = "Sphere"
534
	CoreMesh.Scale = Vector3.new(1, 1, 1)
535
	local InnerCoreWeld = Instance.new("Weld", Inner)
536
	InnerCoreWeld.Part0 = Inner
537
	InnerCoreWeld.Part1 = Core
538
	InnerCoreWeld.C0 = CFrame.new(0, 0, 0)
539
	function this.reSize(v3)
540
		Outer.Size = Lerp2(Outer.Size, v3, 0.3)
541
		Inner.Size = Lerp2(Inner.Size, Outer.Size - Vector3.new(1, 1, 1), 0.3)
542
		Core.Size = Lerp2(Core.Size, Inner.Size - Vector3.new(2, 2, 2), 0.3)
543
	end
544
	return Outer, Inner, Core, this
545
end
546
function SpawnRasengan(m, cf)
547
	local Rasengan = Instance.new("Part", m)
548-
	Rasengan.BrickColor = BrickColor.new("Bright blue")
548+
	Rasengan.BrickColor = BrickColor.new("Electric blue")
549
	Rasengan.Material = "Neon"
550
	Rasengan.Anchored = true
551
	Rasengan.CFrame = cf or CFrame.new(0, 0, 0)
552
	Rasengan.CanCollide = false
553
	Rasengan.CanCollide = true
554
	Rasengan.BottomSurface = "Smooth"
555
	Rasengan.TopSurface = "Smooth"
556
	Rasengan.Locked = true
557
	Rasengan.Size = Vector3.new(0.9, 0.9, 0.9)
558
	local RasenganMesh = Instance.new("SpecialMesh", Rasengan)
559
	RasenganMesh.MeshType = "Sphere"
560
	local Outline = Instance.new("Part", m)
561-
	Outline.BrickColor = BrickColor.new("Institutional white")
561+
	Outline.BrickColor = BrickColor.new("Electric blue")
562
	Outline.Material = "Neon"
563
	Outline.Transparency = 0.7
564
	Outline.Anchored = true
565
	Outline.CanCollide = false
566
	Outline.CanCollide = true
567
	Outline.BottomSurface = "Smooth"
568
	Outline.TopSurface = "Smooth"
569
	Outline.Locked = true
570
	Outline.CFrame = Rasengan.CFrame
571
	Outline.Size = Rasengan.Size + Vector3.new(0.1, 0.1, 0.1)
572
	local OutlineMesh = Instance.new("SpecialMesh", Outline)
573
	OutlineMesh.MeshType = "Sphere"
574
	local RasenWeld = Instance.new("Weld", Rasengan)
575
	RasenWeld.Part0 = Rasengan
576
	RasenWeld.Part1 = Outline
577
	RasenWeld.C0 = CFrame.new(0, 0, 0)
578
	return Rasengan, Outline
579
end
580
function SpawnRasenShurikan(m, cf)
581
	local Rasengan, Outline = SpawnRasengan(m, cf)
582
	local this = {}
583
	local interval = 0
584-
	Rasengan.BrickColor = BrickColor.new("Crimson")
584+
	Rasengan.BrickColor = BrickColor.new("Electric blue")
585-
	Outline.BrickColor = BrickColor.new("Really black")
585+
	Outline.BrickColor = BrickColor.new("Toothpaste")
586
	local Shurikan = Instance.new("Part", m)
587-
	Shurikan.BrickColor = BrickColor.new("Institutional white")
587+
	Shurikan.BrickColor = BrickColor.new("Electric blue")
588
	Shurikan.Material = "Neon"
589
	Shurikan.Anchored = true
590
	Shurikan.CanCollide = false
591
	Shurikan.BottomSurface = "Smooth"
592
	Shurikan.TopSurface = "Smooth"
593
	Shurikan.Locked = true
594
	Shurikan.Size = Vector3.new(1, 1, 1)
595
	Shurikan.CFrame = Rasengan.CFrame
596
	local ShurikanMesh = Instance.new("SpecialMesh", Shurikan)
597
	ShurikanMesh.MeshType = "FileMesh"
598
	ShurikanMesh.MeshId = "rbxassetid://11376946"
599
	ShurikanMesh.Scale = Vector3.new(7, 7, 7)
600
	ShurikanMesh.TextureId = "rbxassetid://269748808"
601
	function this.Start()
602
		local Event = game:GetService("RunService").RenderStepped:connect(function()
603
			interval = interval + 60
604
			Shurikan.CFrame = Rasengan.CFrame * CFrame.Angles(math.rad(0), math.rad(interval), math.rad(0))
605
		end)
606
		this.Connections = Event
607
	end
608
	function this.Stop()
609
		this.Connections:disconnect()
610
		Shurikan.CFrame = Rasengan.CFrame * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
611
	end
612
	return Rasengan, Outline, Shurikan, ShurikanMesh, this
613
end
614
function InstanceService()
615
	local OldInstance = Instance
616
	local Instance = newproxy(true)
617
	local Meta = getmetatable(Instance)
618
	local InstanceData = {
619
		Properties = {
620
			__READONLY = {ClassName = "Instance"}
621
		},
622
		Methods = {},
623
		Events = {},
624
		Private = {
625
			Registered = {},
626
			Util = LoadLibrary("RbxUtility")
627
		},
628
		__META = {SERVICE_MODEL_VERSION = "0.1.0"}
629
	}
630
	local Properties = InstanceData.Properties
631
	local Methods = InstanceData.Methods
632
	local Events = InstanceData.Events
633
	local Private = InstanceData.Private
634
	local function CreateEvent(EventName)
635
		Events[EventName] = {}
636
		local Signal = Private.Util.CreateSignal()
637
		local Event = InstanceData.Events[EventName]
638
		function Event:connect(func)
639
			local this = {}
640
			if self ~= Event then
641
				error("connect must be called with `:`, not `.`", 2)
642
			end
643
			if type(func) ~= "function" then
644
				error("Argument #1 of connect must be a function, got a " .. type(func), 2)
645
			end
646
			Signal:connect(func)
647
			function this:disconnect()
648
				if self ~= this then
649
					error("disconnect must be called with `:`, not `.`", 2)
650
				end
651
				Signal:disconnect()
652
			end
653
			return this
654
		end
655
		return Signal
656
	end
657
	local CheckSelf = function(self)
658
		repeat
659
			if not self then
660
				return false, "\":\" Expected, got \".\""
661
			else
662
				if not self or type(self) == "table" then
663
				end
664
				do return false, "\"userdata or table\" Expected, got \"" .. type(self) .. "\"" end
665
				do break end
666
				if not self or type(self) ~= "table" then
667
				end
668
				return true
669
			end
670
		until true
671
	end
672
	local function MetaIndex(_table, index)
673
		if Properties[index] and index:sub(1, 2) ~= "__" then
674
			return Properties[index]
675
		elseif Properties.__READONLY[index] then
676
			return Properties.__READONLY[index]
677
		elseif Methods[index] then
678
			return Methods[index]
679
		elseif Events[index] then
680
			return Events[index]
681
		end
682
	end
683
	local function MetaNewIndex(_table, index, value)
684
		if Properties[index] and index:sub(1, 2) ~= "__" and type(value) ~= "function" then
685
			if index:sub(1, 2) == "__" then
686
				return error(index .. " is not a valid member of " .. Properties.__READONLY.ClassName)
687
			else
688
				Properties[index] = value
689
			end
690
		end
691
	end
692
	function Methods.register(name, constructor)
693
		if type(name) ~= "string" then
694
			error("Argument #1 of register must be a string, got a " .. type(name))
695
		end
696
		if type(constructor) ~= "function" then
697
			error("Argument #2 of register must be a function, got a " .. type(constructor))
698
		end
699
		Private.Registered[name] = constructor
700
	end
701
	function Methods.new(name, parent, options)
702
		local Parent
703
		if type(parent) == "table" then
704
			if parent[Parent] then
705
				Parent = options[Parent]
706
			else
707
				Parent = nil
708
			end
709
		elseif type(parent) == "userdata" then
710
			Parent = parent
711
		end
712
		if Private.Registered[name] then
713
			return Private.Registered[name](Parent, options)
714
		else
715
			return OldInstance.new(name, Parent)
716
		end
717
	end
718
	Meta.__index = MetaIndex
719
	Meta.__newindex = MetaNewIndex
720
	Meta.__metatable = "The metatable is locked"
721
	return Instance
722
end
723
function TruthSeekerOrb()
724
	local O1, O2 = MakeOrb()
725
	local Orb = newproxy(true)
726
	local OrbMeta = getmetatable(Orb)
727
	local OrbProperties = {
728
		ReadOnly = {
729
			ClassName = "TruthSeekerOrb",
730
			_VERSION = "0.1.0"
731
		},
732
		Parent = Orbs,
733
		CFrame = CFrame.new(0, 0, 0),
734
		Size = Vector3.new(0, 0, 0),
735
		Touched = O1.Touched,
736
		Outline = O2
737
	}
738
	local OrbPrivateData = {Orb = O1, Outline = O2}
739
	local OrbMethods = {}
740
	function OrbMeta.__index(_table, index)
741
		if OrbProperties[index] then
742
			if index == "CFrame" then
743
				return OrbPrivateData.Orb.CFrame
744
			elseif index == "Size" then
745
				return OrbPrivateData.Orb.Size
746
			elseif index == "ReadOnly" then
747
				return nil
748
			elseif index == "Parent" then
749
				return OrbPrivateData.Orb.Parent
750
			else
751
				return OrbProperties[index]
752
			end
753
		elseif OrbProperties.ReadOnly[index] then
754
			return OrbProperties.ReadOnly[index]
755
		elseif OrbMethods[index] then
756
			return OrbMethods[index]
757
		end
758
	end
759
	function OrbMeta.__newindex(_table, index, value)
760
		if OrbProperties[index] then
761
			if not type(value) ~= "function" then
762
				if index == "CFrame" then
763
					OrbPrivateData.Orb.CFrame = value
764
					OrbPrivateData.Outline.CFrame = value
765
				elseif index == "Size" then
766
					OrbPrivateData.Orb.Mesh.Scale = Lerp2(OrbPrivateData.Orb.Mesh.Scale, value - Vector3.new(0.1, 0.1, 0.1), 0.3)
767
					OrbPrivateData.Outline.Mesh.Scale = Lerp2(OrbPrivateData.Outline.Mesh.Scale, value, 0.3)
768
				elseif index == "Parent" then
769
					OrbPrivateData.Orb.Parent = value
770
					OrbPrivateData.Outline.Parent = value
771
				elseif index == "ReadOnly" then
772
					return error("can't set protected value")
773
				else
774
					OrbProperties[index] = value
775
				end
776
			end
777
		elseif OrbProperties.ReadOnly[index] then
778
			return error("can't set value")
779
		end
780
	end
781
	local CheckSelf = function(s)
782
		if not s then
783
			return false, "\":\" Expected, got \".\""
784
		end
785
		return true, ""
786
	end
787
	function OrbMethods:Destroy()
788
		assert(CheckSelf(self))
789
		OrbPrivateData.Orb:Destroy()
790
		OrbPrivateData.Outline:Destroy()
791
	end
792
	return Orb
793
end
794
function Rasengan(m, options)
795
	local m = Instance.new("Model", m)
796
	local r, o = SpawnRasengan(m, options.CFrame or nil)
797
	local Rasengan = newproxy(true)
798
	local RasenganMeta = getmetatable(Rasengan)
799
	local RasenganData = {Rasengan = r, Outline = o}
800
	local RasenganProperties = {
801
		__Protected = {ClassName = "Rasengan"},
802
		Parent = m,
803
		Size = Vector3.new(0, 0, 0),
804
		CFrame = CFrame.new(0, 0, 0),
805
		Transparency = 0
806
	}
807
	local RasenganMethods = {}
808
	local RasenganEvents = {}
809
	local CreateSignal = function()
810
		local this = {}
811
		local mBindableEvent = Instance.new("BindableEvent")
812
		local mAllCns = {}
813
		function this:connect(func)
814
			if self ~= this then
815
				error("connect must be called with `:`, not `.`", 2)
816
			end
817
			if type(func) ~= "function" then
818
				error("Argument #1 of connect must be a function, got a " .. type(func), 2)
819
			end
820
			local cn = mBindableEvent.Event:connect(func)
821
			mAllCns[cn] = true
822
			local pubCn = {}
823
			function pubCn:disconnect()
824
				cn:disconnect()
825
				mAllCns[cn] = nil
826
			end
827
			return pubCn
828
		end
829
		function this:disconnect()
830
			if self ~= this then
831
				error("disconnect must be called with `:`, not `.`", 2)
832
			end
833
			for cn, _ in pairs(mAllCns) do
834
				cn:disconnect()
835
				mAllCns[cn] = nil
836
			end
837
		end
838
		function this:wait()
839
			if self ~= this then
840
				error("wait must be called with `:`, not `.`", 2)
841
			end
842
			return mBindableEvent.Event:wait()
843
		end
844
		function this:fire(...)
845
			if self ~= this then
846
				error("fire must be called with `:`, not `.`", 2)
847
			end
848
			mBindableEvent:Fire(...)
849
		end
850
		return this
851
	end
852
	local function CreateEvent(EventName)
853
		RasenganEvents[EventName] = {}
854
		local Signal = CreateSignal()
855
		local Event = RasenganEvents[EventName]
856
		function Event:connect(func)
857
			local this = {}
858
			if self ~= Event then
859
				error("connect must be called with `:`, not `.`", 2)
860
			end
861
			if type(func) ~= "function" then
862
				error("Argument #1 of connect must be a function, got a " .. type(func), 2)
863
			end
864
			Signal:connect(func)
865
			function this:disconnect()
866
				if self ~= this then
867
					error("disconnect must be called with `:`, not `.`", 2)
868
				end
869
				Signal:disconnect()
870
			end
871
			return this
872
		end
873
		return Signal
874
	end
875
	local Touched = CreateEvent("Touched")
876
	local Method = RasenganMethods
877
	local CheckSelf = function(self)
878
		if not self then
879
			return false, "\":\" Expected, got \".\""
880
		else
881
			return true
882
		end
883
	end
884
	function Method:Destroy()
885
		assert(CheckSelf(self))
886
		if m then
887
			m:Destroy()
888
		end
889
		if RasenganData.Outline then
890
			RasenganData.Outline:Destroy()
891
		end
892
		if RasenganData.Rasengan then
893
			RasenganData.Rasengan:Destroy()
894
		end
895
	end
896
	local function Handle_GET_Property(index)
897
		if index == "Parent" then
898
			return RasenganData.Rasengan.Parent
899
		elseif index == "Size" then
900
			return RasenganData.Rasengan.Size
901
		elseif index == "CFrame" then
902
			return RasenganData.Rasengan.CFrame
903
		elseif index == "Transparency" then
904
			return RasenganData.Rasengan.Transparency
905
		end
906
	end
907
	local function Handle_SET_Property(index, value)
908
		if index == "Parent" then
909
			RasenganData.Rasengan.Parent = value
910
			RasenganData.Outline.Parent = value
911
		elseif index == "Size" then
912
			RasenganData.Rasengan.Size = Lerp2(RasenganData.Rasengan.Size, value - Vector3.new(0.1, 0.1, 0.1) * value, 0.3)
913
			RasenganData.Outline.Size = Lerp2(RasenganData.Outline.Size, value, 0.3)
914
		elseif index == "CFrame" then
915
			RasenganData.Rasengan.CFrame = value
916
			RasenganData.Outline.CFrame = value
917
		elseif index == "Transparency" then
918
			RasenganData.Rasengan.Transparency = value / 0.7
919
			RasenganData.Outline.Transparency = value / 0.7
920
		end
921
	end
922
	function RasenganMeta.__index(_table, index)
923
		if RasenganProperties[index] then
924
			if index:sub(1, 2) == "__" then
925
				return nil
926
			else
927
				return Handle_GET_Property(index)
928
			end
929
		elseif RasenganProperties.__Protected[index] then
930
			return RasenganProperties.__Protected[index]
931
		elseif RasenganMethods[index] then
932
			return RasenganMethods[index]
933
		elseif RasenganEvents[index] then
934
			return RasenganEvents[index]
935
		else
936
			error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
937
		end
938
	end
939
	function RasenganMeta.__newindex(_table, index, value)
940
		if RasenganProperties[index] then
941
			if not type(value) ~= "function" then
942
				if index:sub(1, 2) == "__" then
943
					return error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
944
				else
945
					Handle_SET_Property(index, value)
946
				end
947
			end
948
		elseif RasenganProperties.__Protected[index] then
949
			return error("can't set value")
950
		else
951
			error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
952
		end
953
	end
954
	RasenganMeta.__metatable = "The metatable is locked"
955
	return Rasengan
956
end
957
function RasenShurikan(m, options)
958
	local m = Instance.new("Model", m)
959
	local r, o, s, sm, lib = SpawnRasenShurikan(m, options.CFrame or nil)
960
	local Rasengan = newproxy(true)
961
	local RasenganMeta = getmetatable(Rasengan)
962
	local RasenganData = {
963
		Rasengan = r,
964
		Outline = o,
965
		Shurikan = s,
966
		ShurikanMesh = sm,
967
		Lib = lib
968
	}
969
	local RasenganProperties = {
970
		__Protected = {ClassName = "Rasengan"},
971
		Parent = m,
972
		Size = Vector3.new(0, 0, 0),
973
		CFrame = CFrame.new(0, 0, 0),
974
		Transparency = 0,
975
		Base = r,
976
		Outline = o
977
	}
978
	local RasenganMethods = {}
979
	local RasenganEvents = {}
980
	local CreateSignal = function()
981
		local this = {}
982
		local mBindableEvent = Instance.new("BindableEvent")
983
		local mAllCns = {}
984
		function this:connect(func)
985
			if self ~= this then
986
				error("connect must be called with `:`, not `.`", 2)
987
			end
988
			if type(func) ~= "function" then
989
				error("Argument #1 of connect must be a function, got a " .. type(func), 2)
990
			end
991
			local cn = mBindableEvent.Event:connect(func)
992
			mAllCns[cn] = true
993
			local pubCn = {}
994
			function pubCn:disconnect()
995
				cn:disconnect()
996
				mAllCns[cn] = nil
997
			end
998
			return pubCn
999
		end
1000
		function this:disconnect()
1001
			if self ~= this then
1002
				error("disconnect must be called with `:`, not `.`", 2)
1003
			end
1004
			for cn, _ in pairs(mAllCns) do
1005
				cn:disconnect()
1006
				mAllCns[cn] = nil
1007
			end
1008
		end
1009
		function this:wait()
1010
			if self ~= this then
1011
				error("wait must be called with `:`, not `.`", 2)
1012
			end
1013
			return mBindableEvent.Event:wait()
1014
		end
1015
		function this:fire(...)
1016
			if self ~= this then
1017
				error("fire must be called with `:`, not `.`", 2)
1018
			end
1019
			mBindableEvent:Fire(...)
1020
		end
1021
		return this
1022
	end
1023
	local function CreateEvent(EventName)
1024
		RasenganEvents[EventName] = {}
1025
		local Signal = CreateSignal()
1026
		local Event = RasenganEvents[EventName]
1027
		function Event:connect(func)
1028
			local this = {}
1029
			if self ~= Event then
1030
				error("connect must be called with `:`, not `.`", 2)
1031
			end
1032
			if type(func) ~= "function" then
1033
				error("Argument #1 of connect must be a function, got a " .. type(func), 2)
1034
			end
1035
			Signal:connect(func)
1036
			function this:disconnect()
1037
				if self ~= this then
1038
					error("disconnect must be called with `:`, not `.`", 2)
1039
				end
1040
				Signal:disconnect()
1041
			end
1042
			return this
1043
		end
1044
		return Signal
1045
	end
1046
	local Method = RasenganMethods
1047
	local CheckSelf = function(self)
1048
		if not self then
1049
			return false, "\":\" Expected, got \".\""
1050
		else
1051
			return true
1052
		end
1053
	end
1054
	function Method:Start()
1055
		assert(CheckSelf(self))
1056
		RasenganData.Lib.Start()
1057
	end
1058
	function Method:Stop()
1059
		assert(CheckSelf(self))
1060
		RasenganData.Lib.Stop()
1061
	end
1062
	function Method:Destroy(t)
1063
		assert(CheckSelf(self))
1064
		if t == "Rasengan" then
1065
			RasenganData.Rasengan:Destroy()
1066
		elseif t == "Outline" then
1067
			RasenganData.Outline:Destroy()
1068
		elseif t == "Shurikan" then
1069
			RasenganData.Shurikan:Destroy()
1070
		else
1071
			if m then
1072
				m:Destroy()
1073
			end
1074
			if RasenganData.Rasengan then
1075
				RasenganData.Rasengan:Destroy()
1076
			end
1077
			if RasenganData.Outline then
1078
				RasenganData.Outline:Destroy()
1079
			end
1080
			if RasenganData.Shurikan then
1081
				RasenganData.Shurikan:Destroy()
1082
			end
1083
		end
1084
	end
1085
	local function Handle_GET_Property(index)
1086
		if index == "Parent" then
1087
			return RasenganData.Rasengan.Parent
1088
		elseif index == "Size" then
1089
			return RasenganData.Rasengan.Size
1090
		elseif index == "CFrame" then
1091
			return RasenganData.Rasengan.CFrame
1092
		elseif index == "Transparency" then
1093
			return RasenganData.Rasengan.Transparency
1094
		else
1095
			return RasenganProperties[index]
1096
		end
1097
	end
1098
	local function Handle_SET_Property(index, value)
1099
		if index == "Parent" then
1100
			RasenganData.Rasengan.Parent = value
1101
			RasenganData.Outline.Parent = value
1102
			RasenganData.Shurikan.Parent = value
1103
		elseif index == "Size" then
1104
			RasenganData.Rasengan.Size = Lerp2(RasenganData.Rasengan.Size, value - Vector3.new(0.1, 0.1, 0.1) * value, 0.3)
1105
			RasenganData.Outline.Size = Lerp2(RasenganData.Outline.Size, value, 0.3)
1106
			RasenganData.ShurikanMesh.Scale = Lerp2(RasenganData.ShurikanMesh.Scale, value * 5.5, 0.3)
1107
		elseif index == "CFrame" then
1108
			RasenganData.Rasengan.CFrame = value
1109
			RasenganData.Outline.CFrame = value
1110
			RasenganData.Shurikan.CFrame = value
1111
		elseif index == "Transparency" then
1112
			RasenganData.Rasengan.Transparency = value / 0.7
1113
			RasenganData.Outline.Transparency = value / 0.7
1114
		end
1115
	end
1116
	function RasenganMeta.__index(_table, index)
1117
		if RasenganProperties[index] then
1118
			if index:sub(1, 2) == "__" then
1119
				return nil
1120
			else
1121
				return Handle_GET_Property(index)
1122
			end
1123
		elseif RasenganProperties.__Protected[index] then
1124
			return RasenganProperties.__Protected[index]
1125
		elseif RasenganMethods[index] then
1126
			return RasenganMethods[index]
1127
		elseif RasenganEvents[index] then
1128
			return RasenganEvents[index]
1129
		else
1130
			error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
1131
		end
1132
	end
1133
	function RasenganMeta.__newindex(_table, index, value)
1134
		if RasenganProperties[index] then
1135
			if not type(value) ~= "function" then
1136
				if index:sub(1, 2) == "__" then
1137
					return error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
1138
				else
1139
					Handle_SET_Property(index, value)
1140
				end
1141
			end
1142
		elseif RasenganProperties.__Protected[index] then
1143
			return error("can't set value")
1144
		else
1145
			error(index .. " is not a valid member of " .. RasenganProperties.__Protected.ClassName)
1146
		end
1147
	end
1148
	RasenganMeta.__metatable = "The metatable is locked"
1149
	return Rasengan
1150
end
1151
local Instance = InstanceService()
1152
Instance.register("TruthSeekerOrb", TruthSeekerOrb)
1153
Instance.register("Rasengan", Rasengan)
1154
Instance.register("RasenShurikan", RasenShurikan)
1155
newWeld(torso, larm, -1.5, 0.5, 0)
1156
larm.Weld.C1 = CFrame.new(0, 0.5, 0)
1157
newWeld(torso, rarm, 1.5, 0.5, 0)
1158
rarm.Weld.C1 = CFrame.new(0, 0.5, 0)
1159
newWeld(torso, hed, 0, 1.5, 0)
1160
newWeld(torso, lleg, -0.5, -1, 0)
1161
lleg.Weld.C1 = CFrame.new(0, 1, 0)
1162
newWeld(torso, rleg, 0.5, -1, 0)
1163
rleg.Weld.C1 = CFrame.new(0, 1, 0)
1164
newWeld(root, torso, 0, -1, 0)
1165
torso.Weld.C1 = CFrame.new(0, -1, 0)
1166
local laDef = CFrame.new(-1.5, 0.5, 0)
1167
local raDef = CFrame.new(1.5, 0.5, 0)
1168
local hDef = CFrame.new(0, 1.5, 0)
1169
local tDef = CFrame.new(0, -1, 0)
1170
local llDef = CFrame.new(-0.5, -1, 0)
1171
local rlDef = CFrame.new(0.5, -1, 0)
1172
Orbs = Instance.new("Model", char)
1173
Orbs.Name = "Truthseeker Orbs"
1174
local Orb1 = Instance.new("TruthSeekerOrb")
1175
local Orb2 = Instance.new("TruthSeekerOrb")
1176
local Orb3 = Instance.new("TruthSeekerOrb")
1177
local Orb4 = Instance.new("TruthSeekerOrb")
1178
local Orb5 = Instance.new("TruthSeekerOrb")
1179
local Orb6 = Instance.new("TruthSeekerOrb")
1180
local Orb7 = Instance.new("TruthSeekerOrb")
1181
local Orb8 = Instance.new("TruthSeekerOrb")
1182
local Orbs_ = {
1183
	Orb1 = Orb1,
1184
	Orb2 = Orb2,
1185
	Orb3 = Orb3,
1186
	Orb4 = Orb4,
1187
	Orb5 = Orb5,
1188
	Orb6 = Orb6,
1189
	Orb7 = Orb7,
1190
	Orb8 = Orb8
1191
}
1192
local CurrentHealth = hum.Health
1193
local DebounceShot = false
1194
local OGDesign = 1
1195
function TailedBeastBombAttack()
1196
	hum.WalkSpeed = 0
1197
	Debounces.CanAttack = false
1198
	Debounces.NoIdle = true
1199
	for i = 1, 10 do
1200
		larm.Weld.C0 = Lerp(larm.Weld.C0, laDef * CFrame.Angles(math.rad(0), math.rad(20), math.rad(-80)), 0.2)
1201
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 45, 0) * CFrame.Angles(math.rad(10), math.rad(0), math.rad(0)), 0.2)
1202
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, raDef * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(80)), 0.2)
1203
		hed.Weld.C0 = Lerp(hed.Weld.C0, hDef * CFrame.Angles(math.rad(10), math.rad(0), math.rad(0)), 0.2)
1204
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, llDef * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.2)
1205
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, rlDef * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(20)), 0.2)
1206
		wait()
1207
	end
1208
	function FindNearestTorso(Position, Distance, SinglePlayer)
1209
		if SinglePlayer then
1210
			return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
1211
		end
1212
		local List = {}
1213
		for i, v in pairs(workspace:GetChildren()) do
1214
			if v:IsA("Model") and v:findFirstChild("Torso") and v ~= char and Distance >= (v.Torso.Position - Position).magnitude then
1215
				table.insert(List, v)
1216
			end
1217
		end
1218
		return List
1219
	end
1220
	local Outer, Inner, Core, Control = TailedBeastBomb()
1221
	local SetupWeld = Instance.new("Weld", Inner)
1222
	SetupWeld.Part0 = Inner
1223
	SetupWeld.Part1 = torso
1224
	SetupWeld.C0 = CFrame.new(0, 0, 10)
1225
	wait()
1226
	Core.Anchored = true
1227
	Outer.Anchored = true
1228
	Inner.Anchored = true
1229
	for i = 1, 16 do
1230
		Control.reSize(Lerp2(Outer.Size, Vector3.new(23, 23, 23), 0.3))
1231
		wait()
1232
	end
1233
	wait(0.5)
1234
	for i = 1, 20 do
1235
		larm.Weld.C0 = Lerp(larm.Weld.C0, laDef * CFrame.Angles(math.rad(0), math.rad(-80), math.rad(-80)), 0.2)
1236
		torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, 45, 0) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(0)), 0.2)
1237
		rarm.Weld.C0 = Lerp(rarm.Weld.C0, raDef * CFrame.Angles(math.rad(0), math.rad(80), math.rad(80)), 0.2)
1238
		hed.Weld.C0 = Lerp(hed.Weld.C0, hDef * CFrame.Angles(math.rad(-10), math.rad(0), math.rad(0)), 0.2)
1239
		lleg.Weld.C0 = Lerp(lleg.Weld.C0, llDef * CFrame.Angles(math.rad(10), math.rad(0), math.rad(-20)), 0.2)
1240
		rleg.Weld.C0 = Lerp(rleg.Weld.C0, rlDef * CFrame.Angles(math.rad(10), math.rad(0), math.rad(20)), 0.2)
1241
		wait()
1242
	end
1243
	SetupWeld:remove()
1244
	Core.Anchored = false
1245
	Outer.Anchored = false
1246
	Inner.Anchored = false
1247
	Shooter = Instance.new("BodyVelocity", Inner)
1248
	Shooter.maxForce = Vector3.new(1, 1, 1) * math.huge
1249
	Shooter.velocity = torso.CFrame.lookVector * 100
1250
	Shooter2 = Instance.new("BodyVelocity", Core)
1251
	Shooter2.maxForce = Vector3.new(1, 1, 1) * math.huge
1252
	Shooter2.velocity = torso.CFrame.lookVector * 100
1253
	Shooter3 = Instance.new("BodyVelocity", Outer)
1254
	Shooter3.maxForce = Vector3.new(1, 1, 1) * math.huge
1255
	Shooter3.velocity = torso.CFrame.lookVector * 100
1256
	Explode = Core.Touched:connect(function(hit)
1257
		if hit ~= char and hit.Name ~= "Outer" and hit.Name ~= "Inner" then
1258
			Inner:Destroy()
1259
			Outer:Destroy()
1260
			do
1261
				local cf = Core.CFrame
1262
				Shooter2:Destroy()
1263
				Core.Anchored = true
1264
				Explode:disconnect()
1265
				Core.Size = Vector3.new(3, 3, 3)
1266
				Core.Touched:connect(function(hit)
1267
				end)
1268
				Core.CanCollide = false
1269
				local part3 = Instance.new("Part", rarm)
1270
				part3.Anchored = true
1271
				part3.CanCollide = false
1272
				part3.Locked = true
1273
				part3.TopSurface = "SmoothNoOutlines"
1274
				part3.BottomSurface = "SmoothNoOutlines"
1275
				part3.FormFactor = "Custom"
1276
				part3.Size = Vector3.new(1, 1, 1)
1277
				part3.CFrame = Core.CFrame
1278
				part3.Transparency = 0
1279-
				part3.BrickColor = BrickColor.new("Institutional white")
1279+
				part3.BrickColor = BrickColor.new("Electric blue")
1280
				local mesh3 = Instance.new("SpecialMesh", part3)
1281
				mesh3.MeshType = "Sphere"
1282
				mesh3.Scale = Vector3.new(1, 1, 1)
1283
				local part4 = Instance.new("Part", rarm)
1284
				part4.Material = "Neon"
1285
				part4.Anchored = true
1286
				part4.CanCollide = false
1287
				part4.Locked = true
1288
				part4.TopSurface = "SmoothNoOutlines"
1289
				part4.BottomSurface = "SmoothNoOutlines"
1290
				part4.FormFactor = "Custom"
1291
				part4.Size = Vector3.new(1, 1, 1)
1292
				part4.CFrame = Core.CFrame
1293
				part4.Transparency = 1
1294-
				part4.BrickColor = BrickColor.new("New Yeller")
1294+
				part4.BrickColor = BrickColor.new("Electric blue")
1295
				local mesh4 = Instance.new("SpecialMesh", part4)
1296
				mesh4.MeshType = "Sphere"
1297
				mesh4.Scale = Vector3.new(0.5, 0.5, 0.5)
1298
				local part7 = Instance.new("Part", rarm)
1299
				part7.Material = "Neon"
1300
				part7.Anchored = true
1301
				part7.CanCollide = false
1302
				part7.Locked = true
1303
				part7.TopSurface = "SmoothNoOutlines"
1304
				part7.BottomSurface = "SmoothNoOutlines"
1305
				part7.FormFactor = "Custom"
1306
				part7.Size = Vector3.new(1, 1, 1)
1307
				part7.CFrame = Core.CFrame
1308
				part7.Transparency = 0
1309
				part7.BrickColor = BrickColor.new("Really black")
1310
				local mesh7 = Instance.new("SpecialMesh", part7)
1311
				mesh7.MeshType = "Sphere"
1312
				mesh7.Scale = Vector3.new(0.1, 0.1, 0.1)
1313
				for i, v in pairs(FindNearestTorso(Core.CFrame.p, 80)) do
1314
					if v:FindFirstChild("Humanoid") then
1315
						Damagefunc(Core, v.Torso, 10, 20, math.random(3, 6), "Normal", RootPart, 0.05, 1)
1316
						v.Humanoid.PlatformStand = true
1317
						v:FindFirstChild("Torso").Velocity = hed.CFrame.lookVector * 100
1318
					end
1319
				end
1320
				local acos = math.acos
1321
				local sqrt = math.sqrt
1322
				local Vec3 = Vector3.new
1323
				local fromAxisAngle = CFrame.fromAxisAngle
1324
				local function toAxisAngle(CFr)
1325
					local X, Y, Z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = CFr:components()
1326
					local Angle = math.acos((R00 + R11 + R22 - 1) / 2)
1327
					local A = (R21 - R12) ^ 2 + (R02 - R20) ^ 2 + (R10 - R01) ^ 2
1328
					A = A == 0 and 1.0E-5 or A
1329
					local B = (R21 - R12) ^ 2 + (R02 - R20) ^ 2 + (R10 - R01) ^ 2
1330
					B = B == 0 and 1.0E-5 or B
1331
					local C = (R21 - R12) ^ 2 + (R02 - R20) ^ 2 + (R10 - R01) ^ 2
1332
					C = C == 0 and 1.0E-5 or C
1333
					local x = (R21 - R12) / sqrt(A)
1334
					local y = (R02 - R20) / sqrt(B)
1335
					local z = (R10 - R01) / sqrt(C)
1336
					return Vec3(x, y, z), Angle
1337
				end
1338
				function ApplyTrig(Num, Func)
1339
					local Min, Max = Func(0), Func(1)
1340
					local i = Func(Num)
1341
					return (i - Min) / (Max - Min)
1342
				end
1343
				function LerpCFrame(CFrame1, CFrame2, Num)
1344
					local Vec, Ang = toAxisAngle(CFrame1:inverse() * CFrame2)
1345
					return CFrame1 * fromAxisAngle(Vec, Ang * Num) + (CFrame2.p - CFrame1.p) * Num
1346
				end
1347
				function Crater(Torso, Radius)
1348
					Spawn(function()
1349
						local Ray = Ray.new(Torso.Position, Vector3.new(0, -1, 0) * 10)
1350
						local Ignore = {}
1351
						for i, v in pairs(game:GetService("Players"):GetPlayers()) do
1352
							if v.Character ~= nil then
1353
								Ignore[#Ignore + 1] = v.Character
1354
							end
1355
						end
1356
						local Hit, Pos, SurfaceNorm = Workspace:FindPartOnRayWithIgnoreList(Ray, Ignore)
1357
						if Hit == nil then
1358
							return
1359
						end
1360
						local Parts = {}
1361
						for i = 1, 360, 10 do
1362
							local P = Instance.new("Part", Torso.Parent)
1363
							P.Anchored = true
1364
							P.FormFactor = "Custom"
1365-
							P.BrickColor = BrickColor.new("Really black")
1365+
							P.BrickColor = BrickColor.new("Toothpaste")
1366
							P.Material = "Neon"
1367
							P.TopSurface = "Smooth"
1368
							P.BottomSurface = "Smooth"
1369
							P.Size = Vector3.new(5, 10, 10) * (math.random(80, 100) / 100)
1370
							P.CFrame = (CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 7, 0)) * CFrame.Angles(math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)))
1371
							Parts[#Parts + 1] = {
1372
								P,
1373
								P.CFrame,
1374
								(CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 1, 0)) * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, 0, -Radius) * CFrame.Angles(math.rad(math.random(-50, -20)), math.rad(math.random(-15, 15)), math.rad(math.random(-15, 15))),
1375
								P.Size
1376
							}
1377
							if math.random(0, 5) == 0 then
1378
								local P = Instance.new("Part", Torso.Parent)
1379
								P.Anchored = true
1380
								P.FormFactor = "Custom"
1381
								P.BrickColor = Hit.BrickColor
1382
								P.Material = Hit.Material
1383
								P.TopSurface = "Smooth"
1384
								P.BottomSurface = "Smooth"
1385
								P.Size = Vector3.new(2, 2, 2) * (math.random(80, 100) / 100)
1386
								P.CFrame = (CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) - Vector3.new(0, 2.5, 0)) * CFrame.Angles(math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)), math.rad(math.random(-50, 50)))
1387
								Parts[#Parts + 1] = {
1388
									P,
1389
									P.CFrame,
1390
									CFrame.new(Pos, Pos + SurfaceNorm) * CFrame.Angles(math.rad(90), 0, 0) * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, 0, -Radius - 8) * CFrame.Angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90))),
1391
									P.Size
1392
								}
1393
							end
1394
						end
1395
						for i = 0, 1, 0.05 do
1396
							for i2, v in pairs(Parts) do
1397
								v[1].CFrame = LerpCFrame(v[2], v[3], ApplyTrig(i, math.cos))
1398
							end
1399
							wait(0.02)
1400
						end
1401
						for i, v in pairs(Parts) do
1402
							if v[1].Size.X > 2.1 then
1403
								v[1].CFrame = v[1].CFrame + Vector3.new(0, 2, 0)
1404
							end
1405
							v[1].Anchored = false
1406
						end
1407
						for i = 0, 1, 0.05 do
1408
							for i2, v in pairs(Parts) do
1409
								v[1].Transparency = i
1410
								if i == 1 then
1411
									v[1]:Destroy()
1412
								elseif i >= 0.25 then
1413
									v[1].CanCollide = false
1414
								end
1415
							end
1416
							wait(0.02)
1417
						end
1418
						Parts = nil
1419
					end)
1420
				end
1421
				function ROW(out, trans, s, wt, t, ang, plus)
1422
					for i = 1, 360, 360 / t do
1423
						local c = Instance.new("Part", game.Workspace)
1424
						c.FormFactor = 3
1425
						c.TopSurface = 0
1426
						c.BottomSurface = 0
1427
						c.Size = s
1428
						c.Anchored = true
1429
						c.CanCollide = wt
1430
						c.Material = "Neon"
1431
						c.Transparency = trans
1432-
						c.BrickColor = BrickColor.new("Really black")
1432+
						c.BrickColor = BrickColor.new("Toothpaste")
1433
						c.CFrame = CFrame.new(Core.CFrame.x, 0, Core.CFrame.z) * CFrame.Angles(math.rad(20), math.rad(i + plus), 0) * CFrame.new(0, 0, out) * ang
1434
						c.Locked = true
1435
						game.Debris:AddItem(c, 15)
1436
					end
1437
				end
1438
				function Part(x, y, z, color, tr, cc, an, parent)
1439
					local p = Instance.new("Part", parent or Weapon)
1440
					p.formFactor = "Custom"
1441
					p.Size = Vector3.new(x, y, z)
1442
					p.BrickColor = BrickColor.new(color)
1443
					p.CanCollide = cc
1444
					p.Transparency = tr
1445
					p.Anchored = an
1446
					p.TopSurface, p.BottomSurface = 0, 0
1447
					p.Locked = true
1448
					p:BreakJoints()
1449
					return p
1450
				end
1451
				function Mesh(par, num, x, y, z)
1452
					local msh = _
1453
					if num == 1 then
1454
						msh = Instance.new("CylinderMesh", par)
1455
					elseif num == 2 then
1456
						msh = Instance.new("SpecialMesh", par)
1457
						msh.MeshType = 3
1458
					elseif num == 3 then
1459
						msh = Instance.new("BlockMesh", par)
1460
					elseif num == 4 then
1461
						msh = Instance.new("SpecialMesh", par)
1462
						msh.MeshType = "Torso"
1463
					elseif type(num) == "string" then
1464
						msh = Instance.new("SpecialMesh", par)
1465
						msh.MeshId = num
1466
					end
1467
					msh.Scale = Vector3.new(x, y, z)
1468
					return msh
1469
				end
1470
				function explosion(col1, col2, cfr, sz, rng, dmg)
1471
					local a = Part(1, 1, 1, col1, 0.5, false, true, workspace)
1472
					local a2 = Part(1, 1, 1, col2, 0.5, false, true, workspace)
1473
					local a3 = Part(1, 1, 1, col2, 0.5, false, true, workspace)
1474
					v1, v2, v3 = sz.x, sz.y, sz.z
1475
					local m = Mesh(a, "http://www.roblox.com/asset/?id=1185246", v1, v2, v3)
1476
					local m2 = Mesh(a2, 3, v1 / 3, v2 / 3, v3 / 3)
1477
					local m3 = Mesh(a3, 3, v1 / 3, v2 / 3, v3 / 3)
1478
					a.CFrame = cfr
1479
					a2.CFrame = cfr * CFrame.Angles(math.random(), math.random(), math.random())
1480
					a3.CFrame = cfr * CFrame.Angles(math.random(), math.random(), math.random())
1481
					Spawn(function()
1482
						while wait() do
1483
							if a.Transparency >= 1 then
1484
								a:Destroy()
1485
								a2:Destroy()
1486
								a3:Destroy()
1487
								break
1488
							end
1489
							m.Scale = m.Scale + Vector3.new(0.1, 0.1, 0.1)
1490
							m2.Scale = m2.Scale + Vector3.new(0.1, 0.1, 0.1)
1491
							m3.Scale = m3.Scale + Vector3.new(0.1, 0.1, 0.1)
1492
							a.Transparency = a.Transparency + 0.05
1493
							a2.Transparency = a2.Transparency + 0.05
1494
							a3.Transparency = a3.Transparency + 0.05
1495
						end
1496
					end)
1497
				end
1498
				local part = Instance.new("Part", rarm)
1499
				part.Anchored = true
1500
				part.CanCollide = false
1501
				part.Locked = true
1502
				part.FormFactor = "Custom"
1503
				part.Size = Vector3.new(1, 1, 1)
1504
				part.CFrame = Core.CFrame * CFrame.new(0, 0, 0)
1505
				part.Transparency = 1
1506-
				part.BrickColor = BrickColor.new("Really black")
1506+
				part.BrickColor = BrickColor.new("Toothpaste")
1507
				local mesh = Instance.new("SpecialMesh", part)
1508
				mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
1509
				mesh.Scale = Vector3.new(2, 2, 2)
1510
				local part2 = part:clone()
1511
				part2.Parent = rarm
1512-
				part2.BrickColor = BrickColor.new("Really black")
1512+
				part2.BrickColor = BrickColor.new("Toothpaste")
1513
				local part5 = part:clone()
1514
				part5.Parent = rarm
1515-
				part5.BrickColor = BrickColor.new("New Yeller")
1515+
				part5.BrickColor = BrickColor.new("Electric blue")
1516
				local part6 = part:clone()
1517
				part6.Parent = rarm
1518-
				part6.BrickColor = BrickColor.new("Institutional white")
1518+
				part6.BrickColor = BrickColor.new("Electric blue")
1519
				local mesh2 = mesh:clone()
1520
				mesh2.Parent = part2
1521
				mesh2.Scale = Vector3.new(3, 3, 3)
1522
				local mesh5 = mesh:clone()
1523
				mesh5.Parent = part5
1524
				mesh5.Scale = Vector3.new(3, 3, 3)
1525
				local mesh6 = mesh:clone()
1526
				mesh6.Parent = part6
1527
				mesh6.Scale = Vector3.new(3, 3, 3)
1528
				local blast = Instance.new("Part", rarm)
1529-
				blast.BrickColor = BrickColor.new("Really black")
1529+
				blast.BrickColor = BrickColor.new("Electric blue")
1530
				blast.Anchored = true
1531
				blast.CanCollide = false
1532
				blast.Locked = true
1533
				blast.Size = Vector3.new(1, 1, 1)
1534
				blast.TopSurface = "Smooth"
1535
				blast.BottomSurface = "Smooth"
1536
				blast.Transparency = 0.9
1537
				blast.CFrame = HandCF
1538
				local bm = Instance.new("SpecialMesh", blast)
1539
				bm.Scale = Vector3.new(5, 1, 5)
1540
				bm.MeshId = "rbxassetid://3270017"
1541
				local blast2 = Instance.new("Part", rarm)
1542-
				blast2.BrickColor = BrickColor.new("New Yeller")
1542+
				blast2.BrickColor = BrickColor.new("Electric blue")
1543
				blast2.Anchored = true
1544
				blast2.CanCollide = false
1545
				blast2.Locked = true
1546
				blast2.Size = Vector3.new(1, 1, 1)
1547
				blast2.TopSurface = "Smooth"
1548
				blast2.BottomSurface = "Smooth"
1549
				blast2.Transparency = 0.9
1550
				blast2.CFrame = HandCF
1551
				local bm2 = Instance.new("SpecialMesh", blast2)
1552
				bm2.Scale = Vector3.new(3, 1, 3)
1553
				bm2.MeshId = "rbxassetid://3270017"
1554
				local blast3 = Instance.new("Part", rarm)
1555-
				blast3.BrickColor = BrickColor.new("Institutional white")
1555+
				blast3.BrickColor = BrickColor.new("Electric blue")
1556
				blast3.Anchored = true
1557
				blast3.CanCollide = false
1558
				blast3.Locked = true
1559
				blast3.Size = Vector3.new(1, 1, 1)
1560
				blast3.TopSurface = "Smooth"
1561
				blast3.BottomSurface = "Smooth"
1562
				blast3.Transparency = 0.9
1563
				blast3.CFrame = HandCF
1564
				local bm3 = Instance.new("SpecialMesh", blast3)
1565
				bm3.Scale = Vector3.new(3, 1, 3)
1566
				bm3.MeshId = "rbxassetid://3270017"
1567
				for i = 1, 120 do
1568
					rs:wait()
1569
					Core.Transparency = Core.Transparency + 0.008333333333333333
1570
					part.Transparency = part.Transparency + 0.008333333333333333
1571
					part2.Transparency = part2.Transparency + 0.008333333333333333
1572
					part3.Transparency = part3.Transparency + 0.008333333333333333
1573
					part4.Transparency = part4.Transparency + 0.008333333333333333
1574
					part5.Transparency = part5.Transparency + 0.008333333333333333
1575
					part6.Transparency = part6.Transparency + 0.008333333333333333
1576
					part7.Transparency = part7.Transparency + 0.008333333333333333
1577
					blast.Transparency = blast.Transparency + 0.008333333333333333
1578
					blast2.Transparency = blast2.Transparency + 0.008333333333333333
1579
					blast3.Transparency = blast3.Transparency + 0.008333333333333333
1580
					Core.Size = Core.Size + Vector3.new(0.8, 0.8, 0.8)
1581
					mesh.Scale = mesh.Scale + Vector3.new(1, 0.2, 1)
1582
					mesh2.Scale = mesh2.Scale + Vector3.new(1.1, 0.2, 1.1)
1583
					mesh3.Scale = mesh3.Scale + Vector3.new(3, 3, 3)
1584
					mesh4.Scale = mesh4.Scale + Vector3.new(1.7, 1.7, 1.7)
1585
					mesh5.Scale = mesh5.Scale + Vector3.new(1.6, 0.2, 1.6)
1586
					mesh6.Scale = mesh6.Scale + Vector3.new(2, 0.2, 2)
1587
					mesh7.Scale = mesh7.Scale + Vector3.new(4, 4, 4)
1588
					bm.Scale = bm.Scale + Vector3.new(6, 6, 0.2)
1589
					bm2.Scale = bm2.Scale + Vector3.new(4, 4, 0.2)
1590
					bm3.Scale = bm3.Scale + Vector3.new(4, 4, 0.2)
1591
					Core.CFrame = cf
1592
					part.CFrame = Core.CFrame * CFrame.Angles(0, math.rad(i * 2), 0)
1593
					part2.CFrame = Core.CFrame * CFrame.Angles(0, math.rad(-i * 2), 0)
1594
					part3.CFrame = Core.CFrame
1595
					part4.CFrame = Core.CFrame
1596
					part7.CFrame = Core.CFrame
1597
					part5.CFrame = Core.CFrame * CFrame.Angles(0, math.rad(i * 2.6), 0)
1598
					part6.CFrame = Core.CFrame * CFrame.Angles(0, math.rad(-i * 2.4), 0)
1599
					blast.CFrame = Core.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
1600
					blast2.CFrame = Core.CFrame * CFrame.Angles(math.rad(-i * 4), math.rad(i * 4), math.rad(0))
1601
					blast3.CFrame = Core.CFrame * CFrame.Angles(math.rad(180 + i * 4), math.rad(90 - i * 4), math.rad(0))
1602
					rs:wait()
1603
				end
1604
				Core:Destroy()
1605
				part:Destroy()
1606
				part2:Destroy()
1607
				part3:Destroy()
1608
				part4:Destroy()
1609
				part5:Destroy()
1610
				part6:Destroy()
1611
				part7:Destroy()
1612
				blast:Destroy()
1613
				blast2:Destroy()
1614
				blast3:Destroy()
1615
			end
1616
		end
1617
	end)
1618
	Debounces.CanAttack = true
1619
	Debounces.NoIdle = false
1620
	hum.WalkSpeed = 16
1621
end
1622
function TruthSeekerOrbSheild()
1623
	Debounces.CanAttack = false
1624
	Debounces.NoIdle = true
1625
	Defence = true
1626
	CurrentHealth = hum.Health
1627
	torso.Anchored = true
1628
	Shield = Instance.new("Part", Orbs)
1629
	Shield.Shape = "Ball"
1630
	Shield.CanCollide = true
1631
	Shield.Anchored = true
1632
	Shield.Material = "Neon"
1633
	Shield.Name = "Shield"
1634
	Shield.Locked = true
1635
	Shield.Transparency = 0.3
1636-
	Shield.BrickColor = BrickColor.new("Really black")
1636+
	Shield.BrickColor = BrickColor.new("Toothpaste")
1637
	Shield.Size = Vector3.new(10.1, 10.1, 10.1)
1638
	Shield.CFrame = torso.CFrame
1639
	function onDamage(Part)
1640
		if Part:findFirstChild("Humanoid") == nil and Part:findFirstChild("BodyVelocity") ~= nil or Part:findFirstChild("Humanoid") == nil and Part:findFirstChild("RocketPropulsion") ~= nil then
1641
			Part.Anchored = true
1642
			if Part:findFirstChild("Mesh") ~= nil then
1643
				z = Part:findFirstChild("Mesh")
1644
				for i = 1, 5 do
1645
					z.Scale = z.Scale + Vector3.new(1, 1, 1)
1646
					wait(0.05)
1647
				end
1648
			end
1649
		end
1650
	end
1651
	Checker = Instance.new("Part", char)
1652
	Checker.Transparency = 0.99
1653
	Checker.Shape = "Ball"
1654
	Checker.Material = "Neon"
1655-
	Checker.BrickColor = BrickColor.new("Institutional white")
1655+
	Checker.BrickColor = BrickColor.new("Electric blue")
1656
	Checker.Anchored = false
1657
	Checker.Locked = true
1658
	Checker.CFrame = torso.CFrame
1659
	Checker.CanCollide = false
1660
	Checker.Size = Vector3.new(20, 20, 20)
1661
	newWeld(Checker, torso, 0, 0, 0)
1662
	Checker.Touched:connect(onDamage)
1663
	InnerShield = Instance.new("Part", Orbs)
1664
	InnerShield.CanCollide = true
1665
	InnerShield.Anchored = true
1666
	InnerShield.Material = "Neon"
1667
	InnerShield.Name = "InnerShield"
1668
	InnerShield.Shape = "Ball"
1669
	InnerShield.Locked = true
1670-
	InnerShield.BrickColor = BrickColor.new("Royal purple")
1670+
	InnerShield.BrickColor = BrickColor.new("Teal")
1671
	InnerShield.Size = Vector3.new(10, 10, 10)
1672
	InnerShield.CFrame = Shield.CFrame
1673
	newWeld(InnerShield, Shield, 0, 0, 0)
1674
	newWeld(Shield, torso, 0, 0, 0)
1675
	spawn(function()
1676
		while Defence == true do
1677
			hum.Health = CurrentHealth
1678
			hum.WalkSpeed = 0
1679
			wait()
1680
		end
1681
	end)
1682
	for i = 1, 16 do
1683
		for i, v in pairs(Orbs:children()) do
1684
			if v:IsA("Part") and v.Name ~= "InnerShield" and v.Name ~= "Shield" then
1685
				v.Transparency = v.Transparency + 0.1
1686
			end
1687
		end
1688
		wait()
1689
	end
1690
end
1691
function TruthSeekerOrbSheildUp()
1692
	Defence = false
1693
	Debounces.CanAttack = true
1694
	Debounces.NoIdle = false
1695
	Shield.CanCollide = false
1696
	InnerShield.CanCollide = false
1697
	for i = 1, 16 do
1698
		Shield.Transparency = Shield.Transparency + 0.1
1699
		InnerShield.Transparency = InnerShield.Transparency + 0.1
1700
		wait()
1701
	end
1702
	Shield:Destroy()
1703
	Checker:Destroy()
1704
	torso.Anchored = false
1705
	InnerShield:Destroy()
1706
	hum.WalkSpeed = 16
1707
	for i = 1, 16 do
1708
		for i, v in pairs(Orbs:children()) do
1709
			if v:IsA("Part") then
1710
				v.Transparency = v.Transparency - 0.1
1711
			end
1712
		end
1713
		wait()
1714
	end
1715
end
1716
function TruthSeekerOrbAttack()
1717
	local selected = math.random(1, 8)
1718
	local Orb = Orbs_["Orb" .. selected]
1719
	local Outline = Orb.Outline
1720
	local nPos
1721
	local sound = Instance.new("Sound", hed)
1722
	sound.SoundId = "rbxassetid://553462044"
1723
	sound.Volume = 0.35
1724
	sound.Pitch = 1.4 + math.random() / 5
1725
	sound:play()
1726
	game:service("Debris"):AddItem(sound, 5)
1727
	if Debounces["OrbMove" .. selected] == true then
1728
		return
1729
	end
1730
	Debounces["OrbMove" .. selected] = true
1731
	for i = 1, 12 do
1732
		Orb.CFrame = Lerp(Outline.CFrame, Mau5.Hit, 0.3)
1733
		nPos = Outline.CFrame.p
1734
		wait()
1735
	end
1736
    Orb.Touched:connect(function(hit)
1737
        if hit.Parent and hit.Parent:FindFirstChildOfClass'Humanoid' and hit.Parent.Name ~= game:service'Players'.LocalPlayer.Name and Debounces["OrbMove" .. selected] == true then
1738
            hit.Parent:FindFirstChildOfClass'Humanoid':TakeDamage(hit.Parent:FindFirstChildOfClass'Humanoid'.MaxHealth/2/2/2/2/2)
1739
        end
1740
    end)
1741
	Debounces["OrbMove" .. selected] = false
1742
	wait(0.1)
1743
end
1744
local origHealth = {}
1745
local OrbOfHealingEquipped = false
1746
local OrbOfDiscordEquipped = false
1747
local Darkness = Instance.new("Sound", char.Torso)
1748
Darkness.SoundId = "rbxassetid://418097747"
1749
Darkness.Volume = 0.8
1750
local Healing = Instance.new("Sound", char.Torso)
1751
Healing.SoundId = "rbxassetid://418097928"
1752
Healing.Volume = 0.8
1753
function OrbOfDiscord(Target)
1754
	if Target.Parent:IsA("Accessory") then
1755
		Target = Target.Parent
1756
	end
1757
	local tplr = game:service("Players"):GetPlayerFromCharacter(Target)
1758
	if tplr and tplr.TeamColor == p.TeamColor then
1759
		return
1760
	end
1761
	if OrbOfDiscordEquipped == Target.Parent then
1762
		print("same target?")
1763
		return
1764
	end
1765
	if OrbOfHealingEquipped == Target.Parent then
1766
		OrbOfHealingEquipped = false
1767
	end
1768
	if Target.Parent:findFirstChild("ForceField") then
1769
		OrbOfDiscordEquipped = false
1770
		return
1771
	end
1772
	OrbOfDiscordEquipped = Target.Parent
1773
	local OD1, OD2 = MakeOrb(1)
1774-
	OD1.BrickColor = BrickColor.new("Royal purple")
1774+
	OD1.BrickColor = BrickColor.new("Teal")
1775-
	OD2.BrickColor = BrickColor.new("Really black")
1775+
	OD2.BrickColor = BrickColor.new("Toothpaste")
1776
	OD1.Parent = Target.Parent
1777
	OD2.Parent = Target.Parent
1778
	if not origHealth[Target.Parent] then
1779
		origHealth[Target.Parent] = Target.Parent:findFirstChild("Humanoid").MaxHealth
1780
	end
1781
	Darkness:Play()
1782
	spawn(function()
1783
		while wait(0.2) and OrbOfDiscordEquipped == Target.Parent do
1784
			Target.Parent:FindFirstChild("Humanoid").MaxHealth = origHealth[Target.Parent] * 0.7
1785
			if OrbOfDiscordEquipped == false or OrbOfDiscordEquipped ~= Target.Parent then
1786
				break
1787
			end
1788
			local chars = {}
1789
			for i, v in pairs(workspace:children()) do
1790
				if v:FindFirstChild("Humanoid") then
1791
					table.insert(chars, v)
1792
				end
1793
			end
1794
			local hit, pos, surfaceNormal = workspace:FindPartOnRayWithIgnoreList(Ray.new(root.Position, Target.Parent:FindFirstChild("HumanoidRootPart").Position - root.Position), {
1795
				char,
1796
				unpack(chars)
1797
			})
1798
			if hit then
1799
				print("Line of sight broken!")
1800
				OrbOfDiscordEquipped = false
1801
				break
1802
			end
1803
		end
1804
	end)
1805
	while wait() and OrbOfDiscordEquipped == Target.Parent do
1806
		OD1.CFrame = Lerp(OD1.CFrame, Target.Parent.Torso.CFrame * CFrame.new(3, 3 + math.sin(angle2) * 0.32, 2), 0.3)
1807
		OD2.CFrame = Lerp(OD2.CFrame, Target.Parent.Torso.CFrame * CFrame.new(3, 3 + math.sin(angle2) * 0.32, 2), 0.3)
1808
		if OrbOfDiscordEquipped == false then
1809
			break
1810
		end
1811
	end
1812
	local prevHealth = Target.Parent:FindFirstChild("Humanoid").Health
1813
	Target.Parent:FindFirstChild("Humanoid").MaxHealth = origHealth[Target.Parent]
1814
	Target.Parent:FindFirstChild("Humanoid").Health = prevHealth / (origHealth[Target.Parent] * 0.7) * origHealth[Target.Parent]
1815
	OD1:Destroy()
1816
	OD2:Destroy()
1817
	if OrbOfDiscordEquipped == Target.Parent then
1818
		OrbOfDiscordEquipped = false
1819
	end
1820
end
1821
function OrbOfHealing(Target)
1822
	if Target.Parent:IsA("Accessory") then
1823
		Target = Target.Parent
1824
	end
1825
	local tplr = game:service("Players"):GetPlayerFromCharacter(Target)
1826
	if tplr and tplr.TeamColor ~= p.TeamColor then
1827
		return
1828
	end
1829
	if OrbOfHealingEquipped == Target.Parent then
1830
		return
1831
	end
1832
	if OrbOfDiscordEquipped == Target.Parent then
1833
		OrbOfDiscordEquipped = false
1834
	end
1835
	if OrbOfHealingEquipped ~= false then
1836
		OrbOfHealingEquipped = false
1837
		wait()
1838
	end
1839
	if Target.Parent:findFirstChild("ForceField") then
1840
		OrbOfHealingEquipped = false
1841
		return
1842
	end
1843
	OrbOfHealingEquipped = Target.Parent
1844
	local OH1, OH2 = MakeOrb(1)
1845-
	OH1.BrickColor = BrickColor.new("New Yeller")
1845+
	OH1.BrickColor = BrickColor.new("Electric blue")
1846-
	OH2.BrickColor = BrickColor.new("Institutional white")
1846+
	OH2.BrickColor = BrickColor.new("Electric blue")
1847
	OH1.Parent = Target.Parent
1848
	OH2.Parent = Target.Parent
1849
	Healing:Play()
1850
	spawn(function()
1851
		while wait(1) and OrbOfHealingEquipped == Target.Parent do
1852
			Target.Parent:FindFirstChild("Humanoid").Health = Target.Parent:FindFirstChild("Humanoid").Health + 5
1853
			if OrbOfHealingEquipped == false then
1854
				break
1855
			end
1856
		end
1857
	end)
1858
	spawn(function()
1859
		while wait(0.2) do
1860
			local chars = {}
1861
			for i, v in pairs(workspace:children()) do
1862
				if v:FindFirstChild("Humanoid") then
1863
					table.insert(chars, v)
1864
				end
1865
			end
1866
			local hit, pos, surfaceNormal = workspace:FindPartOnRayWithIgnoreList(Ray.new(root.Position, Target.Parent:FindFirstChild("HumanoidRootPart").Position - root.Position), {
1867
				char,
1868
				unpack(chars)
1869
			})
1870
			if hit then
1871
				print("Line of sight broken!")
1872
				OrbOfHealingEquipped = false
1873
				break
1874
			end
1875
		end
1876
	end)
1877
	while OrbOfHealingEquipped do
1878
		OH1.CFrame = Lerp(OH1.CFrame, Target.Parent.Torso.CFrame * CFrame.new(3, 1.8 + math.sin(angle2) * 0.32, 2), 0.3)
1879
		OH2.CFrame = Lerp(OH2.CFrame, Target.Parent.Torso.CFrame * CFrame.new(3, 1.8 + math.sin(angle2) * 0.32, 2), 0.3)
1880
		if OrbOfHealingEquipped == false then
1881
			break
1882
		end
1883
		wait()
1884
	end
1885
	OH1:Destroy()
1886
	OH2:Destroy()
1887
	OrbOfHealingEquipped = false
1888
end
1889
Mau5.KeyDown:connect(function(key)
1890
	if key == "g" then
1891
	TailedBeastBombAttack()
1892
	elseif key == "q" then
1893
	SpawnRasenShurikan(workspace)
1894
	end
1895
	if key == "e" then
1896
		local Targ = Mau5.Target
1897
		Debounces.NoIdle = true
1898
		for i = 1, 5 do
1899
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(math.random(60, 90)), math.rad(math.random(-20, 20)), math.rad(20)), 0.8)
1900
			larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.8)
1901
			hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
1902
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(i / 7), 0, 1.3), 0.8)
1903
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(i / 7), 0, -1.2), 0.8)
1904
			torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(i / 7), 0) * cn(0, 1 - 0.1 * math.cos(i / 7), 0) * angles(math.rad(0), 0.5, 0), 0.8)
1905
			wait()
1906
		end
1907
		Debounces.NoIdle = false
1908
		print(Targ.Parent:FindFirstChild("Humanoid"))
1909
		if Targ and Targ.Parent and Targ.Parent:FindFirstChild("Humanoid") then
1910
			OrbOfHealing(Targ.Parent:FindFirstChild("Torso") or Targ.Parent:FindFirstChild("UpperTorso"))
1911
		end
1912
		if Targ and Targ.Parent:IsA("Accessory") and Targ.Parent.Parent:FindFirstChild("Humanoid") then
1913
			OrbOfHealing(Targ.Parent.Parent:FindFirstChild("Torso") or Targ.Parent.Parent:FindFirstChild("UpperTorso"))
1914
		end
1915
	end
1916
	if key == "f" then
1917
		local Targ = Mau5.Target
1918
		Debounces.NoIdle = true
1919
		for i = 1, 5 do
1920
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(math.random(60, 90)), math.rad(math.random(-20, 20)), math.rad(20)), 0.8)
1921
			larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.8)
1922
			hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
1923
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(i / 7), 0, 1.3), 0.8)
1924
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(i / 7), 0, -1.2), 0.8)
1925
			torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(i / 7), 0) * cn(0, 1 - 0.1 * math.cos(i / 7), 0) * angles(math.rad(0), 0.5, 0), 0.8)
1926
			wait()
1927
		end
1928
		Debounces.NoIdle = false
1929
		print(Targ.Parent:FindFirstChild("Humanoid"))
1930
		if Targ and Targ.Parent and Targ.Parent:FindFirstChild("Humanoid") then
1931
			OrbOfDiscord(Targ.Parent:FindFirstChild("Torso") or Targ.Parent:FindFirstChild("UpperTorso"))
1932
		end
1933
		if Targ and Targ.Parent:IsA("Accessory") and Targ.Parent.Parent:FindFirstChild("Humanoid") then
1934
			OrbOfDiscord(Targ.Parent.Parent:FindFirstChild("Torso") or Targ.Parent.Parent:FindFirstChild("UpperTorso"))
1935
		end
1936
	end
1937
end)
1938
Mau5.KeyUp:connect(function(key)
1939
end)
1940
WhichHand = 0
1941
Mau5.Button1Down:connect(function()
1942
	if DebounceShot == false and Debounces.NoIdle == false then
1943
		Debounces.NoIdle = true
1944
		if WhichHand == 0 then
1945
			for i = 1, 5 do
1946
				rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(math.random(60, 90)), math.rad(math.random(-20, 20)), math.rad(20)), 0.8)
1947
				larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.8)
1948
				hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
1949
				lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(i / 7), 0, 1.3), 0.8)
1950
				rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(i / 7), 0, -1.2), 0.8)
1951
				torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(i / 7), 0) * cn(0, 1 - 0.1 * math.cos(i / 7), 0) * angles(math.rad(0), 0.5, 0), 0.8)
1952
				wait()
1953
			end
1954
			WhichHand = 1
1955
			Debounces.NoIdle = false
1956
			TruthSeekerOrbAttack()
1957
		else
1958
			for i = 1, 5 do
1959
				rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.8)
1960
				larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(i / 7) + math.sin(i / 7) / 7, 0) * angles(0 - 0.1 * math.cos(i / 7), 0, 0) * angles(math.rad(math.random(60, 90)), math.rad(math.random(-20, 20)), math.rad(20)), 0.8)
1961
				hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
1962
				lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(i / 7), 0, 1.3), 0.8)
1963
				rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(i / 7), 0, -1.2), 0.8)
1964
				torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(i / 7), 0) * cn(0, 1 - 0.1 * math.cos(i / 7), 0) * angles(math.rad(0), -0.5, 0), 0.8)
1965
				wait()
1966
			end
1967
			WhichHand = 0
1968
			Debounces.NoIdle = false
1969
			TruthSeekerOrbAttack()
1970
		end
1971
	end
1972
end)
1973
local sine = 0
1974
local twirl = 0
1975
local change = 1
1976
angle = 0
1977
angle2 = 0
1978
angle3 = 0
1979
anglespeed = 2
1980
anglespeed2 = 1
1981
anglespeed3 = 0.4
1982
game:GetService("RunService").RenderStepped:connect(function()
1983
	angle = angle % 100 + anglespeed / 10
1984
	angle2 = angle2 % 100 + anglespeed2 / 10
1985
	angle3 = angle3 % 100 + anglespeed3 / 10
1986
	char.Humanoid.FreeFalling:connect(function(f)
1987
		if f then
1988
			ffing = true
1989
		else
1990
			ffing = false
1991
		end
1992
	end)
1993
	if Debounces.Anger == false then
1994
		if Debounces.OrbMove1 == false then
1995
			Orb1.CFrame = Lerp(Orb1.CFrame, torso.CFrame * CFrame.new(0, 3 + math.sin(angle2) * 0.2, 2), 0.04)
1996
		end
1997
		if Debounces.OrbMove2 == false then
1998
			Orb2.CFrame = Lerp(Orb2.CFrame, torso.CFrame * CFrame.new(0, -3 + math.sin(angle2) * 0.32, 2), 0.03)
1999
		end
2000
		if Debounces.OrbMove3 == false then
2001
			Orb3.CFrame = Lerp(Orb3.CFrame, torso.CFrame * CFrame.new(3, 0 + math.sin(angle2) * 0.22, 2), 0.06)
2002
		end
2003
		if Debounces.OrbMove4 == false then
2004
			Orb4.CFrame = Lerp(Orb4.CFrame, torso.CFrame * CFrame.new(-3, 0 + math.sin(angle2) * 0.12, 2), 0.08)
2005
		end
2006
		if Debounces.OrbMove5 == false then
2007
			Orb5.CFrame = Lerp(Orb5.CFrame, torso.CFrame * CFrame.new(-2, -2 + math.sin(angle2) * 0.12, 2), 0.07)
2008
		end
2009
		if Debounces.OrbMove6 == false then
2010
			Orb6.CFrame = Lerp(Orb6.CFrame, torso.CFrame * CFrame.new(-2, 2 + math.sin(angle2) * 0.12, 2), 0.4)
2011
		end
2012
		if Debounces.OrbMove7 == false then
2013
			Orb7.CFrame = Lerp(Orb7.CFrame, torso.CFrame * CFrame.new(2, 2 + math.sin(angle2) * 0.12, 2), 0.2)
2014
		end
2015
		if Debounces.OrbMove8 == false then
2016
			Orb8.CFrame = Lerp(Orb8.CFrame, torso.CFrame * CFrame.new(2, -2 + math.sin(angle2) * 0.12, 2), 0.05)
2017
		end
2018
	else
2019
		if Debounces.OrbMove1 == false then
2020
			Orb1.CFrame = Lerp(Orb1.CFrame, torso.CFrame * CFrame.new(0, 3 + math.sin(angle2) * 0.2, 2) * CFrame.new(math.sin(angle / 6), math.tan(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.04)
2021
		end
2022
		if Debounces.OrbMove2 == false then
2023
			Orb2.CFrame = Lerp(Orb2.CFrame, torso.CFrame * CFrame.new(0, -3 + math.sin(angle2) * 0.32, 2) * CFrame.new(math.sin(angle / 6), math.tan(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.03)
2024
		end
2025
		if Debounces.OrbMove3 == false then
2026
			Orb3.CFrame = Lerp(Orb3.CFrame, torso.CFrame * CFrame.new(3, 0 + math.sin(angle2) * 0.22, 2) * CFrame.new(math.tan(angle / 6), math.sin(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.06)
2027
		end
2028
		if Debounces.OrbMove4 == false then
2029
			Orb4.CFrame = Lerp(Orb4.CFrame, torso.CFrame * CFrame.new(-3, 0 + math.sin(angle2) * 0.12, 2) * CFrame.new(math.tan(angle / 6), math.sin(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.08)
2030
		end
2031
		if Debounces.OrbMove5 == false then
2032
			Orb5.CFrame = Lerp(Orb5.CFrame, torso.CFrame * CFrame.new(-2, -2 + math.sin(angle2) * 0.12, 2) * CFrame.new(math.tan(angle / 6), -math.tan(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.07)
2033
		end
2034
		if Debounces.OrbMove6 == false then
2035
			Orb6.CFrame = Lerp(Orb6.CFrame, torso.CFrame * CFrame.new(-2, 2 + math.sin(angle2) * 0.12, 2) * CFrame.new(math.tan(angle / 6), math.tan(angle2 / 6), math.cos(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.4)
2036
		end
2037
		if Debounces.OrbMove7 == false then
2038
			Orb7.CFrame = Lerp(Orb7.CFrame, torso.CFrame * CFrame.new(2, 2 + math.sin(angle2) * 0.12, 2) * CFrame.new(math.cos(angle / 6), math.tan(angle2 / 6), math.tan(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.2)
2039
		end
2040
		if Debounces.OrbMove8 == false then
2041
			Orb8.CFrame = Lerp(Orb8.CFrame, torso.CFrame * CFrame.new(2, -2 + math.sin(angle2) * 0.12, 2) * CFrame.new(math.cos(angle / 6), -math.tan(angle2 / 6), math.tan(angle3 / 6)) * CFrame.Angles(math.sin(angle / 6), math.tan(angle2 / 6), math.floor(angle3 / 6)), 0.05)
2042
		end
2043
	end
2044
	sine = sine + change
2045
	if jumpn == true then
2046
		animpose = "Jumping"
2047
	elseif ffing == true then
2048
		animpose = "Freefalling"
2049
	elseif 2 > (torso.Velocity * Vector3.new(1, 0, 1)).magnitude then
2050
		animpose = "Idle"
2051
	elseif (torso.Velocity * Vector3.new(1, 0, 1)).magnitude < 20 then
2052
		animpose = "Walking"
2053
	elseif (torso.Velocity * Vector3.new(1, 0, 1)).magnitude > 20 then
2054
		animpose = "Running"
2055
	end
2056
	if animpose ~= lastanimpose then
2057
		sine = 0
2058
		if Debounces.NoIdle ~= false or animpose == "Idle" then
2059
		elseif animpose == "Walking" then
2060
		else
2061
			if animpose == "Running" then
2062
			else
2063
			end
2064
		end
2065
	end
2066
	lastanimpose = animpose
2067
	if Debounces.NoIdle == false then
2068
		if animpose == "Idle" then
2069
			change = 0.5
2070
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, 0) * angles(0 - 0.1 * math.cos(sine / 7), 0, 0) * angles(math.rad(0), math.rad(180), math.rad(-30)), 0.2)
2071
			larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, 0) * angles(0 - 0.1 * math.cos(sine / 7), 0, 0) * angles(math.rad(0), math.rad(180), math.rad(30)), 0.2)
2072
			hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
2073
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(sine / 7), 0, 1.3), 0.4)
2074
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(sine / 7), 0, -1.2), 0.4)
2075
			torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(sine / 7), 0) * cn(0, 1 - 0.1 * math.cos(sine / 7), 0) * angles(math.rad(0), 0, 0), 0.2)
2076
		elseif animpose == "Walking" then
2077
			change = 0.5
2078
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(1.5, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, 0) * angles(0 - 0.1 * math.cos(sine / 7), 0, 0) * angles(math.rad(0), math.rad(180), math.rad(-30)), 0.2)
2079
			larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-1.5, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, 0) * angles(0 - 0.1 * math.cos(sine / 7), 0, 0) * angles(math.rad(0), math.rad(180), math.rad(30)), 0.2)
2080
			hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(0), 0, math.rad(0))
2081
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-1.5, -1, -0.5) * angles(1.2 - 0.1 * math.cos(sine / 7), 0, 1.3), 0.4)
2082
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(1.5, -1, -0.5) * angles(1.3 - 0.1 * math.cos(sine / 7), 0, -1.2), 0.4)
2083
			torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(sine / 7), 0) * cn(0, 1 - 0.1 * math.cos(sine / 7), 0) * angles(math.rad(0), 0, 0), 0.2)
2084
		elseif animpose == "Running" then
2085
			change = 0.5
2086
			twirl = twirl + 1
2087
			rarm.Weld.C0 = Lerp(rarm.Weld.C0, cn(0.7, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, -0.5) * angles(1.2 - 0.1 * math.cos(sine / 7), 0, -1.3), 0.2)
2088
			larm.Weld.C0 = Lerp(larm.Weld.C0, cn(-0.7, 0.5 - 0.1 * math.cos(sine / 7) + math.sin(sine / 7) / 7, -0.5) * angles(1.3 - 0.1 * math.cos(sine / 7), 0, 1.2), 0.2)
2089
			hed.Weld.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.rad(10), 0.5, math.rad(0))
2090
			lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-30), math.rad(0), math.rad(0)), 0.4)
2091
			rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(-30), math.rad(0), math.rad(0)), 0.4)
2092
			torso.Weld.C0 = Lerp(torso.Weld.C0, cn(0, -1.5 - 0.1 * math.cos(sine / 7), 0) * cn(0, 1 - 0.1 * math.cos(sine / 4), 0) * angles(math.rad(-90), 0, 0) * angles(0, sine / 10, 0), 0.5)
2093
		elseif animpose == "Freefalling" then
2094
			change = 0.5
2095
		end
2096
	end
2097
end)
2098-
hum.MaxHealth = 150
2098+
hum.MaxHealth = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2099
wait()
2100-
hum.Health = 150
2100+
hum.Health = 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2101
function dispose()
2102
	for i, v in pairs(getfenv(0)) do
2103
		v = nil
2104
	end
2105
	error = nil
2106
	print = nil
2107
	warn = nil
2108
	script:Destroy()
2109
	script = nil
2110
end
2111
hum.Died:connect(dispose)
2112
char.Changed:connect(function()
2113
	if char.Parent == nil then
2114
		dispose()
2115
	end
2116
end)