Advertisement
zXzGamePROzXz

Zen [FE Version] [Maybe works]

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