Advertisement
ghostteen14

Untitled

May 10th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 61.38 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. do
  4. print("FE Compatibility code by Joseph Deramus")
  5. script.Parent = Player.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 Player = 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 Mouse = Player: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~=Mouse.Hit or t~=Mouse.Target then
  77. h,t=Mouse.Hit,Mouse.Target
  78. Event:FireServer({isMouse=true,Target=t,Hit=h})
  79. end
  80. end]==],Player.Character)
  81. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  82. end
  83. wait(0.2)
  84. Player = game:GetService("Players").LocalPlayer
  85. PlayerGui = Player.PlayerGui
  86. Cam = workspace.CurrentCamera
  87. Backpack = Player.Backpack
  88. Character = Player.Character
  89. Humanoid = Character.Humanoid
  90. Mouse = Player:GetMouse()
  91. RootPart = Character["HumanoidRootPart"]
  92. Torso = Character["Torso"]
  93. Head = Character["Head"]
  94. RightArm = Character["Right Arm"]
  95. LeftArm = Character["Left Arm"]
  96. RightLeg = Character["Right Leg"]
  97. LeftLeg = Character["Left Leg"]
  98. RootJoint = RootPart["RootJoint"]
  99. Neck = Torso["Neck"]
  100. RightShoulder = Torso["Right Shoulder"]
  101. LeftShoulder = Torso["Left Shoulder"]
  102. RightHip = Torso["Right Hip"]
  103. LeftHip = Torso["Left Hip"]
  104. local sick = Instance.new("Sound",Character)
  105. sick.SoundId = "rbxassetid://727237039"
  106. sick.Looped = true
  107. sick.Pitch = 1
  108. sick.Volume = 2
  109. sick:Play()
  110.  
  111. IT = Instance.new
  112. CF = CFrame.new
  113. VT = Vector3.new
  114. RAD = math.rad
  115. C3 = Color3.new
  116. UD2 = UDim2.new
  117. BRICKC = BrickColor.new
  118. ANGLES = CFrame.Angles
  119. EULER = CFrame.fromEulerAnglesXYZ
  120. COS = math.cos
  121. ACOS = math.acos
  122. SIN = math.sin
  123. ASIN = math.asin
  124. ABS = math.abs
  125. MRANDOM = math.random
  126. FLOOR = math.floor
  127.  
  128. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  129. local NEWMESH = IT(MESH)
  130. if MESH == "SpecialMesh" then
  131. NEWMESH.MeshType = MESHTYPE
  132. if MESHID ~= "nil" and MESHID ~= "" then
  133. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  134. end
  135. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  136. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  137. end
  138. end
  139. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  140. NEWMESH.Scale = SCALE
  141. NEWMESH.Parent = PARENT
  142. return NEWMESH
  143. end
  144.  
  145. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  146. local NEWPART = IT("Part")
  147. NEWPART.formFactor = FORMFACTOR
  148. NEWPART.Reflectance = REFLECTANCE
  149. NEWPART.Transparency = TRANSPARENCY
  150. NEWPART.CanCollide = false
  151. NEWPART.Locked = true
  152. NEWPART.Anchored = true
  153. if ANCHOR == false then
  154. NEWPART.Anchored = false
  155. end
  156. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  157. NEWPART.Name = NAME
  158. NEWPART.Size = SIZE
  159. NEWPART.Position = Torso.Position
  160. NEWPART.Material = MATERIAL
  161. NEWPART:BreakJoints()
  162. NEWPART.Parent = PARENT
  163. return NEWPART
  164. end
  165.  
  166. Class_Name = "Void Face"
  167. Weapon_Name = "Add-ons"
  168.  
  169. Player_Size = 1 --Size of the player.
  170. Animation_Speed = 3
  171. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  172.  
  173. local Speed = 16
  174. local Effects2 = {}
  175.  
  176. local function weldBetween(a, b)
  177. local weldd = Instance.new("ManualWeld")
  178. weldd.Part0 = a
  179. weldd.Part1 = b
  180. weldd.C0 = CFrame.new()
  181. weldd.C1 = b.CFrame:inverse() * a.CFrame
  182. weldd.Parent = a
  183. return weldd
  184. end
  185.  
  186. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  187. local acs = Instance.new("Part")
  188. acs.CanCollide = false
  189. acs.Anchored = false
  190. acs.Size = Vector3.new(0,0,0)
  191. acs.CFrame = attachmentpart.CFrame
  192. acs.Parent = Character
  193. acs.BrickColor = color
  194. local meshs = Instance.new("SpecialMesh")
  195. meshs.MeshId = mesh
  196. meshs.TextureId = texture
  197. meshs.Parent = acs
  198. meshs.Scale = scale
  199. meshs.Offset = offset
  200. weldBetween(attachmentpart,acs)
  201. end
  202.  
  203. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  204. if TYPE == "Gem" then
  205. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  206. acs.Anchored = false
  207. acs.CanCollide = false
  208. acs.CFrame = PART.CFrame
  209. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  210. weldBetween(PART,acs)
  211. elseif TYPE == "Skull" then
  212. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  213. acs.Anchored = false
  214. acs.CanCollide = false
  215. acs.CFrame = PART.CFrame
  216. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  217. weldBetween(PART,acs)
  218. elseif TYPE == "Eye" then
  219. local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  220. acs.Anchored = false
  221. acs.CanCollide = false
  222. acs.CFrame = PART.CFrame
  223. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  224. weldBetween(PART,acs)
  225. end
  226. end
  227.  
  228. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  229. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  230. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  231. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  232. local CHANGEDEFENSE = 0
  233. local CHANGEDAMAGE = 0
  234. local CHANGEMOVEMENT = 0
  235. local ANIM = "Idle"
  236. local ATTACK = false
  237. local EQUIPPED = false
  238. local HOLD = false
  239. local COMBO = 1
  240. local Rooted = false
  241. local SINE = 0
  242. local KEYHOLD = false
  243. local CHANGE = 2 / Animation_Speed
  244. local WALKINGANIM = false
  245. local WALK = 0
  246. local VALUE1 = false
  247. local VALUE2 = false
  248. local ROBLOXIDLEANIMATION = IT("Animation")
  249. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  250. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  251. --ROBLOXIDLEANIMATION.Parent = Humanoid
  252. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  253. WEAPONGUI.Name = "Weapon GUI"
  254. local Weapon = IT("Model")
  255. Weapon.Name = Weapon_Name
  256. local Effects = IT("Folder", Weapon)
  257. Effects.Name = "Effects"
  258. local ANIMATOR = Humanoid.Animator
  259. local ANIMATE = Character.Animate
  260. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  261. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  262. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  263. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  264. local TAUNTS = {"368794227","368794903","368794985"}
  265. local UNANCHOR = true
  266.  
  267. ArtificialHB = Instance.new("BindableEvent", script)
  268. ArtificialHB.Name = "ArtificialHB"
  269.  
  270. script:WaitForChild("ArtificialHB")
  271.  
  272. frame = Frame_Speed
  273. tf = 0
  274. allowframeloss = false
  275. tossremainder = false
  276. lastframe = tick()
  277. script.ArtificialHB:Fire()
  278.  
  279. game:GetService("RunService").Heartbeat:connect(function(s, p)
  280. tf = tf + s
  281. if tf >= frame then
  282. if allowframeloss then
  283. script.ArtificialHB:Fire()
  284. lastframe = tick()
  285. else
  286. for i = 1, math.floor(tf / frame) do
  287. script.ArtificialHB:Fire()
  288. end
  289. lastframe = tick()
  290. end
  291. if tossremainder then
  292. tf = 0
  293. else
  294. tf = tf - frame * math.floor(tf / frame)
  295. end
  296. end
  297. end)
  298.  
  299. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  300. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  301. end
  302.  
  303. function PositiveAngle(NUMBER)
  304. if NUMBER >= 0 then
  305. NUMBER = 0
  306. end
  307. return NUMBER
  308. end
  309.  
  310. function NegativeAngle(NUMBER)
  311. if NUMBER <= 0 then
  312. NUMBER = 0
  313. end
  314. return NUMBER
  315. end
  316.  
  317. function Swait(NUMBER)
  318. if NUMBER == 0 or NUMBER == nil then
  319. ArtificialHB.Event:wait()
  320. else
  321. for i = 1, NUMBER do
  322. ArtificialHB.Event:wait()
  323. end
  324. end
  325. end
  326.  
  327. function QuaternionFromCFrame(cf)
  328. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  329. local trace = m00 + m11 + m22
  330. if trace > 0 then
  331. local s = math.sqrt(1 + trace)
  332. local recip = 0.5 / s
  333. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  334. else
  335. local i = 0
  336. if m11 > m00 then
  337. i = 1
  338. end
  339. if m22 > (i == 0 and m00 or m11) then
  340. i = 2
  341. end
  342. if i == 0 then
  343. local s = math.sqrt(m00 - m11 - m22 + 1)
  344. local recip = 0.5 / s
  345. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  346. elseif i == 1 then
  347. local s = math.sqrt(m11 - m22 - m00 + 1)
  348. local recip = 0.5 / s
  349. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  350. elseif i == 2 then
  351. local s = math.sqrt(m22 - m00 - m11 + 1)
  352. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  353. end
  354. end
  355. end
  356.  
  357. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  358. local xs, ys, zs = x + x, y + y, z + z
  359. local wx, wy, wz = w * xs, w * ys, w * zs
  360. local xx = x * xs
  361. local xy = x * ys
  362. local xz = x * zs
  363. local yy = y * ys
  364. local yz = y * zs
  365. local zz = z * zs
  366. 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))
  367. end
  368.  
  369. function QuaternionSlerp(a, b, t)
  370. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  371. local startInterp, finishInterp;
  372. if cosTheta >= 0.0001 then
  373. if (1 - cosTheta) > 0.0001 then
  374. local theta = ACOS(cosTheta)
  375. local invSinTheta = 1 / SIN(theta)
  376. startInterp = SIN((1 - t) * theta) * invSinTheta
  377. finishInterp = SIN(t * theta) * invSinTheta
  378. else
  379. startInterp = 1 - t
  380. finishInterp = t
  381. end
  382. else
  383. if (1 + cosTheta) > 0.0001 then
  384. local theta = ACOS(-cosTheta)
  385. local invSinTheta = 1 / SIN(theta)
  386. startInterp = SIN((t - 1) * theta) * invSinTheta
  387. finishInterp = SIN(t * theta) * invSinTheta
  388. else
  389. startInterp = t - 1
  390. finishInterp = t
  391. end
  392. end
  393. 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
  394. end
  395.  
  396. function Clerp(a, b, t)
  397. local qa = {QuaternionFromCFrame(a)}
  398. local qb = {QuaternionFromCFrame(b)}
  399. local ax, ay, az = a.x, a.y, a.z
  400. local bx, by, bz = b.x, b.y, b.z
  401. local _t = 1 - t
  402. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  403. end
  404.  
  405. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  406. local frame = IT("Frame")
  407. frame.BackgroundTransparency = TRANSPARENCY
  408. frame.BorderSizePixel = BORDERSIZEPIXEL
  409. frame.Position = POSITION
  410. frame.Size = SIZE
  411. frame.BackgroundColor3 = COLOR
  412. frame.BorderColor3 = BORDERCOLOR
  413. frame.Name = NAME
  414. frame.Parent = PARENT
  415. return frame
  416. end
  417.  
  418. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  419. local label = IT("TextLabel")
  420. label.BackgroundTransparency = 1
  421. label.Size = UD2(1, 0, 1, 0)
  422. label.Position = UD2(0, 0, 0, 0)
  423. label.TextColor3 = TEXTCOLOR
  424. label.TextStrokeTransparency = STROKETRANSPARENCY
  425. label.TextTransparency = TRANSPARENCY
  426. label.FontSize = TEXTFONTSIZE
  427. label.Font = TEXTFONT
  428. label.BorderSizePixel = BORDERSIZEPIXEL
  429. label.TextScaled = false
  430. label.Text = TEXT
  431. label.Name = NAME
  432. label.Parent = PARENT
  433. return label
  434. end
  435.  
  436. function NoOutlines(PART)
  437. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  438. end
  439.  
  440.  
  441. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  442. local NEWWELD = IT(TYPE)
  443. NEWWELD.Part0 = PART0
  444. NEWWELD.Part1 = PART1
  445. NEWWELD.C0 = C0
  446. NEWWELD.C1 = C1
  447. NEWWELD.Parent = PARENT
  448. return NEWWELD
  449. end
  450.  
  451. local sound = IT("Sound",nil)
  452.  
  453. function CreateSound(ID, PARENT, VOLUME, PITCH)
  454. local NEWSOUND = nil
  455. coroutine.resume(coroutine.create(function()
  456. NEWSOUND = sound:Clone()
  457. NEWSOUND.Parent = PARENT
  458. NEWSOUND.Volume = VOLUME
  459. NEWSOUND.Pitch = PITCH
  460. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  461. Swait()
  462. NEWSOUND:play()
  463. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  464. end))
  465. return NEWSOUND
  466. end
  467.  
  468. function CFrameFromTopBack(at, top, back)
  469. local right = top:Cross(back)
  470. return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  471. end
  472.  
  473. function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  474. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  475. local mesh = IT("SpecialMesh",wave)
  476. mesh.MeshType = "FileMesh"
  477. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  478. mesh.Scale = SIZE
  479. mesh.Offset = VT(0,0,-SIZE.X/8)
  480. wave.CFrame = CFRAME
  481. coroutine.resume(coroutine.create(function(PART)
  482. for i = 1, WAIT do
  483. Swait()
  484. mesh.Scale = mesh.Scale + GROW
  485. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  486. if DOESROT == true then
  487. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  488. end
  489. wave.Transparency = wave.Transparency + (0.5/WAIT)
  490. if wave.Transparency > 0.99 then
  491. wave:remove()
  492. end
  493. end
  494. end))
  495. end
  496.  
  497. function CreateCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  498. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  499. local mesh = IT("SpecialMesh",wave)
  500. mesh.MeshType = "FileMesh"
  501. mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
  502. mesh.Scale = SIZE
  503. mesh.Offset = VT(0,0,-SIZE.X/8)
  504. wave.CFrame = CFRAME
  505. coroutine.resume(coroutine.create(function(PART)
  506. for i = 1, WAIT do
  507. Swait()
  508. mesh.Scale = mesh.Scale + GROW
  509. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  510. if DOESROT == true then
  511. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  512. end
  513. wave.Transparency = wave.Transparency + (0.5/WAIT)
  514. if wave.Transparency > 0.99 then
  515. wave:remove()
  516. end
  517. end
  518. end))
  519. end
  520.  
  521. function CreateIceCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  522. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  523. local mesh = IT("SpecialMesh",wave)
  524. mesh.MeshType = "FileMesh"
  525. mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
  526. mesh.Scale = SIZE
  527. mesh.Offset = VT(0,0,-SIZE.X/8)
  528. wave.CFrame = CFRAME
  529. coroutine.resume(coroutine.create(function(PART)
  530. for i = 1, WAIT do
  531. Swait()
  532. mesh.Scale = mesh.Scale + GROW
  533. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  534. if DOESROT == true then
  535. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  536. end
  537. wave.Transparency = wave.Transparency + (0.5/WAIT)
  538. if wave.Transparency > 0.99 then
  539. wave:remove()
  540. end
  541. end
  542. end))
  543. end
  544.  
  545. function CreateSpikeball(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  546. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  547. local mesh = IT("SpecialMesh",wave)
  548. mesh.MeshType = "FileMesh"
  549. mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
  550. mesh.Scale = SIZE
  551. mesh.Offset = VT(0,0,-SIZE.X/8)
  552. wave.CFrame = CFRAME
  553. coroutine.resume(coroutine.create(function(PART)
  554. for i = 1, WAIT do
  555. Swait()
  556. mesh.Scale = mesh.Scale + GROW
  557. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  558. if DOESROT == true then
  559. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  560. end
  561. wave.Transparency = wave.Transparency + (0.5/WAIT)
  562. if wave.Transparency > 0.99 then
  563. wave:remove()
  564. end
  565. end
  566. end))
  567. end
  568.  
  569. function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  570. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  571. local mesh = IT("SpecialMesh",wave)
  572. mesh.MeshType = "FileMesh"
  573. mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  574. mesh.Scale = SIZE
  575. wave.CFrame = CFRAME
  576. coroutine.resume(coroutine.create(function(PART)
  577. for i = 1, WAIT do
  578. Swait()
  579. mesh.Scale = mesh.Scale + GROW
  580. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  581. if DOESROT == true then
  582. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  583. end
  584. wave.Transparency = wave.Transparency + (0.5/WAIT)
  585. if wave.Transparency > 0.99 then
  586. wave:remove()
  587. end
  588. end
  589. end))
  590. end
  591.  
  592. function CreateTornado(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
  593. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  594. local mesh = IT("SpecialMesh",wave)
  595. mesh.MeshType = "FileMesh"
  596. mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  597. mesh.Scale = SIZE
  598. wave.CFrame = CFRAME
  599. coroutine.resume(coroutine.create(function(PART)
  600. for i = 1, WAIT do
  601. Swait()
  602. mesh.Scale = mesh.Scale + GROW
  603. if DOESROT == true then
  604. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  605. end
  606. wave.Transparency = wave.Transparency + (0.5/WAIT)
  607. if wave.Transparency > 0.99 then
  608. wave:remove()
  609. end
  610. end
  611. end))
  612. end
  613.  
  614. function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
  615. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  616. local mesh = IT("SpecialMesh",wave)
  617. mesh.MeshType = "FileMesh"
  618. mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  619. mesh.Scale = SIZE
  620. mesh.Offset = VT(0,0,0)
  621. wave.CFrame = CFRAME
  622. coroutine.resume(coroutine.create(function(PART)
  623. for i = 1, WAIT do
  624. Swait()
  625. mesh.Scale = mesh.Scale + GROW
  626. if DOESROT == true then
  627. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  628. end
  629. wave.Transparency = wave.Transparency + (0.5/WAIT)
  630. if wave.Transparency > 0.99 then
  631. wave:remove()
  632. end
  633. end
  634. end))
  635. end
  636.  
  637. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  638. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  639. local mesh = IT("SpecialMesh",wave)
  640. mesh.MeshType = "Sphere"
  641. mesh.Scale = SIZE
  642. mesh.Offset = VT(0,0,0)
  643. wave.CFrame = CFRAME
  644. coroutine.resume(coroutine.create(function(PART)
  645. for i = 1, WAIT do
  646. Swait()
  647. mesh.Scale = mesh.Scale + GROW
  648. wave.Transparency = wave.Transparency + (1/WAIT)
  649. if wave.Transparency > 0.99 then
  650. wave:remove()
  651. end
  652. end
  653. end))
  654. end
  655.  
  656. function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
  657. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
  658. local mesh = IT("BlockMesh",wave)
  659. wave.CFrame = CFRAME
  660. coroutine.resume(coroutine.create(function(PART)
  661. for i = 1, WAIT do
  662. Swait()
  663. mesh.Scale = mesh.Scale + GROW
  664. wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  665. wave.Transparency = wave.Transparency + (1/WAIT)
  666. if wave.Transparency > 0.99 then
  667. wave:remove()
  668. end
  669. end
  670. end))
  671. end
  672.  
  673. function MakeForm(PART,TYPE)
  674. if TYPE == "Cyl" then
  675. local MSH = IT("CylinderMesh",PART)
  676. elseif TYPE == "Ball" then
  677. local MSH = IT("SpecialMesh",PART)
  678. MSH.MeshType = "Sphere"
  679. elseif TYPE == "Wedge" then
  680. local MSH = IT("SpecialMesh",PART)
  681. MSH.MeshType = "Wedge"
  682. elseif TYPE == "Head" then
  683. local MSH = IT("SpecialMesh",PART)
  684. MSH.Scale = VT(1.25,1.25,1.25)
  685. end
  686. end
  687.  
  688. function CheckTableForString(Table, String)
  689. for i, v in pairs(Table) do
  690. if string.find(string.lower(String), string.lower(v)) then
  691. return true
  692. end
  693. end
  694. return false
  695. end
  696.  
  697. function CheckIntangible(Hit)
  698. local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
  699. if Hit and Hit.Parent then
  700. if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
  701. return true
  702. end
  703. end
  704. return false
  705. end
  706.  
  707. Debris = game:GetService("Debris")
  708.  
  709. function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
  710. local Direction = CFrame.new(StartPos, Vec).lookVector
  711. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  712. local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
  713. if RayHit and CheckIntangible(RayHit) then
  714. if DelayIfHit then
  715. wait()
  716. end
  717. RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
  718. end
  719. return RayHit, RayPos, RayNormal
  720. end
  721.  
  722. function CreateMagicCircle()
  723. local sinkhole = IT("Part")
  724. sinkhole.Size = VT(0,0,0)
  725. sinkhole.Parent = Effects
  726. sinkhole.Material = "Neon"
  727. sinkhole.Color = C3(0,0,0)
  728. sinkhole.Anchored = true
  729. sinkhole.CanCollide = false
  730. sinkhole.Transparency = 1
  731. local decal = IT("Decal",sinkhole)
  732. decal.Face = "Top"
  733. decal.Texture = "http://www.roblox.com/asset/?id=1260793696"
  734. local decal2 = IT("Decal",sinkhole)
  735. decal2.Face = "Bottom"
  736. decal2.Texture = "http://www.roblox.com/asset/?id=1260793696"
  737. return sinkhole
  738. end
  739.  
  740. function CreateGUICircle(TARGET)
  741. local GUI = Instance.new("BillboardGui",Character)
  742. GUI.Size = UDim2.new(0,0,0,0)
  743. GUI.Adornee = TARGET
  744. local GUI2 = IT("ImageLabel",GUI)
  745. GUI2.BackgroundTransparency = 1
  746. GUI2.BorderSizePixel = 0
  747. GUI2.Size = UDim2.new(1,0,1,0)
  748. GUI2.SizeConstraint = "RelativeYY"
  749. GUI.AlwaysOnTop = true
  750. GUI2.Image = "http://www.roblox.com/asset/?id=1260793696"
  751. return GUI,GUI2
  752. end
  753.  
  754. function CastWarpOutlines(TARGET)
  755. coroutine.resume(coroutine.create(function()
  756. local T = TARGET:GetChildren()
  757. for i = 1, # T do
  758. local child = T[i]
  759. if child.ClassName == "Part" or child.ClassName == "MeshPart" then
  760. local clone = child:Clone()
  761. clone.Parent = Effects
  762. clone.Anchored = true
  763. clone.CanCollide = false
  764. clone:ClearAllChildren()
  765. clone.CFrame = child.CFrame
  766. if clone.Name == "Head" then
  767. clone.Size = VT(clone.Size.Y,clone.Size.Y,clone.Size.Y)
  768. end
  769. if clone.ClassName == "MeshPart" then
  770. clone.TextureID = ""
  771. end
  772. clone.BrickColor = BRICKC"Black"
  773. clone.Material = "Neon"
  774. coroutine.resume(coroutine.create(function()
  775. for i = 1, 200 do
  776. Swait()
  777. clone.Transparency = clone.Transparency + 0.005
  778. clone.Size = clone.Size + VT(0.001,0.001,0.001)
  779. end
  780. clone:remove()
  781. end))
  782. end
  783. end
  784. end))
  785. end
  786.  
  787. function turnto(position)
  788. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  789. end
  790.  
  791. local face = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Face mask", VT(1.001,1.001,1.001),false)
  792. local weld = CreateWeldOrSnapOrMotor("Weld", face, Head, face, CF(0.02,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  793. MakeForm(face,"Head")
  794. local part = CreatePart(3, Weapon, "Neon", 0, 0, "Royal purple", "Eye", VT(0.4,0.25,0.2),false)
  795. local weld = CreateWeldOrSnapOrMotor("Weld", part, Head, part, CF(0.15,0.28,-0.53) * ANGLES(RAD(15), RAD(0), RAD(25)), CF(0, 0, 0))
  796. MakeForm(part,"Ball")
  797. local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Eye", VT(0.1,0.1,0.15),false)
  798. local PupilWeld = CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
  799. MakeForm(Eye,"Ball")
  800.  
  801. for _, c in pairs(Weapon:GetChildren()) do
  802. if c.ClassName == "Part" then
  803. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  804. end
  805. end
  806.  
  807. Weapon.Parent = Character
  808.  
  809. Humanoid.Died:connect(function()
  810. ATTACK = true
  811. end)
  812.  
  813. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  814. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  815. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  816. local BODYGYRO = IT("BodyGyro", STATPART)
  817. local BODYPOSITION = IT("BodyPosition", STATPART)
  818. BODYPOSITION.P = 2000
  819. BODYPOSITION.D = 100
  820. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  821. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  822. game:GetService("Debris"):AddItem(STATPART ,5)
  823. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  824. BILLBOARDGUI.Adornee = STATPART
  825. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  826. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  827. BILLBOARDGUI.AlwaysOnTop = false
  828. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  829. TEXTLABEL.BackgroundTransparency = 1
  830. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  831. TEXTLABEL.Text = TEXT
  832. TEXTLABEL.Font = "SciFi"
  833. TEXTLABEL.FontSize="Size42"
  834. TEXTLABEL.TextColor3 = COLOR
  835. TEXTLABEL.TextStrokeTransparency = 1
  836. TEXTLABEL.TextScaled = true
  837. TEXTLABEL.TextWrapped = true
  838. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  839. if LABELTYPE == "Normal" then
  840. for i = 1, 20 do
  841. STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
  842. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  843. end
  844. elseif LABELTYPE == "Debuff" then
  845. for i = 1, 20 do
  846. STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
  847. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  848. end
  849. elseif LABELTYPE == "Shock" then
  850. local ORIGIN = STATPART.Position
  851. for i = 1, 20 do
  852. STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
  853. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  854. end
  855. end
  856. THEPART.Parent = nil
  857. end),STATPART, BODYPOSITION, TEXTLABEL)
  858. end
  859.  
  860. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping,DoesWarp,Instakill,HasChain)
  861. local dmg = math.random(min,max)
  862. for i,v in ipairs(workspace:GetChildren()) do
  863. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  864. local body = v:GetChildren()
  865. for part = 1, #body do
  866. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  867. if(body[part].Position - position).Magnitude < radius then
  868. if v.ClassName == "Model" then
  869. if v:FindFirstChildOfClass("Humanoid") then
  870. local HUMAN = v:FindFirstChildOfClass("Humanoid")
  871. if HUMAN.Health ~= 0 then
  872. if HasChain == true then
  873. local defence = Instance.new("BoolValue",v)
  874. defence.Name = ("HitBy"..Player.Name)
  875. game:GetService("Debris"):AddItem(defence, 1)
  876. coroutine.resume(coroutine.create(function()
  877. local TORSO = v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
  878. if TORSO then
  879. --print("Found "..v.Name.."'s Torso")
  880. local PART = IT("Part",Effects)
  881. PART.Anchored = true
  882. PART.CanCollide = false
  883. PART.Transparency = 1
  884. PART.CFrame = CF(position)
  885. Debris:AddItem(PART,15)
  886. local A = IT("Attachment",PART)
  887. --TORSO.Anchored = true
  888. local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
  889. --print("Chain start")
  890. Front.CFrame = CF(position)
  891. Front.CanCollide = true
  892. CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
  893. local B = IT("Attachment",Front)
  894. local ChainLink = IT("Beam",Effects)
  895. ChainLink.Texture = "rbxassetid://1262544869"
  896. ChainLink.TextureSpeed = 0
  897. ChainLink.FaceCamera = true
  898. ChainLink.Width0 = 3
  899. ChainLink.Attachment0 = A
  900. ChainLink.Attachment1 = B
  901. ChainLink.TextureMode = "Static"
  902. local bv = Instance.new("BodyVelocity")
  903. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  904. bv.velocity = CF(Front.Position,TORSO.Position).lookVector*500
  905. bv.Parent = Front
  906. bv.Name = "MOVE"
  907. --print("Chain made")
  908. coroutine.resume(coroutine.create(function()
  909. Swait(30)
  910. bv:remove()
  911. local POS = Front.Position
  912. Front.CanCollide = false
  913. local onefourth = POS:Lerp(position, 0.25) + Vector3.new(0,0,0)
  914. local threefourths = POS:Lerp(position, 0.75) + Vector3.new(0,0,0)
  915. for i = 0, 1, 0.07 do
  916. Swait()
  917. Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, position, i))
  918. end
  919. Front:remove()
  920. ChainLink:remove()
  921. end))
  922. local harm = Front.Touched:Connect(function(hit)
  923. impale(Front,hit)
  924. end)
  925. end
  926. end))
  927. elseif DoesWarp == true then
  928. local defence = Instance.new("BoolValue",v)
  929. defence.Name = ("HitBy"..Player.Name)
  930. game:GetService("Debris"):AddItem(defence, 0.001)
  931. local TORSO = v:FindFirstChild("HumanoidRootPart") or v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
  932. Warp(TORSO,Instakill)
  933. else
  934. if CanBeDodgedByJumping == true then
  935. if body[part].Position.Y < position.Y+5 then
  936. if math.random(1,100) < critrate+1 then
  937. HUMAN.Health = HUMAN.Health - dmg*critmultiplier
  938. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  939. else
  940. HUMAN.Health = HUMAN.Health - dmg
  941. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  942. end
  943. local defence = Instance.new("BoolValue",v)
  944. defence.Name = ("HitBy"..Player.Name)
  945. game:GetService("Debris"):AddItem(defence, 0.01)
  946. end
  947. else
  948. if beserk == true then
  949. HUMAN.Health = 0
  950. end
  951. if math.random(1,100) < critrate+1 then
  952. HUMAN.Health = HUMAN.Health - dmg*critmultiplier
  953. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  954. else
  955. HUMAN.Health = HUMAN.Health - dmg
  956. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  957. end
  958. local defence = Instance.new("BoolValue",v)
  959. defence.Name = ("HitBy"..Player.Name)
  960. game:GetService("Debris"):AddItem(defence, 0.01)
  961. end
  962. end
  963. end
  964. end
  965. end
  966. --body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  967. end
  968. end
  969. end
  970. if v.ClassName == "Part" then
  971. if v.Anchored == false and (v.Position - position).Magnitude < radius then
  972. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  973. end
  974. end
  975. end
  976. end
  977. end
  978.  
  979. function Warp(Victim,WarpToVoid)
  980. print("Warping "..Victim.Name.."...")
  981. Victim.Anchored = true
  982. coroutine.resume(coroutine.create(function()
  983. local GUI,GUI2 = CreateGUICircle(Victim)
  984. CreateSound("1208650519", Victim, 10, 1)
  985. for i = 1, 100 do
  986. Swait()
  987. GUI.Size = GUI.Size + UDim2.new(0.2,0,0.2,0)
  988. GUI2.Rotation = GUI2.Rotation + 4
  989. end
  990. CastWarpOutlines(Victim.Parent)
  991. if WarpToVoid == false then
  992. Victim.CFrame = Victim.CFrame * CF(MRANDOM(-65,65),0,MRANDOM(-65,65))
  993. CreateSound("1177785010", Victim, 10, 1)
  994. local HUMANOID = Victim.Parent:FindFirstChildOfClass("Humanoid")
  995. if HUMANOID ~= nil then
  996. local dmg = MRANDOM(75,95)
  997. HUMANOID.Health = HUMANOID.Health - dmg
  998. StatLabel("Normal", Victim.CFrame * CF(0, 0 + (Victim.Size.z - 1), 0), "WARPED/"..dmg, C3(0.3, 0, 0.3))
  999. end
  1000. for i = 1, 50 do
  1001. Swait()
  1002. GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
  1003. GUI2.Rotation = GUI2.Rotation - 8
  1004. end
  1005. Victim.Anchored = false
  1006. GUI:remove()
  1007. elseif WarpToVoid == true then
  1008. CastWarpOutlines(Victim.Parent)
  1009. q = Victim.Parent:GetChildren()
  1010. for i = 1, #q do
  1011. if q[i] ~= Victim then
  1012. q[i]:remove()
  1013. end
  1014. end
  1015. CreateSound("1177785010", Victim, 10, 1)
  1016. Victim.Transparency = 1
  1017. for i = 1, 50 do
  1018. Swait()
  1019. GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
  1020. GUI2.Rotation = GUI2.Rotation - 8
  1021. end
  1022. Victim.Parent:remove()
  1023. end
  1024. end))
  1025. end
  1026.  
  1027. function killnearest(position,range,maxstrength)
  1028. for i,v in ipairs(workspace:GetChildren()) do
  1029. local body = v:GetChildren()
  1030. for part = 1, #body do
  1031. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1032. if(body[part].Position - position).Magnitude < range then
  1033. if v.ClassName == "Model" then
  1034. v:BreakJoints()
  1035. end
  1036. --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
  1037. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1038. end
  1039. end
  1040. end
  1041. if v.ClassName == "Part" then
  1042. if v.Anchored == false and (v.Position - position).Magnitude < range then
  1043. --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
  1044. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1045. end
  1046. end
  1047. end
  1048. end
  1049.  
  1050. function AttackTemplate()
  1051. ATTACK = true
  1052. Rooted = false
  1053. for i=0, 1, 0.1 / Animation_Speed do
  1054. Swait()
  1055. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1056. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1057. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1058. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1059. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1060. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1061. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1062. end
  1063. ATTACK = false
  1064. Rooted = false
  1065. end
  1066.  
  1067. function VoidWarp()
  1068. ATTACK = true
  1069. Rooted = false
  1070. for i=0, 0.2, 0.1 / Animation_Speed do
  1071. Swait()
  1072. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1073. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1074. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1075. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1076. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1077. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1078. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1079. end
  1080. AoEDamage(Torso.Position,15,0,0,0,false,0,0,false,true,false)
  1081. CreateSound("1208650519", Torso, 10, 2.5)
  1082. local GUI,GUI2 = CreateGUICircle(Torso)
  1083. for i = 1, 50 do
  1084. Swait()
  1085. GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
  1086. GUI2.Rotation = GUI2.Rotation + i/10
  1087. end
  1088. CastWarpOutlines(Character)
  1089. local POS = Torso.Position
  1090. RootPart.CFrame = CF(CF(Mouse.Hit.p)*CF(0,2,0).p,POS)
  1091. Swait()
  1092. CreateSound("1177785010", Torso, 10, 1)
  1093. coroutine.resume(coroutine.create(function()
  1094. for i = 1, 50 do
  1095. Swait()
  1096. GUI.Size = GUI.Size - UDim2.new(i/60,0,i/60,0)
  1097. GUI2.Rotation = GUI2.Rotation - i/10
  1098. end
  1099. end))
  1100. ATTACK = false
  1101. Rooted = false
  1102. end
  1103.  
  1104. local asd = Instance.new("ParticleEmitter")
  1105. asd.Color = ColorSequence.new(Color3.new(1, 0, 0), Color3.new(.5, 0, 0))
  1106. asd.LightEmission = .1
  1107. asd.Size = NumberSequence.new(0.2)
  1108. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  1109. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2),NumberSequenceKeypoint.new(1, 5)})
  1110. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  1111. asd.Transparency = bbb
  1112. asd.Size = aaa
  1113. asd.ZOffset = .9
  1114. asd.Acceleration = Vector3.new(0, -15, 0)
  1115. asd.LockedToPart = false
  1116. asd.EmissionDirection = "Back"
  1117. asd.Lifetime = NumberRange.new(1, 2)
  1118. asd.Rotation = NumberRange.new(-100, 100)
  1119. asd.RotSpeed = NumberRange.new(-100, 100)
  1120. asd.Speed = NumberRange.new(25,35)
  1121. asd.Enabled = false
  1122. asd.VelocitySpread = 5
  1123.  
  1124. function getbloody(victim,amount)
  1125. local PART = IT("Part",Effects)
  1126. PART.Transparency = 1
  1127. PART.Size = victim.Size
  1128. PART.Anchored = true
  1129. PART.CanCollide = false
  1130. PART.CFrame = CF(victim.Position,Torso.Position)
  1131. local HITPLAYERSOUNDS = {"356551938","264486467"}
  1132. Debris:AddItem(PART,5)
  1133. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1134. local prtcl = asd:Clone()
  1135. prtcl.Parent = PART
  1136. prtcl:Emit(amount*10)
  1137. end
  1138.  
  1139. function impale(chain,hit)
  1140. if hit.Parent ~= Character and hit.Parent:FindFirstChildOfClass("Humanoid") then
  1141. local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  1142. if humanoid.Health ~= 0 then
  1143. hit.Parent:BreakJoints()
  1144. getbloody(hit,15)
  1145. local prtcl = asd:Clone()
  1146. prtcl.Parent = chain
  1147. prtcl.Enabled = true
  1148. prtcl.Speed = NumberRange.new(0)
  1149. prtcl.Size = NumberSequence.new(0.2)
  1150. end
  1151. end
  1152. end
  1153.  
  1154. function clerp(a, b, t)
  1155. return a:lerp(b, t)
  1156. end
  1157.  
  1158. function newBezier(startpos, pos2, pos3, endpos, t)
  1159. local A = clerp(startpos, pos2, t)
  1160. local B = clerp(pos2, pos3, t)
  1161. local C = clerp(pos3, endpos, t)
  1162. local lerp1 = clerp(A, B, t)
  1163. local lerp2 = clerp(B, C, t)
  1164. local cubic = clerp(lerp1, lerp2, t)
  1165. return cubic
  1166. end
  1167.  
  1168. function VoidChain()
  1169. ATTACK = true
  1170. Rooted = false
  1171. for i=0, 2, 0.1 / Animation_Speed do
  1172. turnto(Mouse.Hit.p)
  1173. Swait()
  1174. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.25 / Animation_Speed)
  1175. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(5)), 0.25 / Animation_Speed)
  1176. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.2,0.30,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1177. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
  1178. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
  1179. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1180. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1181. end
  1182. CreateSound("1208650519", RightArm, 10, 2)
  1183. local RING = CreateMagicCircle()
  1184. RING.CFrame = RightArm.CFrame * CF(0,-1.1,0)
  1185. for i = 1, 5 do
  1186. turnto(Mouse.Hit.p)
  1187. Swait()
  1188. local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
  1189. MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
  1190. MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
  1191. RING.CFrame = RightArm.CFrame * CF(0,-1.1,0) * ANGLES(RAD(0),RAD(i*2),RAD(0))
  1192. RING.Size = RING.Size + VT(1,0,1)
  1193. end
  1194. coroutine.resume(coroutine.create(function()
  1195. local POS = Mouse.Hit.p
  1196. local A = IT("Attachment",RING)
  1197. for i = 1, 15 do
  1198. Swait(MRANDOM(0,5))
  1199. coroutine.resume(coroutine.create(function()
  1200. local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
  1201. --print("Chain start")
  1202. Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
  1203. Front.CanCollide = true
  1204. CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
  1205. local B = IT("Attachment",Front)
  1206. local ChainLink = IT("Beam",RING)
  1207. ChainLink.Texture = "rbxassetid://1262544869"
  1208. ChainLink.TextureSpeed = 0
  1209. ChainLink.FaceCamera = true
  1210. ChainLink.Width0 = 3
  1211. ChainLink.Attachment0 = A
  1212. ChainLink.Attachment1 = B
  1213. ChainLink.CurveSize0 = MRANDOM(-5,5)
  1214. ChainLink.CurveSize1 = MRANDOM(-5,5)
  1215. ChainLink.TextureMode = "Static"
  1216. local bv = Instance.new("BodyVelocity")
  1217. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1218. bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
  1219. bv.Parent = Front
  1220. bv.Name = "MOVE"
  1221. --print("Chain made")
  1222. coroutine.resume(coroutine.create(function()
  1223. Swait(50)
  1224. bv:remove()
  1225. local POS = Front.Position
  1226. Front.CanCollide = false
  1227. local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
  1228. local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
  1229. for i = 0, 1, 0.07 do
  1230. Swait()
  1231. Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
  1232. end
  1233. Front:remove()
  1234. ChainLink:remove()
  1235. end))
  1236. local harm = Front.Touched:Connect(function(hit)
  1237. impale(Front,hit)
  1238. end)
  1239. end))
  1240. end
  1241. Swait(60)
  1242. for i = 1, 5 do
  1243. Swait()
  1244. RING.Size = RING.Size - VT(1,0,1)
  1245. end
  1246. RING:remove()
  1247. end))
  1248. ATTACK = false
  1249. Rooted = false
  1250. end
  1251.  
  1252. function VortexLeash()
  1253. ATTACK = true
  1254. Rooted = true
  1255. for i=0, 1, 0.1 / Animation_Speed do
  1256. Swait()
  1257. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1258. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1259. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.2,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1260. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -1) * ANGLES(RAD(60), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1261. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 , 0) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed/8)
  1262. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 * Player_Size, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.5 / Animation_Speed/8)
  1263. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.5 / Animation_Speed/8)
  1264. end
  1265. local RING = CreateMagicCircle()
  1266. CreateSound("1208650519", RING, 10, 1.5)
  1267. RING.CFrame = RootPart.CFrame * CF(0,-2.8,0)
  1268. local FRAME = RootPart.CFrame * CF(0,-2.8,0)
  1269. for i = 1, 75 do
  1270. Swait()
  1271. local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
  1272. MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
  1273. MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
  1274. RING.CFrame = RING.CFrame * ANGLES(RAD(0),RAD(i/5),RAD(0))
  1275. RING.Size = RING.Size + VT(1,0,1)
  1276. end
  1277. coroutine.resume(coroutine.create(function()
  1278. for i = 1, 450 do
  1279. Swait(2)
  1280. local FRAME = CF(RING.CFrame * CF(MRANDOM(-25,25),MRANDOM(0,35),MRANDOM(-25,25)).p,RING.Position)
  1281. MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
  1282. MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
  1283. MagicSphere(VT(0,0,0),10,RING.CFrame,"Royal purple",VT(2,4,2))
  1284. MagicSphere(VT(0,0,0),10,RING.CFrame,"Really black",VT(1.8,3.8,1.8))
  1285. local A = IT("Attachment",RING)
  1286. local POS = RING.CFrame * CF(MRANDOM(-150,150),MRANDOM(5,50),MRANDOM(-150,150)).p
  1287. coroutine.resume(coroutine.create(function()
  1288. local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
  1289. --print("Chain start")
  1290. Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
  1291. Front.CanCollide = false
  1292. CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 2, 1)
  1293. local B = IT("Attachment",Front)
  1294. local ChainLink = IT("Beam",RING)
  1295. ChainLink.Texture = "rbxassetid://1262544869"
  1296. ChainLink.TextureSpeed = 0
  1297. ChainLink.FaceCamera = true
  1298. ChainLink.Width0 = 3
  1299. ChainLink.Attachment0 = A
  1300. ChainLink.Attachment1 = B
  1301. ChainLink.CurveSize0 = MRANDOM(-5,5)
  1302. ChainLink.CurveSize1 = MRANDOM(-5,5)
  1303. ChainLink.TextureMode = "Static"
  1304. local bv = Instance.new("BodyVelocity")
  1305. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1306. bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
  1307. bv.Parent = Front
  1308. bv.Name = "MOVE"
  1309. --print("Chain made")
  1310. coroutine.resume(coroutine.create(function()
  1311. Swait(50)
  1312. bv:remove()
  1313. local POS = Front.Position
  1314. Front.CanCollide = false
  1315. local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
  1316. local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
  1317. for i = 0, 1, 0.07 do
  1318. Swait()
  1319. Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
  1320. end
  1321. Front:remove()
  1322. ChainLink:remove()
  1323. end))
  1324. local harm = Front.Touched:Connect(function(hit)
  1325. impale(Front,hit)
  1326. end)
  1327. end))
  1328. AoEDamage(RING.Position,75,0,0,0,0,0,0,0,0,0,true)
  1329. RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(5),RAD(0))
  1330. end
  1331. Swait(65)
  1332. for i = 1, 75 do
  1333. Swait()
  1334. RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(-i/5),RAD(0))
  1335. RING.Size = RING.Size - VT(1,0,1)
  1336. end
  1337. RING:remove()
  1338. end))
  1339. ATTACK = false
  1340. Rooted = false
  1341. end
  1342.  
  1343. function VortexBarrier()
  1344. ATTACK = true
  1345. Rooted = true
  1346. for i=0, 2, 0.1 / Animation_Speed do
  1347. Swait()
  1348. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1349. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1350. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1351. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1352. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1353. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1354. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1355. end
  1356. for i=0, 0.5, 0.1 / Animation_Speed do
  1357. Swait()
  1358. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1359. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1360. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.27,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1361. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75,0) * ANGLES(RAD(0), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1362. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1363. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
  1364. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(15)), 0.5 / Animation_Speed)
  1365. end
  1366. CreateSound("1208650519", Effects, 10, 1)
  1367. local GUI,GUI2 = CreateGUICircle(Torso)
  1368. local GUI3,GUI4 = CreateGUICircle(Torso)
  1369. for i = 1, 200 do
  1370. Swait()
  1371. local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
  1372. MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
  1373. MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
  1374. local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
  1375. MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
  1376. MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
  1377. GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
  1378. GUI2.Rotation = GUI2.Rotation + i/10
  1379. GUI3.Size = GUI3.Size + UDim2.new(i/120,0,i/120,0)
  1380. GUI4.Rotation = GUI4.Rotation - i/10
  1381. end
  1382. AoEDamage(Torso.Position,150,0,0,0,false,0,0,false,true,true)
  1383. Swait(25)
  1384. for i = 1, 100 do
  1385. Swait()
  1386. GUI.Size = GUI.Size - UDim2.new(i/15,0,i/15,0)
  1387. GUI2.Rotation = GUI2.Rotation - i/5
  1388. GUI3.Size = GUI3.Size - UDim2.new(i/30,0,i/30,0)
  1389. GUI4.Rotation = GUI4.Rotation + i/5
  1390. end
  1391. GUI:remove()
  1392. GUI3:remove()
  1393. ATTACK = false
  1394. Rooted = false
  1395. end
  1396.  
  1397. function MouseDown(Mouse)
  1398. if ATTACK == false then
  1399. end
  1400. end
  1401.  
  1402. function MouseUp(Mouse)
  1403. HOLD = false
  1404. end
  1405.  
  1406. function KeyDown(Key)
  1407. KEYHOLD = true
  1408. if Key == "z" and ATTACK == false then
  1409. VoidWarp()
  1410. end
  1411.  
  1412. if Key == "b" and ATTACK == false then
  1413. VoidChain()
  1414. end
  1415.  
  1416. if Key == "c" and ATTACK == false then
  1417. VortexLeash()
  1418. end
  1419.  
  1420. if Key == "v" and ATTACK == false then
  1421. VortexBarrier()
  1422. end
  1423.  
  1424. if Key == "x" and ATTACK == false then
  1425. end
  1426.  
  1427. if Key == "t" and ATTACK == false then
  1428. CreateSound(TAUNTS[MRANDOM(1,#TAUNTS)], Head, 10, 1)
  1429. end
  1430. end
  1431.  
  1432. function KeyUp(Key)
  1433. KEYHOLD = false
  1434. end
  1435.  
  1436. Mouse.Button1Down:connect(function(NEWKEY)
  1437. MouseDown(NEWKEY)
  1438. end)
  1439. Mouse.Button1Up:connect(function(NEWKEY)
  1440. MouseUp(NEWKEY)
  1441. end)
  1442. Mouse.KeyDown:connect(function(NEWKEY)
  1443. KeyDown(NEWKEY)
  1444. end)
  1445. Mouse.KeyUp:connect(function(NEWKEY)
  1446. KeyUp(NEWKEY)
  1447. end)
  1448.  
  1449. function unanchor()
  1450. if UNANCHOR == true then
  1451. g = Character:GetChildren()
  1452. for i = 1, #g do
  1453. if g[i].ClassName == "Part" then
  1454. g[i].Anchored = false
  1455. end
  1456. end
  1457. end
  1458. end
  1459.  
  1460. local FF = IT("ForceField",Character)
  1461. FF.Visible = false
  1462.  
  1463. Humanoid.Changed:connect(function(Jump)
  1464. if Jump == "Jump" and (Disable_Jump == true) then
  1465. Humanoid.Jump = false
  1466. end
  1467. end)
  1468.  
  1469. Speed = 45
  1470.  
  1471. while true do
  1472. Swait()
  1473. ANIMATE.Parent = nil
  1474. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  1475. IDLEANIMATION:Play()
  1476. SINE = SINE + CHANGE
  1477. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1478. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1479. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  1480. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  1481. local WALKSPEEDVALUE = 3
  1482. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1483. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1484. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1485. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1486. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1487. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1488. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1489. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1490. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1491. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1492. end
  1493. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1494. ANIM = "Jump"
  1495. if ATTACK == false then
  1496. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1497. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1498. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.3,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1499. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1500. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1., 0.5, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1501. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1502. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1503. end
  1504. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1505. ANIM = "Fall"
  1506. if ATTACK == false then
  1507. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1508. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1509. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.22,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  1510. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1511. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1512. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1513. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1514. end
  1515. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1516. ANIM = "Idle"
  1517. if ATTACK == false then
  1518. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1519. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  1520. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.2,0.25,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1521. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1522. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1523. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1524. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1525. end
  1526. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1527. ANIM = "Walk"
  1528. WALK = WALK + 1 / Animation_Speed
  1529. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  1530. WALK = 0
  1531. if WALKINGANIM == true then
  1532. WALKINGANIM = false
  1533. elseif WALKINGANIM == false then
  1534. WALKINGANIM = true
  1535. end
  1536. end
  1537. --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1538. --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1539. if ATTACK == false then
  1540. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1541. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1542. PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.26,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1543. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1544. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-120 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1545. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, -0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1546. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1547. end
  1548. end
  1549. if #Effects2>0 then
  1550. for e=1,#Effects2 do
  1551. if Effects2[e]~=nil then
  1552. local Thing=Effects2[e]
  1553. if Thing~=nil then
  1554. local Part=Thing[1]
  1555. local Mode=Thing[2]
  1556. local Delay=Thing[3]
  1557. local IncX=Thing[4]
  1558. local IncY=Thing[5]
  1559. local IncZ=Thing[6]
  1560. local Part2=Thing[8]
  1561. if Thing[1].Transparency<=1 then
  1562. if Thing[2]=="Block1" then
  1563. Thing[1].CFrame=Thing[1].CFrame
  1564. Mesh=Thing[1].Mesh
  1565. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1566. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1567. elseif Thing[2]=="Cylinder" then
  1568. Mesh=Thing[1].Mesh
  1569. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1570. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1571. elseif Thing[2]=="Blood" then
  1572. Mesh=Thing[7]
  1573. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1574. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1575. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1576. elseif Thing[2]=="Elec" then
  1577. Mesh=Thing[1].Mesh
  1578. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1579. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1580. elseif Thing[2]=="Disappear" then
  1581. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1582. end
  1583. else
  1584. Part.Parent=nil
  1585. table.remove(Effects2,e)
  1586. end
  1587. end
  1588. end
  1589. end
  1590. end
  1591. unanchor()
  1592. Humanoid.MaxHealth = "inf"
  1593. Humanoid.Health = "inf"
  1594. if Rooted == false then
  1595. Disable_Jump = false
  1596. Humanoid.WalkSpeed = Speed
  1597. elseif Rooted == true then
  1598. Disable_Jump = true
  1599. Humanoid.WalkSpeed = 0
  1600. end
  1601. q = Character:GetChildren()
  1602. for u = 1, #q do
  1603. if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
  1604. if q[u].Handle:FindFirstChild("FaceFrontAttachment") or q[u].Handle:FindFirstChild("HatAttachment") then
  1605. q[u].Handle.Transparency = 1
  1606. end
  1607. end
  1608. end
  1609. local MATHS = {"0","1"}
  1610. Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
  1611. Humanoid.PlatformStand = false
  1612. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement