Advertisement
Mediakiller7Cool

ererere

Dec 15th, 2019
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 76.92 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,game,owner = owner,game
  3. local RealPlayer = Player
  4. do
  5. print("FE Compatibility code V2 by Mokiros")
  6. local RealPlayer = RealPlayer
  7. script.Parent = RealPlayer.Character
  8.  
  9. --Fake event to make stuff like Mouse.KeyDown work
  10. local Disconnect_Function = function(this)
  11. this[1].Functions[this[2]] = nil
  12. end
  13. local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  14. local FakeEvent_Metatable = {__index={
  15. Connect = function(this,f)
  16. local i = tostring(math.random(0,10000))
  17. while this.Functions[i] do
  18. i = tostring(math.random(0,10000))
  19. end
  20. this.Functions[i] = f
  21. return setmetatable({this,i},Disconnect_Metatable)
  22. end
  23. }}
  24. FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  25. local function fakeEvent()
  26. return setmetatable({Functions={}},FakeEvent_Metatable)
  27. end
  28.  
  29. --Creating fake input objects with fake variables
  30. local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  31. FakeMouse.keyUp = FakeMouse.KeyUp
  32. FakeMouse.keyDown = FakeMouse.KeyDown
  33. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  34. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  35. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  36. end}
  37. --Merged 2 functions into one by checking amount of arguments
  38. CAS.UnbindAction = CAS.BindAction
  39.  
  40. --This function will trigger the events that have been :Connect()'ed
  41. local function TriggerEvent(self,ev,...)
  42. for _,f in pairs(self[ev].Functions) do
  43. f(...)
  44. end
  45. end
  46. FakeMouse.TriggerEvent = TriggerEvent
  47. UIS.TriggerEvent = TriggerEvent
  48.  
  49. --Client communication
  50. local Event = Instance.new("RemoteEvent")
  51. Event.Name = "UserInput_Event"
  52. Event.OnServerEvent:Connect(function(plr,io)
  53. if plr~=RealPlayer then return end
  54. FakeMouse.Target = io.Target
  55. FakeMouse.Hit = io.Hit
  56. if not io.isMouse then
  57. local b = io.UserInputState == Enum.UserInputState.Begin
  58. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  59. return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  60. end
  61. if io.UserInputType == Enum.UserInputType.MouseButton2 then
  62. return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  63. end
  64. for _,t in pairs(CAS.Actions) do
  65. for _,k in pairs(t.Keys) do
  66. if k==io.KeyCode then
  67. t.Function(t.Name,io.UserInputState,io)
  68. end
  69. end
  70. end
  71. FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  72. UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  73. end
  74. end)
  75. Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  76. local Mouse = owner:GetMouse()
  77. local UIS = game:GetService("UserInputService")
  78. local input = function(io,RobloxHandled)
  79. if RobloxHandled then return end
  80. --Since InputObject is a client-side instance, we create and pass table instead
  81. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  82. end
  83. UIS.InputBegan:Connect(input)
  84. UIS.InputEnded:Connect(input)
  85. local h,t
  86. --Give the server mouse data every second frame, but only if the values changed
  87. --If player is not moving their mouse, client won't fire events
  88. local HB = game:GetService("RunService").Heartbeat
  89. while true do
  90. if h~=Mouse.Hit or t~=Mouse.Target then
  91. h,t=Mouse.Hit,Mouse.Target
  92. Event:FireServer({isMouse=true,Target=t,Hit=h})
  93. end
  94. --Wait 2 frames
  95. for i=1,2 do
  96. HB:Wait()
  97. end
  98. end]==],script)
  99.  
  100. ----Sandboxed game object that allows the usage of client-side methods and services
  101. --Real game object
  102. local RealGame = game
  103.  
  104. --Metatable for fake service
  105. local FakeService_Metatable = {
  106. __index = function(self,k)
  107. local s = rawget(self,"_RealService")
  108. if s then
  109. return typeof(s[k])=="function"
  110. and function(_,...)return s[k](s,...)end or s[k]
  111. end
  112. end,
  113. __newindex = function(self,k,v)
  114. local s = rawget(self,"_RealService")
  115. if s then s[k]=v end
  116. end
  117. }
  118. local function FakeService(t,RealService)
  119. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  120. return setmetatable(t,FakeService_Metatable)
  121. end
  122.  
  123. --Fake game object
  124. local FakeGame = {
  125. GetService = function(self,s)
  126. return rawget(self,s) or RealGame:GetService(s)
  127. end,
  128. Players = FakeService({
  129. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  130. },"Players"),
  131. UserInputService = FakeService(UIS,"UserInputService"),
  132. ContextActionService = FakeService(CAS,"ContextActionService"),
  133. RunService = FakeService({
  134. _btrs = {},
  135. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  136. BindToRenderStep = function(self,name,_,fun)
  137. self._btrs[name] = self.Heartbeat:Connect(fun)
  138. end,
  139. UnbindFromRenderStep = function(self,name)
  140. self._btrs[name]:Disconnect()
  141. end,
  142. },"RunService")
  143. }
  144. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  145. FakeGame.service = FakeGame.GetService
  146. FakeService(FakeGame,game)
  147. --Changing owner to fake player object to support owner:GetMouse()
  148. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  149. end
  150. --//====================================================\\--
  151. --|| ONLY 90s KIDS REMEMBER
  152. --|| ABYSS EYE BY SHACKLUSTER
  153. --\\====================================================//--
  154.  
  155. wait(0.2)
  156.  
  157. Player = game:GetService("Players").LocalPlayer
  158. PlayerGui = Player.PlayerGui
  159. Cam = workspace.CurrentCamera
  160. Backpack = Player.Backpack
  161. Character = Player.Character
  162. Humanoid = Character.Humanoid
  163. Mouse = Player:GetMouse()
  164. RootPart = Character["HumanoidRootPart"]
  165. Torso = Character["Torso"]
  166. Head = Character["Head"]
  167. RightArm = Character["Right Arm"]
  168. LeftArm = Character["Left Arm"]
  169. RightLeg = Character["Right Leg"]
  170. LeftLeg = Character["Left Leg"]
  171. RootJoint = RootPart["RootJoint"]
  172. Neck = Torso["Neck"]
  173. RightShoulder = Torso["Right Shoulder"]
  174. LeftShoulder = Torso["Left Shoulder"]
  175. RightHip = Torso["Right Hip"]
  176. LeftHip = Torso["Left Hip"]
  177.  
  178. IT = Instance.new
  179. CF = CFrame.new
  180. VT = Vector3.new
  181. RAD = math.rad
  182. C3 = Color3.new
  183. UD2 = UDim2.new
  184. BRICKC = BrickColor.new
  185. ANGLES = CFrame.Angles
  186. EULER = CFrame.fromEulerAnglesXYZ
  187. COS = math.cos
  188. ACOS = math.acos
  189. SIN = math.sin
  190. ASIN = math.asin
  191. ABS = math.abs
  192. MRANDOM = math.random
  193. FLOOR = math.floor
  194.  
  195. --//=================================\\
  196. --|| USEFUL VALUES
  197. --\\=================================//
  198.  
  199. Animation_Speed = 3
  200. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  201. local Speed = 25
  202. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  203. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  204. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  205. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  206. local DAMAGEMULTIPLIER = 1
  207. local ANIM = "Idle"
  208. local ATTACK = false
  209. local EQUIPPED = false
  210. local HOLD = false
  211. local COMBO = 1
  212. local Rooted = false
  213. local SINE = 0
  214. local KEYHOLD = false
  215. local CHANGE = 2 / Animation_Speed
  216. local WALKINGANIM = false
  217. local VALUE1 = false
  218. local VALUE2 = false
  219. local ROBLOXIDLEANIMATION = IT("Animation")
  220. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  221. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  222. --ROBLOXIDLEANIMATION.Parent = Humanoid
  223. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  224. WEAPONGUI.Name = "Weapon GUI"
  225. local Effects = IT("Folder", Character)
  226. Effects.Name = "Effects"
  227. local ANIMATOR = Humanoid.Animator
  228. local ANIMATE = Character.Animate
  229. local UNANCHOR = true
  230. local FADERS = true
  231.  
  232. --//=================================\\
  233. --\\=================================//
  234.  
  235.  
  236. --//=================================\\
  237. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  238. --\\=================================//
  239.  
  240. ArtificialHB = Instance.new("BindableEvent", script)
  241. ArtificialHB.Name = "ArtificialHB"
  242.  
  243. script:WaitForChild("ArtificialHB")
  244.  
  245. frame = Frame_Speed
  246. tf = 0
  247. allowframeloss = false
  248. tossremainder = false
  249. lastframe = tick()
  250. script.ArtificialHB:Fire()
  251.  
  252. game:GetService("RunService").Heartbeat:connect(function(s, p)
  253. tf = tf + s
  254. if tf >= frame then
  255. if allowframeloss then
  256. ArtificialHB:Fire()
  257. lastframe = tick()
  258. else
  259. for i = 1, math.floor(tf / frame) do
  260. ArtificialHB:Fire()
  261. end
  262. lastframe = tick()
  263. end
  264. if tossremainder then
  265. tf = 0
  266. else
  267. tf = tf - frame * math.floor(tf / frame)
  268. end
  269. end
  270. end)
  271.  
  272. --//=================================\\
  273. --\\=================================//
  274.  
  275. --//=================================\\
  276. --|| SOME FUNCTIONS
  277. --\\=================================//
  278.  
  279. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  280. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  281. end
  282.  
  283. function PositiveAngle(NUMBER)
  284. if NUMBER >= 0 then
  285. NUMBER = 0
  286. end
  287. return NUMBER
  288. end
  289.  
  290. function NegativeAngle(NUMBER)
  291. if NUMBER <= 0 then
  292. NUMBER = 0
  293. end
  294. return NUMBER
  295. end
  296.  
  297. function Swait(NUMBER)
  298. if NUMBER == 0 or NUMBER == nil then
  299. ArtificialHB.Event:wait()
  300. else
  301. for i = 1, NUMBER do
  302. ArtificialHB.Event:wait()
  303. end
  304. end
  305. end
  306.  
  307. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  308. local NEWMESH = IT(MESH)
  309. if MESH == "SpecialMesh" then
  310. NEWMESH.MeshType = MESHTYPE
  311. if MESHID ~= "nil" and MESHID ~= "" then
  312. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  313. end
  314. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  315. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  316. end
  317. end
  318. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  319. NEWMESH.Scale = SCALE
  320. NEWMESH.Parent = PARENT
  321. return NEWMESH
  322. end
  323.  
  324. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  325. local NEWPART = IT("Part")
  326. NEWPART.formFactor = FORMFACTOR
  327. NEWPART.Reflectance = REFLECTANCE
  328. NEWPART.Transparency = TRANSPARENCY
  329. NEWPART.CanCollide = false
  330. NEWPART.Locked = true
  331. NEWPART.Anchored = true
  332. if ANCHOR == false then
  333. NEWPART.Anchored = false
  334. end
  335. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  336. NEWPART.Name = NAME
  337. NEWPART.Size = SIZE
  338. NEWPART.Position = Torso.Position
  339. NEWPART.Material = MATERIAL
  340. NEWPART:BreakJoints()
  341. NEWPART.Parent = PARENT
  342. return NEWPART
  343. end
  344.  
  345. local function weldBetween(a, b)
  346. local weldd = Instance.new("ManualWeld")
  347. weldd.Part0 = a
  348. weldd.Part1 = b
  349. weldd.C0 = CFrame.new()
  350. weldd.C1 = b.CFrame:inverse() * a.CFrame
  351. weldd.Parent = a
  352. return weldd
  353. end
  354.  
  355.  
  356. function QuaternionFromCFrame(cf)
  357. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  358. local trace = m00 + m11 + m22
  359. if trace > 0 then
  360. local s = math.sqrt(1 + trace)
  361. local recip = 0.5 / s
  362. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  363. else
  364. local i = 0
  365. if m11 > m00 then
  366. i = 1
  367. end
  368. if m22 > (i == 0 and m00 or m11) then
  369. i = 2
  370. end
  371. if i == 0 then
  372. local s = math.sqrt(m00 - m11 - m22 + 1)
  373. local recip = 0.5 / s
  374. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  375. elseif i == 1 then
  376. local s = math.sqrt(m11 - m22 - m00 + 1)
  377. local recip = 0.5 / s
  378. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  379. elseif i == 2 then
  380. local s = math.sqrt(m22 - m00 - m11 + 1)
  381. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  382. end
  383. end
  384. end
  385.  
  386. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  387. local xs, ys, zs = x + x, y + y, z + z
  388. local wx, wy, wz = w * xs, w * ys, w * zs
  389. local xx = x * xs
  390. local xy = x * ys
  391. local xz = x * zs
  392. local yy = y * ys
  393. local yz = y * zs
  394. local zz = z * zs
  395. 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))
  396. end
  397.  
  398. function QuaternionSlerp(a, b, t)
  399. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  400. local startInterp, finishInterp;
  401. if cosTheta >= 0.0001 then
  402. if (1 - cosTheta) > 0.0001 then
  403. local theta = ACOS(cosTheta)
  404. local invSinTheta = 1 / SIN(theta)
  405. startInterp = SIN((1 - t) * theta) * invSinTheta
  406. finishInterp = SIN(t * theta) * invSinTheta
  407. else
  408. startInterp = 1 - t
  409. finishInterp = t
  410. end
  411. else
  412. if (1 + cosTheta) > 0.0001 then
  413. local theta = ACOS(-cosTheta)
  414. local invSinTheta = 1 / SIN(theta)
  415. startInterp = SIN((t - 1) * theta) * invSinTheta
  416. finishInterp = SIN(t * theta) * invSinTheta
  417. else
  418. startInterp = t - 1
  419. finishInterp = t
  420. end
  421. end
  422. 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
  423. end
  424.  
  425. function Clerp(a, b, t)
  426. local qa = {QuaternionFromCFrame(a)}
  427. local qb = {QuaternionFromCFrame(b)}
  428. local ax, ay, az = a.x, a.y, a.z
  429. local bx, by, bz = b.x, b.y, b.z
  430. local _t = 1 - t
  431. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  432. end
  433.  
  434. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  435. local frame = IT("Frame")
  436. frame.BackgroundTransparency = TRANSPARENCY
  437. frame.BorderSizePixel = BORDERSIZEPIXEL
  438. frame.Position = POSITION
  439. frame.Size = SIZE
  440. frame.BackgroundColor3 = COLOR
  441. frame.BorderColor3 = BORDERCOLOR
  442. frame.Name = NAME
  443. frame.Parent = PARENT
  444. return frame
  445. end
  446.  
  447. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  448. local label = IT("TextLabel")
  449. label.BackgroundTransparency = 1
  450. label.Size = UD2(1, 0, 1, 0)
  451. label.Position = UD2(0, 0, 0, 0)
  452. label.TextColor3 = TEXTCOLOR
  453. label.TextStrokeTransparency = STROKETRANSPARENCY
  454. label.TextTransparency = TRANSPARENCY
  455. label.FontSize = TEXTFONTSIZE
  456. label.Font = TEXTFONT
  457. label.BorderSizePixel = BORDERSIZEPIXEL
  458. label.TextScaled = false
  459. label.Text = TEXT
  460. label.Name = NAME
  461. label.Parent = PARENT
  462. return label
  463. end
  464.  
  465. function NoOutlines(PART)
  466. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  467. end
  468.  
  469. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  470. local NEWWELD = IT(TYPE)
  471. NEWWELD.Part0 = PART0
  472. NEWWELD.Part1 = PART1
  473. NEWWELD.C0 = C0
  474. NEWWELD.C1 = C1
  475. NEWWELD.Parent = PARENT
  476. return NEWWELD
  477. end
  478.  
  479. local S = IT("Sound")
  480. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  481. local NEWSOUND = nil
  482. coroutine.resume(coroutine.create(function()
  483. NEWSOUND = S:Clone()
  484. NEWSOUND.Parent = PARENT
  485. NEWSOUND.Volume = VOLUME
  486. NEWSOUND.Pitch = PITCH
  487. NEWSOUND.SoundId = "rbxassetid://"..ID
  488. NEWSOUND:play()
  489. if DOESLOOP == true then
  490. NEWSOUND.Looped = true
  491. else
  492. repeat wait(1) until NEWSOUND.Playing == false
  493. NEWSOUND:remove()
  494. end
  495. end))
  496. return NEWSOUND
  497. end
  498.  
  499. function CFrameFromTopBack(at, top, back)
  500. local right = top:Cross(back)
  501. 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)
  502. end
  503.  
  504. function R_RANDOM(CFRAME,DIST)
  505. return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
  506. end
  507.  
  508. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
  509. function WACKYEFFECT(Table)
  510. local TYPE = (Table.EffectType or "Sphere")
  511. local SIZE = (Table.Size or VT(1,1,1))
  512. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  513. local TRANSPARENCY = (Table.Transparency or 0)
  514. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  515. local CFRAME = (Table.CFrame or Torso.CFrame)
  516. local MOVEDIRECTION = (Table.MoveToPos or nil)
  517. local ROTATION1 = (Table.RotationX or 0)
  518. local ROTATION2 = (Table.RotationY or 0)
  519. local ROTATION3 = (Table.RotationZ or 0)
  520. local MATERIAL = (Table.Material or "Neon")
  521. local COLOR = (Table.Color or C3(1,1,1))
  522. local TIME = (Table.Time or 45)
  523. local SOUNDID = (Table.SoundID or nil)
  524. local SOUNDPITCH = (Table.SoundPitch or nil)
  525. local SOUNDVOLUME = (Table.SoundVolume or nil)
  526. local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  527. local BOOMERANG = (Table.Boomerang or 0)
  528. local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  529. coroutine.resume(coroutine.create(function()
  530. local PLAYSSOUND = false
  531. local SOUND = nil
  532. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  533. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  534. PLAYSSOUND = true
  535. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  536. end
  537. EFFECT.Color = COLOR
  538. local MSH = nil
  539. if TYPE == "Sphere" then
  540. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  541. elseif TYPE == "Block" or TYPE == "Box" then
  542. MSH = IT("BlockMesh",EFFECT)
  543. MSH.Scale = SIZE
  544. elseif TYPE == "Wave" then
  545. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  546. elseif TYPE == "Ring" then
  547. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  548. elseif TYPE == "Slash" then
  549. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  550. elseif TYPE == "Round Slash" then
  551. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  552. elseif TYPE == "Swirl" then
  553. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  554. elseif TYPE == "Skull" then
  555. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  556. elseif TYPE == "Crystal" then
  557. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  558. end
  559. if MSH ~= nil then
  560. local BOOMR1 = 1+BOOMERANG/50
  561. local BOOMR2 = 1+SIZEBOOMERANG/50
  562. local MOVESPEED = nil
  563. if MOVEDIRECTION ~= nil then
  564. if USEBOOMERANGMATH == true then
  565. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  566. else
  567. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  568. end
  569. end
  570. local GROWTH = nil
  571. if USEBOOMERANGMATH == true then
  572. GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  573. else
  574. GROWTH = (SIZE - ENDSIZE)
  575. end
  576. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  577. if TYPE == "Block" then
  578. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  579. else
  580. EFFECT.CFrame = CFRAME
  581. end
  582. if USEBOOMERANGMATH == true then
  583. for LOOP = 1, TIME+1 do
  584. Swait()
  585. MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
  586. if TYPE == "Wave" then
  587. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  588. end
  589. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  590. if TYPE == "Block" then
  591. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  592. else
  593. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  594. end
  595. if MOVEDIRECTION ~= nil then
  596. local ORI = EFFECT.Orientation
  597. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  598. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  599. end
  600. end
  601. else
  602. for LOOP = 1, TIME+1 do
  603. Swait()
  604. MSH.Scale = MSH.Scale - GROWTH/TIME
  605. if TYPE == "Wave" then
  606. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  607. end
  608. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  609. if TYPE == "Block" then
  610. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  611. else
  612. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  613. end
  614. if MOVEDIRECTION ~= nil then
  615. local ORI = EFFECT.Orientation
  616. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  617. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  618. end
  619. end
  620. end
  621. EFFECT.Transparency = 1
  622. if PLAYSSOUND == false then
  623. EFFECT:remove()
  624. else
  625. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  626. EFFECT:remove()
  627. end
  628. else
  629. if PLAYSSOUND == false then
  630. EFFECT:remove()
  631. else
  632. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  633. EFFECT:remove()
  634. end
  635. end
  636. end))
  637. end
  638.  
  639. function MakeForm(PART,TYPE)
  640. if TYPE == "Cyl" then
  641. local MSH = IT("CylinderMesh",PART)
  642. elseif TYPE == "Ball" then
  643. local MSH = IT("SpecialMesh",PART)
  644. MSH.MeshType = "Sphere"
  645. elseif TYPE == "Wedge" then
  646. local MSH = IT("SpecialMesh",PART)
  647. MSH.MeshType = "Wedge"
  648. end
  649. end
  650.  
  651. Debris = game:GetService("Debris")
  652.  
  653. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  654. local DIRECTION = CF(StartPos,EndPos).lookVector
  655. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  656. return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, DIRECTION * Distance), Ignore)
  657. end
  658.  
  659. local DECAL = IT("Decal")
  660. function MagicRing()
  661. local RING = CreatePart(3, Effects, "Granite", 0, 1, "Maroon", "MagicRing", VT(0,0,0),true)
  662. local MESH = IT("BlockMesh",RING)
  663. local BOTTOMTEXTURE = DECAL:Clone()
  664. BOTTOMTEXTURE.Parent = RING
  665. BOTTOMTEXTURE.Face = "Bottom"
  666. BOTTOMTEXTURE.Name = "BottomTexture"
  667. local TOPTEXTURE = DECAL:Clone()
  668. TOPTEXTURE.Parent = RING
  669. TOPTEXTURE.Face = "Top"
  670. TOPTEXTURE.Name = "TopTexture"
  671. BOTTOMTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
  672. TOPTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
  673. BOTTOMTEXTURE.Color3 = C3(0,0,0)
  674. TOPTEXTURE.Color3 = C3(0,0,0)
  675. return RING,MESH,TOPTEXTURE,BOTTOMTEXTURE
  676. end
  677.  
  678. function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
  679. coroutine.resume(coroutine.create(function()
  680. local FADE = IT("Model",Effects)
  681. if PARENT ~= nil then
  682. FADE.Parent = PARENT
  683. end
  684. FADE.Name = "FadingEffect"
  685. for _, c in pairs(Character:GetChildren()) do
  686. if c.ClassName == "Part" then
  687. c.CanCollide = false
  688. local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Pearl"), c.Name, c.Size, true)
  689. FADER.CFrame = c.CFrame
  690. FADER.Color = COLOR
  691. if FADER.Name == "Head" then
  692. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
  693. elseif FADER.Name == "HumanoidRootPart" then
  694. FADE.PrimaryPart = FADER
  695. FADER.Transparency = 1
  696. end
  697. end
  698. end
  699. local TRANS = 0.25/TIMER
  700. local DIST = nil
  701. if MOVEDIRECTION ~= nil then
  702. DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
  703. end
  704. for i = 1, TIMER do
  705. Swait()
  706. for _, c in pairs(FADE:GetChildren()) do
  707. if c.ClassName == "Part" then
  708. c.Transparency = c.Transparency + TRANS
  709. end
  710. end
  711. if MOVEDIRECTION ~= nil then
  712. local ORI = FADE.PrimaryPart.Orientation
  713. FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
  714. end
  715. end
  716. FADE:remove()
  717. end))
  718. end
  719.  
  720. --//=================================\\
  721. --|| GUIS AND MISC
  722. --\\=================================//
  723.  
  724. local EYE = CreatePart(3, Character, "Neon", 0, 0, BRICKC("Really black"), "TheEye", VT(0.16,0.16,0.16), true)
  725. MakeForm(EYE,"Ball")
  726. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(-0.15, 0.2, -0.57) * ANGLES(RAD(0), RAD(15), RAD(0)) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  727. local BLADE = CreatePart(3, Effects, "Fabric", 0, 0, BRICKC("Really black"), "Abyssal_Sword", VT(1, 7.6, 1), true)
  728. CreateMesh("SpecialMesh", BLADE, "FileMesh", "93117521", "1015990846", VT(1,1,1), VT(0,0,0))
  729. BLADE.CFrame = RootPart.CFrame * CF(0.4,1,4) * ANGLES(RAD(195), RAD(15), RAD(15))
  730.  
  731. local SKILLTEXTCOLOR = C3(0,0,0)
  732. local SKILLFONT = "Fantasy"
  733. local SKILLTEXTSIZE = 4
  734. local SKILLTEXTSIZE2 = 12
  735.  
  736. local ATTACKS = {"Abyssal Shriek - Z","Abyssal Dash - X","Shadow Cloak - C","Black Blast - V","Nightmare Fall - Q"}
  737.  
  738. for i = 1, #ATTACKS do
  739. local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.74, 0, 0.97-(0.04*i), 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill Frame")
  740. local SKILLTEXT = CreateLabel(SKILLFRAME, "["..ATTACKS[i].."]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Skill text")
  741. SKILLTEXT.TextXAlignment = "Right"
  742. SKILLTEXT.Rotation = i*3
  743. end
  744.  
  745. local BMUSIC = IT("Sound",RootPart)
  746. local VOLUME = 5
  747. local PITCH = 1
  748. local SONGID = 1074563286
  749. local A = IT("Attachment",Torso)
  750.  
  751. coroutine.resume(coroutine.create(function()
  752. while wait(1) do
  753. if FADERS == true then
  754. coroutine.resume(coroutine.create(function()
  755. local R,M,T,B = MagicRing()
  756. R.Anchored = false
  757. CreateWeldOrSnapOrMotor("Weld", EYE, EYE, R, CF(0,0,0), CF(0, 0, 0))
  758. local R2,M2,T2,B2 = MagicRing()
  759. R2.Anchored = false
  760. CreateWeldOrSnapOrMotor("Weld", EYE, EYE, R2, CF(0,0,0), CF(0, 0, 0))
  761. for i = 1, 35 do
  762. Swait()
  763. M.Scale = M.Scale + VT(1,0,1)*1.2
  764. T.Transparency = i/35
  765. B.Transparency = i/35
  766. M2.Scale = M2.Scale + VT(1,0,1)*0.6
  767. T2.Transparency = i/35
  768. B2.Transparency = i/35
  769. end
  770. R:Remove()
  771. R2:Remove()
  772. end))
  773. end
  774. end
  775. end))
  776.  
  777. --//=================================\\
  778. --|| DAMAGING
  779. --\\=================================//
  780.  
  781. function ApplyDamage(Humanoid,Damage)
  782. Damage = Damage * DAMAGEMULTIPLIER
  783. if Humanoid.Health < 2000 then
  784. if Humanoid.Health - Damage > 0 then
  785. Humanoid.Health = Humanoid.Health - Damage
  786. else
  787. Humanoid.Parent:BreakJoints()
  788. end
  789. else
  790. Humanoid.Parent:BreakJoints()
  791. end
  792. end
  793.  
  794. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  795. for index, CHILD in pairs(workspace:GetDescendants()) do
  796. if CHILD.ClassName == "Model" and CHILD ~= Character then
  797. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  798. if HUM then
  799. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  800. if TORSO then
  801. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  802. if INSTAKILL == true then
  803. CHILD:BreakJoints()
  804. else
  805. local DMG = MRANDOM(MINDMG,MAXDMG)
  806. ApplyDamage(HUM,DMG)
  807. end
  808. if FLING > 0 then
  809. for _, c in pairs(CHILD:GetChildren()) do
  810. if c:IsA("BasePart") then
  811. local bv = Instance.new("BodyVelocity")
  812. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  813. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  814. bv.Parent = c
  815. Debris:AddItem(bv,0.05)
  816. end
  817. end
  818. end
  819. end
  820. end
  821. end
  822. end
  823. end
  824. end
  825.  
  826. --//=================================\\
  827. --|| ATTACK FUNCTIONS AND STUFF
  828. --\\=================================//
  829.  
  830. function Melee()
  831. ATTACK = true
  832. BLADE.CanCollide = true
  833. Rooted = false
  834. EQUIPPED = true
  835. local HIT = function()
  836. local HITS = {}
  837. local TOUCH = BLADE.Touched:Connect(function(hit)
  838. if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
  839. local HUM = hit.Parent:FindFirstChildOfClass("Humanoid")
  840. local TORSO = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
  841. if TORSO and HUM.Health > 0 then
  842. local PASS = true
  843. for i = 1, #HITS do
  844. if HITS[i] == hit.Parent then
  845. PASS = false
  846. end
  847. end
  848. table.insert(HITS,hit.Parent)
  849. if PASS == true then
  850. ApplyDamage(HUM,MRANDOM(15,25))
  851. end
  852. end
  853. end
  854. end)
  855. return TOUCH
  856. end
  857. if COMBO == 1 then
  858. for i=0, 0.35, 0.1 / Animation_Speed do
  859. Swait()
  860. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
  861. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  862. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  863. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  864. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  865. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  866. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  867. end
  868. CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
  869. local TOUCHED = HIT()
  870. for i=0, 0.5, 0.1 / Animation_Speed do
  871. Swait()
  872. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1 / Animation_Speed)
  873. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 0.9 / Animation_Speed)
  874. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.8, 0.5, -0.7) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(15), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
  875. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  876. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  877. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  878. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  879. end
  880. TOUCHED:Disconnect()
  881. COMBO = 2
  882. elseif COMBO == 2 then
  883. for i=0, 0.35, 0.1 / Animation_Speed do
  884. Swait()
  885. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  886. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  887. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(160), RAD(0), RAD(-5)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  888. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  889. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  890. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  891. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  892. end
  893. CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
  894. local TOUCHED = HIT()
  895. for i=0, 0.35, 0.1 / Animation_Speed do
  896. Swait()
  897. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  898. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
  899. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  900. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  901. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  902. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  903. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  904. end
  905. TOUCHED:Disconnect()
  906. for i=0, 0.2, 0.1 / Animation_Speed do
  907. Swait()
  908. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  909. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
  910. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  911. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  912. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  913. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  914. BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame*CF(4,0.3,0) * ANGLES(RAD(195), RAD(-25), RAD(15)),0.4)
  915. end
  916. COMBO = 1
  917. end
  918. coroutine.resume(coroutine.create(function()
  919. for i = 1, 50 do
  920. Swait()
  921. if ATTACK == true then
  922. break
  923. end
  924. end
  925. if ATTACK == false then
  926. COMBO = 1
  927. end
  928. end))
  929. BLADE.CanCollide = false
  930. ATTACK = false
  931. Rooted = false
  932. EQUIPPED = false
  933. end
  934. function AbyssalShriek()
  935. if ANIM ~= "Fall" and ANIM ~= "Jump" then
  936. ATTACK = true
  937. Rooted = true
  938. for i=0, 0.2, 0.1 / Animation_Speed do
  939. Swait()
  940. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  941. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  942. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  943. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  944. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  945. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  946. end
  947. coroutine.resume(coroutine.create(function()
  948. repeat
  949. Swait()
  950. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  951. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
  952. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  953. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  954. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
  955. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
  956. until ATTACK == false
  957. end))
  958. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position+VT(0,1.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 15})
  959. CreateSound(199978176,Head,5,1,false)
  960. for i = 1, 60 do
  961. Swait()
  962. ApplyAoE(RootPart.Position,17,1,1,0,false)
  963. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
  964. if HITFLOOR then
  965. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(20,1,20), Size2 = VT(25+MRANDOM(0,8),7,25+MRANDOM(0,8)), Transparency = 0.95, Transparency2 = 1, CFrame = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  966. end
  967. local SIZE = VT(1,3,1)
  968. WACKYEFFECT({EffectType = "Sphere", Size = VT(0,0,0), Size2 = SIZE*MRANDOM(10,65)/10, Transparency = 0.5, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,MRANDOM(1,17),MRANDOM(0,12)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 5})
  969. end
  970. wait(0.2)
  971. ATTACK = false
  972. Rooted = false
  973. end
  974. end
  975. function AbyssalDash()
  976. ATTACK = true
  977. Rooted = true
  978. UNANCHOR = false
  979. for i=0, 0.4, 0.1 / Animation_Speed do
  980. Swait()
  981. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  982. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  983. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  984. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  985. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  986. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  987. end
  988. CreateSound(1177785010,Torso,2,1,false)
  989. CreateSound(971125740,Torso,5,1,false)
  990. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  991. for index, CHILD in pairs(Character:GetChildren()) do
  992. if CHILD:IsA("BasePart") then
  993. CHILD.Transparency = CHILD.Transparency + 1
  994. elseif CHILD:IsA("Accessory") then
  995. CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
  996. end
  997. end
  998. local HITS = {}
  999. for i=0, 1, 0.1 / Animation_Speed do
  1000. Swait()
  1001. for index, CHILD in pairs(workspace:GetDescendants()) do
  1002. if CHILD.ClassName == "Model" and CHILD ~= Character then
  1003. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1004. if HUM then
  1005. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1006. if TORSO then
  1007. if (TORSO.Position - RootPart.Position).Magnitude <= 25 then
  1008. local PASS = true
  1009. for E = 1, #HITS do
  1010. if HITS[E] == CHILD then
  1011. PASS = false
  1012. end
  1013. end
  1014. if PASS == true then
  1015. local DMG = MRANDOM(25,45)
  1016. ApplyDamage(HUM,DMG)
  1017. table.insert(HITS,CHILD)
  1018. end
  1019. end
  1020. end
  1021. end
  1022. end
  1023. end
  1024. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(25,0,25), Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,-6) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
  1025. for i = 1, 2 do
  1026. RootPart.CFrame = RootPart.CFrame*CF(0,0,-1)
  1027. CharacterFade(C3(0,0,0),25,R_RANDOM(Torso.CFrame,1.25).p)
  1028. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(65), RAD(0), RAD(0)), 1 / Animation_Speed)
  1029. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1030. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(-25), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1031. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(-25), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1032. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1033. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1034. end
  1035. end
  1036. for index, CHILD in pairs(Character:GetChildren()) do
  1037. if CHILD:IsA("BasePart") then
  1038. CHILD.Transparency = CHILD.Transparency - 1
  1039. elseif CHILD:IsA("Accessory") then
  1040. CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
  1041. end
  1042. end
  1043. for i=1, 25 do
  1044. Swait()
  1045. RootPart.CFrame = RootPart.CFrame*CF(0,0,-((25-i)/25))
  1046. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1047. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1048. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1049. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1050. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-45)), 1 / Animation_Speed)
  1051. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-25), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1052. end
  1053. UNANCHOR = true
  1054. ATTACK = false
  1055. Rooted = false
  1056. end
  1057. function ShadowCloak()
  1058. if ANIM ~= "Fall" and ANIM ~= "Jump" then
  1059. ATTACK = true
  1060. Rooted = false
  1061. UNANCHOR = false
  1062. FADERS = false
  1063. coroutine.resume(coroutine.create(function()
  1064. coroutine.resume(coroutine.create(function()
  1065. for i=1, 25 do
  1066. Swait()
  1067. RootPart.CFrame = RootPart.CFrame*CF(0,(25-i)/25,0)
  1068. end
  1069. end))
  1070. repeat
  1071. Swait()
  1072. BLADE.Transparency = Torso.Transparency
  1073. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1074. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
  1075. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1076. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1077. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
  1078. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
  1079. until ATTACK == false
  1080. end))
  1081. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 0.6, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 12})
  1082. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1083. for i = 1, 50 do
  1084. Swait()
  1085. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  1086. for index, CHILD in pairs(Character:GetChildren()) do
  1087. if CHILD:IsA("BasePart") then
  1088. CHILD.Transparency = CHILD.Transparency + 1/50
  1089. elseif CHILD:IsA("Accessory") then
  1090. CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1/50
  1091. end
  1092. end
  1093. end
  1094. for i = 1, 25 do
  1095. Swait()
  1096. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  1097. end
  1098. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,12,0)) * ANGLES(RAD(0), RAD(RootPart.Orientation.Y), RAD(0))
  1099. for i = 1, 5 do
  1100. WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1101. end
  1102. ApplyAoE(Torso.Position,15,12,22,150,false)
  1103. CreateSound(331666014,Torso,5,1,false)
  1104. for i = 1, 12 do
  1105. Swait()
  1106. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  1107. end
  1108. for i = 1, 50 do
  1109. Swait()
  1110. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  1111. for index, CHILD in pairs(Character:GetChildren()) do
  1112. if CHILD:IsA("BasePart") then
  1113. CHILD.Transparency = CHILD.Transparency - 1/50
  1114. elseif CHILD:IsA("Accessory") then
  1115. CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1/50
  1116. end
  1117. end
  1118. end
  1119. UNANCHOR = true
  1120. ATTACK = false
  1121. Rooted = false
  1122. FADERS = true
  1123. end
  1124. end
  1125. function BlackBlast()
  1126. if ANIM ~= "Fall" and ANIM ~= "Jump" then
  1127. ATTACK = true
  1128. Rooted = true
  1129. local GYRO = IT("BodyGyro",RootPart)
  1130. GYRO.D = 25
  1131. GYRO.P = 20000
  1132. GYRO.MaxTorque = VT(0,4000000,0)
  1133. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1134. CreateSound(429459101,Torso,5,1.5,false)
  1135. local GYROING = true
  1136. coroutine.resume(coroutine.create(function()
  1137. repeat
  1138. Swait()
  1139. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1140. until GYROING == false
  1141. GYRO:Remove()
  1142. end))
  1143. for i=0, 1, 0.1 / Animation_Speed do
  1144. Swait()
  1145. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1146. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1147. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1148. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1149. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  1150. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  1151. end
  1152. for i = 1, 13 do
  1153. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(i,0,i)*2, Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,7.5-i) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
  1154. end
  1155. CreateSound(1368637781,Torso,5,1.5,false)
  1156. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(12,12,12), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1157. for index, CHILD in pairs(Character:GetChildren()) do
  1158. if CHILD:IsA("BasePart") then
  1159. CHILD.Transparency = CHILD.Transparency + 1
  1160. elseif CHILD:IsA("Accessory") then
  1161. CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
  1162. end
  1163. end
  1164. GYROING = false
  1165. coroutine.resume(coroutine.create(function()
  1166. coroutine.resume(coroutine.create(function()
  1167. for i=1, 25 do
  1168. Swait()
  1169. RootPart.CFrame = RootPart.CFrame*CF(0,0,(25-i)/25)
  1170. end
  1171. end))
  1172. repeat
  1173. Swait()
  1174. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  1175. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1176. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
  1177. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1178. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1179. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
  1180. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
  1181. until ATTACK == false
  1182. end))
  1183. coroutine.resume(coroutine.create(function()
  1184. local BULLETCFRAME = RootPart.CFrame
  1185. local EXPLODED = false
  1186. coroutine.resume(coroutine.create(function()
  1187. repeat
  1188. Swait()
  1189. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(10,10,10), Transparency = 0.3, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1190. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(25,25,25), Transparency = 0.8, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1191. until EXPLODED == true
  1192. end))
  1193. for i=1, 50 do
  1194. Swait()
  1195. BULLETCFRAME = BULLETCFRAME*CF(0,0,-((50-i)/15))
  1196. local RAY,HIT,NORM = Raycast(BULLETCFRAME.p,BULLETCFRAME.lookVector,7,Character)
  1197. if RAY then
  1198. ApplyAoE(BULLETCFRAME.p,25,12,54,350,false)
  1199. WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = CF(HIT,HIT+NORM) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 765590102, SoundPitch = MRANDOM(9,11)/10, SoundVolume = 10})
  1200. break
  1201. end
  1202. end
  1203. wait(0.5)
  1204. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(75,75,75), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.7, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1205. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(50,50,50), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 1, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1206. for E = 1, 3 do
  1207. for i = 1, 5 do
  1208. WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1209. end
  1210. end
  1211. ApplyAoE(BULLETCFRAME.p,125,25,75,250,false)
  1212. EXPLODED = true
  1213. for i = 1, 15 do
  1214. Swait()
  1215. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = BULLETCFRAME * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 1, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2})
  1216. end
  1217. end))
  1218. wait(0.5)
  1219. for index, CHILD in pairs(Character:GetChildren()) do
  1220. if CHILD:IsA("BasePart") then
  1221. CHILD.Transparency = CHILD.Transparency - 1
  1222. elseif CHILD:IsA("Accessory") then
  1223. CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
  1224. end
  1225. end
  1226. ATTACK = false
  1227. Rooted = false
  1228. end
  1229. end
  1230. function NightmareFall()
  1231. if ANIM ~= "Fall" and ANIM ~= "Jump" and DAMAGEMULTIPLIER == 1 then
  1232. ATTACK = true
  1233. Rooted = true
  1234. EQUIPPED = true
  1235. CreateSound(160740121,Head,10,1,false)
  1236. for i=0, 2, 0.1 / Animation_Speed do
  1237. Swait()
  1238. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1239. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1240. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.4 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(120), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1241. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1242. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1243. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1244. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  1245. end
  1246. for i=0, 2, 0.1 / Animation_Speed do
  1247. Swait()
  1248. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1249. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1250. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.15 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(140), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1251. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1252. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1253. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1254. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  1255. end
  1256. local SIZE = 0
  1257. local POS = RootPart.Position+VT(0,150,0)
  1258. local BLOWN = false
  1259. coroutine.resume(coroutine.create(function()
  1260. coroutine.resume(coroutine.create(function()
  1261. repeat
  1262. Swait()
  1263. if SIZE > 0 then
  1264. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*2.5, Transparency = 0.3, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1265. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*3, Transparency = 0.8, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1266. end
  1267. until BLOWN == true
  1268. end))
  1269. repeat
  1270. Swait()
  1271. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(12), RAD(25)), 1 / Animation_Speed)
  1272. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(-15)), 1 / Animation_Speed)
  1273. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(180), RAD(15), RAD(17)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1274. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1275. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1276. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1277. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  1278. until ATTACK == false
  1279. end))
  1280. wait(0.2)
  1281. for i = 1, 15 do
  1282. wait(MRANDOM(2,6)/45)
  1283. coroutine.resume(coroutine.create(function()
  1284. local CFRAME = CF(BLADE.Position,POS) * ANGLES(RAD(0), RAD(0), RAD(MRANDOM(-90,90)))
  1285. local HEIGHT = 45/5
  1286. local DISTANCE = (BLADE.Position - POS).Magnitude
  1287. for i = 1, 45 do
  1288. Swait()
  1289. CFRAME = CFRAME * CF(0,(HEIGHT-(i/2.575))/45,-DISTANCE/45)
  1290. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0.3, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 0})
  1291. end
  1292. SIZE = SIZE + 1
  1293. end))
  1294. end
  1295. wait(2.5)
  1296. BLOWN = true
  1297. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(150,50,150), Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.4, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1298. for E = 1, 5 do
  1299. for i = 1, 5 do
  1300. WACKYEFFECT({Time = 50+(E*4), EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1301. end
  1302. end
  1303. CreateSound(288641686,Effects,5,1,false)
  1304. CreateSound(592877506,Effects,5,1,false)
  1305. local HITS = {}
  1306. for index, CHILD in pairs(workspace:GetDescendants()) do
  1307. if CHILD.ClassName == "Model" and CHILD ~= Character then
  1308. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1309. if HUM then
  1310. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1311. if TORSO then
  1312. if (TORSO.Position - RootPart.Position).Magnitude <= 175 then
  1313. local PASS = true
  1314. for E = 1, #HITS do
  1315. if HITS[E] == CHILD then
  1316. PASS = false
  1317. end
  1318. end
  1319. if PASS == true then
  1320. table.insert(HITS,CHILD)
  1321. end
  1322. end
  1323. end
  1324. end
  1325. end
  1326. end
  1327. if #HITS > 0 then
  1328. local DONE = false
  1329. local HUMS = {}
  1330. coroutine.resume(coroutine.create(function()
  1331. for E = 1, #HITS do
  1332. local HUM = HITS[E]:FindFirstChildOfClass("Humanoid")
  1333. table.insert(HUMS,HUM)
  1334. local TORSO = HITS[E]:FindFirstChild("Torso") or HITS[E]:FindFirstChild("UpperTorso")
  1335. local grav = Instance.new("BodyPosition",TORSO)
  1336. grav.D = 850
  1337. grav.P = 4000
  1338. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  1339. grav.Position = TORSO.Position+VT(0,35,0)
  1340. CreateSound(592877506,TORSO,5,0.5,false)
  1341. if TORSO then
  1342. coroutine.resume(coroutine.create(function()
  1343. local B = IT("Attachment",TORSO)
  1344. local ChainLink = IT("Beam",Torso)
  1345. ChainLink.Texture = "rbxassetid://73042633"
  1346. ChainLink.Color = ColorSequence.new(C3(0,0,0))
  1347. ChainLink.TextureSpeed = -1
  1348. ChainLink.FaceCamera = true
  1349. ChainLink.Width0 = 3
  1350. ChainLink.Width1 = 3
  1351. ChainLink.TextureLength = 3
  1352. ChainLink.Attachment0 = A
  1353. ChainLink.Attachment1 = B
  1354. ChainLink.CurveSize0 = 0
  1355. ChainLink.CurveSize1 = 0
  1356. ChainLink.FaceCamera = true
  1357. ChainLink.TextureMode = "Static"
  1358. ChainLink.Transparency = NumberSequence.new(0)
  1359. repeat
  1360. Swait()
  1361. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(0,0,0), Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 35})
  1362. until DONE == true or HUM.Health < 1
  1363. B:Remove()
  1364. ChainLink:Remove()
  1365. grav:Remove()
  1366. if HUM.Health < 1 then
  1367. for E = 1, 2 do
  1368. for i = 1, 3 do
  1369. WACKYEFFECT({Time = 15, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/6, Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1370. end
  1371. end
  1372. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(6,6,6)*TORSO.Size.Z, Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 160772554, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  1373. for _, c in pairs(HITS[E]:GetChildren()) do
  1374. if c:IsA("BasePart") or c:IsA("Accessory") then
  1375. c:remove()
  1376. end
  1377. end
  1378. local BONES = {
  1379. Skull = {MeshId = 36869983,Size = VT(0.7,0.7,0.7)},
  1380. Ribs = {MeshId = 546760032,Size = VT(2.18, 1.884, 1.105)}
  1381. }
  1382. local SELECTABLEBONES = {
  1383. {MeshId = 546760045,Size = VT(0.468, 1.12, 0.346)},
  1384. {MeshId = 546760042,Size = VT(0.366, 0.991, 0.365)},
  1385. {MeshId = 546760029,Size = VT(0.441, 0.799, 0.347)},
  1386. {MeshId = 546760030,Size = VT(0.605, 0.843, 0.4)}
  1387. }
  1388. for i = 1, 9 do
  1389. local CHOSENPIECE = nil
  1390. if i == 1 then
  1391. CHOSENPIECE = BONES.Skull
  1392. elseif i == 2 then
  1393. CHOSENPIECE = BONES.Ribs
  1394. else
  1395. CHOSENPIECE = SELECTABLEBONES[MRANDOM(1,#SELECTABLEBONES)]
  1396. end
  1397. local BONE = CreatePart(3, HITS[E], "Neon", 0, 0, BRICKC("Salmon"), "RIP", CHOSENPIECE.Size, false)
  1398. BONE.CanCollide = true
  1399. BONE.CFrame = TORSO.CFrame*CF(MRANDOM(-10,10)/30,MRANDOM(-10,10)/30,MRANDOM(-10,10)/30)
  1400. if CHOSENPIECE.MeshId == 36869983 then
  1401. CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1)/1.5, VT(0,0,0))
  1402. else
  1403. CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1), VT(0,0,0))
  1404. end
  1405. end
  1406. end
  1407. end))
  1408. end
  1409. end
  1410. wait(1)
  1411. for i = 1, 250 do
  1412. Swait()
  1413. for E = 1, #HUMS do
  1414. if HUMS[E] then
  1415. if HUMS[E].Health > 0 then
  1416. HUMS[E].Health = HUMS[E].Health - 0.3
  1417. DAMAGEMULTIPLIER = DAMAGEMULTIPLIER + 0.0025
  1418. WACKYEFFECT({Time = 10, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(1.5,0,1.5)/20, Transparency = 0.9, Transparency2 = 1, CFrame = CF(Torso.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1419. end
  1420. end
  1421. end
  1422. end
  1423. local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0, 0, 0, 0), UD2(1, 0, 1, 0), C3(0,0,0), C3(0, 0, 0), "OWEXTRADAMAGE")
  1424. local SKILLTEXT = CreateLabel(SKILLFRAME, "!You have increased damage!", SKILLTEXTCOLOR, SKILLTEXTSIZE2, SKILLFONT, 1, 2, 1, "AAAA")
  1425. coroutine.resume(coroutine.create(function()
  1426. CreateSound(743521450,Cam,5,0.6,false)
  1427. for E = 1, 75 do
  1428. Swait()
  1429. SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency - 1/75
  1430. end
  1431. wait(4)
  1432. for E = 1, 25 do
  1433. Swait()
  1434. SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency + 1/25
  1435. end
  1436. SKILLFRAME:Remove()
  1437. end))
  1438. DONE = true
  1439. for i = 1, 50 do
  1440. wait(0.5)
  1441. for i = 1, 3 do
  1442. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(DAMAGEMULTIPLIER-1,0.1,DAMAGEMULTIPLIER-1)*1.5, Transparency = 0.6, Transparency2 = 1, CFrame = CF(RootPart.CFrame*CF(0,-3.25,0).p) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 1, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 22})
  1443. end
  1444. end
  1445. DAMAGEMULTIPLIER = 1
  1446. end))
  1447. wait(0.2)
  1448. end
  1449. wait(0.4)
  1450. EQUIPPED = false
  1451. ATTACK = false
  1452. Rooted = false
  1453. end
  1454. end
  1455. function Laugh()
  1456. ATTACK = true
  1457. Rooted = true
  1458. CreateSound(160740121,Head,10,1,false)
  1459. for i=0, 0.5, 0.1 / Animation_Speed do
  1460. Swait()
  1461. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1462. 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.8 / Animation_Speed)
  1463. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.6 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1464. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.45 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1465. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1466. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1467. end
  1468. for i=1, 185 do
  1469. Swait()
  1470. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1471. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1 + 0.05 * SIN(SINE/2)) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1472. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.55 + 0.15 * SIN(SINE/2), -0.7) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1473. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.4 + 0.15 * SIN(SINE/2), -0.6) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1474. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1475. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1476. end
  1477. ATTACK = false
  1478. Rooted = false
  1479. end
  1480.  
  1481. --//=================================\\
  1482. --|| ASSIGN THINGS TO KEYS
  1483. --\\=================================//
  1484.  
  1485. function MouseDown(Mouse)
  1486. if ATTACK == false then
  1487. Melee()
  1488. end
  1489. end
  1490.  
  1491. function MouseUp(Mouse)
  1492. HOLD = false
  1493. end
  1494.  
  1495. function KeyDown(Key)
  1496. KEYHOLD = true
  1497. if Key == "z" and ATTACK == false then
  1498. AbyssalShriek()
  1499. end
  1500.  
  1501. if Key == "x" and ATTACK == false then
  1502. AbyssalDash()
  1503. end
  1504.  
  1505. if Key == "c" and ATTACK == false then
  1506. ShadowCloak()
  1507. end
  1508.  
  1509. if Key == "v" and ATTACK == false then
  1510. BlackBlast()
  1511. end
  1512.  
  1513. if Key == "q" and ATTACK == false then
  1514. NightmareFall()
  1515. end
  1516.  
  1517. if Key == "t" and ATTACK == false then
  1518. Laugh()
  1519. end
  1520. end
  1521.  
  1522. function KeyUp(Key)
  1523. KEYHOLD = false
  1524. end
  1525.  
  1526. Mouse.Button1Down:connect(function(NEWKEY)
  1527. MouseDown(NEWKEY)
  1528. end)
  1529. Mouse.Button1Up:connect(function(NEWKEY)
  1530. MouseUp(NEWKEY)
  1531. end)
  1532. Mouse.KeyDown:connect(function(NEWKEY)
  1533. KeyDown(NEWKEY)
  1534. end)
  1535. Mouse.KeyUp:connect(function(NEWKEY)
  1536. KeyUp(NEWKEY)
  1537. end)
  1538.  
  1539. --//=================================\\
  1540. --\\=================================//
  1541.  
  1542. function unanchor()
  1543. for _, c in pairs(Character:GetChildren()) do
  1544. if c:IsA("BasePart") and c ~= RootPart then
  1545. c.Anchored = false
  1546. end
  1547. end
  1548. if UNANCHOR == true then
  1549. RootPart.Anchored = false
  1550. else
  1551. RootPart.Anchored = true
  1552. end
  1553. end
  1554.  
  1555. --//=================================\\
  1556. --|| WRAP THE WHOLE SCRIPT UP
  1557. --\\=================================//
  1558.  
  1559. Humanoid.Changed:connect(function(Jump)
  1560. if Jump == "Jump" and (Disable_Jump == true) then
  1561. Humanoid.Jump = false
  1562. end
  1563. end)
  1564.  
  1565. while true do
  1566. Swait()
  1567. script.Parent = WEAPONGUI
  1568. ANIMATE.Parent = nil
  1569. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  1570. v:Stop();
  1571. end
  1572. SINE = SINE + CHANGE
  1573. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1574. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1575. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
  1576. local WALKSPEEDVALUE = 8 / (Humanoid.WalkSpeed / 16)
  1577. Humanoid.HipHeight = 1
  1578. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1579. ANIM = "Jump"
  1580. if ATTACK == false then
  1581. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1582. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
  1583. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(25 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1584. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-25 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1585. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1586. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1587. end
  1588. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1589. ANIM = "Fall"
  1590. if ATTACK == false then
  1591. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1592. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1593. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(45 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1594. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(-45 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1595. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1596. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1597. end
  1598. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1599. ANIM = "Idle"
  1600. if ATTACK == false then
  1601. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1602. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1603. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1604. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1605. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1606. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1607. end
  1608. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1609. ANIM = "Walk"
  1610. if ATTACK == false then
  1611. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(10), RAD(0), RAD(0)), 1 / Animation_Speed)
  1612. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-10 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1613. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1614. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1615. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-35)), 1 / Animation_Speed)
  1616. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  1617. end
  1618. end
  1619. if EQUIPPED == false then
  1620. if TORSOVELOCITY > 1 then
  1621. BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame * CF(0.2,1.5 + 0.15 * SIN(SINE / 12),4) * ANGLES(RAD(195), RAD(15), RAD(15)),0.04)
  1622. else
  1623. BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame * CF(1,1.5 + 0.15 * SIN(SINE / 12),4) * ANGLES(RAD(195), RAD(-25), RAD(15)),0.1)
  1624. end
  1625. end
  1626. if ANIM ~= "Walk" and FADERS == true then
  1627. if MRANDOM(1,7) == 1 then
  1628. CharacterFade(C3(0,0,0),65,R_RANDOM(Torso.CFrame,0.5).p)
  1629. end
  1630. end
  1631. unanchor()
  1632. if Rooted == false then
  1633. Disable_Jump = false
  1634. Humanoid.WalkSpeed = Speed+(DAMAGEMULTIPLIER/5)
  1635. elseif Rooted == true then
  1636. Disable_Jump = true
  1637. Humanoid.WalkSpeed = 0
  1638. end
  1639. BMUSIC.SoundId = "rbxassetid://"..SONGID
  1640. BMUSIC.Looped = true
  1641. BMUSIC.Pitch = PITCH
  1642. BMUSIC.Volume = VOLUME
  1643. BMUSIC.Playing = true
  1644. if BMUSIC.Parent ~= RootPart then
  1645. BMUSIC = IT("Sound",RootPart)
  1646. end
  1647. if Head:FindFirstChild("face") then
  1648. Head:FindFirstChild("face"):remove()
  1649. end
  1650. Humanoid.Name = "NONHUM"
  1651. Humanoid.MaxHealth = 1e3
  1652. Humanoid.Health = 1e3
  1653. end
  1654.  
  1655. --//=================================\\
  1656. --\\=================================//
  1657.  
  1658.  
  1659.  
  1660.  
  1661.  
  1662. --//====================================================\\--
  1663. --|| END OF SCRIPT
  1664. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement