Advertisement
heyoooooooooo

Untitled

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