Advertisement
Gummi_Shark

Untitled

Jun 13th, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4.  
  5.  
  6.  
  7. wait(1 / 60)
  8.  
  9. wait(1)
  10. jump = false
  11. local Effects2 = {}
  12. basicmusic = "rbxassetid://182840646"
  13. abyssmusic = "rbxassetid://1734954822"
  14. Player = game:GetService("Players").LocalPlayer
  15. PlayerGui = Player.PlayerGui
  16. Cam = workspace.CurrentCamera
  17. Backpack = Player.Backpack
  18. Character = Player.Character
  19. Humanoid = Character.Humanoid
  20. Mouse = Player:GetMouse()
  21. RootPart = Character["HumanoidRootPart"]
  22. Torso = Character["Torso"]
  23. Head = Character["Head"]
  24. RightArm = Character["Right Arm"]
  25. LeftArm = Character["Left Arm"]
  26. RightLeg = Character["Right Leg"]
  27. LeftLeg = Character["Left Leg"]
  28. RootJoint = RootPart["RootJoint"]
  29. Neck = Torso["Neck"]
  30. RightShoulder = Torso["Right Shoulder"]
  31. LeftShoulder = Torso["Left Shoulder"]
  32. RightHip = Torso["Right Hip"]
  33. LeftHip = Torso["Left Hip"]
  34. local sick = Instance.new("Sound",Character)
  35. sick.SoundId = basicmusic
  36. sick.Looped = true
  37. sick.Pitch = 1
  38. sick.Volume = 1
  39. sick:Play()
  40. Humanoid.MaxHealth = 5000
  41. Humanoid.Health = 5000
  42. local wingholder = Instance.new("Model")
  43. wingholder.Parent = Character
  44. ABYSSFORM = false
  45. Face = Head.face
  46. FaceID = Face.Texture
  47. AFaceID = "http://www.roblox.com/asset/?id=1015774318"
  48. char = Character
  49. root = RootPart
  50. HeadColor = Head.BrickColor
  51. TorsoColor = Torso.BrickColor
  52. RLColor = RightLeg.BrickColor
  53. RAColor = RightArm.BrickColor
  54. LLColor = LeftLeg.BrickColor
  55. LAColor = LeftArm.BrickColor
  56. if Character:FindFirstChildOfClass("Shirt") then
  57. shirtclone = Character.Shirt:Clone()
  58. end
  59. if Character:FindFirstChildOfClass("Pants") then
  60. pantsclone = Character.Shirt:Clone()
  61. end
  62. Character:FindFirstChild("Body Colors"):remove()
  63. Taunts = {907332997,907332856,907330011,907332525,907333406}
  64. local attacksound1 = Instance.new("Sound",Head)
  65. attacksound1.SoundId = "rbxassetid://159972643"
  66. attacksound1.Pitch = 1
  67. attacksound1.Volume = 3
  68. local attacksound2 = Instance.new("Sound",Head)
  69. attacksound2.SoundId = "rbxassetid://159972627"
  70. attacksound2.Pitch = 1
  71. attacksound2.Volume = 3
  72. local attacksound3 = Instance.new("Sound",Head)
  73. attacksound3.SoundId = "rbxassetid://159882477"
  74. attacksound3.Pitch = 1
  75. attacksound3.Volume = 3
  76. local attacksound4 = Instance.new("Sound",Head)
  77. attacksound4.SoundId = "rbxassetid://159882584"
  78. attacksound4.Pitch = 1
  79. attacksound4.Volume = 3
  80. local shriek = Instance.new("Sound",Head)
  81. shriek.SoundId = "rbxassetid://199978176"
  82. shriek.Pitch = 1.5
  83. shriek.Volume = 3
  84. local laugh = Instance.new("Sound",Character)
  85. laugh.SoundId = "rbxassetid://861942173"
  86. laugh.Pitch = 1
  87. laugh.Volume = 10
  88. local fade = Instance.new("Sound",Character)
  89. fade.SoundId = "rbxassetid://3264923"
  90. fade.Pitch = 1
  91. fade.Volume = 3
  92. Abysstimer = 1500
  93. wait(0.01)
  94. Humanoid.MaxHealth = 5000
  95. Humanoid.Health = 5000
  96.  
  97.  
  98. function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
  99. local fp=Instance.new("Part")
  100. fp.formFactor=formfactor
  101. fp.Parent=parent
  102. fp.Reflectance=reflectance
  103. fp.Transparency=transparency
  104. fp.CanCollide=false
  105. fp.Locked=true
  106. fp.BrickColor=BrickColor.new(tostring(brickcolor))
  107. fp.Name=name
  108. fp.Size=size
  109. fp.Position=Character.Torso.Position
  110. fp.Material=material
  111. fp:BreakJoints()
  112. return fp
  113. end
  114.  
  115. function particles(art,enabled)
  116. local EyeSizes={
  117. NumberSequenceKeypoint.new(0,.8,0),
  118. NumberSequenceKeypoint.new(1,0,0)
  119. }
  120. local EyeTrans={
  121. NumberSequenceKeypoint.new(0,0,0),
  122. NumberSequenceKeypoint.new(1,1,0)
  123. }
  124. local PE=Instance.new("ParticleEmitter",art)
  125. PE.LightEmission=.4
  126. PE.Size=NumberSequence.new(EyeSizes)
  127. PE.Transparency=NumberSequence.new(EyeTrans)
  128. PE.Lifetime=NumberRange.new(0.5,0.5,0.5)
  129. PE.Rate=360
  130. PE.Speed = NumberRange.new(0,0,0)
  131. PE.Texture="rbxassetid://24419398"
  132. PE.ZOffset = 0
  133. PE.Name = "PE"
  134. PE.Enabled = enabled
  135. end
  136.  
  137. particles(RightArm,false)
  138. particles(LeftArm,false)
  139. particles(RightLeg,false)
  140. particles(LeftLeg,false)
  141. particles(Torso,false)
  142. particles(Head,false)
  143.  
  144.  
  145. IT = Instance.new
  146. CF = CFrame.new
  147. VT = Vector3.new
  148. RAD = math.rad
  149. C3 = Color3.new
  150. UD2 = UDim2.new
  151. BRICKC = BrickColor.new
  152. ANGLES = CFrame.Angles
  153. EULER = CFrame.fromEulerAnglesXYZ
  154. COS = math.cos
  155. ACOS = math.acos
  156. SIN = math.sin
  157. ASIN = math.asin
  158. ABS = math.abs
  159. MRANDOM = math.random
  160. FLOOR = math.floor
  161.  
  162.  
  163.  
  164.  
  165. --//=================================\\
  166. --|| CUSTOMIZATION
  167. --\\=================================//
  168.  
  169. Class_Name = "ABYSS"
  170. Weapon_Name = "Abyssal sword"
  171.  
  172. Custom_Colors = {
  173. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  174. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  175.  
  176. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  177. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  178. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  179. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  180. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  181.  
  182. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  183. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  184. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  185. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  186. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  187. }
  188.  
  189. Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
  190. Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
  191. Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
  192. Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
  193. Ability_Background_Transparency = 0 --Transparency for the background of the abilities.
  194. Stat_Background_Transparency = 0 --Transparency for the background of the stats.
  195.  
  196. Player_Size = 1 --Size of the player.
  197. Animation_Speed = 2
  198. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  199.  
  200. Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
  201. Enable_Stats = false --Enables or disables stats.
  202. Put_Stats_In_Character = false --Places stats in Character.
  203. Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
  204. Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
  205. Enable_Stagger = false --Enables or disables staggering.
  206. Enable_Stun = false --Enables or disables the stun mechanic.
  207. Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
  208. Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
  209.  
  210. Start_Equipped = false --Starts the player equipped with their weapon.
  211. Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
  212. Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
  213. Disable_Animator = true --Disables the Animator in the humanoid.
  214. Disable_Animate = true --Disables the Animate script in the character.
  215. Disable_Moving_Arms = false --Keeps the arms from moving around.
  216. Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
  217. Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
  218. Disable_Jump = false --Disables jumping.
  219. Use_HopperBin = true --Uses a hopperbin to do things.
  220.  
  221. Cooldown_1 = 0 --Cooldowns for abilites.
  222. Cooldown_2 = 0
  223. Cooldown_3 = 0
  224. Cooldown_4 = 0
  225. HOLDCHARGE = false
  226. Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
  227. Skill_2_Mana_Cost = 0
  228. Skill_3_Mana_Cost = 0
  229. Skill_4_Mana_Cost = 0
  230. Max_Mana = 0 --Maximum amount of mana you can have.
  231. Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
  232. Mana_Name = "Mana" --Name for the mana bar.
  233. Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
  234. Max_Stun = 1 --Maximum amount of stun you can have.
  235. Recover_Mana = 0 --How much mana you gain.
  236. Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
  237. Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
  238. Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
  239. Recover_Secondary_Mana = 0 --How much secondary mana you gain.
  240. Lose_Stun = 0 --How much stun you lose.
  241. Stun_Wait = 0 --Delay between losing stun.
  242. Mana_Wait = 0 --Delay between gaining mana.
  243. Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
  244. Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
  245. Constant_Update = false --Removes the delay between updating the Weapon GUI.
  246. Show_Stats = false --Hides or shows stats.
  247. Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
  248.  
  249. --//=================================\\
  250. --|| END OF CUSTOMIZATION
  251. --\\=================================//
  252.  
  253.  
  254.  
  255.  
  256.  
  257. --//=================================\\
  258. --|| USEFUL VALUES
  259. --\\=================================//
  260.  
  261. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  262. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  263. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  264. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  265. local CO1 = 0
  266. local CO2 = 0
  267. local CO3 = 0
  268. local CO4 = 0
  269. local CHANGEDEFENSE = 0
  270. local CHANGEDAMAGE = 0
  271. local CHANGEMOVEMENT = 0
  272. local ANIM = "Idle"
  273. local ATTACK = false
  274. local EQUIPPED = false
  275. local HOLD = false
  276. local COMBO = 1
  277. local LASTPOINT = nil
  278. local BLCF = nil
  279. local SCFR = nil
  280. local STAGGERHITANIM = false
  281. local STAGGERANIM = false
  282. local STUNANIM = false
  283. local CRITCHANCENUMBER = 0
  284. local IDLENUMBER = 0
  285. local DONUMBER = 0
  286. local HANDIDLE = false
  287. local SINE = 0
  288. local CHANGE = 2 / Animation_Speed
  289. local WALKINGANIM = false
  290. local WALK = 0
  291. local DISABLEJUMPING = false
  292. local HASBEENBLOCKED = false
  293. local STUNDELAYNUMBER = 0
  294. local MANADELAYNUMBER = 0
  295. local SECONDARYMANADELAYNUMBER = 0
  296. local ROBLOXIDLEANIMATION = IT("Animation")
  297. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  298. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  299. --ROBLOXIDLEANIMATION.Parent = Humanoid
  300. local WEAPONGUI = IT("ScreenGui", nil)
  301. WEAPONGUI.Name = "Weapon GUI"
  302. local WEAPONTOOL = IT("HopperBin", nil)
  303. WEAPONTOOL.Name = Weapon_Name
  304. local Weapon = IT("Model")
  305. Weapon.Name = Weapon_Name
  306. local Effects = IT("Folder", Weapon)
  307. Effects.Name = "Effects"
  308. local ANIMATOR = Humanoid.Animator
  309. local ANIMATE = Character.Animate
  310. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  311. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  312. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  313. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  314.  
  315. --//=================================\\
  316. --\\=================================//
  317.  
  318.  
  319.  
  320.  
  321.  
  322. --//=================================\\
  323. --|| STATS
  324. --\\=================================//
  325.  
  326. if Character:FindFirstChild("Stats") ~= nil then
  327. Character:FindFirstChild("Stats").Parent = nil
  328. end
  329.  
  330. local Stats = IT("Folder", nil)
  331. Stats.Name = "Stats"
  332. local ChangeStat = IT("Folder", Stats)
  333. ChangeStat.Name = "ChangeStat"
  334. local Defense = IT("NumberValue", Stats)
  335. Defense.Name = "Defense"
  336. Defense.Value = 1
  337. local Movement = IT("NumberValue", Stats)
  338. Movement.Name = "Movement"
  339. Movement.Value = 1
  340. local Damage = IT("NumberValue", Stats)
  341. Damage.Name = "Damage"
  342. Damage.Value = 1
  343. local Mana = IT("NumberValue", Stats)
  344. Mana.Name = "Mana"
  345. Mana.Value = 0
  346. local SecondaryMana = IT("NumberValue", Stats)
  347. SecondaryMana.Name = "SecondaryMana"
  348. SecondaryMana.Value = 0
  349. local CanCrit = IT("BoolValue", Stats)
  350. CanCrit.Name = "CanCrit"
  351. CanCrit.Value = false
  352. local CritChance = IT("NumberValue", Stats)
  353. CritChance.Name = "CritChance"
  354. CritChance.Value = 20
  355. local CanPenetrateArmor = IT("BoolValue", Stats)
  356. CanPenetrateArmor.Name = "CanPenetrateArmor"
  357. CanPenetrateArmor.Value = false
  358. local AntiTeamKill = IT("BoolValue", Stats)
  359. AntiTeamKill.Name = "AntiTeamKill"
  360. AntiTeamKill.Value = false
  361. local Rooted = IT("BoolValue", Stats)
  362. Rooted.Name = "Rooted"
  363. Rooted.Value = false
  364. local Block = IT("BoolValue", Stats)
  365. Block.Name = "Block"
  366. Block.Value = false
  367. local RecentEnemy = IT("ObjectValue", Stats)
  368. RecentEnemy.Name = "RecentEnemy"
  369. RecentEnemy.Value = nil
  370. local StaggerHit = IT("BoolValue", Stats)
  371. StaggerHit.Name = "StaggerHit"
  372. StaggerHit.Value = false
  373. local Stagger = IT("BoolValue", Stats)
  374. Stagger.Name = "Stagger"
  375. Stagger.Value = false
  376. local Stun = IT("BoolValue", Stats)
  377. Stun.Name = "Stun"
  378. Stun.Value = false
  379. local StunValue = IT("NumberValue", Stats)
  380. StunValue.Name = "StunValue"
  381. StunValue.Value = 0
  382.  
  383. if Enable_Stats == true and Put_Stats_In_Character == true then
  384. Stats.Parent = Character
  385. end
  386.  
  387. --//=================================\\
  388. --\\=================================//
  389.  
  390.  
  391.  
  392.  
  393.  
  394. --//=================================\\
  395. --|| DEBUFFS / BUFFS
  396. --\\=================================//
  397.  
  398. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  399. DEFENSECHANGE1.Name = "ChangeDefense"
  400. DEFENSECHANGE1.Value = 0
  401.  
  402. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  403. MOVEMENTCHANGE1.Name = "ChangeMovement"
  404. MOVEMENTCHANGE1.Value = 0
  405.  
  406. --//=================================\\
  407. --\\=================================//
  408.  
  409.  
  410.  
  411.  
  412.  
  413. --//=================================\\
  414. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  415. --\\=================================//
  416.  
  417. ArtificialHB = Instance.new("BindableEvent", script)
  418. ArtificialHB.Name = "ArtificialHB"
  419.  
  420. script:WaitForChild("ArtificialHB")
  421.  
  422. frame = Frame_Speed
  423. tf = 0
  424. allowframeloss = false
  425. tossremainder = false
  426. lastframe = tick()
  427. script.ArtificialHB:Fire()
  428.  
  429. game:GetService("RunService").Heartbeat:connect(function(s, p)
  430. tf = tf + s
  431. if tf >= frame then
  432. if allowframeloss then
  433. script.ArtificialHB:Fire()
  434. lastframe = tick()
  435. else
  436. for i = 1, math.floor(tf / frame) do
  437. script.ArtificialHB:Fire()
  438. end
  439. lastframe = tick()
  440. end
  441. if tossremainder then
  442. tf = 0
  443. else
  444. tf = tf - frame * math.floor(tf / frame)
  445. end
  446. end
  447. end)
  448.  
  449. --//=================================\\
  450. --\\=================================//
  451.  
  452.  
  453.  
  454.  
  455.  
  456. --//=================================\\
  457. --|| SOME FUNCTIONS
  458. --\\=================================//
  459.  
  460. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  461. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  462. end
  463.  
  464. function PositiveAngle(NUMBER)
  465. if NUMBER >= 0 then
  466. NUMBER = 0
  467. end
  468. return NUMBER
  469. end
  470.  
  471. function NegativeAngle(NUMBER)
  472. if NUMBER <= 0 then
  473. NUMBER = 0
  474. end
  475. return NUMBER
  476. end
  477.  
  478. function Swait(NUMBER)
  479. if NUMBER == 0 or NUMBER == nil then
  480. ArtificialHB.Event:wait()
  481. else
  482. for i = 1, NUMBER do
  483. ArtificialHB.Event:wait()
  484. end
  485. end
  486. end
  487.  
  488. function QuaternionFromCFrame(cf)
  489. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  490. local trace = m00 + m11 + m22
  491. if trace > 0 then
  492. local s = math.sqrt(1 + trace)
  493. local recip = 0.5 / s
  494. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  495. else
  496. local i = 0
  497. if m11 > m00 then
  498. i = 1
  499. end
  500. if m22 > (i == 0 and m00 or m11) then
  501. i = 2
  502. end
  503. if i == 0 then
  504. local s = math.sqrt(m00 - m11 - m22 + 1)
  505. local recip = 0.5 / s
  506. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  507. elseif i == 1 then
  508. local s = math.sqrt(m11 - m22 - m00 + 1)
  509. local recip = 0.5 / s
  510. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  511. elseif i == 2 then
  512. local s = math.sqrt(m22 - m00 - m11 + 1)
  513. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  514. end
  515. end
  516. end
  517.  
  518. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  519. local xs, ys, zs = x + x, y + y, z + z
  520. local wx, wy, wz = w * xs, w * ys, w * zs
  521. local xx = x * xs
  522. local xy = x * ys
  523. local xz = x * zs
  524. local yy = y * ys
  525. local yz = y * zs
  526. local zz = z * zs
  527. 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))
  528. end
  529.  
  530. function QuaternionSlerp(a, b, t)
  531. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  532. local startInterp, finishInterp;
  533. if cosTheta >= 0.0001 then
  534. if (1 - cosTheta) > 0.0001 then
  535. local theta = ACOS(cosTheta)
  536. local invSinTheta = 1 / SIN(theta)
  537. startInterp = SIN((1 - t) * theta) * invSinTheta
  538. finishInterp = SIN(t * theta) * invSinTheta
  539. else
  540. startInterp = 1 - t
  541. finishInterp = t
  542. end
  543. else
  544. if (1 + cosTheta) > 0.0001 then
  545. local theta = ACOS(-cosTheta)
  546. local invSinTheta = 1 / SIN(theta)
  547. startInterp = SIN((t - 1) * theta) * invSinTheta
  548. finishInterp = SIN(t * theta) * invSinTheta
  549. else
  550. startInterp = t - 1
  551. finishInterp = t
  552. end
  553. end
  554. 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
  555. end
  556.  
  557. function Clerp(a, b, t)
  558. local qa = {QuaternionFromCFrame(a)}
  559. local qb = {QuaternionFromCFrame(b)}
  560. local ax, ay, az = a.x, a.y, a.z
  561. local bx, by, bz = b.x, b.y, b.z
  562. local _t = 1 - t
  563. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  564. end
  565.  
  566. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  567. local frame = IT("Frame")
  568. frame.BackgroundTransparency = TRANSPARENCY
  569. frame.BorderSizePixel = BORDERSIZEPIXEL
  570. frame.Position = POSITION
  571. frame.Size = SIZE
  572. frame.BackgroundColor3 = COLOR
  573. frame.BorderColor3 = BORDERCOLOR
  574. frame.Name = NAME
  575. frame.Parent = PARENT
  576. return frame
  577. end
  578.  
  579. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  580. local label = IT("TextLabel")
  581. label.BackgroundTransparency = 1
  582. label.Size = UD2(1, 0, 1, 0)
  583. label.Position = UD2(0, 0, 0, 0)
  584. label.TextColor3 = C3(255, 255, 255)
  585. label.TextStrokeTransparency = STROKETRANSPARENCY
  586. label.TextTransparency = TRANSPARENCY
  587. label.FontSize = TEXTFONTSIZE
  588. label.Font = TEXTFONT
  589. label.BorderSizePixel = BORDERSIZEPIXEL
  590. label.TextScaled = true
  591. label.Text = TEXT
  592. label.Name = NAME
  593. label.Parent = PARENT
  594. return label
  595. end
  596.  
  597. function NoOutlines(PART)
  598. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  599. end
  600.  
  601. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  602. local NEWPART = IT("Part")
  603. NEWPART.formFactor = FORMFACTOR
  604. NEWPART.Reflectance = REFLECTANCE
  605. NEWPART.Transparency = TRANSPARENCY
  606. NEWPART.CanCollide = false
  607. NEWPART.Locked = true
  608. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  609. NEWPART.Name = NAME
  610. NEWPART.Size = SIZE
  611. NEWPART.Position = Torso.Position
  612. NoOutlines(NEWPART)
  613. NEWPART.Material = MATERIAL
  614. NEWPART:BreakJoints()
  615. NEWPART.Parent = PARENT
  616. return NEWPART
  617. end
  618.  
  619. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  620. local NEWMESH = IT(MESH)
  621. if MESH == "SpecialMesh" then
  622. NEWMESH.MeshType = MESHTYPE
  623. if MESHID ~= "nil" and MESHID ~= "" then
  624. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  625. end
  626. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  627. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  628. end
  629. end
  630. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  631. NEWMESH.Scale = SCALE
  632. NEWMESH.Parent = PARENT
  633. return NEWMESH
  634. end
  635.  
  636. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  637. local NEWWELD = IT(TYPE)
  638. NEWWELD.Part0 = PART0
  639. NEWWELD.Part1 = PART1
  640. NEWWELD.C0 = C0
  641. NEWWELD.C1 = C1
  642. NEWWELD.Parent = PARENT
  643. return NEWWELD
  644. end
  645.  
  646. function CreateSound(ID, PARENT, VOLUME, PITCH)
  647. coroutine.resume(coroutine.create(function()
  648. local NEWSOUND = IT("Sound", PARENT)
  649. NEWSOUND.Volume = VOLUME
  650. NEWSOUND.Pitch = PITCH
  651. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  652. Swait()
  653. NEWSOUND:play()
  654. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  655. end))
  656. end
  657.  
  658. function CFrameFromTopBack(at, top, back)
  659. local right = top:Cross(back)
  660. 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)
  661. end
  662.  
  663. function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
  664. local MAGNITUDE = (POSITION1 - POSITION2).magnitude
  665. local CURRENTPOSITION = POSITION1
  666. local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
  667. coroutine.resume(coroutine.create(function()
  668. for i = 1, MULTIPLIERTIME do
  669. local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
  670. LIGHTNINGPART.Anchored = true
  671. local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)])
  672. local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
  673. if MULTIPLIERTIME == i then
  674. local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
  675. LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
  676. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
  677. else
  678. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
  679. end
  680. CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
  681. game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
  682. coroutine.resume(coroutine.create(function()
  683. while LIGHTNINGPART.Transparency ~= 1 do
  684. --local StartTransparency = tra
  685. for i=0, 1, LASTINGTIME do
  686. Swait()
  687. LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
  688. end
  689. end
  690. end))
  691. Swait(LIGHTNINGDELAY / Animation_Speed)
  692. end
  693. end))
  694. end
  695.  
  696. function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  697. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  698. EFFECTPART.Anchored = true
  699. EFFECTPART.CFrame = CFRAME
  700. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  701. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  702. coroutine.resume(coroutine.create(function(PART, MESH)
  703. for i = 0, 1, delay do
  704. Swait()
  705. PART.CFrame = PART.CFrame * ROTATION
  706. PART.Transparency = i
  707. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  708. end
  709. PART.Parent = nil
  710. end), EFFECTPART, EFFECTMESH)
  711. end
  712.  
  713. function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  714. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  715. EFFECTPART.Anchored = true
  716. EFFECTPART.CFrame = CFRAME
  717. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  718. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  719. coroutine.resume(coroutine.create(function(PART, MESH)
  720. for i = 0, 1, delay do
  721. Swait()
  722. PART.CFrame = PART.CFrame * ROTATION
  723. PART.Transparency = i
  724. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  725. end
  726. PART.Parent = nil
  727. end), EFFECTPART, EFFECTMESH)
  728. end
  729.  
  730. function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  731. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  732. EFFECTPART.Anchored = true
  733. EFFECTPART.CFrame = CFRAME
  734. local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  735. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  736. coroutine.resume(coroutine.create(function(PART, MESH)
  737. for i = 0, 1, delay do
  738. Swait()
  739. PART.CFrame = PART.CFrame * ROTATION
  740. PART.Transparency = i
  741. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  742. end
  743. PART.Parent = nil
  744. end), EFFECTPART, EFFECTMESH)
  745. end
  746.  
  747. function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  748. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  749. EFFECTPART.Anchored = true
  750. EFFECTPART.CFrame = CFRAME
  751. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  752. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  753. coroutine.resume(coroutine.create(function(PART, MESH)
  754. for i = 0, 1, delay do
  755. Swait()
  756. PART.CFrame = PART.CFrame * ROTATION
  757. PART.Transparency = i
  758. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  759. end
  760. PART.Parent = nil
  761. end), EFFECTPART, EFFECTMESH)
  762. end
  763.  
  764. function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  765. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  766. EFFECTPART.Anchored = true
  767. EFFECTPART.CFrame = CFRAME
  768. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  769. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  770. coroutine.resume(coroutine.create(function(PART, MESH)
  771. for i = 0, 1, delay do
  772. Swait()
  773. PART.CFrame = PART.CFrame * ROTATION
  774. PART.Transparency = i
  775. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  776. end
  777. PART.Parent = nil
  778. end), EFFECTPART, EFFECTMESH)
  779. end
  780.  
  781. function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  782. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  783. EFFECTPART.Anchored = true
  784. EFFECTPART.CFrame = CFRAME
  785. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "20329976", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), VT(0, 0, (-0.1 * Z1)) + (OFFSET * Player_Size))
  786. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  787. coroutine.resume(coroutine.create(function(PART, MESH)
  788. for i = 0, 1, delay do
  789. Swait()
  790. PART.CFrame = PART.CFrame * ROTATION
  791. PART.Transparency = i
  792. MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
  793. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  794. end
  795. PART.Parent = nil
  796. end), EFFECTPART, EFFECTMESH)
  797. end
  798.  
  799. function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  800. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  801. EFFECTPART.Anchored = true
  802. EFFECTPART.CFrame = CFRAME
  803. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  804. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  805. coroutine.resume(coroutine.create(function(PART, MESH)
  806. for i = 0, 1, delay do
  807. Swait()
  808. PART.CFrame = PART.CFrame * ROTATION
  809. PART.Transparency = i
  810. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  811. end
  812. PART.Parent = nil
  813. end), EFFECTPART, EFFECTMESH)
  814. end
  815.  
  816. function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  817. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  818. EFFECTPART.Anchored = true
  819. EFFECTPART.CFrame = CFRAME
  820. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  821. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  822. coroutine.resume(coroutine.create(function(PART, MESH)
  823. for i = 0, 1, delay do
  824. Swait()
  825. PART.CFrame = PART.CFrame * ROTATION
  826. PART.Transparency = i
  827. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  828. end
  829. PART.Parent = nil
  830. end), EFFECTPART, EFFECTMESH)
  831. end
  832.  
  833. function MagicSharpCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  834. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  835. EFFECTPART.Anchored = true
  836. EFFECTPART.CFrame = CFRAME
  837. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1778999", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  838. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  839. coroutine.resume(coroutine.create(function(PART, MESH)
  840. for i = 0, 1, delay do
  841. Swait()
  842. PART.CFrame = PART.CFrame * ROTATION
  843. PART.Transparency = i
  844. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  845. end
  846. PART.Parent = nil
  847. end), EFFECTPART, EFFECTMESH)
  848. end
  849.  
  850. function MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  851. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  852. EFFECTPART.Anchored = true
  853. EFFECTPART.CFrame = CFRAME
  854. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  855. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  856. coroutine.resume(coroutine.create(function(PART, MESH)
  857. for i = 0, 1, delay do
  858. Swait()
  859. PART.CFrame = PART.CFrame * ROTATION
  860. PART.Transparency = i
  861. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  862. end
  863. PART.Parent = nil
  864. end), EFFECTPART, EFFECTMESH)
  865. end
  866.  
  867. function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  868. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  869. EFFECTPART.Anchored = true
  870. EFFECTPART.CFrame = CFRAME
  871. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  872. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  873. coroutine.resume(coroutine.create(function(PART, MESH)
  874. for i = 0, 1, delay do
  875. Swait()
  876. PART.CFrame = PART.CFrame * ROTATION
  877. PART.Transparency = i
  878. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  879. end
  880. PART.Parent = nil
  881. end), EFFECTPART, EFFECTMESH)
  882. end
  883.  
  884. function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  885. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  886. EFFECTPART.Anchored = true
  887. EFFECTPART.CFrame = CFRAME
  888. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  889. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  890. coroutine.resume(coroutine.create(function(PART, MESH)
  891. for i = 0, 1, delay do
  892. Swait()
  893. PART.CFrame = PART.CFrame * ROTATION
  894. PART.Transparency = i
  895. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  896. end
  897. PART.Parent = nil
  898. end), EFFECTPART, EFFECTMESH)
  899. end
  900.  
  901. function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  902. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  903. EFFECTPART.Anchored = true
  904. EFFECTPART.CFrame = CFRAME
  905. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  906. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  907. coroutine.resume(coroutine.create(function(PART, MESH)
  908. for i = 0, 1, delay do
  909. Swait()
  910. PART.CFrame = PART.CFrame * ROTATION
  911. PART.Transparency = i
  912. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  913. end
  914. PART.Parent = nil
  915. end), EFFECTPART, EFFECTMESH)
  916. end
  917.  
  918. function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
  919. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  920. EFFECTPART.Anchored = true
  921. EFFECTPART.CFrame = CFRAME
  922. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
  923. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  924. local XVALUE = MRANDOM()
  925. local YVALUE = MRANDOM()
  926. local ZVALUE = MRANDOM()
  927. coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
  928. for i = 0, 1, delay do
  929. Swait()
  930. PART.CFrame = PART.CFrame * ROTATION
  931. PART.Transparency = i
  932. THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
  933. THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
  934. THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
  935. MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
  936. end
  937. PART.Parent = nil
  938. end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
  939. end
  940.  
  941. function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
  942. local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
  943. if MAGNITUDECFRAME > (1 / 100) then
  944. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
  945. EFFECTPART.Anchored = true
  946. EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
  947. local THEMESHTYPE = "BlockMesh"
  948. if MESHTYPE == "Cylinder" then
  949. THEMESHTYPE = "CylinderMesh"
  950. end
  951. local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
  952. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  953. coroutine.resume(coroutine.create(function(PART, MESH)
  954. for i = 0, 1, delay do
  955. Swait()
  956. PART.CFrame = PART.CFrame * ROTATION
  957. PART.Transparency = i
  958. MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
  959. end
  960. PART.Parent = nil
  961. end), EFFECTPART, EFFECTMESH)
  962. end
  963. end
  964.  
  965. function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
  966. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
  967. EFFECTPART.Anchored = true
  968. EFFECTPART.CFrame = CFRAME
  969. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
  970. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  971. local THELASTPOINT = CFRAME
  972. coroutine.resume(coroutine.create(function(PART)
  973. for i = 1, DURATION do
  974. Swait()
  975. PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
  976. TrailEffect(BRICKCOLOR, MATERIAL, PART.CFrame, THELASTPOINT, "Cylinder", REFLECTANCE, SIZE * Player_Size, ANGLES(0, 0, 0), X * Player_Size, Y * Player_Size, Z * Player_Size, delay)
  977. THELASTPOINT = PART.CFrame
  978. end
  979. PART.Parent = nil
  980. end), EFFECTPART)
  981. end
  982.  
  983. --local list={}
  984. function Triangle(Color, Material, a, b, c, delay)
  985. local edge1 = (c - a):Dot((b - a).unit)
  986. local edge2 = (a - b):Dot((c - b).unit)
  987. local edge3 = (b - c):Dot((a - c).unit)
  988. if edge1 <= (b - a).magnitude and edge1 >= 0 then
  989. a, b, c=a, b, c
  990. elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
  991. a, b, c=b, c, a
  992. elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
  993. a, b, c=c, a, b
  994. else
  995. assert(false, "unreachable")
  996. end
  997. local len1 = (c - a):Dot((b - a).unit)
  998. local len2 = (b - a).magnitude - len1
  999. local width = (a + (b - a).unit * len1 - c).magnitude
  1000. local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
  1001. if len1 > 1 / 100 then
  1002. local sz = VT(0.2, width, len1)
  1003. local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  1004. local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
  1005. w1.Anchored = true
  1006. w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
  1007. coroutine.resume(coroutine.create(function()
  1008. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  1009. Swait()
  1010. w1.Transparency = i
  1011. end
  1012. w1.Parent = nil
  1013. end))
  1014. game:GetService("Debris"):AddItem(w1, 10)
  1015. --table.insert(list, w1)
  1016. end
  1017. if len2 > 1 / 100 then
  1018. local sz = VT(0.2, width, len2)
  1019. local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  1020. local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
  1021. w2.Anchored = true
  1022. w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
  1023. coroutine.resume(coroutine.create(function()
  1024. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  1025. Swait()
  1026. w2.Transparency = i
  1027. end
  1028. w2.Parent = nil
  1029. end))
  1030. game:GetService("Debris"):AddItem(w2, 10)
  1031. --table.insert(list, w2)
  1032. end
  1033. --return unpack(list)
  1034. end
  1035.  
  1036. --[[Usage:
  1037. local Pos = Part
  1038. local Offset = Part.CFrame * CF(0, 0, 0)
  1039. local Color = "Institutional white"
  1040. local Material = "Neon"
  1041. local TheDelay = 0.01
  1042. local Height = 4
  1043. BLCF = Offset
  1044. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  1045. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  1046. if a then game:GetService("Debris"):AddItem(a, 1) end
  1047. if b then game:GetService("Debris"):AddItem(b, 1) end
  1048. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  1049. if a then game:GetService("Debris"):AddItem(a, 1) end
  1050. if b then game:GetService("Debris"):AddItem(b, 1) end
  1051. SCFR = BLCF
  1052. elseif not SCFR then
  1053. SCFR = BLCF
  1054. end
  1055. --
  1056. BLCF = nil
  1057. SCFR = nil
  1058. --]]
  1059.  
  1060. --//=================================\\
  1061. --\\=================================//
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  
  1067. --//=================================\\
  1068. --|| RESIZE PLAYER
  1069. --\\=================================//
  1070.  
  1071. if Player_Size ~= 1 then
  1072. RootPart.Size = RootPart.Size * Player_Size
  1073. Torso.Size = Torso.Size * Player_Size
  1074. Head.Size = Head.Size * Player_Size
  1075. RightArm.Size = RightArm.Size * Player_Size
  1076. LeftArm.Size = LeftArm.Size * Player_Size
  1077. RightLeg.Size = RightLeg.Size * Player_Size
  1078. LeftLeg.Size = LeftLeg.Size * Player_Size
  1079. RootJoint.Parent = RootPart
  1080. Neck.Parent = Torso
  1081. RightShoulder.Parent = Torso
  1082. LeftShoulder.Parent = Torso
  1083. RightHip.Parent = Torso
  1084. LeftHip.Parent = Torso
  1085.  
  1086. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1087. RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1088. Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1089. Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1090. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  1091. LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  1092. if Disable_Moving_Arms == false then
  1093. RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1094. LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1095. else
  1096. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1097. LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1098. end
  1099. RightHip.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1100. LeftHip.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1101. 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))
  1102. 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))
  1103. end
  1104.  
  1105.  
  1106. --//=================================\\
  1107. --\\=================================//
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113. --//=================================\\
  1114. --|| WEAPON CREATION
  1115. --\\=================================//
  1116.  
  1117. local HandlePart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0, 0, 0))
  1118. local HandleMesh = CreateMesh("SpecialMesh", HandlePart, "FileMesh", "93117521", "1015990846", VT(0.7,0.8,0.7), VT(0, 3.1 * Player_Size, 0))
  1119. local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Torso, HandlePart, CF(2 * Player_Size, 2 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
  1120.  
  1121. local HitboxPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Hitbox", VT(0, 0, 0))
  1122. local HitboxWeld = CreateWeldOrSnapOrMotor("Weld", HitboxPart, HandlePart, HitboxPart, CF(0 * Player_Size, 4 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
  1123.  
  1124. local EffectPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Effect Part", VT(0, 0, 0))
  1125. local EffectWeld = CreateWeldOrSnapOrMotor("Weld", EffectPart, HandlePart, EffectPart, CF(0 * Player_Size, 7 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
  1126.  
  1127. if Player_Size ~= 1 then
  1128. for _, v in pairs (Weapon:GetChildren()) do
  1129. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  1130. local p1 = v.Part1
  1131. v.Part1 = nil
  1132. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  1133. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  1134. v.Part1 = p1
  1135. elseif v.ClassName == "Part" then
  1136. for _, b in pairs (v:GetChildren()) do
  1137. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  1138. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  1139. end
  1140. end
  1141. end
  1142. end
  1143. end
  1144.  
  1145. for _, c in pairs(Weapon:GetChildren()) do
  1146. if c.ClassName == "Part" then
  1147. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1148. end
  1149. end
  1150.  
  1151. if Start_Equipped == true and Start_Equipped_With_Equipped_Animation == false then
  1152. HandleWeld.Part0 = RightArm
  1153. HandleWeld.C0 = CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1154. end
  1155.  
  1156. Weapon.Parent = Character
  1157.  
  1158. Humanoid.Died:connect(function()
  1159. ATTACK = true
  1160. end)
  1161.  
  1162. print(Class_Name.." loaded.")
  1163.  
  1164. --//=================================\\
  1165. --\\=================================//
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171. --//=================================\\
  1172. --|| DAMAGE FUNCTIONS
  1173. --\\=================================//
  1174.  
  1175. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1176. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1177. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1178. local BODYGYRO = IT("BodyGyro", STATPART)
  1179. local BODYPOSITION = IT("BodyPosition", STATPART)
  1180. BODYPOSITION.P = 2000
  1181. BODYPOSITION.D = 100
  1182. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1183. if LABELTYPE == "Normal" then
  1184. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1185. elseif LABELTYPE == "Debuff" then
  1186. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  1187. elseif LABELTYPE == "Interruption" then
  1188. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  1189. end
  1190. game:GetService("Debris"):AddItem(STATPART ,5)
  1191. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1192. BILLBOARDGUI.Adornee = STATPART
  1193. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1194. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1195. BILLBOARDGUI.AlwaysOnTop = false
  1196. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1197. TEXTLABEL.BackgroundTransparency = 1
  1198. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1199. TEXTLABEL.Text = TEXT
  1200. TEXTLABEL.Font = "SourceSans"
  1201. TEXTLABEL.FontSize="Size42"
  1202. TEXTLABEL.TextColor3 = COLOR
  1203. TEXTLABEL.TextStrokeTransparency = 0
  1204. TEXTLABEL.TextScaled = true
  1205. TEXTLABEL.TextWrapped = true
  1206. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1207. wait(0.2)
  1208. for i=1, 5 do
  1209. wait()
  1210. THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  1211. end
  1212. wait(1.2)
  1213. for i=1, 5 do
  1214. wait()
  1215. THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1216. THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1217. THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1218. end
  1219. THEPART.Parent = nil
  1220. end),STATPART, BODYPOSITION, TEXTLABEL)
  1221. end
  1222.  
  1223. function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
  1224. if LOCATION:FindFirstChild("Stats") ~= nil then
  1225. if LOCATION.Stats:FindFirstChild("Block") ~= nil then
  1226. if LOCATION.Stats:FindFirstChild("Block").Value == true then
  1227. return
  1228. end
  1229. end
  1230. if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
  1231. local NewStatChange = IT("NumberValue")
  1232. NewStatChange.Value = AMOUNT
  1233. if STAT == "Defense" then
  1234. NewStatChange.Name = "ChangeDefense"
  1235. elseif STAT == "Damage" then
  1236. NewStatChange.Name = "ChangeDamage"
  1237. elseif STAT == "Movement" then
  1238. NewStatChange.Name = "ChangeMovement"
  1239. end
  1240. if SHOWTHESTAT == true then
  1241. if AMOUNT < 0 then
  1242. StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
  1243. elseif AMOUNT > 0 then
  1244. StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
  1245. end
  1246. end
  1247. if DURATION ~= nil and DURATION ~= 0 then
  1248. local StatDuration = IT("NumberValue")
  1249. StatDuration.Name = "Duration"
  1250. StatDuration.Value = DURATION
  1251. StatDuration.Parent = NewStatChange
  1252. end
  1253. NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
  1254. end
  1255. end
  1256. end
  1257.  
  1258. --Usage: DamageFunction(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, hit, false, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  1259. function DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HIT, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
  1260. if HIT.Parent == nil then
  1261. return
  1262. end
  1263. local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
  1264. for _, v in pairs(HIT.Parent:GetChildren()) do
  1265. if v:IsA("Humanoid") then
  1266. HITHUMANOID = v
  1267. HITHUMANOID.MaxHealth = 100
  1268. if HITHUMANOID.Health > 100 then
  1269. HITHUMANOID.Health = 100
  1270. end
  1271. end
  1272. end
  1273. if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
  1274. StaggerHit.Value = true
  1275. if Play_Hitbox_Hit_Sound == true then
  1276. if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
  1277. CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
  1278. end
  1279. end
  1280. return
  1281. end
  1282. if HIT.Parent.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent.Parent:FindFirstChild("UpperTorso") ~= nil then
  1283. HITHUMANOID = HIT.Parent.Parent:FindFirstChild("Humanoid")
  1284. end
  1285. if HIT.Parent.ClassName == "Hat" or HIT.ClassName == "Accessory" then
  1286. HIT = HIT.Parent.Parent:FindFirstChild("Head")
  1287. end
  1288. if HITHUMANOID ~= nil and HIT.Parent.Name ~= Character.Name and (HIT.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent:FindFirstChild("UpperTorso") ~= nil) then
  1289. if HIT.Parent:FindFirstChild("DebounceHit") ~= nil then
  1290. if HIT.Parent.DebounceHit.Value == true then
  1291. return
  1292. end
  1293. end
  1294. if AntiTeamKill.Value == true then
  1295. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(HIT.Parent) ~= nil then
  1296. if game.Players:GetPlayerFromCharacter(HIT.Parent).TeamColor == Player.TeamColor then
  1297. return
  1298. end
  1299. end
  1300. end
  1301. if HITEVENWHENDEAD == false then
  1302. if HIT.Parent:FindFirstChild("Humanoid") ~= nil then
  1303. if HIT.Parent:FindFirstChild("Humanoid").Health <= 0 then
  1304. return
  1305. end
  1306. end
  1307. end
  1308. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1309. if HIT.Parent.Stats:FindFirstChild("StunValue") ~= nil then
  1310. HIT.Parent.Stats:FindFirstChild("StunValue").Value = HIT.Parent.Stats:FindFirstChild("StunValue").Value + INCREASESTUN
  1311. end
  1312. end
  1313. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1314. if HIT.Parent.Stats:FindFirstChild("Stagger") ~= nil then
  1315. if STAGGER == true and Enable_Stagger == true then
  1316. HIT.Parent.Stats:FindFirstChild("Stagger").Value = true
  1317. end
  1318. end
  1319. end
  1320. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1321. if HIT.Parent.Stats:FindFirstChild("Block") ~= nil then
  1322. if HIT.Parent.Stats:FindFirstChild("Block").Value == true then
  1323. HASBEENBLOCKED = true
  1324. if HIT.Parent.Stats:FindFirstChild("Block"):FindFirstChild("BlockDebounce") == nil then
  1325. StatLabel("Interruption", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Blocked!", C3(0, 100 / 255, 255 / 255))
  1326. if RANGED ~= true then
  1327. if HITBLOCKSOUND ~= "" and HITBLOCKSOUND ~= "nil" then
  1328. CreateSound(HITBLOCKSOUND, HIT, 1, HITBLOCKSOUNDPITCH)
  1329. end
  1330. end
  1331. local BlockDebounce = IT("BoolValue", HIT.Parent.Stats:FindFirstChild("Block"))
  1332. BlockDebounce.Name = "BlockDebounce"
  1333. BlockDebounce.Value = true
  1334. if RANGED ~= true then
  1335. game:GetService("Debris"):AddItem(BlockDebounce, 0.5)
  1336. else
  1337. game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
  1338. end
  1339. end
  1340. if RANGED ~= true and Enable_Stagger == true then
  1341. HIT.Parent.Stats:FindFirstChild("Block").Value = false
  1342. Stagger.Value = true
  1343. end
  1344. return
  1345. end
  1346. end
  1347. end
  1348. if DECREASETHESTAT ~= nil then
  1349. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1350. IncreaseOrDecreaseStat(HIT.Parent, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
  1351. end
  1352. end
  1353. local DAMAGE = MRANDOM(MINIMUMDAMAGE,MAXIMUMDAMAGE) * Damage.Value
  1354. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1355. if HIT.Parent.Stats:FindFirstChild("Defense") ~= nil then
  1356. if CanPenetrateArmor.Value == true then
  1357. DAMAGE = DAMAGE
  1358. else
  1359. DAMAGE = DAMAGE / HIT.Parent.Stats:FindFirstChild("Defense").Value
  1360. end
  1361. elseif HIT.Parent.Stats:FindFirstChild("Defense") == nil then
  1362. DAMAGE = DAMAGE
  1363. end
  1364. end
  1365. if CanCrit.Value == true then
  1366. CRITCHANCENUMBER = MRANDOM(1, CritChance.Value)
  1367. if CRITCHANCENUMBER == 1 then
  1368. DAMAGE = DAMAGE * 2
  1369. end
  1370. end
  1371. DAMAGE = math.floor(DAMAGE)
  1372. if HASBEENBLOCKED == false then
  1373. end
  1374. if DAMAGE <= 3 and HASBEENBLOCKED == false then
  1375. if STAGGERHIT == true and Enable_Stagger_Hit == true and RANGED ~= true then
  1376. StaggerHit.Value = true
  1377. end
  1378. if HITARMORSOUND ~= "" and HITARMORSOUND ~= "nil" then
  1379. CreateSound(HITARMORSOUND, HIT, 1, HITARMORSOUNDPITCH)
  1380. end
  1381. elseif DAMAGE == 100 then
  1382. HITHUMANOID.Health = 0
  1383. HIT.Parent.Torso.Anchored = false
  1384. elseif DAMAGE == 101 then
  1385. HIT.Parent.Torso.Anchored = true
  1386. elseif DAMAGE > 3 then
  1387. HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
  1388. if HITPLAYERSOUND ~= "" and HITPLAYERSOUND ~= "nil" then
  1389. CreateSound(HITPLAYERSOUND, HIT, 1, HITPLAYERSOUNDPITCH)
  1390. end
  1391. end
  1392. if DAMAGE > 3 and DAMAGE < 20 and HASBEENBLOCKED == false then
  1393. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1394. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1395. CreateSound("296102734", HIT, 1, 1)
  1396. else
  1397. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 220/255, 0))
  1398. end
  1399. elseif DAMAGE >= 20 and HASBEENBLOCKED == false and DAMAGE < 100 then
  1400. HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
  1401. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1402. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1403. CreateSound("296102734", HIT, 1, 1)
  1404. else
  1405. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 0, 0))
  1406. end
  1407. elseif DAMAGE <= 3 and HASBEENBLOCKED == false then
  1408. HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
  1409. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1410. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1411. CreateSound("296102734", HIT, 1, 1)
  1412. else
  1413. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(225/255, 225/255, 225/255))
  1414. end
  1415. end
  1416. if TYPE == "Normal" then
  1417. local vp = IT("BodyVelocity")
  1418. vp.P=500
  1419. vp.maxForce = VT(math.huge, 0, math.huge)
  1420. if KNOCKBACKTYPE == 1 then
  1421. vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK + PROPERTY.Velocity / 1.05
  1422. elseif KNOCKBACKTYPE == 2 then
  1423. vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK
  1424. end
  1425. if KNOCKBACK > 0 and HASBEENBLOCKED == false then
  1426. vp.Parent = HIT--.Parent.Torso
  1427. end
  1428. game:GetService("Debris"):AddItem(vp, 0.5)
  1429. end
  1430. HASBEENBLOCKED = false
  1431. RecentEnemy.Value = HIT.Parent
  1432. local DebounceHit = IT("BoolValue", HIT.Parent)
  1433. DebounceHit.Name = "DebounceHit"
  1434. DebounceHit.Value = true
  1435. game:GetService("Debris"):AddItem(DebounceHit, DELAY)
  1436. end
  1437. end
  1438.  
  1439. --Usage: MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Part, 5, true, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  1440. function MagnitudeDamage(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, PART, MAGNITUDE, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
  1441. for _, c in pairs(workspace:GetChildren()) do
  1442. local HUMANOID = c:FindFirstChild("Humanoid")
  1443. local HEAD = nil
  1444. if HUMANOID ~= nil then
  1445. for _, d in pairs(c:GetChildren()) do
  1446. if d.ClassName == "Model" and RANGED ~= true then
  1447. HEAD = d:FindFirstChild("Hitbox")
  1448. if HEAD ~= nil then
  1449. local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1450. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1451. if Play_Hitbox_Hit_Sound == true then
  1452. local HitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1453. HitRefpart.Anchored = true
  1454. HitRefpart.CFrame = CF(HEAD.Position)
  1455. CreateSound(HITWEAPONSOUND, HitRefpart, 1, HITWEAPONSOUNDPITCH)
  1456. end
  1457. if Enable_Stagger_Hit == true then
  1458. StaggerHit.Value = true
  1459. end
  1460. end
  1461. end
  1462. elseif d:IsA"BasePart" then
  1463. HEAD = d
  1464. if HEAD ~= nil then
  1465. local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1466. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1467. DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HEAD, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
  1468. end
  1469. end
  1470. end
  1471. end
  1472. end
  1473. end
  1474. end
  1475.  
  1476. --Usage: MagnitudeBuffOrDebuff(Part, 5, "Defense", -0.1, 3, true, true)
  1477. function MagnitudeBuffOrDebuff(PART, MAGNITUDE, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF, APPLYTOOTHERSINSTEAD)
  1478. if Player.Neutral == true then
  1479. IncreaseOrDecreaseStat(Character, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1480. end
  1481. for _, c in pairs(workspace:GetChildren()) do
  1482. local HUMANOID = c:FindFirstChild("Humanoid")
  1483. local THEHEAD = nil
  1484. if HUMANOID ~= nil then
  1485. if c:FindFirstChild("Torso") ~= nil then
  1486. THEHEAD = c:FindFirstChild("Torso")
  1487. elseif c:FindFirstChild("UpperTorso") ~= nil then
  1488. THEHEAD = c:FindFirstChild("UpperTorso")
  1489. end
  1490. if THEHEAD ~= nil then
  1491. local THEMAGNITUDE = (THEHEAD.Position - PART.Position).magnitude
  1492. print("yes 1")
  1493. if APPLYTOOTHERSINSTEAD == true then
  1494. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1495. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1496. if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1497. IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1498. end
  1499. end
  1500. end
  1501. elseif APPLYTOOTHERSINSTEAD == false then
  1502. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) then
  1503. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1504. if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1505. IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1506. end
  1507. end
  1508. end
  1509. end
  1510. end
  1511. end
  1512. end
  1513. end
  1514.  
  1515. --//=================================\\
  1516. --\\=================================//
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522. --//=================================\\
  1523. --|| WEAPON GUI
  1524. --\\=================================//
  1525.  
  1526. local MANABAR = CreateFrame(WEAPONGUI, Mana_Bar_Background_Transparency, 2, UD2(0.23, 0, 0.82, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_8.r, Custom_Colors.Custom_Color_8.g, Custom_Colors.Custom_Color_8.b), C3(0, 0, 0),"Mana Bar")
  1527. local MANACOVER = CreateFrame(MANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_5.r, Custom_Colors.Custom_Color_5.g, Custom_Colors.Custom_Color_5.b), C3(0, 0, 0),"Mana Cover")
  1528. local MANATEXT = CreateLabel(MANABAR, Mana_Name.." ["..FLOOR(Mana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Mana Text")
  1529.  
  1530. local HEALTHBAR = CreateFrame(WEAPONGUI, Health_Bar_Background_Transparency, 2, UD2(0.5, 0, 0.82, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_11.r, Custom_Colors.Custom_Color_11.g, Custom_Colors.Custom_Color_11.b), C3(0, 0, 0), "Health Bar")
  1531. local HEALTHCOVER = CreateFrame(HEALTHBAR, 0, 2,UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_6.r, Custom_Colors.Custom_Color_6.g, Custom_Colors.Custom_Color_6.b), C3(0, 0, 0), "Health Cover")
  1532. local HEALTHTEXT = CreateLabel(HEALTHBAR, "Health ["..FLOOR(Humanoid.Health).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Health Text")
  1533.  
  1534. local STUNFRAME = CreateFrame(nil, Stun_Bar_Background_Transparency, 2, UD2(0.5, 0, 0.78, 0),UD2(0.26, 0, 0, 0),C3(Custom_Colors.Custom_Color_10.r, Custom_Colors.Custom_Color_10.g, Custom_Colors.Custom_Color_10.b), C3(0, 0, 0), "Stun Frame")
  1535. local STUNBAR = CreateFrame(STUNFRAME, 0, 2, UD2(0, 0, 0, 0),UD2(0, 0, 1, 0),C3(Custom_Colors.Custom_Color_7.r, Custom_Colors.Custom_Color_7.g, Custom_Colors.Custom_Color_7.b), C3(0, 0, 0), "Stun Bar")
  1536. local STUNTEXT = CreateLabel(STUNFRAME, "Stun ["..FLOOR(StunValue.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Stun Text")
  1537.  
  1538. local SECONDARYMANABAR = CreateFrame(nil, Secondary_Mana_Bar_Background_Transparency, 2, UD2(0.23, 0, 0.78, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_9.r, Custom_Colors.Custom_Color_9.g, Custom_Colors.Custom_Color_9.b), C3(0, 0, 0),"Secondary Mana Bar")
  1539. local SECONDARYMANACOVER = CreateFrame(SECONDARYMANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_4.r, Custom_Colors.Custom_Color_4.g, Custom_Colors.Custom_Color_4.b), C3(0, 0, 0),"Secondary Mana Cover")
  1540. local SECONDARYMANATEXT = CreateLabel(SECONDARYMANABAR, Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Secondary Mana Text")
  1541.  
  1542. local DEFENSEFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.23, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(100 / 255, 100 / 255, 255 / 255), C3(0, 0, 0),"Defense Frame")
  1543. local DEFENSETEXT = CreateLabel(DEFENSEFRAME, "Defense ["..(Defense.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Defense Text")
  1544.  
  1545. local DAMAGEFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.456, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(255 / 255, 100 / 255, 100 / 255), C3(0, 0, 0),"Damage Frame")
  1546. local DAMAGETEXT = CreateLabel(DAMAGEFRAME, "Damage ["..(Damage.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Damage Text")
  1547.  
  1548. local MOVEMENTFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.685, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(100 / 255, 255 / 255, 100 / 255), C3(0, 0, 0),"Movement Frame")
  1549. local MOVEMENTTEXT = CreateLabel(MOVEMENTFRAME, "Movement ["..(Movement.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Movement Text")
  1550.  
  1551. local SKILL1FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.23, 0, 0.86, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 1 Frame")
  1552. local SKILL2FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.50, 0, 0.86, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 2 Frame")
  1553. local SKILL3FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.23, 0, 0.93, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 3 Frame")
  1554. local SKILL4FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.50, 0, 0.93, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 4 Frame")
  1555.  
  1556. local SKILL1BAR = CreateFrame(SKILL1FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 1 Bar")
  1557. local SKILL2BAR = CreateFrame(SKILL2FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 2 Bar")
  1558. local SKILL3BAR = CreateFrame(SKILL3FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 3 Bar")
  1559. local SKILL4BAR = CreateFrame(SKILL4FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 4 Bar")
  1560.  
  1561. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Ability 1", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 1")
  1562. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[X] Ability 2", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 2")
  1563. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 3")
  1564. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 4")
  1565.  
  1566. if Enable_Gui == true then
  1567. WEAPONGUI.Parent = PlayerGui
  1568. end
  1569.  
  1570. if Enable_Stats == true and Show_Stats == true then
  1571. DEFENSEFRAME.Parent = WEAPONGUI
  1572. DAMAGEFRAME.Parent = WEAPONGUI
  1573. MOVEMENTFRAME.Parent = WEAPONGUI
  1574. end
  1575.  
  1576. if Enable_Secondary_Bar == true then
  1577. SECONDARYMANABAR.Parent = WEAPONGUI
  1578. end
  1579.  
  1580. if Enable_Abilities == true then
  1581. SKILL1FRAME.Parent = WEAPONGUI
  1582. SKILL2FRAME.Parent = WEAPONGUI
  1583. SKILL3FRAME.Parent = WEAPONGUI
  1584. SKILL4FRAME.Parent = WEAPONGUI
  1585. end
  1586.  
  1587. if Enable_Stun == true then
  1588. STUNFRAME.Parent = WEAPONGUI
  1589. end
  1590.  
  1591. function UpdateGUI()
  1592. MANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1593. MANACOVER:TweenSize(UD2(1 * (Mana.Value / Max_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1594. MANATEXT.Text = Mana_Name.." ["..FLOOR(Mana.Value).."]"
  1595. HEALTHBAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1596. HEALTHCOVER:TweenSize(UD2(1 * (Humanoid.Health / Humanoid.MaxHealth), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1597. HEALTHTEXT.Text = "Health ["..FLOOR(Humanoid.Health).."]"
  1598. if Enable_Abilities == true then
  1599. SKILL1FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1600. SKILL2FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1601. SKILL3FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1602. SKILL4FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1603. SKILL1BAR:TweenSize(UD2(1 * (CO1 / Cooldown_1), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1604. SKILL2BAR:TweenSize(UD2(1 * (CO2 / Cooldown_2), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1605. SKILL3BAR:TweenSize(UD2(1 * (CO3 / Cooldown_3), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1606. SKILL4BAR:TweenSize(UD2(1 * (CO4 / Cooldown_4), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1607. end
  1608. if Enable_Stats == true and Show_Stats == true then
  1609. DEFENSEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1610. DEFENSETEXT.Text = "Defense ["..(Defense.Value * 100).."%]"
  1611. DAMAGEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1612. DAMAGETEXT.Text = "Damage ["..(Damage.Value * 100).."%]"
  1613. MOVEMENTFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1614. MOVEMENTTEXT.Text = "Movement ["..(Movement.Value * 100).."%]"
  1615. end
  1616. if Enable_Stun == true then
  1617. STUNFRAME:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1618. STUNBAR:TweenSize(UD2(1 * (StunValue.Value / Max_Stun), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1619. STUNTEXT.Text = "Stun ["..FLOOR(StunValue.Value).."]"
  1620. end
  1621. if Enable_Secondary_Bar == true then
  1622. SECONDARYMANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1623. SECONDARYMANACOVER:TweenSize(UD2(1 * (SecondaryMana.Value / Max_Secondary_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1624. SECONDARYMANATEXT.Text = Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]"
  1625. end
  1626. end
  1627.  
  1628. if Enable_Gui == true then
  1629. UpdateGUI()
  1630. for _, v in pairs (WEAPONGUI:GetChildren()) do
  1631. if v.ClassName == "Frame" then
  1632. for _, b in pairs (v:GetChildren()) do
  1633. if b.ClassName == "TextLabel" then
  1634. coroutine.resume(coroutine.create(function(THETEXTLABEL)
  1635. wait(Menu_Update_Speed)
  1636. for i = 1, 0, -0.1 do
  1637. Swait()
  1638. THETEXTLABEL.TextTransparency = i
  1639. THETEXTLABEL.TextStrokeTransparency = i
  1640. end
  1641. THETEXTLABEL.TextTransparency = 0
  1642. THETEXTLABEL.TextStrokeTransparency = 0
  1643. end), b)
  1644. end
  1645. end
  1646. end
  1647. end
  1648. end
  1649.  
  1650. --//=================================\\
  1651. --|| ABYSSAL FUNCTIONS
  1652. --\\=================================//
  1653.  
  1654. function accessblack()
  1655. m = Character:GetChildren()
  1656. for i = 1, #m do
  1657. if m[i].ClassName == "Accessory" then
  1658. m[i].Handle.Transparency = 1
  1659. end
  1660. end
  1661. end
  1662.  
  1663. function accessnormal()
  1664. m = Character:GetChildren()
  1665. for i = 1, #m do
  1666. if m[i].ClassName == "Accessory" then
  1667. m[i].Handle.Transparency = 0
  1668. end
  1669. end
  1670. end
  1671.  
  1672. function cloak()
  1673. Face.Texture = AFaceID
  1674. accessblack()
  1675. m = Character:GetChildren()
  1676. for i = 1, #m do
  1677. if m[i].ClassName == "Part" then
  1678. if m[i]:FindFirstChildOfClass("ParticleEmitter") then
  1679. m[i].PE.Enabled = true
  1680. m[i].Transparency = 1
  1681. end
  1682. end
  1683. end
  1684. end
  1685.  
  1686. function decloak()
  1687. Face.Texture = FaceID
  1688. accessnormal()
  1689. m = Character:GetChildren()
  1690. for i = 1, #m do
  1691. if m[i].ClassName == "Part" then
  1692. if m[i]:FindFirstChildOfClass("ParticleEmitter") then
  1693. m[i].PE.Enabled = false
  1694. m[i].Transparency = 0
  1695. end
  1696. end
  1697. end
  1698. end
  1699.  
  1700. function warpdecloak()
  1701. Face.Texture = ""
  1702. HandlePart.Transparency = 1
  1703. HitboxPart.Transparency = 1
  1704. m = Character:GetChildren()
  1705. for i = 1, #m do
  1706. if m[i].ClassName == "Part" then
  1707. if m[i]:FindFirstChildOfClass("ParticleEmitter") then
  1708. m[i].PE.Enabled = false
  1709. end
  1710. end
  1711. end
  1712. end
  1713.  
  1714. --//=================================\\
  1715. --|| SKILL FUNCTIONS
  1716. --\\=================================//
  1717.  
  1718. function UpdateSkillsAndStuff()
  1719. if Mana_Regen_Mode == "1" then
  1720. if Mana.Value >= Max_Mana then
  1721. Mana.Value = Max_Mana
  1722. elseif Mana.Value < 0 then
  1723. Mana.Value = 0
  1724. else
  1725. if MANADELAYNUMBER <= Mana_Wait then
  1726. MANADELAYNUMBER = MANADELAYNUMBER + 1
  1727. else
  1728. MANADELAYNUMBER = 0
  1729. Mana.Value = Mana.Value + Recover_Mana
  1730. end
  1731. end
  1732. elseif Mana_Regen_Mode == "2" then
  1733. if Mana.Value <= Max_Mana then
  1734. Mana.Value = Mana.Value + (Recover_Mana / 30) / Animation_Speed
  1735. elseif Mana.Value >= Max_Mana then
  1736. Mana.Value = Max_Mana
  1737. elseif Mana.Value < 0 then
  1738. Mana.Value = 0
  1739. end
  1740. end
  1741. if Enable_Secondary_Bar == true then
  1742. if Secondary_Mana_Regen_Mode == "1" then
  1743. if SecondaryMana.Value >= Max_Secondary_Mana then
  1744. SecondaryMana.Value = Max_Secondary_Mana
  1745. elseif SecondaryMana.Value < 0 then
  1746. SecondaryMana.Value = 0
  1747. else
  1748. if SECONDARYMANADELAYNUMBER <= Secondary_Mana_Wait then
  1749. SECONDARYMANADELAYNUMBER = SECONDARYMANADELAYNUMBER + 1
  1750. else
  1751. SECONDARYMANADELAYNUMBER = 0
  1752. SecondaryMana.Value = SecondaryMana.Value + Recover_Secondary_Mana
  1753. end
  1754. end
  1755. elseif Secondary_Mana_Regen_Mode == "2" then
  1756. if SecondaryMana.Value <= Max_Secondary_Mana then
  1757. SecondaryMana.Value = SecondaryMana.Value + (Recover_Secondary_Mana / 30) / Animation_Speed
  1758. elseif SecondaryMana.Value >= Max_Secondary_Mana then
  1759. SecondaryMana.Value = Max_Secondary_Mana
  1760. elseif SecondaryMana.Value < 0 then
  1761. SecondaryMana.Value = 0
  1762. end
  1763. end
  1764. else
  1765. SecondaryMana.Value = 0
  1766. end
  1767. if Enable_Stun == true then
  1768. if Stun_Lose_Mode == "1" then
  1769. if StunValue.Value > Max_Stun then
  1770. StunValue.Value = Max_Stun
  1771. elseif StunValue.Value <= 0 then
  1772. StunValue.Value = 0
  1773. else
  1774. if STUNDELAYNUMBER <= Stun_Wait then
  1775. STUNDELAYNUMBER = STUNDELAYNUMBER + 1
  1776. else
  1777. STUNDELAYNUMBER = 0
  1778. StunValue.Value = StunValue.Value - Lose_Stun
  1779. end
  1780. end
  1781. elseif Stun_Lose_Mode == "2" then
  1782. if StunValue.Value <= Max_Stun and StunValue.Value > 0 then
  1783. StunValue.Value = StunValue.Value - (Lose_Stun / 30) / Animation_Speed
  1784. elseif StunValue.Value > Max_Stun then
  1785. StunValue.Value = Max_Stun
  1786. elseif StunValue.Value <= 0 then
  1787. StunValue.Value = 0
  1788. end
  1789. end
  1790. else
  1791. StunValue.Value = 0
  1792. end
  1793. if Enable_Abilities == true then
  1794. if CO1 <= Cooldown_1 then
  1795. CO1 = CO1 + (1 / 30) / Animation_Speed
  1796. elseif CO1 >= Cooldown_1 then
  1797. CO1 = Cooldown_1
  1798. end
  1799. if CO2 <= Cooldown_2 then
  1800. CO2 = CO2 + (1 / 30) / Animation_Speed
  1801. elseif CO2 >= Cooldown_2 then
  1802. CO2 = Cooldown_2
  1803. end
  1804. if CO3 <= Cooldown_3 then
  1805. CO3 = CO3 + (1 / 30) / Animation_Speed
  1806. elseif CO3 >= Cooldown_3 then
  1807. CO3 = Cooldown_3
  1808. end
  1809. if CO4 <= Cooldown_4 then
  1810. CO4 = CO4 + (1 / 30) / Animation_Speed
  1811. elseif CO4 >= Cooldown_4 then
  1812. CO4 = Cooldown_4
  1813. end
  1814. end
  1815. end
  1816.  
  1817. --//=================================\\
  1818. --\\=================================//
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824. --//=================================\\
  1825. --|| ATTACK FUNCTIONS AND STUFF
  1826. --\\=================================//
  1827.  
  1828. function EquipWeapon()
  1829. --ATTACK = true
  1830. DEFENSECHANGE1.Parent = nil
  1831. MOVEMENTCHANGE1.Parent = ChangeStat
  1832. for i=0, 1, 0.5 / Animation_Speed do
  1833. Swait()
  1834. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1835. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1836. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(140), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1837. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1838. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1839. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1840. end
  1841. for i=0, 1, 0.08 / Animation_Speed do
  1842. Swait()
  1843. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1844. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1845. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(210), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1846. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1847. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1848. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1849. end
  1850. HandleWeld.Part0 = RightArm
  1851. HandleWeld.C0 = CF(-0.05 * Player_Size, -1 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(-27), RAD(0), RAD(-19)) * ANGLES(RAD(0), RAD(110), RAD(0))
  1852. CreateSound("174884033", HitboxPart, 1, 1.5)
  1853. for i=0, 1, 0.5 / Animation_Speed do
  1854. Swait()
  1855. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1856. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-2.5), RAD(0), RAD(30)), 0.3 / Animation_Speed)
  1857. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(80)) * ANGLES(RAD(20), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1858. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1859. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1860. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1861. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(90), RAD(0)), 0.3 / Animation_Speed)
  1862. end
  1863. LASTPOINT = EffectPart.CFrame
  1864. for i=0, 1, 0.08 / Animation_Speed do
  1865. Swait()
  1866. TrailEffect("Institutional white", "Neon", EffectPart.CFrame, LASTPOINT, "Block", 0, 0.2, ANGLES(0, 0, 0), -0.01, 0, -0.01, 0.1)
  1867. LASTPOINT = EffectPart.CFrame
  1868. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  1869. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  1870. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(80)) * ANGLES(RAD(-60), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1871. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1872. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.4 / Animation_Speed)
  1873. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  1874. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-140), RAD(90), RAD(0)), 0.3 / Animation_Speed)
  1875. end
  1876. LASTPOINT = nil
  1877. --ATTACK = false
  1878. end
  1879.  
  1880. function UnequipWeapon()
  1881. --ATTACK = true
  1882. for i=0, 1, 0.5 / Animation_Speed do
  1883. Swait()
  1884. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1885. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1886. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(140), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1887. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1888. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1889. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1890. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(-0.05 * Player_Size, -1 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(-27), RAD(0), RAD(-19)) * ANGLES(RAD(0), RAD(110), RAD(0)), 0.3 / Animation_Speed)
  1891. end
  1892. CreateSound("245542809", HitboxPart, 1, 1.2)
  1893. for i=0, 1, 0.08 / Animation_Speed do
  1894. Swait()
  1895. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1896. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1897. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(210), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1898. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1899. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1900. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1901. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(-0.05 * Player_Size, -1 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(-27), RAD(0), RAD(-19)) * ANGLES(RAD(0), RAD(110), RAD(0)), 0.3 / Animation_Speed)
  1902. end
  1903. HandleWeld.Part0 = Torso
  1904. HandleWeld.C0 = CF(2 * Player_Size, 2 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(135))
  1905. for i=0, 1, 0.5 / Animation_Speed do
  1906. Swait()
  1907. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1908. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-2.5), RAD(0), RAD(30)), 0.3 / Animation_Speed)
  1909. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(140), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1910. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1911. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(95), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.3 / Animation_Speed)
  1912. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.3 / Animation_Speed)
  1913. end
  1914. for i=0, 1, 0.08 / Animation_Speed do
  1915. Swait()
  1916. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1917. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1918. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1919. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)), 0.3 / Animation_Speed)
  1920. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1921. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1922. if Disable_Moving_Arms == false then
  1923. RightShoulder.C1 = Clerp(RightShoulder.C1, ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5), 0.3 / Animation_Speed)
  1924. LeftShoulder.C1 = Clerp(LeftShoulder.C1, ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5), 0.3 / Animation_Speed)
  1925. else
  1926. RightShoulder.C1 = Clerp(RightShoulder.C1, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size), 0.3 / Animation_Speed)
  1927. LeftShoulder.C1 = Clerp(LeftShoulder.C1, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size), 0.3 / Animation_Speed)
  1928. end
  1929. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1930. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1931. 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.3 / Animation_Speed)
  1932. 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.3 / Animation_Speed)
  1933. end
  1934. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1935. RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1936. Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1937. Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1938. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  1939. LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  1940. if Disable_Moving_Arms == false then
  1941. RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1942. LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1943. else
  1944. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1945. LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1946. end
  1947. RightHip.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1948. LeftHip.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1949. 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))
  1950. 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))
  1951. --ATTACK = false
  1952. DEFENSECHANGE1.Parent = ChangeStat
  1953. MOVEMENTCHANGE1.Parent = nil
  1954. end
  1955.  
  1956. function StaggerHitAnimation()
  1957. ATTACK = true
  1958. if Weapon:FindFirstChild("Hitbox") ~= nil then
  1959. for i = 1, MRANDOM(2, 4) do
  1960. ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  1961. end
  1962. end
  1963. for i = 0, 1, 0.1 / Animation_Speed do
  1964. Swait()
  1965. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  1966. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(30)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  1967. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-30), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1968. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * ANGLES(RAD(0), RAD(20), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  1969. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.9 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1970. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.3 / Animation_Speed)
  1971. if Stagger.Value == true or Stun.Value == true then
  1972. break
  1973. end
  1974. end
  1975. ATTACK = false
  1976. end
  1977.  
  1978. function StaggerAnimation()
  1979. ATTACK = true
  1980. if Weapon:FindFirstChild("Hitbox") ~= nil then
  1981. for i = 1, MRANDOM(2, 4) do
  1982. ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  1983. end
  1984. end
  1985. DISABLEJUMPING = true
  1986. COMBO = 1
  1987. StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Staggered!", C3(255 / 255, 255 / 255, 0))
  1988. local STAGGERVELOCITY = Instance.new("BodyVelocity",Torso)
  1989. STAGGERVELOCITY.P = 500
  1990. STAGGERVELOCITY.maxForce = VT(math.huge, 0, math.huge)
  1991. if Rooted.Value == false then
  1992. STAGGERVELOCITY.Velocity = RootPart.CFrame.lookVector * -40
  1993. end
  1994. for i = 0, 1, 0.35 / Animation_Speed do
  1995. Swait()
  1996. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  1997. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(20)), 0.3 / Animation_Speed)
  1998. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size,0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  1999. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size,0 * Player_Size) * ANGLES(RAD(-7.5), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  2000. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size,0 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(30)), 0.3 / Animation_Speed)
  2001. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size,0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(5)), 0.3 / Animation_Speed)
  2002. end
  2003. for i = 0, 1, 0.2 / Animation_Speed do
  2004. Swait()
  2005. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2006. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2007. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2008. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-7.5), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2009. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(50)), 0.4 / Animation_Speed)
  2010. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.4 / Animation_Speed)
  2011. end
  2012. STAGGERVELOCITY.Parent = nil
  2013. for i = 1, 50 * Animation_Speed do
  2014. Swait()
  2015. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.8 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-20)) * ANGLES(RAD(-5), RAD(-5), RAD(0)), 0.3 / Animation_Speed)
  2016. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.3 / Animation_Speed)
  2017. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(-20), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2018. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-10)) * ANGLES(RAD(0), RAD(15), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  2019. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.4 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(70)) * ANGLES(RAD(0), RAD(30), RAD(0)), 0.3 / Animation_Speed)
  2020. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-10)), 0.3 / Animation_Speed)
  2021. end
  2022. DISABLEJUMPING = false
  2023. ATTACK = false
  2024. end
  2025.  
  2026. function StunAnimation()
  2027. ATTACK = true
  2028. DISABLEJUMPING = true
  2029. COMBO = 1
  2030. StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Stunned!", C3(255 / 255, 255 / 255, 0))
  2031. for i = 0, 1, 0.3 / Animation_Speed do
  2032. Swait()
  2033. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(-150)), 0.3 / Animation_Speed)
  2034. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  2035. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(40)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2036. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  2037. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(30)), 0.3 / Animation_Speed)
  2038. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(20)), 0.3 / Animation_Speed)
  2039. end
  2040. for i = 0, 1, 0.3 / Animation_Speed do
  2041. Swait()
  2042. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(-180)), 0.4 / Animation_Speed)
  2043. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2044. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(40)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2045. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2046. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(15)), 0.4 / Animation_Speed)
  2047. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(50)), 0.4 / Animation_Speed)
  2048. end
  2049. for i = 0, 1, 0.3 / Animation_Speed do
  2050. Swait()
  2051. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(75), RAD(0), RAD(-180)), 0.4 / Animation_Speed)
  2052. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(-60)), 0.4 / Animation_Speed)
  2053. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(70)) * ANGLES(RAD(0), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2054. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-80)) * ANGLES(RAD(0), RAD(-40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2055. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(10)), 0.4 / Animation_Speed)
  2056. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(80)), 0.4 / Animation_Speed)
  2057. end
  2058. for i = 1, 70 * Animation_Speed do
  2059. Swait()
  2060. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -2.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-180)), 0.3 / Animation_Speed)
  2061. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.3 / Animation_Speed)
  2062. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(-10), RAD(90)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2063. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  2064. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  2065. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  2066. end
  2067. for i = 0, 1, 0.2 / Animation_Speed do
  2068. Swait()
  2069. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.5 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(100)), 0.4 / Animation_Speed)
  2070. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2071. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(-10), RAD(30)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2072. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(80), RAD(0), RAD(20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2073. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(70)), 0.4 / Animation_Speed)
  2074. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.25 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2075. end
  2076. DISABLEJUMPING = false
  2077. ATTACK = false
  2078. end
  2079.  
  2080. function EAbility()
  2081. ATTACK = true
  2082. ATTACK = false
  2083. end
  2084.  
  2085. function AbyssAttack1()
  2086. ATTACK = true
  2087. for i=0, 1, 0.1 / Animation_Speed do
  2088. Swait()
  2089. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2090. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2091. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2092. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2093. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(15)), 0.4 / Animation_Speed)
  2094. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2095. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-110), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2096. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2097. break
  2098. end
  2099. end
  2100. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2101. attacksound1.Volume = 3
  2102. attacksound1:Play()
  2103. for i=0, 1, 0.1 / Animation_Speed do
  2104. Swait()
  2105. local Pos = HitboxPart
  2106. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2107. local Color = "Really black"
  2108. local Material = "Neon"
  2109. local TheDelay = 0.01
  2110. local Height = 6.2 * Player_Size
  2111. BLCF = Offset
  2112. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2113. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2114. if a then game:GetService("Debris"):AddItem(a, 1) end
  2115. if b then game:GetService("Debris"):AddItem(b, 1) end
  2116. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2117. if a then game:GetService("Debris"):AddItem(a, 1) end
  2118. if b then game:GetService("Debris"):AddItem(b, 1) end
  2119. SCFR = BLCF
  2120. elseif not SCFR then
  2121. SCFR = BLCF
  2122. end
  2123. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 10, 20, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2124. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2125. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2126. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2127. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2128. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2129. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2130. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-130), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2131. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2132. break
  2133. end
  2134. end
  2135. BLCF = nil
  2136. SCFR = nil
  2137. ATTACK = false
  2138. end
  2139.  
  2140. function AbyssAttack2()
  2141. ATTACK = true
  2142. for i=0, 1, 0.1 / Animation_Speed do
  2143. Swait()
  2144. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2145. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2146. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2147. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2148. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2149. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2150. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2151. break
  2152. end
  2153. end
  2154. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2155. attacksound2.Volume = 3
  2156. attacksound2:Play()
  2157. local HASHITFLOOR = false
  2158. for i=0, 1, 0.1 / Animation_Speed do
  2159. Swait()
  2160. local Pos = HitboxPart
  2161. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2162. local Color = "Really black"
  2163. local Material = "Neon"
  2164. local TheDelay = 0.01
  2165. local Height = 6.2 * Player_Size
  2166. BLCF = Offset
  2167. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2168. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2169. if a then game:GetService("Debris"):AddItem(a, 1) end
  2170. if b then game:GetService("Debris"):AddItem(b, 1) end
  2171. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2172. if a then game:GetService("Debris"):AddItem(a, 1) end
  2173. if b then game:GetService("Debris"):AddItem(b, 1) end
  2174. SCFR = BLCF
  2175. elseif not SCFR then
  2176. SCFR = BLCF
  2177. end
  2178. local SWORDHIT, SWORDPOS = Raycast(EffectPart.Position, (CF(EffectPart.Position, EffectPart.Position + VT(0, -1, 0))).lookVector, 1 * Player_Size, Character)
  2179. if SWORDHIT ~= nil and HASHITFLOOR == false and SWORDHIT.Parent:FindFirstChild("Humanoid") == nil then
  2180. HASHITFLOOR = true
  2181. --print(SWORDHIT.Material)
  2182. if SWORDHIT.Material == Enum.Material.Grass or SWORDHIT.Material == Enum.Material.Ice or SWORDHIT.Material == Enum.Material.Fabric or SWORDHIT.Material == Enum.Material.SmoothPlastic or SWORDHIT.Material == Enum.Material.Sand or SWORDHIT.Material == Enum.Material.Plastic or SWORDHIT.Material == Enum.Material.Neon or SWORDHIT.Material == Enum.Material.Foil then
  2183. CreateSound("525717773", EffectPart, 1.2 , MRANDOM(8, 12) / 10)
  2184. elseif SWORDHIT.Material == Enum.Material.Metal or SWORDHIT.Material == Enum.Material.Concrete or SWORDHIT.Material == Enum.Material.Brick or SWORDHIT.Material == Enum.Material.CorrodedMetal or SWORDHIT.Material == Enum.Material.Slate or SWORDHIT.Material == Enum.Material.Marble or SWORDHIT.Material == Enum.Material.Granite or SWORDHIT.Material == Enum.Material.DiamondPlate or SWORDHIT.Material == Enum.Material.Pebble or SWORDHIT.Material == Enum.Material.Cobblestone then
  2185. CreateSound("470790670", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2186. for i = 1, MRANDOM(2, 4) do
  2187. ClangEffect("Bright yellow", "Neon", CF(SWORDPOS) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 10, 3, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  2188. end
  2189. elseif SWORDHIT.Material == Enum.Material.Wood or SWORDHIT.Material == Enum.Material.WoodPlanks then
  2190. CreateSound("514586161", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2191. end
  2192. end
  2193. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 20, 40, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2194. if HASHITFLOOR == true then
  2195. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2196. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2197. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(40), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2198. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2199. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2200. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-132.5), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2201. else
  2202. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2203. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2204. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2205. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2206. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2207. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-150), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2208. end
  2209. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2210. break
  2211. end
  2212. end
  2213. BLCF = nil
  2214. SCFR = nil
  2215. ATTACK = false
  2216. end
  2217.  
  2218. function AbyssAttack3()
  2219. ATTACK = true
  2220. for i=0, 1, 0.1 / Animation_Speed do
  2221. Swait()
  2222. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2223. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2224. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2225. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2226. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2227. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2228. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-130), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2229. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2230. break
  2231. end
  2232. end
  2233. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2234. attacksound3.Volume = 3
  2235. attacksound3:Play()
  2236. for i=0, 1, 0.1 / Animation_Speed do
  2237. Swait()
  2238. local Pos = HitboxPart
  2239. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2240. local Color = "Really black"
  2241. local Material = "Neon"
  2242. local TheDelay = 0.01
  2243. local Height = 6.2 * Player_Size
  2244. BLCF = Offset
  2245. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2246. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2247. if a then game:GetService("Debris"):AddItem(a, 1) end
  2248. if b then game:GetService("Debris"):AddItem(b, 1) end
  2249. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2250. if a then game:GetService("Debris"):AddItem(a, 1) end
  2251. if b then game:GetService("Debris"):AddItem(b, 1) end
  2252. SCFR = BLCF
  2253. elseif not SCFR then
  2254. SCFR = BLCF
  2255. end
  2256. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 30, 60, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2257. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2258. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2259. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2260. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2261. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(15)), 0.4 / Animation_Speed)
  2262. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2263. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-110), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2264. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2265. break
  2266. end
  2267. end
  2268. BLCF = nil
  2269. SCFR = nil
  2270. ATTACK = false
  2271. end
  2272.  
  2273. function AbyssAttack4()
  2274. ATTACK = true
  2275. for i=0, 1, 0.1 / Animation_Speed do
  2276. Swait()
  2277. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2278. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2279. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2280. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2281. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2282. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2283. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2284. break
  2285. end
  2286. end
  2287. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2288. attacksound4.Volume = 3
  2289. attacksound4:Play()
  2290. local HASHITFLOOR = false
  2291. for i=0, 1, 0.1 / Animation_Speed do
  2292. Swait()
  2293. local Pos = HitboxPart
  2294. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2295. local Color = "Really black"
  2296. local Material = "Neon"
  2297. local TheDelay = 0.01
  2298. local Height = 6.2 * Player_Size
  2299. BLCF = Offset
  2300. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2301. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2302. if a then game:GetService("Debris"):AddItem(a, 1) end
  2303. if b then game:GetService("Debris"):AddItem(b, 1) end
  2304. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2305. if a then game:GetService("Debris"):AddItem(a, 1) end
  2306. if b then game:GetService("Debris"):AddItem(b, 1) end
  2307. SCFR = BLCF
  2308. elseif not SCFR then
  2309. SCFR = BLCF
  2310. end
  2311. local SWORDHIT, SWORDPOS = Raycast(EffectPart.Position, (CF(EffectPart.Position, EffectPart.Position + VT(0, -1, 0))).lookVector, 1 * Player_Size, Character)
  2312. if SWORDHIT ~= nil and HASHITFLOOR == false and SWORDHIT.Parent:FindFirstChild("Humanoid") == nil then
  2313. HASHITFLOOR = true
  2314. --print(SWORDHIT.Material)
  2315. if SWORDHIT.Material == Enum.Material.Grass or SWORDHIT.Material == Enum.Material.Ice or SWORDHIT.Material == Enum.Material.Fabric or SWORDHIT.Material == Enum.Material.SmoothPlastic or SWORDHIT.Material == Enum.Material.Sand or SWORDHIT.Material == Enum.Material.Plastic or SWORDHIT.Material == Enum.Material.Neon or SWORDHIT.Material == Enum.Material.Foil then
  2316. CreateSound("525717773", EffectPart, 1.2 , MRANDOM(8, 12) / 10)
  2317. elseif SWORDHIT.Material == Enum.Material.Metal or SWORDHIT.Material == Enum.Material.Concrete or SWORDHIT.Material == Enum.Material.Brick or SWORDHIT.Material == Enum.Material.CorrodedMetal or SWORDHIT.Material == Enum.Material.Slate or SWORDHIT.Material == Enum.Material.Marble or SWORDHIT.Material == Enum.Material.Granite or SWORDHIT.Material == Enum.Material.DiamondPlate or SWORDHIT.Material == Enum.Material.Pebble or SWORDHIT.Material == Enum.Material.Cobblestone then
  2318. CreateSound("470790670", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2319. for i = 1, MRANDOM(2, 4) do
  2320. ClangEffect("Bright yellow", "Neon", CF(SWORDPOS) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 10, 3, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  2321. end
  2322. elseif SWORDHIT.Material == Enum.Material.Wood or SWORDHIT.Material == Enum.Material.WoodPlanks then
  2323. CreateSound("514586161", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2324. end
  2325. end
  2326. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 50, 80, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2327. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2328. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2329. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2330. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2331. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2332. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2333. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2334. break
  2335. end
  2336. end
  2337. BLCF = nil
  2338. SCFR = nil
  2339. ATTACK = false
  2340. end
  2341.  
  2342. function Attack1()
  2343. ATTACK = true
  2344. for i=0, 1, 0.1 / Animation_Speed do
  2345. Swait()
  2346. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2347. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2348. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2349. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2350. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(15)), 0.4 / Animation_Speed)
  2351. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2352. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-110), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2353. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2354. break
  2355. end
  2356. end
  2357. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2358. attacksound1.Volume = 3
  2359. attacksound1:Play()
  2360. for i=0, 1, 0.1 / Animation_Speed do
  2361. Swait()
  2362. local Pos = HitboxPart
  2363. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2364. local Color = "Institutional white"
  2365. local Material = "Neon"
  2366. local TheDelay = 0.01
  2367. local Height = 6.2 * Player_Size
  2368. BLCF = Offset
  2369. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2370. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2371. if a then game:GetService("Debris"):AddItem(a, 1) end
  2372. if b then game:GetService("Debris"):AddItem(b, 1) end
  2373. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2374. if a then game:GetService("Debris"):AddItem(a, 1) end
  2375. if b then game:GetService("Debris"):AddItem(b, 1) end
  2376. SCFR = BLCF
  2377. elseif not SCFR then
  2378. SCFR = BLCF
  2379. end
  2380. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 5, 10, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2381. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2382. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2383. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2384. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2385. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2386. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2387. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-130), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2388. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2389. break
  2390. end
  2391. end
  2392. BLCF = nil
  2393. SCFR = nil
  2394. ATTACK = false
  2395. end
  2396.  
  2397. function Attack2()
  2398. ATTACK = true
  2399. for i=0, 1, 0.1 / Animation_Speed do
  2400. Swait()
  2401. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2402. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2403. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2404. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2405. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2406. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2407. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2408. break
  2409. end
  2410. end
  2411. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2412. attacksound2.Volume = 3
  2413. attacksound2:Play()
  2414. local HASHITFLOOR = false
  2415. for i=0, 1, 0.1 / Animation_Speed do
  2416. Swait()
  2417. local Pos = HitboxPart
  2418. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2419. local Color = "Institutional white"
  2420. local Material = "Neon"
  2421. local TheDelay = 0.01
  2422. local Height = 6.2 * Player_Size
  2423. BLCF = Offset
  2424. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2425. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2426. if a then game:GetService("Debris"):AddItem(a, 1) end
  2427. if b then game:GetService("Debris"):AddItem(b, 1) end
  2428. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2429. if a then game:GetService("Debris"):AddItem(a, 1) end
  2430. if b then game:GetService("Debris"):AddItem(b, 1) end
  2431. SCFR = BLCF
  2432. elseif not SCFR then
  2433. SCFR = BLCF
  2434. end
  2435. local SWORDHIT, SWORDPOS = Raycast(EffectPart.Position, (CF(EffectPart.Position, EffectPart.Position + VT(0, -1, 0))).lookVector, 1 * Player_Size, Character)
  2436. if SWORDHIT ~= nil and HASHITFLOOR == false and SWORDHIT.Parent:FindFirstChild("Humanoid") == nil then
  2437. HASHITFLOOR = true
  2438. --print(SWORDHIT.Material)
  2439. if SWORDHIT.Material == Enum.Material.Grass or SWORDHIT.Material == Enum.Material.Ice or SWORDHIT.Material == Enum.Material.Fabric or SWORDHIT.Material == Enum.Material.SmoothPlastic or SWORDHIT.Material == Enum.Material.Sand or SWORDHIT.Material == Enum.Material.Plastic or SWORDHIT.Material == Enum.Material.Neon or SWORDHIT.Material == Enum.Material.Foil then
  2440. CreateSound("525717773", EffectPart, 1.2 , MRANDOM(8, 12) / 10)
  2441. elseif SWORDHIT.Material == Enum.Material.Metal or SWORDHIT.Material == Enum.Material.Concrete or SWORDHIT.Material == Enum.Material.Brick or SWORDHIT.Material == Enum.Material.CorrodedMetal or SWORDHIT.Material == Enum.Material.Slate or SWORDHIT.Material == Enum.Material.Marble or SWORDHIT.Material == Enum.Material.Granite or SWORDHIT.Material == Enum.Material.DiamondPlate or SWORDHIT.Material == Enum.Material.Pebble or SWORDHIT.Material == Enum.Material.Cobblestone then
  2442. CreateSound("470790670", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2443. for i = 1, MRANDOM(2, 4) do
  2444. ClangEffect("Bright yellow", "Neon", CF(SWORDPOS) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 10, 3, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  2445. end
  2446. elseif SWORDHIT.Material == Enum.Material.Wood or SWORDHIT.Material == Enum.Material.WoodPlanks then
  2447. CreateSound("514586161", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2448. end
  2449. end
  2450. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 10, 20, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2451. if HASHITFLOOR == true then
  2452. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2453. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2454. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(40), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2455. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2456. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2457. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-132.5), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2458. else
  2459. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2460. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2461. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2462. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2463. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2464. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-150), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2465. end
  2466. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2467. break
  2468. end
  2469. end
  2470. BLCF = nil
  2471. SCFR = nil
  2472. ATTACK = false
  2473. end
  2474.  
  2475. function Attack3()
  2476. ATTACK = true
  2477. for i=0, 1, 0.1 / Animation_Speed do
  2478. Swait()
  2479. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  2480. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2481. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2482. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2483. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2484. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2485. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-130), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2486. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2487. break
  2488. end
  2489. end
  2490. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2491. attacksound3.Volume = 3
  2492. attacksound3:Play()
  2493. for i=0, 1, 0.1 / Animation_Speed do
  2494. Swait()
  2495. local Pos = HitboxPart
  2496. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2497. local Color = "Institutional white"
  2498. local Material = "Neon"
  2499. local TheDelay = 0.01
  2500. local Height = 6.2 * Player_Size
  2501. BLCF = Offset
  2502. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2503. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2504. if a then game:GetService("Debris"):AddItem(a, 1) end
  2505. if b then game:GetService("Debris"):AddItem(b, 1) end
  2506. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2507. if a then game:GetService("Debris"):AddItem(a, 1) end
  2508. if b then game:GetService("Debris"):AddItem(b, 1) end
  2509. SCFR = BLCF
  2510. elseif not SCFR then
  2511. SCFR = BLCF
  2512. end
  2513. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 15, 30, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2514. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  2515. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2516. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(90), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2517. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2518. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(15)), 0.4 / Animation_Speed)
  2519. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2520. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-110), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2521. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2522. break
  2523. end
  2524. end
  2525. BLCF = nil
  2526. SCFR = nil
  2527. ATTACK = false
  2528. end
  2529.  
  2530. function Attack4()
  2531. ATTACK = true
  2532. for i=0, 1, 0.1 / Animation_Speed do
  2533. Swait()
  2534. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
  2535. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
  2536. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2537. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(17.5)), 0.4 / Animation_Speed)
  2538. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  2539. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2540. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2541. break
  2542. end
  2543. end
  2544. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2545. attacksound4.Volume = 3
  2546. attacksound4:Play()
  2547. local HASHITFLOOR = false
  2548. for i=0, 1, 0.1 / Animation_Speed do
  2549. Swait()
  2550. local Pos = HitboxPart
  2551. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2552. local Color = "Institutional white"
  2553. local Material = "Neon"
  2554. local TheDelay = 0.01
  2555. local Height = 6.2 * Player_Size
  2556. BLCF = Offset
  2557. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2558. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  2559. if a then game:GetService("Debris"):AddItem(a, 1) end
  2560. if b then game:GetService("Debris"):AddItem(b, 1) end
  2561. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  2562. if a then game:GetService("Debris"):AddItem(a, 1) end
  2563. if b then game:GetService("Debris"):AddItem(b, 1) end
  2564. SCFR = BLCF
  2565. elseif not SCFR then
  2566. SCFR = BLCF
  2567. end
  2568. local SWORDHIT, SWORDPOS = Raycast(EffectPart.Position, (CF(EffectPart.Position, EffectPart.Position + VT(0, -1, 0))).lookVector, 1 * Player_Size, Character)
  2569. if SWORDHIT ~= nil and HASHITFLOOR == false and SWORDHIT.Parent:FindFirstChild("Humanoid") == nil then
  2570. HASHITFLOOR = true
  2571. --print(SWORDHIT.Material)
  2572. if SWORDHIT.Material == Enum.Material.Grass or SWORDHIT.Material == Enum.Material.Ice or SWORDHIT.Material == Enum.Material.Fabric or SWORDHIT.Material == Enum.Material.SmoothPlastic or SWORDHIT.Material == Enum.Material.Sand or SWORDHIT.Material == Enum.Material.Plastic or SWORDHIT.Material == Enum.Material.Neon or SWORDHIT.Material == Enum.Material.Foil then
  2573. CreateSound("525717773", EffectPart, 1.2 , MRANDOM(8, 12) / 10)
  2574. elseif SWORDHIT.Material == Enum.Material.Metal or SWORDHIT.Material == Enum.Material.Concrete or SWORDHIT.Material == Enum.Material.Brick or SWORDHIT.Material == Enum.Material.CorrodedMetal or SWORDHIT.Material == Enum.Material.Slate or SWORDHIT.Material == Enum.Material.Marble or SWORDHIT.Material == Enum.Material.Granite or SWORDHIT.Material == Enum.Material.DiamondPlate or SWORDHIT.Material == Enum.Material.Pebble or SWORDHIT.Material == Enum.Material.Cobblestone then
  2575. CreateSound("470790670", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2576. for i = 1, MRANDOM(2, 4) do
  2577. ClangEffect("Bright yellow", "Neon", CF(SWORDPOS) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 10, 3, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  2578. end
  2579. elseif SWORDHIT.Material == Enum.Material.Wood or SWORDHIT.Material == Enum.Material.WoodPlanks then
  2580. CreateSound("514586161", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2581. end
  2582. end
  2583. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 25, 40, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2584. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2585. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2586. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2587. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2588. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2589. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2590. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2591. break
  2592. end
  2593. end
  2594. BLCF = nil
  2595. SCFR = nil
  2596. ATTACK = false
  2597. end
  2598.  
  2599. function part2(formfactor,parent,reflectance,transparency,brickcolor,name,size)
  2600. local fp=Instance.new("Part")
  2601. fp.formFactor=formfactor
  2602. fp.Parent=Effects
  2603. fp.Reflectance=reflectance
  2604. fp.Transparency=transparency
  2605. fp.CanCollide=false
  2606. fp.Locked=true
  2607. fp.BrickColor=brickcolor
  2608. fp.Name=name
  2609. fp.Size=size
  2610. fp.Position=Torso.Position
  2611. fp.Material="SmoothPlastic"
  2612. fp:BreakJoints()
  2613. return fp
  2614. end
  2615.  
  2616. function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
  2617. return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  2618. end
  2619.  
  2620. euler=CFrame.fromEulerAnglesXYZ
  2621. vt=Vector3.new
  2622.  
  2623. function mesh(Mesh,part,meshtype,meshid,offset,scale)
  2624. local mesh=Instance.new(Mesh)
  2625. mesh.Parent=part
  2626. if Mesh=="SpecialMesh" then
  2627. mesh.MeshType=meshtype
  2628. mesh.MeshId=meshid
  2629. end
  2630. mesh.Offset=offset
  2631. mesh.Scale=scale
  2632. return mesh
  2633. end
  2634.  
  2635. function MagicBlock3(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  2636. local prt=part2(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
  2637. prt.Anchored=true
  2638. prt.Material = "Neon"
  2639. prt.CFrame=cframe
  2640. prt.CFrame=prt.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  2641. msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
  2642. game:GetService("Debris"):AddItem(prt,5)
  2643. coroutine.resume(coroutine.create(function(Part,Mesh)
  2644. for i=0,1,delay do
  2645. Swait()
  2646. Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  2647. Part.Transparency=i
  2648. Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
  2649. end
  2650. Part.Parent=nil
  2651. end),prt,msh)
  2652. end
  2653.  
  2654. angles=CFrame.Angles
  2655.  
  2656. function Quickslashes()
  2657. ATTACK = true
  2658. Humanoid.WalkSpeed = 0
  2659. for i=0, 1, 0.1 / Animation_Speed do
  2660. Swait()
  2661. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2662. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2663. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2664. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2665. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2666. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2667. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2668. break
  2669. end
  2670. end
  2671. for i=0, 1, 0.1 / Animation_Speed do
  2672. Swait()
  2673. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2674. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2675. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2676. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2677. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2678. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-170), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2679. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2680. break
  2681. end
  2682. end
  2683. Humanoid.WalkSpeed = 16
  2684. RightArm.Transparency = 1
  2685. HandlePart.Transparency = 1
  2686. for i = 1, 15 do
  2687. local spread=vt((math.random(-1,0)+math.random())*16,(math.random(-1,0)+math.random())*16,(math.random(-1,0)+math.random())*16)*(HitboxPart.Position-(HitboxPart.Position+vt(0,-1,0))).magnitude/100
  2688. local TheHit=HitboxPart.Position+vt(0,-1,0)
  2689. local MouseLook=cf((HitboxPart.Position+TheHit)/2,TheHit+spread)
  2690. local hit,pos = rayCast(HitboxPart.Position,MouseLook.lookVector,999,Character)
  2691. local mag=(HitboxPart.Position-pos).magnitude
  2692. MagicCylinder2(BrickColor.new("Institutional white"),CFrame.new((HitboxPart.Position+pos)/2,pos)*angles(1.57,0,0) ,1,mag*1,1,0.5,0,0.5,0.05)
  2693. mat = math.random(1,3)
  2694. if mat ~= 2 then
  2695. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2696. end
  2697. for i= 1, 5 do
  2698. Swait()
  2699. end
  2700. MagnitudeDamage("", "", "", HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 7, false, 4, 5, MRANDOM(5, 10), "Normal", RootPart, 0.01, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2701. Swait(1)
  2702. end
  2703. RightArm.Transparency = 0
  2704. HandlePart.Transparency = 0
  2705. BLCF = nil
  2706. SCFR = nil
  2707. ATTACK = false
  2708. end
  2709.  
  2710. function Abyssslashes()
  2711. ATTACK = true
  2712. Humanoid.WalkSpeed = 0
  2713. for i=0, 1, 0.1 / Animation_Speed do
  2714. Swait()
  2715. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2716. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2717. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2718. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2719. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2720. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-80), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2721. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2722. break
  2723. end
  2724. end
  2725. for i=0, 1, 0.1 / Animation_Speed do
  2726. Swait()
  2727. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  2728. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(35)), 0.4 / Animation_Speed)
  2729. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2730. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  2731. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.075 * Player_Size) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  2732. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-170), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  2733. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2734. break
  2735. end
  2736. end
  2737. Humanoid.WalkSpeed = 25
  2738. RightArm.PE.Enabled = false
  2739. HandlePart.Transparency = 1
  2740. for i = 1, 15 do
  2741. local spread=vt((math.random(-1,0)+math.random())*16,(math.random(-1,0)+math.random())*16,(math.random(-1,0)+math.random())*16)*(HitboxPart.Position-(HitboxPart.Position+vt(0,-1,0))).magnitude/100
  2742. local TheHit=HitboxPart.Position+vt(0,-1,0)
  2743. local MouseLook=cf((HitboxPart.Position+TheHit)/2,TheHit+spread)
  2744. local hit,pos = rayCast(HitboxPart.Position,MouseLook.lookVector,999,Character)
  2745. local mag=(HitboxPart.Position-pos).magnitude
  2746. MagicCylinder2(BrickColor.new("Really black"),CFrame.new((HitboxPart.Position+pos)/2,pos)*angles(1.57,0,0) ,1,mag*1,1,0.5,0,0.5,0.05)
  2747. mat = math.random(1,3)
  2748. if mat ~= 2 then
  2749. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2750. end
  2751. for i= 1, 5 do
  2752. Swait()
  2753. end
  2754. MagnitudeDamage("", "", "", HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 7, false, 10, 12, MRANDOM(5, 10), "Normal", RootPart, 0.02, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2755. Swait(1)
  2756. end
  2757. RightArm.PE.Enabled = true
  2758. HandlePart.Transparency = 0
  2759. BLCF = nil
  2760. SCFR = nil
  2761. ATTACK = false
  2762. end
  2763.  
  2764. function dash()
  2765. Humanoid.WalkSpeed = 0
  2766. ATTACK = true
  2767. cloak()
  2768. for i=0, 1, 0.1 / Animation_Speed do
  2769. Swait()
  2770. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2771. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2772. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2773. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2774. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2775. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  2776. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  2777. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2778. break
  2779. end
  2780. end
  2781. CreateSound("444667824", root, 1, 1)
  2782. MagicBlock3(BrickColor.new("Really black"),root.CFrame,2,2,2,0.2,0.2,0.2,0.015)
  2783. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 20, false, 20, 60, 0, "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2784. Humanoid.WalkSpeed = 0
  2785. local bv = Instance.new("BodyVelocity")
  2786. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2787. bv.velocity = RootPart.CFrame.lookVector*250
  2788. bv.Parent = RootPart
  2789. game:GetService("Debris"):AddItem(bv, 1)
  2790. local rng = Instance.new("Part", char)
  2791. rng.Anchored = true
  2792. rng.BrickColor = BrickColor.new("Really black")
  2793. rng.CanCollide = false
  2794. rng.FormFactor = 3
  2795. rng.Name = "Ring"
  2796. rng.Size = Vector3.new(1, 1, 1)
  2797. rng.Transparency = 0
  2798. rng.TopSurface = 0
  2799. rng.BottomSurface = 0
  2800. rng.CFrame = Torso.CFrame
  2801. local rngm = Instance.new("SpecialMesh", rng)
  2802. rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
  2803. local rng2 = rng:Clone()
  2804. rng2.Parent = char
  2805. rng2.CFrame = root.CFrame + root.CFrame.lookVector*10
  2806. local rng2m = rng2.Mesh
  2807. local rng3 = rng:Clone()
  2808. rng3.Parent = char
  2809. rng3.CFrame = root.CFrame + root.CFrame.lookVector*20
  2810. local rng3m = rng3.Mesh
  2811. local rng4 = rng:Clone()
  2812. rng4.Parent = char
  2813. rng4.CFrame = root.CFrame + root.CFrame.lookVector*30
  2814. local rng4m = rng4.Mesh
  2815. local rng5 = rng:Clone()
  2816. rng5.Parent = char
  2817. rng5.CFrame = root.CFrame + root.CFrame.lookVector*40
  2818. local rng5m = rng5.Mesh
  2819. wait()
  2820. local scaler = 5/5
  2821. local scaler2 = 5/5
  2822. local hit = Torso.Touched:connect(function(hit)
  2823. if bv then
  2824. bv:remove()
  2825. end
  2826. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 6,true, 60, 70, 25, "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2827. end)
  2828. for i = 0,10,0.1 do
  2829. Swait()
  2830. rng.Transparency = rng.Transparency + 0.01
  2831. rng2.Transparency = rng2.Transparency + 0.01
  2832. rng3.Transparency = rng3.Transparency + 0.01
  2833. rng4.Transparency = rng4.Transparency + 0.01
  2834. rng5.Transparency = rng5.Transparency + 0.01
  2835. scaler = scaler - 0.125/5
  2836. scaler2 = scaler2 - 0.1/5
  2837. rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/1.25, scaler2/1.25, 0)
  2838. rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0)
  2839. rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/1.75, scaler2/1.75, 0)
  2840. rng5m.Scale = rng5m.Scale + Vector3.new(scaler2/2, scaler2/2, 0)
  2841. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
  2842. end
  2843. game:GetService("Debris"):AddItem(rng, 0.1)
  2844. game:GetService("Debris"):AddItem(rng2, 0.1)
  2845. game:GetService("Debris"):AddItem(rng3, 0.1)
  2846. game:GetService("Debris"):AddItem(rng4, 0.1)
  2847. game:GetService("Debris"):AddItem(rng5, 0.1)
  2848. hit:disconnect()
  2849. ATTACK = false
  2850. Humanoid.WalkSpeed = 16
  2851. decloak()
  2852. end
  2853.  
  2854. function abyssdash()
  2855. Humanoid.WalkSpeed = 0
  2856. ATTACK = true
  2857. for i=0, 1, 0.1 / Animation_Speed do
  2858. Swait()
  2859. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2860. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2861. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2862. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2863. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2864. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  2865. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  2866. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2867. break
  2868. end
  2869. end
  2870. CreateSound("444667824", root, 1, 1)
  2871. MagicBlock3(BrickColor.new("Really black"),root.CFrame,2,2,2,0.2,0.2,0.2,0.015)
  2872. MagicBlock3(BrickColor.new("Really black"),root.CFrame,2,2,2,1,1,1,0.015)
  2873. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 20, false, 40, 80, 0, "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2874. Humanoid.WalkSpeed = 0
  2875. local bv = Instance.new("BodyVelocity")
  2876. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2877. bv.velocity = RootPart.CFrame.lookVector*350
  2878. bv.Parent = RootPart
  2879. game:GetService("Debris"):AddItem(bv, 1)
  2880. local rng = Instance.new("Part", char)
  2881. rng.Anchored = true
  2882. rng.BrickColor = BrickColor.new("Really black")
  2883. rng.CanCollide = false
  2884. rng.FormFactor = 3
  2885. rng.Name = "Ring"
  2886. rng.Size = Vector3.new(1, 1, 1)
  2887. rng.Transparency = 0
  2888. rng.TopSurface = 0
  2889. rng.BottomSurface = 0
  2890. rng.CFrame = Torso.CFrame
  2891. local rngm = Instance.new("SpecialMesh", rng)
  2892. rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
  2893. local rng2 = rng:Clone()
  2894. rng2.Parent = char
  2895. rng2.CFrame = root.CFrame + root.CFrame.lookVector*10
  2896. local rng2m = rng2.Mesh
  2897. local rng3 = rng:Clone()
  2898. rng3.Parent = char
  2899. rng3.CFrame = root.CFrame + root.CFrame.lookVector*20
  2900. local rng3m = rng3.Mesh
  2901. local rng4 = rng:Clone()
  2902. rng4.Parent = char
  2903. rng4.CFrame = root.CFrame + root.CFrame.lookVector*30
  2904. local rng4m = rng4.Mesh
  2905. local rng5 = rng:Clone()
  2906. rng5.Parent = char
  2907. rng5.CFrame = root.CFrame + root.CFrame.lookVector*40
  2908. local rng5m = rng5.Mesh
  2909. wait()
  2910. local scaler = 10/5
  2911. local scaler2 = 10/5
  2912. local hit = Torso.Touched:connect(function(hit)
  2913. if bv then
  2914. bv:remove()
  2915. end
  2916. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 10,true, 60, 70, 25, "Normal", RootPart, 0, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2917. end)
  2918. for i = 0,10,0.1 do
  2919. Swait()
  2920. rng.Transparency = rng.Transparency + 0.01
  2921. rng2.Transparency = rng2.Transparency + 0.01
  2922. rng3.Transparency = rng3.Transparency + 0.01
  2923. rng4.Transparency = rng4.Transparency + 0.01
  2924. rng5.Transparency = rng5.Transparency + 0.01
  2925. scaler = scaler - 0.125/5
  2926. scaler2 = scaler2 - 0.1/5
  2927. rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/1.25, scaler2/1.25, 0)
  2928. rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0)
  2929. rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/1.75, scaler2/1.75, 0)
  2930. rng5m.Scale = rng5m.Scale + Vector3.new(scaler2/2, scaler2/2, 0)
  2931. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
  2932. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 10, false, 10, 10, 0, "Normal", RootPart, 0.01, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2933. end
  2934. game:GetService("Debris"):AddItem(rng, 0.1)
  2935. game:GetService("Debris"):AddItem(rng2, 0.1)
  2936. game:GetService("Debris"):AddItem(rng3, 0.1)
  2937. game:GetService("Debris"):AddItem(rng4, 0.1)
  2938. game:GetService("Debris"):AddItem(rng5, 0.1)
  2939. hit:disconnect()
  2940. ATTACK = false
  2941. Humanoid.WalkSpeed = 25
  2942. end
  2943.  
  2944.  
  2945. function MagicWave(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  2946. local prt=part(3,workspace,"Neon",0,0,brickcolor,"Effect",vt())
  2947. prt.Anchored=true
  2948. prt.CFrame=cframe
  2949. local msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=20329976",vt(0,0,0),vt(x1,y1,z1))
  2950. game:GetService("Debris"):AddItem(prt,5)
  2951. table.insert(Effects2,{prt,"Cylinder",delay,x3,y3,z3,msh})
  2952. end
  2953.  
  2954. function MagicBlock2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  2955. local prt=part(3,workspace,"Neon",0,0,brickcolor,"Effect",vt())
  2956. prt.Anchored=true
  2957. prt.CFrame=cframe
  2958. msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
  2959. game:GetService("Debris"):AddItem(prt,2)
  2960. coroutine.resume(coroutine.create(function(Part,Mesh)
  2961. for i=0,1,delay do
  2962. wait()
  2963. Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  2964. Part.Transparency=i
  2965. Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
  2966. end
  2967. Part.Parent=nil
  2968. end),prt,msh)
  2969. end
  2970.  
  2971. function MagicCylinder2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  2972. local prt=part(3,workspace,"Neon",0,0,brickcolor,"Effect",vt(2.5,2.5,2.5))
  2973. prt.Anchored=true
  2974. prt.CFrame=cframe
  2975. msh=mesh("SpecialMesh",prt,"Head","",vt(0,0,0),vt(x1,y1,z1))
  2976. game:GetService("Debris"):AddItem(prt,5)
  2977. coroutine.resume(coroutine.create(function(Part,Mesh)
  2978. for i=0,1,delay do
  2979. wait()
  2980. Part.CFrame=Part.CFrame
  2981. Part.Transparency=i
  2982. Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
  2983. end
  2984. Part.Parent=nil
  2985. end),prt,msh)
  2986. end
  2987.  
  2988. cf=CFrame.new
  2989.  
  2990. function Shriek()
  2991. Humanoid.WalkSpeed = 0
  2992. ATTACK = true
  2993. cloak()
  2994. for i=0, 1, 0.1 / Animation_Speed do
  2995. Swait()
  2996. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 1 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2997. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2998. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2999. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3000. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3001. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3002. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3003. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3004. break
  3005. end
  3006. end
  3007. shriek.Volume = 3
  3008. shriek:Play()
  3009. siz = 0.06
  3010. for i = 1, 6 do
  3011. siz2 = siz*2
  3012. MagicCylinder2(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X + math.random(-5,5),Torso.Position.Y + math.random(10,12),Torso.Position.Z + math.random(-5,5))),0,0,0,siz,siz2,siz,0.05)
  3013. siz = siz + 0.06
  3014. end
  3015. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,0.3,0.2,.025)
  3016. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,2,5,2,0,2,.025)
  3017. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,1,0.2,.025)
  3018. for i = 1, 10 do
  3019. MagnitudeDamage("", "", "", "", 1, 1, 1, 1, Torso, 25, false, 8, 18, MRANDOM(5, 10), "Normal", RootPart, 0.1, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3020. wait(0.1)
  3021. end
  3022. decloak()
  3023. ATTACK = false
  3024. Humanoid.WalkSpeed = 16
  3025. end
  3026.  
  3027. function AbyssShriek()
  3028. Humanoid.WalkSpeed = 0
  3029. ATTACK = true
  3030. for i=0, 1, 0.1 / Animation_Speed do
  3031. Swait()
  3032. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 1 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3033. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3034. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3035. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3036. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3037. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3038. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3039. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3040. break
  3041. end
  3042. end
  3043. shriek.Volume = 4
  3044. shriek:Play()
  3045. siz = 0.08
  3046. for i = 1, 10 do
  3047. siz2 = siz*2
  3048. MagicCylinder2(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X + math.random(-5,5),Torso.Position.Y + math.random(10,12),Torso.Position.Z + math.random(-5,5))),0,0,0,siz,siz2,siz,0.05)
  3049. siz = siz + 0.06
  3050. end
  3051. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,0.3,0.2,.025)
  3052. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,2,5,2,0,2,.025)
  3053. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,1,0.2,.025)
  3054. for i = 1, 10 do
  3055. MagnitudeDamage("", "", "", "", 1, 1, 1, 1, Torso, 35, false, 12, 22, MRANDOM(5, 10), "Normal", RootPart, 0.1, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3056. wait(0.1)
  3057. end
  3058. ATTACK = false
  3059. Humanoid.WalkSpeed = 25
  3060. end
  3061.  
  3062. function AbyssBullet(POSITION1, POSITION2, SPEED, SIZE, DURATION, LOWDAMAGE, HIGHDAMAGE)
  3063. local POS1 = POSITION1
  3064. local POS2 = POSITION2
  3065. local MOUSELOOK = CF((POS1 + POS2) / 2, POS2)
  3066. local FIREBALLSPEED = SPEED * Player_Size
  3067. local FIREBALLDURATION = DURATION
  3068. local FIREBALLCOLORS = {"Really black", "Black"}
  3069. local FIREBALLHITSOUNDS = {"971126018", "971125740"}
  3070. coroutine.resume(coroutine.create(function()
  3071. repeat
  3072. Swait()
  3073. local FIREBALLHIT, FIREBALLPOS = Raycast(POS1, MOUSELOOK.lookVector, FIREBALLSPEED, Character)
  3074. POS1 = POS1 + (MOUSELOOK.lookVector * FIREBALLSPEED)
  3075. MagicBlock(FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)], "Neon", CF(POS1) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(0, 0, 0), VT(0, 0, 0), SIZE, SIZE, SIZE, SIZE / -10, SIZE / -10, SIZE / -10, 0.1)
  3076. if FIREBALLHIT ~= nil or FIREBALLDURATION <= 0.1 then
  3077. FIREBALLDURATION = 0
  3078. local FireballHitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  3079. FireballHitRefpart.Anchored = true
  3080. FireballHitRefpart.CFrame = CF(FIREBALLPOS)
  3081. game:GetService("Debris"):AddItem(FireballHitRefpart, 5)
  3082. CreateSound(FIREBALLHITSOUNDS[MRANDOM(1, #FIREBALLHITSOUNDS)], FireballHitRefpart, 1.4, MRANDOM(14, 16) / 10)
  3083. for i = 1, MRANDOM(4, 8) do
  3084. MagicBlock(FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)], "Neon", FireballHitRefpart.CFrame * ANGLES(RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360))), CF(0, MRANDOM(5, 7) / 10 * Player_Size, 0), VT(0, 0, 0), 5, 5, 5, 0, 0, 0, MRANDOM(3, 5) / 100)
  3085. end
  3086. MagicBlock("Really black", "Neon", FireballHitRefpart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
  3087. MagicBlock("Really black", "Neon", FireballHitRefpart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), SIZE * 0.5, SIZE * 0.5, SIZE * 0.5, SIZE / 4, SIZE / 4, SIZE / 4, 0.05)
  3088. MagicBlock("Black", "Neon", FireballHitRefpart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), SIZE * 0.25, SIZE * 0.25, SIZE * 0.25, SIZE / 5, SIZE / 5, SIZE / 5, 0.05)
  3089. MagnitudeDamage("", "", "", "", 1, 1, 1, 1, FireballHitRefpart, SIZE / 2, false, 25, 30, 15, "Normal", RootPart, 0, 1, MRANDOM(10, 15), nil, false, true, nil, 0, 0, false)
  3090. else
  3091. FIREBALLDURATION = FIREBALLDURATION - (1 / 30) / Animation_Speed
  3092. end
  3093. until FIREBALLHIT ~= nil or FIREBALLDURATION <= 0
  3094. end))
  3095. end
  3096.  
  3097. function AbyssRain()
  3098. Humanoid.WalkSpeed = 0
  3099. Humanoid.JumpPower = 0
  3100. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,0.3,0.2,.025)
  3101. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,2,5,2,0,2,.025)
  3102. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,1,0.2,.025)
  3103. ATTACK = true
  3104. CreateSound("160773067", root, 1, 1)
  3105. for i=0, 1, 0.1 / Animation_Speed do
  3106. wait()
  3107. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 35 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3108. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3109. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3110. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3111. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3112. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3113. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3114. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3115. break
  3116. end
  3117. end
  3118. laugh:Play()
  3119. for i=0, 1, 0.1 / Animation_Speed do
  3120. wait()
  3121. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 35 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3122. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3123. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3124. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3125. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3126. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3127. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3128. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3129. break
  3130. end
  3131. end
  3132. wait(2)
  3133. for i=0, 1, 0.1 / Animation_Speed do
  3134. wait()
  3135. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 35 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-60)), 0.4 / Animation_Speed)
  3136. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(60)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  3137. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  3138. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-55)) * ANGLES(RAD(5), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  3139. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  3140. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-40), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-10)), 0.4 / Animation_Speed)
  3141. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  3142. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3143. break
  3144. end
  3145. end
  3146. for i = 1, 40 do
  3147. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,Vector3.new(Mouse.Hit.p.X,RootPart.Position.Y,Mouse.Hit.p.Z)) * CFrame.new(0, 0, 0)
  3148. AbyssBullet((CFrame.new(Mouse.Hit.p.X + math.random(-12,12),Mouse.Hit.p.Y + math.random(200,300),Mouse.Hit.p.Z + math.random(-12,12)) * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size)).p, Mouse.hit.p, 4, 100, 2.1, 5, 10)
  3149. wait(0.2)
  3150. end
  3151. for i=0, 1, 0.1 / Animation_Speed do
  3152. wait()
  3153. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 35 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-60)), 0.4 / Animation_Speed)
  3154. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(60)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  3155. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  3156. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-55)) * ANGLES(RAD(5), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  3157. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  3158. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-40), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-10)), 0.4 / Animation_Speed)
  3159. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  3160. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3161. break
  3162. end
  3163. end
  3164. wait(1)
  3165. for i=0, 1, 0.1 / Animation_Speed do
  3166. wait()
  3167. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3168. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3169. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  3170. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  3171. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  3172. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3173. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3174. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3175. break
  3176. end
  3177. end
  3178. ATTACK = false
  3179. Humanoid.JumpPower = 50
  3180. Humanoid.WalkSpeed = 25
  3181. end
  3182.  
  3183. function AbyssWarp()
  3184. RootPart.Anchored = true
  3185. Torso.CanCollide = false
  3186. warpdecloak()
  3187. for i=0, 1, 0.1 / Animation_Speed do
  3188. wait()
  3189. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3190. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3191. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3192. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3193. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3194. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3195. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3196. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3197. break
  3198. end
  3199. end
  3200. RootPart.CFrame = CFrame.new(Mouse.Hit.p.X,Mouse.Hit.p.Y + 2,Mouse.Hit.p.Z)
  3201. wait(0.2)
  3202. cloak()
  3203. HandlePart.Transparency = 0
  3204. HitboxPart.Transparency = 0
  3205. for i=0, 1, 0.1 / Animation_Speed do
  3206. wait()
  3207. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 1 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3208. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3209. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3210. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3211. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3212. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3213. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3214. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3215. break
  3216. end
  3217. end
  3218. Torso.CanCollide = true
  3219. RootPart.Anchored = false
  3220. end
  3221.  
  3222. function forceback()
  3223. ATTACK = true
  3224. ABYSSFORM = false
  3225. Humanoid.MaxHealth = 5000
  3226. Humanoid.Health = 5000
  3227. Humanoid.WalkSpeed = 0
  3228. Humanoid.JumpPower = 0
  3229. for i=0, 1, 0.1 / Animation_Speed do
  3230. Swait()
  3231. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
  3232. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  3233. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3234. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3235. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
  3236. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  3237. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.15 / Animation_Speed)
  3238. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3239. break
  3240. end
  3241. end
  3242. for i=0, 1, 0.1 / Animation_Speed do
  3243. Swait()
  3244. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3245. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3246. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(50 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3247. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3248. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3249. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3250. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-55), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3251. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3252. break
  3253. end
  3254. end
  3255. wait(1)
  3256. Humanoid.MaxHealth = 5000
  3257. Humanoid.Health = 5000
  3258. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 10,true, 20, 20, 0, "Normal", RootPart, 0, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3259. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,2,2,2,0.3,0.3,0.3,0.015)
  3260. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,2,2,2,0.2,0.2,0.2,0.015)
  3261. CreateSound("3264923", Torso, 2, 0.85)
  3262. decloak()
  3263. wingholder:ClearAllChildren()
  3264. sick.SoundId = basicmusic
  3265. wait(1)
  3266. ATTACK = false
  3267. Humanoid.WalkSpeed = 16
  3268. Humanoid.JumpPower = 50
  3269. end
  3270.  
  3271. function refuel()
  3272. ATTACK = true
  3273. Humanoid.WalkSpeed = 0
  3274. Humanoid.JumpPower = 0
  3275. for i=0, 1, 0.1 / Animation_Speed do
  3276. Swait()
  3277. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
  3278. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  3279. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3280. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3281. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
  3282. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  3283. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.15 / Animation_Speed)
  3284. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3285. break
  3286. end
  3287. end
  3288. for i=0, 1, 0.1 / Animation_Speed do
  3289. Swait()
  3290. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3291. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3292. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(50 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3293. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3294. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3295. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3296. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-55), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3297. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3298. break
  3299. end
  3300. end
  3301. while true do
  3302. wait(2)
  3303. if HOLDCHARGE == true and Abysstimer < 700 then
  3304. Humanoid.Health = Humanoid.Health - 500
  3305. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,1,1,1,0.3,0.3,0.3,0.015)
  3306. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,1,1,1,0.2,0.2,0.2,0.015)
  3307. CreateSound("3264923", Torso, 2, 0.85)
  3308. Abysstimer = Abysstimer + 100
  3309. elseif HOLDCHARGE == false or Abysstimer > 699 then
  3310. break
  3311. end
  3312. end
  3313. ATTACK = false
  3314. Humanoid.WalkSpeed = 16
  3315. Humanoid.JumpPower = 50
  3316. end
  3317.  
  3318. function ChangeForm()
  3319. Humanoid.WalkSpeed = 0
  3320. Humanoid.JumpPower = 0
  3321. ATTACK = true
  3322. for i=0, 1, 0.1 / Animation_Speed do
  3323. Swait()
  3324. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 1 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3325. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3326. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3327. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3328. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3329. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3330. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3331. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3332. break
  3333. end
  3334. end
  3335. for i = 1, 3 do
  3336. CreateSound("3264923", Torso, 2, 0.5)
  3337. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,15,15,15,-0.25,-0.25,-0.25,0.015)
  3338. wait(1)
  3339. end
  3340. cloak()
  3341. siz = 0.2
  3342. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,0.3,0.2,.025)
  3343. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,2,5,2,0,2,.025)
  3344. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,1,0.2,.025)
  3345. for i = 1, 5 do
  3346. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 20,true, 50, 50, 0, "Normal", RootPart, 0, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3347. MagicBlock3(BrickColor.new("Really black"),Torso.CFrame,0,0,0,siz,siz,siz,0.015)
  3348. siz = siz + 0.3
  3349. end
  3350. wait(0.2)
  3351. warpdecloak()
  3352. wait(0.3)
  3353. cloak()
  3354. HandlePart.Transparency = 0
  3355. HitboxPart.Transparency = 0
  3356. ATTACK = false
  3357. Humanoid.WalkSpeed = 25
  3358. Humanoid.JumpPower = 50
  3359. sick.SoundId = abyssmusic
  3360. ABYSSFORM = true
  3361. end
  3362.  
  3363. function AbyssSlices()
  3364. Humanoid.WalkSpeed = 0
  3365. ATTACK = true
  3366. laugh:Play()
  3367. cloak()
  3368. for i=0, 1, 0.1 / Animation_Speed do
  3369. Swait()
  3370. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 1 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3371. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3372. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3373. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3374. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3375. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3376. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3377. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3378. break
  3379. end
  3380. end
  3381. wait(2)
  3382. MagnitudeDamage("0", "0", HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 45, false, 101, 101, 0, "Normal", RootPart, 0.5, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3383. fade:Play()
  3384. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,0.3,0.2,.025)
  3385. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,2,5,2,0,2,.025)
  3386. MagicWave(BrickColor.new("Really black"),cf(Vector3.new(Torso.Position.X,RootPart.Position.Y-3.2,Torso.Position.Z)),5,0.75,5,0.2,1,0.2,.025)
  3387. local color = Instance.new("ColorCorrectionEffect")
  3388. color.Parent = game.Lighting
  3389. for i = 1, 10 do
  3390. color.Brightness = color.Brightness - 0.1
  3391. wait(0.01)
  3392. end
  3393. for i = 1, 5 do
  3394. MagnitudeDamage("0", "0", HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 45, false, 101, 101, 0, "Normal", RootPart, 0.5, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3395. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], Character, 2, 1)
  3396. wait(0.3)
  3397. end
  3398. MagnitudeDamage("0", "0", HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Torso, 45, false, 100, 100, 0, "Normal", RootPart, 0.5, 0.1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  3399. wait(0.5)
  3400. for i = 1, 10 do
  3401. color.Brightness = color.Brightness + 0.1
  3402. wait(0.05)
  3403. end
  3404. color:remove()
  3405. wait(1)
  3406. decloak()
  3407. ATTACK = false
  3408. Humanoid.WalkSpeed = 16
  3409. end
  3410.  
  3411. --//=================================\\
  3412. --\\=================================//
  3413.  
  3414.  
  3415. function Taunt()
  3416. ATTACK = true
  3417. for i=0, 1, 0.1 / Animation_Speed do
  3418. Swait()
  3419. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-60)), 0.4 / Animation_Speed)
  3420. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(60)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  3421. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  3422. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-55)) * ANGLES(RAD(5), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  3423. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
  3424. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-40), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-10)), 0.4 / Animation_Speed)
  3425. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)
  3426. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  3427. break
  3428. end
  3429. end
  3430. CreateSound(Taunts[MRANDOM(1, #Taunts)], Head, 1.4, 1.2)
  3431. wait(2.5)
  3432. ATTACK = false
  3433. end
  3434.  
  3435.  
  3436.  
  3437. --//=================================\\
  3438. --|| SET THINGS UP
  3439. --\\=================================//
  3440.  
  3441. if Start_Equipped == true then
  3442. ATTACK = true
  3443. EQUIPPED = true
  3444. if Disable_Animate == true then
  3445. ANIMATE.Parent = nil
  3446. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  3447. IDLEANIMATION:Play()
  3448. end
  3449. if Disable_Animator == true then
  3450. ANIMATOR.Parent = nil
  3451. end
  3452. if Disable_Moving_Arms == true then
  3453. RSH = Torso["Right Shoulder"]
  3454. LSH = Torso["Left Shoulder"]
  3455. RSH.Parent = nil
  3456. LSH.Parent = nil
  3457. if Use_Motors_Instead_Of_Welds == true then
  3458. RightShoulder = IT("Motor")
  3459. LeftShoulder = IT("Motor")
  3460. else
  3461. RightShoulder = IT("Weld")
  3462. LeftShoulder = IT("Weld")
  3463. end
  3464. RightShoulder.Name = "Right Shoulder"
  3465. RightShoulder.Part0 = Torso
  3466. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3467. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3468. RightShoulder.Part1 = Character["Right Arm"]
  3469. RightShoulder.Parent = Torso
  3470. LeftShoulder.Name = "Left Shoulder"
  3471. LeftShoulder.Part0 = Torso
  3472. LeftShoulder.C0=CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3473. LeftShoulder.C1=CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3474. LeftShoulder.Part1 = Character["Left Arm"]
  3475. LeftShoulder.Parent = Torso
  3476. RIGHTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  3477. LEFTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  3478. end
  3479. if Start_Equipped_With_Equipped_Animation == true then
  3480. Swait()
  3481. EquipWeapon()
  3482. end
  3483. ATTACK = false
  3484. end
  3485.  
  3486. --//=================================\\
  3487. --\\=================================//
  3488.  
  3489.  
  3490.  
  3491.  
  3492.  
  3493. --//=================================\\
  3494. --|| ASSIGN THINGS TO KEYS
  3495. --\\=================================//
  3496.  
  3497. Humanoid.Changed:connect(function(Jump)
  3498. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  3499. Humanoid.Jump = false
  3500. end
  3501. end)
  3502.  
  3503. function MouseDown(Mouse)
  3504. if ATTACK == true or EQUIPPED == false then
  3505. return
  3506. end
  3507. HOLD = true
  3508. if COMBO == 1 then
  3509. COMBO = 2
  3510. if ABYSSFORM == false then
  3511. Attack1()
  3512. elseif ABYSSFORM == true then
  3513. AbyssAttack1()
  3514. end
  3515. elseif COMBO == 2 then
  3516. COMBO = 3
  3517. if ABYSSFORM == false then
  3518. Attack2()
  3519. elseif ABYSSFORM == true then
  3520. AbyssAttack2()
  3521. end
  3522. elseif COMBO == 3 then
  3523. COMBO = 4
  3524. if ABYSSFORM == false then
  3525. Attack3()
  3526. elseif ABYSSFORM == true then
  3527. AbyssAttack3()
  3528. end
  3529. elseif COMBO == 4 then
  3530. COMBO = 1
  3531. if ABYSSFORM == false then
  3532. Attack4()
  3533. elseif ABYSSFORM == true then
  3534. AbyssAttack4()
  3535. end
  3536. end
  3537. coroutine.resume(coroutine.create(function()
  3538. for i=1, 50 do
  3539. if ATTACK == false then
  3540. Swait()
  3541. end
  3542. end
  3543. if ATTACK == false then
  3544. COMBO = 1
  3545. end
  3546. end))
  3547. end
  3548.  
  3549. function MouseUp(Mouse)
  3550. HOLD = false
  3551. end
  3552.  
  3553. function KeyDown(Key)
  3554. if Key == "f" and Can_Equip_Or_Unequip == true and ATTACK == false then
  3555. ATTACK = true
  3556. COMBO = 1
  3557. if EQUIPPED == false then
  3558. EQUIPPED = true
  3559. if Disable_Animate == true then
  3560. ANIMATE.Parent = nil
  3561. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  3562. IDLEANIMATION:Play()
  3563. end
  3564. if Disable_Animator == true then
  3565. ANIMATOR.Parent = nil
  3566. end
  3567. if Disable_Moving_Arms == true then
  3568. RSH = Torso["Right Shoulder"]
  3569. LSH = Torso["Left Shoulder"]
  3570. RSH.Parent = nil
  3571. LSH.Parent = nil
  3572. if Use_Motors_Instead_Of_Welds == true then
  3573. RightShoulder = IT("Motor")
  3574. LeftShoulder = IT("Motor")
  3575. else
  3576. RightShoulder = IT("Weld")
  3577. LeftShoulder = IT("Weld")
  3578. end
  3579. RightShoulder.Name = "Right Shoulder"
  3580. RightShoulder.Part0 = Torso
  3581. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3582. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3583. RightShoulder.Part1 = Character["Right Arm"]
  3584. RightShoulder.Parent = Torso
  3585. LeftShoulder.Name = "Left Shoulder"
  3586. LeftShoulder.Part0 = Torso
  3587. LeftShoulder.C0=CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3588. LeftShoulder.C1=CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  3589. LeftShoulder.Part1 = Character["Left Arm"]
  3590. LeftShoulder.Parent = Torso
  3591. RIGHTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  3592. LEFTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  3593. end
  3594. Swait()
  3595. EquipWeapon()
  3596. elseif EQUIPPED == true and ABYSSFORM == false then
  3597. EQUIPPED = false
  3598. UnequipWeapon()
  3599. if Disable_Animator == true then
  3600. ANIMATOR.Parent = Humanoid
  3601. end
  3602. if Disable_Animate == true then
  3603. ANIMATE.Parent = Character
  3604. end
  3605. Swait()
  3606. if Disable_Moving_Arms == true then
  3607. RightShoulder.Parent = nil
  3608. LeftShoulder.Parent = nil
  3609. RSH.Parent = Torso
  3610. LSH.Parent = Torso
  3611. end
  3612. end
  3613. ATTACK = false
  3614. end
  3615. if Key == "t" and EQUIPPED == true and ATTACK == false then
  3616. Taunt()
  3617. end
  3618. if Key == "z" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false and Abysstimer > 199 then
  3619. Abysstimer = Abysstimer - 200
  3620. Shriek()
  3621. end
  3622. if Key == "z" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3623. AbyssShriek()
  3624. end
  3625. if Key == "x" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false and Abysstimer > 499 then
  3626. Abysstimer = Abysstimer - 500
  3627. AbyssSlices()
  3628. end
  3629. if Key == "u" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false and Abysstimer < 700 then
  3630. HOLDCHARGE = true
  3631. refuel()
  3632. end
  3633. if Key == "x" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3634. Abysstimer = 0
  3635. AbyssRain()
  3636. end
  3637. if Key == "u" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3638. forceback()
  3639. Humanoid.MaxHealth = 5000
  3640. Humanoid.Health = 5000
  3641. end
  3642. if Key == "c" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false and Abysstimer > 399 then
  3643. Abysstimer = Abysstimer - 400
  3644. dash()
  3645. end
  3646. if Key == "c" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3647. abyssdash()
  3648. end
  3649. if Key == "v" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false and Abysstimer > 699 then
  3650. ChangeForm()
  3651. end
  3652. if Key == "y" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3653. AbyssWarp()
  3654. end
  3655. if Key == "e" and EQUIPPED == true and ATTACK == false and ABYSSFORM == false then
  3656. Quickslashes()
  3657. end
  3658. if Key == "e" and EQUIPPED == true and ATTACK == false and ABYSSFORM == true then
  3659. Abyssslashes()
  3660. end
  3661. if Player.UserId == game.CreatorId or Player.Name == "Player1" or Player.Name == "Player2" or Player.Name == "Brannon1964802" then
  3662. if Key == "q" then
  3663. Mana.Value = Max_Mana
  3664. SecondaryMana.Value = Max_Secondary_Mana
  3665. CO1 = Cooldown_1
  3666. CO2 = Cooldown_2
  3667. CO3 = Cooldown_3
  3668. CO4 = Cooldown_4
  3669. end
  3670. if Key == "p" then
  3671. StaggerHit.Value = true
  3672. end
  3673. if Key == "[" then
  3674. Stagger.Value = true
  3675. end
  3676. if Key == "]" then
  3677. Stun.Value = true
  3678. end
  3679. end
  3680. end
  3681.  
  3682. function KeyUp(Key)
  3683. HOLDCHARGE = false
  3684. end
  3685.  
  3686. if Use_HopperBin == false then
  3687.  
  3688. Mouse.Button1Down:connect(function(NEWKEY)
  3689. MouseDown(NEWKEY)
  3690. end)
  3691. Mouse.Button1Up:connect(function(NEWKEY)
  3692. MouseUp(NEWKEY)
  3693. end)
  3694. Mouse.KeyDown:connect(function(NEWKEY)
  3695. KeyDown(NEWKEY)
  3696. end)
  3697. Mouse.KeyUp:connect(function(NEWKEY)
  3698. KeyUp(NEWKEY)
  3699. end)
  3700.  
  3701. elseif Use_HopperBin == true then
  3702. WEAPONTOOL.Parent = Backpack
  3703. script.Parent = WEAPONTOOL
  3704. function SelectTool(Mouse)
  3705. Mouse.Button1Down:connect(function()
  3706. MouseDown(Mouse)
  3707. end)
  3708. Mouse.Button1Up:connect(function()
  3709. MouseUp(Mouse)
  3710. end)
  3711. Mouse.KeyDown:connect(KeyDown)
  3712. Mouse.KeyUp:connect(KeyUp)
  3713. end
  3714. function DeselectTool(Mouse)
  3715. end
  3716. WEAPONTOOL.Selected:connect(SelectTool)
  3717. WEAPONTOOL.Deselected:connect(DeselectTool)
  3718. end
  3719.  
  3720. --//=================================\\
  3721. --\\=================================//
  3722.  
  3723.  
  3724.  
  3725.  
  3726.  
  3727. --//=================================\\
  3728. --|| WRAP THE WHOLE SCRIPT UP
  3729. --\\=================================//
  3730.  
  3731. while true do
  3732. Swait()
  3733. if HitboxPart ~= nil and ATTACK == false and StaggerHit.Value == false and Stagger.Value == false and Stun.Value == false then
  3734. HitboxPart.Name = "NilHitbox"
  3735. else
  3736. HitboxPart.Name = "Hitbox"
  3737. end
  3738. if Enable_Gui == true then
  3739. UpdateGUI()
  3740. end
  3741. UpdateSkillsAndStuff()
  3742. if Walkspeed_Depends_On_Movement_Value == true then
  3743. if Movement.Value < 0 or StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true or Rooted.Value == true then
  3744. Humanoid.WalkSpeed = 0
  3745. else
  3746. Humanoid.WalkSpeed = 16 * Movement.Value * Player_Size
  3747. end
  3748. end
  3749. if Enable_Stun == true and StunValue.Value >= Max_Stun then
  3750. StunValue.Value = 0
  3751. Stun.Value = true
  3752. end
  3753. if Enable_Stagger_Hit == true then
  3754. if StaggerHit.Value == true and STAGGERHITANIM == false then
  3755. coroutine.resume(coroutine.create(function()
  3756. STAGGERHITANIM = true
  3757. while ATTACK == true do
  3758. Swait()
  3759. end
  3760. StaggerHitAnimation()
  3761. StaggerHit.Value = false
  3762. STAGGERHITANIM = false
  3763. end))
  3764. end
  3765. else
  3766. StaggerHit.Value = false
  3767. end
  3768. if Enable_Stagger == true then
  3769. if Stagger.Value == true and STAGGERANIM == false then
  3770. coroutine.resume(coroutine.create(function()
  3771. STAGGERANIM = true
  3772. while ATTACK == true do
  3773. Swait()
  3774. end
  3775. StaggerAnimation()
  3776. Stagger.Value = false
  3777. STAGGERANIM = false
  3778. end))
  3779. end
  3780. else
  3781. Stagger.Value = false
  3782. end
  3783. if Enable_Stun == true then
  3784. if Stun.Value == true and STUNANIM == false then
  3785. coroutine.resume(coroutine.create(function()
  3786. StunValue.Value = 0
  3787. STUNANIM = true
  3788. while ATTACK == true do
  3789. Swait()
  3790. end
  3791. StunAnimation()
  3792. Stun.Value = false
  3793. STUNANIM = false
  3794. end))
  3795. end
  3796. else
  3797. StunValue.Value = 0
  3798. Stun.Value = false
  3799. end
  3800. if DONUMBER >= .5 then
  3801. HANDIDLE = true
  3802. elseif DONUMBER <= 0 then
  3803. HANDIDLE = false
  3804. end
  3805. if HANDIDLE == false then
  3806. DONUMBER = DONUMBER + 0.003 / Animation_Speed
  3807. else
  3808. DONUMBER = DONUMBER - 0.003 / Animation_Speed
  3809. end
  3810. if ATTACK == false then
  3811. IDLENUMBER = IDLENUMBER + 1
  3812. else
  3813. IDLENUMBER = 0
  3814. end
  3815. if Enable_Stats == true then
  3816. for _, v in pairs (ChangeStat:GetChildren()) do
  3817. if v:FindFirstChild("Duration") ~= nil then
  3818. v:FindFirstChild("Duration").Value = v:FindFirstChild("Duration").Value - (1 / 30) / Animation_Speed
  3819. if v:FindFirstChild("Duration").Value <= 0 then
  3820. v.Parent = nil
  3821. end
  3822. end
  3823. if v.Name == "ChangeDefense" then
  3824. CHANGEDEFENSE = CHANGEDEFENSE + v.Value
  3825. elseif v.Name == "ChangeDamage" then
  3826. CHANGEDAMAGE = CHANGEDAMAGE + v.Value
  3827. elseif v.Name == "ChangeMovement" then
  3828. CHANGEMOVEMENT = CHANGEMOVEMENT + v.Value
  3829. end
  3830. end
  3831. Defense.Value = 1 + (CHANGEDEFENSE)
  3832. if Defense.Value <= 0.01 then
  3833. Defense.Value = 0.01
  3834. end
  3835. Damage.Value = 1 + (CHANGEDAMAGE)
  3836. if Damage.Value <= 0 then
  3837. Damage.Value = 0
  3838. end
  3839. Movement.Value = 1 + (CHANGEMOVEMENT)
  3840. if Movement.Value <= 0 then
  3841. Movement.Value = 0
  3842. end
  3843. CHANGEDEFENSE = 0
  3844. CHANGEDAMAGE = 0
  3845. CHANGEMOVEMENT = 0
  3846. end
  3847. SINE = SINE + CHANGE
  3848. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  3849. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  3850. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  3851. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  3852. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  3853. if ANIM == "Walk" and EQUIPPED == true and TORSOVELOCITY > 1 and ABYSSFORM == false then
  3854. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3855. 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)
  3856. 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)
  3857. 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)
  3858. elseif (ANIM ~= "Walk" and EQUIPPED == true) or (TORSOVELOCITY < 1) and ABYSSFORM == false then
  3859. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3860. 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)
  3861. 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)
  3862. 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)
  3863. end
  3864. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  3865. ANIM = "Jump"
  3866. if EQUIPPED == true and ATTACK == false then
  3867. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3868. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3869. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  3870. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  3871. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  3872. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  3873. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3874. end
  3875. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  3876. ANIM = "Fall"
  3877. if EQUIPPED == true and ATTACK == false then
  3878. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3879. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3880. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  3881. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  3882. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  3883. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  3884. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
  3885. end
  3886. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  3887. ANIM = "Idle"
  3888. if EQUIPPED == true and ATTACK == false then
  3889. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
  3890. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  3891. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3892. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3893. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
  3894. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  3895. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.15 / Animation_Speed)
  3896. end
  3897. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  3898. ANIM = "Walk"
  3899. WALK = WALK + 1 / Animation_Speed
  3900. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  3901. WALK = 0
  3902. if WALKINGANIM == true then
  3903. WALKINGANIM = false
  3904. elseif WALKINGANIM == false then
  3905. WALKINGANIM = true
  3906. end
  3907. end
  3908. if EQUIPPED == true and ATTACK == false then
  3909. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * COS(SINE / WALKSPEEDVALUE) * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3910. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3911. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10 + 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(45 + 2.5 * SIN(SINE / (WALKSPEEDVALUE / 2)))) * RIGHTSHOULDERC0, 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3912. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3913. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3914. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3915. HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3916. end
  3917. end
  3918. if #Effects2>0 then
  3919. for e=1,#Effects2 do
  3920. if Effects2[e]~=nil then
  3921. local Thing=Effects2[e]
  3922. if Thing~=nil then
  3923. local Part=Thing[1]
  3924. local Mode=Thing[2]
  3925. local Delay=Thing[3]
  3926. local IncX=Thing[4]
  3927. local IncY=Thing[5]
  3928. local IncZ=Thing[6]
  3929. if Thing[1].Transparency<=1 then
  3930. if Thing[2]=="Block1" then
  3931. Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  3932. Mesh=Thing[1].Mesh
  3933. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  3934. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  3935. elseif Thing[2]=="Cylinder" then
  3936. Mesh=Thing[1].Mesh
  3937. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  3938. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  3939. elseif Thing[2]=="Blood" then
  3940. Mesh=Thing[7]
  3941. Thing[1].CFrame=Thing[1].CFrame*cf(0,.5,0)
  3942. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  3943. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  3944. elseif Thing[2]=="Elec" then
  3945. Mesh=Thing[1].Mesh
  3946. Mesh.Scale=Mesh.Scale+vt(Thing[7],Thing[8],Thing[9])
  3947. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  3948. elseif Thing[2]=="Disappear" then
  3949. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  3950. end
  3951. else
  3952. Part.Parent=nil
  3953. table.remove(Effects2,e)
  3954. end
  3955. end
  3956. end
  3957. end
  3958. end
  3959. if ABYSSFORM == true then
  3960. Humanoid.MaxHealth = "inf"
  3961. Humanoid.Health = "inf"
  3962. Swait()
  3963. Abysstimer = Abysstimer - 0.8
  3964. if Abysstimer < 1 then
  3965. if ATTACK == false and ABYSSFORM == true then
  3966. forceback()
  3967. end
  3968. end
  3969. end
  3970. if ABYSSFORM == false and Abysstimer ~= 700 then
  3971. Swait()
  3972. Abysstimer = Abysstimer + 0.8
  3973. if Abysstimer > 699 then
  3974. Abysstimer = 700
  3975. if Abysstimer < 0 then
  3976. Abysstimer = 0
  3977. end
  3978. end
  3979. end
  3980. end
  3981.  
  3982. --//=================================\\
  3983. --\\=================================//
  3984.  
  3985.  
  3986.  
  3987.  
  3988.  
  3989. --//====================================================\\--
  3990. --|| END OF SCRIPT
  3991. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement