Advertisement
VoidScript

Jedaffi

Sep 30th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 135.87 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| CREATED BY BRANNON1964802, EDITED BY KARMARANGE
  3. --\\====================================================//--
  4.  
  5. --[[c=script.Parent:getChildren()
  6. for i = 1, #c do
  7. if c[i].className=="BodyColors" then
  8. c[i]:Remove()
  9. end
  10. end]]--
  11. local e = script.Parent:FindFirstChild("Body Colors")
  12. if e then
  13. e:Destroy()
  14. end
  15.  
  16. wait(1 / 60)
  17.  
  18. wait(1)
  19. Player = game:GetService("Players").LocalPlayer
  20. PlayerGui = Player.PlayerGui
  21. Cam = workspace.CurrentCamera
  22. Backpack = Player.Backpack
  23. Character = Player.Character
  24. Humanoid = Character.Humanoid
  25. Mouse = Player:GetMouse()
  26. RootPart = Character["HumanoidRootPart"]
  27. Torso = Character["Torso"]
  28. Head = Character["Head"]
  29. RightArm = Character["Right Arm"]
  30. LeftArm = Character["Left Arm"]
  31. RightLeg = Character["Right Leg"]
  32. LeftLeg = Character["Left Leg"]
  33. RootJoint = RootPart["RootJoint"]
  34. Neck = Torso["Neck"]
  35. RightShoulder = Torso["Right Shoulder"]
  36. LeftShoulder = Torso["Left Shoulder"]
  37. RightHip = Torso["Right Hip"]
  38. LeftHip = Torso["Left Hip"]
  39. Humanoid.MaxHealth = "inf"
  40. Humanoid.Health = "inf"
  41.  
  42. local naeeym2 = Instance.new("BillboardGui",Character)
  43. naeeym2.AlwaysOnTop = true
  44. naeeym2.Size = UDim2.new(0,100,0,40)
  45. naeeym2.StudsOffset = Vector3.new(0,3,0)
  46. naeeym2.Adornee = Character.Head
  47. naeeym2.Name = "TalkingBillBoard"
  48. local tecks2 = Instance.new("TextLabel",naeeym2)
  49. tecks2.BackgroundTransparency = 1
  50. tecks2.BorderSizePixel = 0
  51. tecks2.Text = "Jedaffi Reincarnated"
  52. tecks2.Font = "Bodoni"
  53. tecks2.TextSize = 30
  54. tecks2.TextStrokeTransparency = 0
  55. tecks2.TextColor3 = Color3.new(0,0,0)
  56. tecks2.TextStrokeColor3 = Color3.new(1,1,1)
  57. tecks2.Size = UDim2.new(1,0,0.5,0)
  58. tecks2.Parent = naeeym2
  59.  
  60. local tor1 = Instance.new("CharacterMesh")
  61. tor1.Parent = Character
  62. tor1.BodyPart = "Torso"
  63. tor1.MeshId = "29526648"
  64. local tor2 = Instance.new("CharacterMesh")
  65. tor2.Parent = Character
  66. tor2.BodyPart = "RightLeg"
  67. tor2.MeshId = "29521467"
  68. local tor3 = Instance.new("CharacterMesh")
  69. tor3.Parent = Character
  70. tor3.BodyPart = "LeftLeg"
  71. tor3.MeshId = "29521405"
  72. local tor4 = Instance.new("CharacterMesh")
  73. tor4.Parent = Character
  74. tor4.BodyPart = "LeftArm"
  75. tor4.MeshId = "29521332"
  76. local tor5 = Instance.new("CharacterMesh")
  77. tor5.Parent = Character
  78. tor5.BodyPart = "RightArm"
  79. tor5.MeshId = "29521422"
  80. Humanoid.DisplayDistanceType = "None"
  81. Head.face.Texture = "rbxassetid://8560915"
  82. Head.BrickColor = BrickColor.new("Light stone grey")
  83. RightArm.BrickColor = BrickColor.new("Light stone grey")
  84. LeftArm.BrickColor = BrickColor.new("Light stone grey")
  85. LeftLeg.BrickColor = BrickColor.new("Light stone grey")
  86. RightLeg.BrickColor = BrickColor.new("Light stone grey")
  87. Torso.BrickColor = BrickColor.new("Light stone grey")
  88. if Character:FindFirstChild("Shirt") then
  89. Character.Shirt:Destroy()
  90. end
  91. if Character:FindFirstChild("Pants") then
  92. Character.Pants:Destroy()
  93. end
  94. wait(0.0005)
  95. Humanoid.WalkSpeed = 25
  96. Humanoid.JumpPower = 75
  97. Head.BrickColor = BrickColor.new("Lime green")
  98. RightArm.BrickColor = BrickColor.new("Shamrock")
  99. LeftArm.BrickColor = BrickColor.new("Shamrock")
  100. LeftLeg.BrickColor = BrickColor.new("Earth green")
  101. RightLeg.BrickColor = BrickColor.new("Earth green")
  102. Torso.BrickColor = BrickColor.new("Bright green")
  103. kkk = Instance.new("Sound",Character)
  104. kkk.Volume = 1
  105. kkk.PlaybackSpeed = 1
  106. kkk.Pitch = 1
  107. kkk.SoundId = "rbxassetid://214991711"
  108. kkk:Play()
  109. kkk.Name = "BackgroundMusic"
  110. kkk.Looped = true
  111.  
  112.  
  113. IT = Instance.new
  114. CF = CFrame.new
  115. VT = Vector3.new
  116. RAD = math.rad
  117. C3 = Color3.new
  118. UD2 = UDim2.new
  119. BRICKC = BrickColor.new
  120. ANGLES = CFrame.Angles
  121. EULER = CFrame.fromEulerAnglesXYZ
  122. COS = math.cos
  123. ACOS = math.acos
  124. SIN = math.sin
  125. ASIN = math.asin
  126. ABS = math.abs
  127. MRANDOM = math.random
  128. FLOOR = math.floor
  129.  
  130.  
  131.  
  132.  
  133.  
  134. --//=================================\\
  135. --|| CUSTOMIZATION
  136. --\\=================================//
  137.  
  138. Class_Name = "Jedaffi"
  139. Weapon_Name = "Sword"
  140.  
  141. Custom_Colors = {
  142. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  143. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  144.  
  145. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  146. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  147. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  148. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  149. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  150.  
  151. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  152. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  153. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  154. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  155. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  156. }
  157.  
  158. Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
  159. Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
  160. Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
  161. Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
  162. Ability_Background_Transparency = 0 --Transparency for the background of the abilities.
  163. Stat_Background_Transparency = 0 --Transparency for the background of the stats.
  164.  
  165. Player_Size = 2 --Size of the player.
  166. Animation_Speed = 6
  167. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  168.  
  169. Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
  170. Enable_Stats = false --Enables or disables stats.
  171. Put_Stats_In_Character = false --Places stats in Character.
  172. Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
  173. Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
  174. Enable_Stagger = false --Enables or disables staggering.
  175. Enable_Stun = false --Enables or disables the stun mechanic.
  176. Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
  177. Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
  178.  
  179. Start_Equipped = false --Starts the player equipped with their weapon.
  180. Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
  181. Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
  182. Disable_Animator = true --Disables the Animator in the humanoid.
  183. Disable_Animate = true --Disables the Animate script in the character.
  184. Disable_Moving_Arms = false --Keeps the arms from moving around.
  185. Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
  186. Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
  187. Disable_Jump = false --Disables jumping.
  188. Use_HopperBin = true --Uses a hopperbin to do things.
  189.  
  190. Cooldown_1 = 0 --Cooldowns for abilites.
  191. Cooldown_2 = 0
  192. Cooldown_3 = 0
  193. Cooldown_4 = 0
  194. Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
  195. Skill_2_Mana_Cost = 0
  196. Skill_3_Mana_Cost = 0
  197. Skill_4_Mana_Cost = 0
  198. Max_Mana = 0 --Maximum amount of mana you can have.
  199. Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
  200. Mana_Name = "Mana" --Name for the mana bar.
  201. Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
  202. Max_Stun = 1 --Maximum amount of stun you can have.
  203. Recover_Mana = 0 --How much mana you gain.
  204. Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
  205. Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
  206. Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
  207. Recover_Secondary_Mana = 0 --How much secondary mana you gain.
  208. Lose_Stun = 0 --How much stun you lose.
  209. Stun_Wait = 0 --Delay between losing stun.
  210. Mana_Wait = 0 --Delay between gaining mana.
  211. Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
  212. Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
  213. Constant_Update = false --Removes the delay between updating the Weapon GUI.
  214. Show_Stats = false --Hides or shows stats.
  215. Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
  216.  
  217. --//=================================\\
  218. --|| END OF CUSTOMIZATION
  219. --\\=================================//
  220.  
  221.  
  222.  
  223.  
  224.  
  225. --//=================================\\
  226. --|| USEFUL VALUES
  227. --\\=================================//
  228.  
  229. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  230. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  231. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  232. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  233. local CO1 = 0
  234. local CO2 = 0
  235. local CO3 = 0
  236. local CO4 = 0
  237. local CHANGEDEFENSE = 0
  238. local CHANGEDAMAGE = 0
  239. local CHANGEMOVEMENT = 0
  240. local ANIM = "Idle"
  241. local ATTACK = false
  242. local EQUIPPED = false
  243. local HOLD = false
  244. local COMBO = 1
  245. local LASTPOINT = nil
  246. local BLCF = nil
  247. local SCFR = nil
  248. local STAGGERHITANIM = false
  249. local STAGGERANIM = false
  250. local STUNANIM = false
  251. local CRITCHANCENUMBER = 0
  252. local IDLENUMBER = 0
  253. local DONUMBER = 0
  254. local HANDIDLE = false
  255. local SINE = 0
  256. local CHANGE = 2 / Animation_Speed
  257. local WALKINGANIM = false
  258. local WALK = 0
  259. local DISABLEJUMPING = false
  260. local HASBEENBLOCKED = false
  261. local STUNDELAYNUMBER = 0
  262. local MANADELAYNUMBER = 0
  263. local SECONDARYMANADELAYNUMBER = 0
  264. local ROBLOXIDLEANIMATION = IT("Animation")
  265. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  266. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  267. --ROBLOXIDLEANIMATION.Parent = Humanoid
  268. local WEAPONGUI = IT("ScreenGui", nil)
  269. WEAPONGUI.Name = "Weapon GUI"
  270. local WEAPONTOOL = IT("HopperBin", nil)
  271. WEAPONTOOL.Name = Weapon_Name
  272. local Weapon = IT("Model")
  273. Weapon.Name = Weapon_Name
  274. local Effects = IT("Folder", Weapon)
  275. Effects.Name = "Effects"
  276. local ANIMATOR = Humanoid.Animator
  277. local ANIMATE = Character.Animate
  278. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  279. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  280. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  281. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  282.  
  283. --//=================================\\
  284. --\\=================================//
  285.  
  286.  
  287.  
  288.  
  289.  
  290. --//=================================\\
  291. --|| STATS
  292. --\\=================================//
  293.  
  294. if Character:FindFirstChild("Stats") ~= nil then
  295. Character:FindFirstChild("Stats").Parent = nil
  296. end
  297.  
  298. local Stats = IT("Folder", nil)
  299. Stats.Name = "Stats"
  300. local ChangeStat = IT("Folder", Stats)
  301. ChangeStat.Name = "ChangeStat"
  302. local Defense = IT("NumberValue", Stats)
  303. Defense.Name = "Defense"
  304. Defense.Value = 1
  305. local Movement = IT("NumberValue", Stats)
  306. Movement.Name = "Movement"
  307. Movement.Value = 1
  308. local Damage = IT("NumberValue", Stats)
  309. Damage.Name = "Damage"
  310. Damage.Value = 1
  311. local Mana = IT("NumberValue", Stats)
  312. Mana.Name = "Mana"
  313. Mana.Value = 0
  314. local SecondaryMana = IT("NumberValue", Stats)
  315. SecondaryMana.Name = "SecondaryMana"
  316. SecondaryMana.Value = 0
  317. local CanCrit = IT("BoolValue", Stats)
  318. CanCrit.Name = "CanCrit"
  319. CanCrit.Value = false
  320. local CritChance = IT("NumberValue", Stats)
  321. CritChance.Name = "CritChance"
  322. CritChance.Value = 20
  323. local CanPenetrateArmor = IT("BoolValue", Stats)
  324. CanPenetrateArmor.Name = "CanPenetrateArmor"
  325. CanPenetrateArmor.Value = false
  326. local AntiTeamKill = IT("BoolValue", Stats)
  327. AntiTeamKill.Name = "AntiTeamKill"
  328. AntiTeamKill.Value = false
  329. local Rooted = IT("BoolValue", Stats)
  330. Rooted.Name = "Rooted"
  331. Rooted.Value = false
  332. local Block = IT("BoolValue", Stats)
  333. Block.Name = "Block"
  334. Block.Value = false
  335. local RecentEnemy = IT("ObjectValue", Stats)
  336. RecentEnemy.Name = "RecentEnemy"
  337. RecentEnemy.Value = nil
  338. local StaggerHit = IT("BoolValue", Stats)
  339. StaggerHit.Name = "StaggerHit"
  340. StaggerHit.Value = false
  341. local Stagger = IT("BoolValue", Stats)
  342. Stagger.Name = "Stagger"
  343. Stagger.Value = false
  344. local Stun = IT("BoolValue", Stats)
  345. Stun.Name = "Stun"
  346. Stun.Value = false
  347. local StunValue = IT("NumberValue", Stats)
  348. StunValue.Name = "StunValue"
  349. StunValue.Value = 0
  350.  
  351. if Enable_Stats == true and Put_Stats_In_Character == true then
  352. Stats.Parent = Character
  353. end
  354.  
  355. --//=================================\\
  356. --\\=================================//
  357.  
  358.  
  359.  
  360.  
  361.  
  362. --//=================================\\
  363. --|| DEBUFFS / BUFFS
  364. --\\=================================//
  365.  
  366. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  367. DEFENSECHANGE1.Name = "ChangeDefense"
  368. DEFENSECHANGE1.Value = 0
  369.  
  370. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  371. MOVEMENTCHANGE1.Name = "ChangeMovement"
  372. MOVEMENTCHANGE1.Value = 0
  373.  
  374. --//=================================\\
  375. --\\=================================//
  376.  
  377.  
  378.  
  379.  
  380.  
  381. --//=================================\\
  382. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  383. --\\=================================//
  384.  
  385. ArtificialHB = Instance.new("BindableEvent", script)
  386. ArtificialHB.Name = "ArtificialHB"
  387.  
  388. script:WaitForChild("ArtificialHB")
  389.  
  390. frame = Frame_Speed
  391. tf = 0
  392. allowframeloss = false
  393. tossremainder = false
  394. lastframe = tick()
  395. script.ArtificialHB:Fire()
  396.  
  397. game:GetService("RunService").Heartbeat:connect(function(s, p)
  398. tf = tf + s
  399. if tf >= frame then
  400. if allowframeloss then
  401. script.ArtificialHB:Fire()
  402. lastframe = tick()
  403. else
  404. for i = 1, math.floor(tf / frame) do
  405. script.ArtificialHB:Fire()
  406. end
  407. lastframe = tick()
  408. end
  409. if tossremainder then
  410. tf = 0
  411. else
  412. tf = tf - frame * math.floor(tf / frame)
  413. end
  414. end
  415. end)
  416.  
  417. --//=================================\\
  418. --\\=================================//
  419.  
  420.  
  421.  
  422.  
  423.  
  424. --//=================================\\
  425. --|| SOME FUNCTIONS
  426. --\\=================================//
  427.  
  428. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  429. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  430. end
  431.  
  432. function PositiveAngle(NUMBER)
  433. if NUMBER >= 0 then
  434. NUMBER = 0
  435. end
  436. return NUMBER
  437. end
  438.  
  439. function NegativeAngle(NUMBER)
  440. if NUMBER <= 0 then
  441. NUMBER = 0
  442. end
  443. return NUMBER
  444. end
  445.  
  446. function Swait(NUMBER)
  447. if NUMBER == 0 or NUMBER == nil then
  448. ArtificialHB.Event:wait()
  449. else
  450. for i = 1, NUMBER do
  451. ArtificialHB.Event:wait()
  452. end
  453. end
  454. end
  455.  
  456. function QuaternionFromCFrame(cf)
  457. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  458. local trace = m00 + m11 + m22
  459. if trace > 0 then
  460. local s = math.sqrt(1 + trace)
  461. local recip = 0.5 / s
  462. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  463. else
  464. local i = 0
  465. if m11 > m00 then
  466. i = 1
  467. end
  468. if m22 > (i == 0 and m00 or m11) then
  469. i = 2
  470. end
  471. if i == 0 then
  472. local s = math.sqrt(m00 - m11 - m22 + 1)
  473. local recip = 0.5 / s
  474. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  475. elseif i == 1 then
  476. local s = math.sqrt(m11 - m22 - m00 + 1)
  477. local recip = 0.5 / s
  478. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  479. elseif i == 2 then
  480. local s = math.sqrt(m22 - m00 - m11 + 1)
  481. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  482. end
  483. end
  484. end
  485.  
  486. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  487. local xs, ys, zs = x + x, y + y, z + z
  488. local wx, wy, wz = w * xs, w * ys, w * zs
  489. local xx = x * xs
  490. local xy = x * ys
  491. local xz = x * zs
  492. local yy = y * ys
  493. local yz = y * zs
  494. local zz = z * zs
  495. 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))
  496. end
  497.  
  498. function QuaternionSlerp(a, b, t)
  499. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  500. local startInterp, finishInterp;
  501. if cosTheta >= 0.0001 then
  502. if (1 - cosTheta) > 0.0001 then
  503. local theta = ACOS(cosTheta)
  504. local invSinTheta = 1 / SIN(theta)
  505. startInterp = SIN((1 - t) * theta) * invSinTheta
  506. finishInterp = SIN(t * theta) * invSinTheta
  507. else
  508. startInterp = 1 - t
  509. finishInterp = t
  510. end
  511. else
  512. if (1 + cosTheta) > 0.0001 then
  513. local theta = ACOS(-cosTheta)
  514. local invSinTheta = 1 / SIN(theta)
  515. startInterp = SIN((t - 1) * theta) * invSinTheta
  516. finishInterp = SIN(t * theta) * invSinTheta
  517. else
  518. startInterp = t - 1
  519. finishInterp = t
  520. end
  521. end
  522. 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
  523. end
  524.  
  525. function Clerp(a, b, t)
  526. local qa = {QuaternionFromCFrame(a)}
  527. local qb = {QuaternionFromCFrame(b)}
  528. local ax, ay, az = a.x, a.y, a.z
  529. local bx, by, bz = b.x, b.y, b.z
  530. local _t = 1 - t
  531. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  532. end
  533.  
  534. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  535. local frame = IT("Frame")
  536. frame.BackgroundTransparency = TRANSPARENCY
  537. frame.BorderSizePixel = BORDERSIZEPIXEL
  538. frame.Position = POSITION
  539. frame.Size = SIZE
  540. frame.BackgroundColor3 = COLOR
  541. frame.BorderColor3 = BORDERCOLOR
  542. frame.Name = NAME
  543. frame.Parent = PARENT
  544. return frame
  545. end
  546.  
  547. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  548. local label = IT("TextLabel")
  549. label.BackgroundTransparency = 1
  550. label.Size = UD2(1, 0, 1, 0)
  551. label.Position = UD2(0, 0, 0, 0)
  552. label.TextColor3 = C3(255, 255, 255)
  553. label.TextStrokeTransparency = STROKETRANSPARENCY
  554. label.TextTransparency = TRANSPARENCY
  555. label.FontSize = TEXTFONTSIZE
  556. label.Font = TEXTFONT
  557. label.BorderSizePixel = BORDERSIZEPIXEL
  558. label.TextScaled = true
  559. label.Text = TEXT
  560. label.Name = NAME
  561. label.Parent = PARENT
  562. return label
  563. end
  564.  
  565. function NoOutlines(PART)
  566. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  567. end
  568.  
  569. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  570. local NEWPART = IT("Part")
  571. NEWPART.formFactor = FORMFACTOR
  572. NEWPART.Reflectance = REFLECTANCE
  573. NEWPART.Transparency = TRANSPARENCY
  574. NEWPART.CanCollide = false
  575. NEWPART.Locked = true
  576. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  577. NEWPART.Name = NAME
  578. NEWPART.Size = SIZE
  579. NEWPART.Position = Torso.Position
  580. NoOutlines(NEWPART)
  581. NEWPART.Material = MATERIAL
  582. NEWPART:BreakJoints()
  583. NEWPART.Parent = PARENT
  584. return NEWPART
  585. end
  586.  
  587. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  588. local NEWMESH = IT(MESH)
  589. if MESH == "SpecialMesh" then
  590. NEWMESH.MeshType = MESHTYPE
  591. if MESHID ~= "nil" and MESHID ~= "" then
  592. NEWMESH.MeshId = "http://www.roblox.com/asset/?id=93180631"
  593. end
  594. end
  595. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  596. NEWMESH.Scale = Vector3.new(1,1,1)
  597. NEWMESH.Parent = PARENT
  598. PARENT.Reflectance = 1
  599. return NEWMESH
  600. end
  601.  
  602. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  603. local NEWWELD = IT(TYPE)
  604. NEWWELD.Part0 = PART0
  605. NEWWELD.Part1 = PART1
  606. NEWWELD.C0 = C0
  607. NEWWELD.C1 = C1
  608. NEWWELD.Parent = PARENT
  609. return NEWWELD
  610. end
  611.  
  612. function CreateSound(ID, PARENT, VOLUME, PITCH)
  613. coroutine.resume(coroutine.create(function()
  614. local NEWSOUND = IT("Sound", PARENT)
  615. NEWSOUND.Volume = VOLUME
  616. NEWSOUND.Pitch = PITCH
  617. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  618. Swait()
  619. NEWSOUND:play()
  620. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  621. end))
  622. end
  623.  
  624. function CFrameFromTopBack(at, top, back)
  625. local right = top:Cross(back)
  626. 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)
  627. end
  628.  
  629. function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
  630. local MAGNITUDE = (POSITION1 - POSITION2).magnitude
  631. local CURRENTPOSITION = POSITION1
  632. local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
  633. coroutine.resume(coroutine.create(function()
  634. for i = 1, MULTIPLIERTIME do
  635. local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
  636. LIGHTNINGPART.Anchored = true
  637. local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)])
  638. local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
  639. if MULTIPLIERTIME == i then
  640. local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
  641. LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
  642. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
  643. else
  644. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
  645. end
  646. CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
  647. game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
  648. coroutine.resume(coroutine.create(function()
  649. while LIGHTNINGPART.Transparency ~= 1 do
  650. --local StartTransparency = tra
  651. for i=0, 1, LASTINGTIME do
  652. Swait()
  653. LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
  654. end
  655. end
  656. end))
  657. Swait(LIGHTNINGDELAY / Animation_Speed)
  658. end
  659. end))
  660. end
  661.  
  662. function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  663. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  664. EFFECTPART.Anchored = true
  665. EFFECTPART.CFrame = CFRAME
  666. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  667. game:GetService("Debris"):AddItem(EFFECTPART, 50)
  668. coroutine.resume(coroutine.create(function(PART, MESH)
  669. for i = 0, 1, delay do
  670. Swait()
  671. PART.CFrame = PART.CFrame * ROTATION
  672. PART.Transparency = i
  673. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  674. end
  675. PART.Parent = nil
  676. end), EFFECTPART, EFFECTMESH)
  677. end
  678.  
  679. function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  680. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  681. EFFECTPART.Anchored = true
  682. EFFECTPART.CFrame = CFRAME
  683. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  684. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  685. coroutine.resume(coroutine.create(function(PART, MESH)
  686. for i = 0, 1, delay do
  687. Swait()
  688. PART.CFrame = PART.CFrame * ROTATION
  689. PART.Transparency = i
  690. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  691. end
  692. PART.Parent = nil
  693. end), EFFECTPART, EFFECTMESH)
  694. end
  695.  
  696. function MagicCylinder(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("CylinderMesh", 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 MagicHead(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, "Head", "", "", 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 MagicRing(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("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", 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 MagicWave(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, "FileMesh", "20329976", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), VT(0, 0, (-0.1 * Z1)) + (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.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
  759. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  760. end
  761. PART.Parent = nil
  762. end), EFFECTPART, EFFECTMESH)
  763. end
  764.  
  765. function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  766. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  767. EFFECTPART.Anchored = true
  768. EFFECTPART.CFrame = CFRAME
  769. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  770. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  771. coroutine.resume(coroutine.create(function(PART, MESH)
  772. for i = 0, 1, delay do
  773. Swait()
  774. PART.CFrame = PART.CFrame * ROTATION
  775. PART.Transparency = i
  776. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  777. end
  778. PART.Parent = nil
  779. end), EFFECTPART, EFFECTMESH)
  780. end
  781.  
  782. function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  783. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  784. EFFECTPART.Anchored = true
  785. EFFECTPART.CFrame = CFRAME
  786. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  787. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  788. coroutine.resume(coroutine.create(function(PART, MESH)
  789. for i = 0, 1, delay do
  790. Swait()
  791. PART.CFrame = PART.CFrame * ROTATION
  792. PART.Transparency = i
  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 MagicSharpCone(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", "1778999", "", 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 MagicFlatCone(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", "1033714", "", 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 MagicSpikedCrown(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", "1323306", "", 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 MagicFlatCrown(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", "1078075", "", 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 MagicSkull(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", "4770583", "", 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 ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, 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", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
  889. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  890. local XVALUE = MRANDOM()
  891. local YVALUE = MRANDOM()
  892. local ZVALUE = MRANDOM()
  893. coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
  894. for i = 0, 1, delay do
  895. Swait()
  896. PART.CFrame = PART.CFrame * ROTATION
  897. PART.Transparency = i
  898. THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
  899. THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
  900. THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
  901. MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
  902. end
  903. PART.Parent = nil
  904. end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
  905. end
  906.  
  907. function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
  908. local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
  909. if MAGNITUDECFRAME > (1 / 100) then
  910. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
  911. EFFECTPART.Anchored = true
  912. EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
  913. local THEMESHTYPE = "BlockMesh"
  914. if MESHTYPE == "Cylinder" then
  915. THEMESHTYPE = "CylinderMesh"
  916. end
  917. local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
  918. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  919. coroutine.resume(coroutine.create(function(PART, MESH)
  920. for i = 0, 1, delay do
  921. Swait()
  922. PART.CFrame = PART.CFrame * ROTATION
  923. PART.Transparency = i
  924. MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
  925. end
  926. PART.Parent = nil
  927. end), EFFECTPART, EFFECTMESH)
  928. end
  929. end
  930.  
  931. function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
  932. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
  933. EFFECTPART.Anchored = true
  934. EFFECTPART.CFrame = CFRAME
  935. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
  936. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  937. local THELASTPOINT = CFRAME
  938. coroutine.resume(coroutine.create(function(PART)
  939. for i = 1, DURATION do
  940. Swait()
  941. PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
  942. 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)
  943. THELASTPOINT = PART.CFrame
  944. end
  945. PART.Parent = nil
  946. end), EFFECTPART)
  947. end
  948.  
  949. --local list={}
  950. function Triangle(Color, Material, a, b, c, delay)
  951. local edge1 = (c - a):Dot((b - a).unit)
  952. local edge2 = (a - b):Dot((c - b).unit)
  953. local edge3 = (b - c):Dot((a - c).unit)
  954. if edge1 <= (b - a).magnitude and edge1 >= 0 then
  955. a, b, c=a, b, c
  956. elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
  957. a, b, c=b, c, a
  958. elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
  959. a, b, c=c, a, b
  960. else
  961. assert(false, "unreachable")
  962. end
  963. local len1 = (c - a):Dot((b - a).unit)
  964. local len2 = (b - a).magnitude - len1
  965. local width = (a + (b - a).unit * len1 - c).magnitude
  966. local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
  967. if len1 > 1 / 100 then
  968. local sz = VT(0.2, width, len1)
  969. local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  970. local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
  971. w1.Anchored = true
  972. w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
  973. coroutine.resume(coroutine.create(function()
  974. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  975. Swait()
  976. w1.Transparency = i
  977. end
  978. w1.Parent = nil
  979. end))
  980. game:GetService("Debris"):AddItem(w1, 10)
  981. --table.insert(list, w1)
  982. end
  983. if len2 > 1 / 100 then
  984. local sz = VT(0.2, width, len2)
  985. local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  986. local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
  987. w2.Anchored = true
  988. w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
  989. coroutine.resume(coroutine.create(function()
  990. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  991. Swait()
  992. w2.Transparency = i
  993. end
  994. w2.Parent = nil
  995. end))
  996. game:GetService("Debris"):AddItem(w2, 10)
  997. --table.insert(list, w2)
  998. end
  999. --return unpack(list)
  1000. end
  1001.  
  1002. --[[Usage:
  1003. local Pos = Part
  1004. local Offset = Part.CFrame * CF(0, 0, 0)
  1005. local Color = "Institutional white"
  1006. local Material = "Neon"
  1007. local TheDelay = 0.01
  1008. local Height = 4
  1009. BLCF = Offset
  1010. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  1011. 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)
  1012. if a then game:GetService("Debris"):AddItem(a, 1) end
  1013. if b then game:GetService("Debris"):AddItem(b, 1) end
  1014. 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)
  1015. if a then game:GetService("Debris"):AddItem(a, 1) end
  1016. if b then game:GetService("Debris"):AddItem(b, 1) end
  1017. SCFR = BLCF
  1018. elseif not SCFR then
  1019. SCFR = BLCF
  1020. end
  1021. --
  1022. BLCF = nil
  1023. SCFR = nil
  1024. --]]
  1025.  
  1026. --//=================================\\
  1027. --\\=================================//
  1028.  
  1029.  
  1030.  
  1031. local function weldBetween(a, b)
  1032. local weldd = Instance.new("ManualWeld")
  1033. weldd.Part0 = a
  1034. weldd.Part1 = b
  1035. weldd.C0 = CFrame.new()
  1036. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1037. weldd.Parent = a
  1038. return weldd
  1039. end
  1040.  
  1041.  
  1042. --//=================================\\
  1043. --|| RESIZE PLAYER
  1044. --\\=================================//
  1045.  
  1046. if Player_Size ~= 1 then
  1047. RootPart.Size = RootPart.Size * Player_Size
  1048. Torso.Size = Torso.Size * Player_Size
  1049. Head.Size = Head.Size * Player_Size
  1050. RightArm.Size = RightArm.Size * Player_Size
  1051. LeftArm.Size = LeftArm.Size * Player_Size
  1052. RightLeg.Size = RightLeg.Size * Player_Size
  1053. LeftLeg.Size = LeftLeg.Size * Player_Size
  1054. RootJoint.Parent = RootPart
  1055. Neck.Parent = Torso
  1056. RightShoulder.Parent = Torso
  1057. LeftShoulder.Parent = Torso
  1058. RightHip.Parent = Torso
  1059. LeftHip.Parent = Torso
  1060.  
  1061. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1062. RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1063. Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1064. Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1065. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  1066. LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  1067. if Disable_Moving_Arms == false then
  1068. RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1069. LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1070. else
  1071. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1072. LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1073. end
  1074. 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))
  1075. 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))
  1076. 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))
  1077. 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))
  1078. wait(0.05)
  1079. local helmet = Instance.new("Part")
  1080. helmet.Reflectance = 1
  1081. helmet.CFrame = Head.CFrame
  1082. helmet.Parent = Character
  1083. local meshy = Instance.new("SpecialMesh")
  1084. meshy.MeshId = "http://www.roblox.com/asset/?id=34094632"
  1085. meshy.Scale = Vector3.new(2.25,2.25,2.25)
  1086. meshy.Parent = helmet
  1087. weldBetween(Head,helmet)
  1088. meshy.Offset = Vector3.new(0,0.65,0.5)
  1089. end
  1090.  
  1091.  
  1092. --//=================================\\
  1093. --\\=================================//
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099. --//=================================\\
  1100. --|| WEAPON CREATION
  1101. --\\=================================//
  1102.  
  1103. local HandlePart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0, 0, 0))
  1104. local HandleMesh = CreateMesh("SpecialMesh", HandlePart, "FileMesh", "93180631", "93180676", VT(1, 1, 1), VT(0, 3.1 * Player_Size, 0))
  1105. 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))
  1106.  
  1107. local HitboxPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Hitbox", VT(0, 0, 0))
  1108. local HitboxWeld = CreateWeldOrSnapOrMotor("Weld", HitboxPart, HandlePart, HitboxPart, CF(0 * Player_Size, 4 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
  1109.  
  1110. local EffectPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Effect Part", VT(0, 0, 0))
  1111. local EffectWeld = CreateWeldOrSnapOrMotor("Weld", EffectPart, HandlePart, EffectPart, CF(0 * Player_Size, 7 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
  1112.  
  1113. if Player_Size ~= 1 then
  1114. for _, v in pairs (Weapon:GetChildren()) do
  1115. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  1116. local p1 = v.Part1
  1117. v.Part1 = nil
  1118. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  1119. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  1120. v.Part1 = p1
  1121. elseif v.ClassName == "Part" then
  1122. for _, b in pairs (v:GetChildren()) do
  1123. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  1124. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  1125. end
  1126. end
  1127. end
  1128. end
  1129. end
  1130.  
  1131. for _, c in pairs(Weapon:GetChildren()) do
  1132. if c.ClassName == "Part" then
  1133. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1134. end
  1135. end
  1136.  
  1137. if Start_Equipped == true and Start_Equipped_With_Equipped_Animation == false then
  1138. HandleWeld.Part0 = RightArm
  1139. HandleWeld.C0 = CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1140. end
  1141.  
  1142. Weapon.Parent = Character
  1143.  
  1144. Humanoid.Died:connect(function()
  1145. ATTACK = true
  1146. end)
  1147.  
  1148. print(Class_Name.." loaded.")
  1149.  
  1150. --//=================================\\
  1151. --\\=================================//
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157. --//=================================\\
  1158. --|| DAMAGE FUNCTIONS
  1159. --\\=================================//
  1160.  
  1161. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1162. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1163. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1164. local BODYGYRO = IT("BodyGyro", STATPART)
  1165. local BODYPOSITION = IT("BodyPosition", STATPART)
  1166. BODYPOSITION.P = 2000
  1167. BODYPOSITION.D = 100
  1168. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1169. if LABELTYPE == "Normal" then
  1170. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1171. elseif LABELTYPE == "Debuff" then
  1172. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  1173. elseif LABELTYPE == "Interruption" then
  1174. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  1175. end
  1176. game:GetService("Debris"):AddItem(STATPART ,5)
  1177. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1178. BILLBOARDGUI.Adornee = STATPART
  1179. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1180. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1181. BILLBOARDGUI.AlwaysOnTop = false
  1182. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1183. TEXTLABEL.BackgroundTransparency = 1
  1184. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1185. TEXTLABEL.Text = TEXT
  1186. TEXTLABEL.Font = "SourceSans"
  1187. TEXTLABEL.FontSize="Size42"
  1188. TEXTLABEL.TextColor3 = COLOR
  1189. TEXTLABEL.TextStrokeTransparency = 0
  1190. TEXTLABEL.TextScaled = true
  1191. TEXTLABEL.TextWrapped = true
  1192. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1193. wait(0.2)
  1194. for i=1, 5 do
  1195. wait()
  1196. THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  1197. end
  1198. wait(1.2)
  1199. for i=1, 5 do
  1200. wait()
  1201. THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1202. THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1203. THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1204. end
  1205. THEPART.Parent = nil
  1206. end),STATPART, BODYPOSITION, TEXTLABEL)
  1207. end
  1208.  
  1209. function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
  1210. if LOCATION:FindFirstChild("Stats") ~= nil then
  1211. if LOCATION.Stats:FindFirstChild("Block") ~= nil then
  1212. if LOCATION.Stats:FindFirstChild("Block").Value == true then
  1213. return
  1214. end
  1215. end
  1216. if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
  1217. local NewStatChange = IT("NumberValue")
  1218. NewStatChange.Value = AMOUNT
  1219. if STAT == "Defense" then
  1220. NewStatChange.Name = "ChangeDefense"
  1221. elseif STAT == "Damage" then
  1222. NewStatChange.Name = "ChangeDamage"
  1223. elseif STAT == "Movement" then
  1224. NewStatChange.Name = "ChangeMovement"
  1225. end
  1226. if SHOWTHESTAT == true then
  1227. if AMOUNT < 0 then
  1228. StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
  1229. elseif AMOUNT > 0 then
  1230. StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
  1231. end
  1232. end
  1233. if DURATION ~= nil and DURATION ~= 0 then
  1234. local StatDuration = IT("NumberValue")
  1235. StatDuration.Name = "Duration"
  1236. StatDuration.Value = DURATION
  1237. StatDuration.Parent = NewStatChange
  1238. end
  1239. NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
  1240. end
  1241. end
  1242. end
  1243.  
  1244. --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)
  1245. 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)
  1246. if HIT.Parent == nil then
  1247. return
  1248. end
  1249. local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
  1250. for _, v in pairs(HIT.Parent:GetChildren()) do
  1251. if v:IsA("Humanoid") then
  1252. HITHUMANOID = v
  1253. HITHUMANOID.MaxHealth = 100
  1254. end
  1255. end
  1256. if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
  1257. StaggerHit.Value = true
  1258. if Play_Hitbox_Hit_Sound == true then
  1259. if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
  1260. CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
  1261. end
  1262. end
  1263. return
  1264. end
  1265. if HIT.Parent.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent.Parent:FindFirstChild("UpperTorso") ~= nil then
  1266. HITHUMANOID = HIT.Parent.Parent:FindFirstChild("Humanoid")
  1267. end
  1268. if HIT.Parent.ClassName == "Hat" or HIT.ClassName == "Accessory" then
  1269. HIT = HIT.Parent.Parent:FindFirstChild("Head")
  1270. end
  1271. if HITHUMANOID ~= nil and HIT.Parent.Name ~= Character.Name and (HIT.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent:FindFirstChild("UpperTorso") ~= nil) then
  1272. if HIT.Parent:FindFirstChild("DebounceHit") ~= nil then
  1273. if HIT.Parent.DebounceHit.Value == true then
  1274. return
  1275. end
  1276. end
  1277. if AntiTeamKill.Value == true then
  1278. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(HIT.Parent) ~= nil then
  1279. if game.Players:GetPlayerFromCharacter(HIT.Parent).TeamColor == Player.TeamColor then
  1280. return
  1281. end
  1282. end
  1283. end
  1284. if HITEVENWHENDEAD == false then
  1285. if HIT.Parent:FindFirstChild("Humanoid") ~= nil then
  1286. if HIT.Parent:FindFirstChild("Humanoid").Health <= 0 then
  1287. return
  1288. end
  1289. end
  1290. end
  1291. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1292. if HIT.Parent.Stats:FindFirstChild("StunValue") ~= nil then
  1293. HIT.Parent.Stats:FindFirstChild("StunValue").Value = HIT.Parent.Stats:FindFirstChild("StunValue").Value + INCREASESTUN
  1294. end
  1295. end
  1296. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1297. if HIT.Parent.Stats:FindFirstChild("Stagger") ~= nil then
  1298. if STAGGER == true and Enable_Stagger == true then
  1299. HIT.Parent.Stats:FindFirstChild("Stagger").Value = true
  1300. end
  1301. end
  1302. end
  1303. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1304. if HIT.Parent.Stats:FindFirstChild("Block") ~= nil then
  1305. if HIT.Parent.Stats:FindFirstChild("Block").Value == true then
  1306. HASBEENBLOCKED = true
  1307. if HIT.Parent.Stats:FindFirstChild("Block"):FindFirstChild("BlockDebounce") == nil then
  1308. StatLabel("Interruption", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Blocked!", C3(0, 100 / 255, 255 / 255))
  1309. if RANGED ~= true then
  1310. if HITBLOCKSOUND ~= "" and HITBLOCKSOUND ~= "nil" then
  1311. CreateSound(HITBLOCKSOUND, HIT, 1, HITBLOCKSOUNDPITCH)
  1312. end
  1313. end
  1314. local BlockDebounce = IT("BoolValue", HIT.Parent.Stats:FindFirstChild("Block"))
  1315. BlockDebounce.Name = "BlockDebounce"
  1316. BlockDebounce.Value = true
  1317. if RANGED ~= true then
  1318. game:GetService("Debris"):AddItem(BlockDebounce, 0.5)
  1319. else
  1320. game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
  1321. end
  1322. end
  1323. if RANGED ~= true and Enable_Stagger == true then
  1324. HIT.Parent.Stats:FindFirstChild("Block").Value = false
  1325. Stagger.Value = true
  1326. end
  1327. return
  1328. end
  1329. end
  1330. end
  1331. if DECREASETHESTAT ~= nil then
  1332. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1333. IncreaseOrDecreaseStat(HIT.Parent, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
  1334. end
  1335. end
  1336. local DAMAGE = MRANDOM(MINIMUMDAMAGE,MAXIMUMDAMAGE) * Damage.Value
  1337. if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1338. if HIT.Parent.Stats:FindFirstChild("Defense") ~= nil then
  1339. if CanPenetrateArmor.Value == true then
  1340. DAMAGE = DAMAGE
  1341. else
  1342. DAMAGE = DAMAGE / HIT.Parent.Stats:FindFirstChild("Defense").Value
  1343. end
  1344. elseif HIT.Parent.Stats:FindFirstChild("Defense") == nil then
  1345. DAMAGE = DAMAGE
  1346. end
  1347. end
  1348. if CanCrit.Value == true then
  1349. CRITCHANCENUMBER = MRANDOM(1, CritChance.Value)
  1350. if CRITCHANCENUMBER == 1 then
  1351. DAMAGE = DAMAGE * 2
  1352. end
  1353. end
  1354. DAMAGE = math.floor(DAMAGE)
  1355. if HASBEENBLOCKED == false then
  1356. HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
  1357. end
  1358. if DAMAGE <= 3 and HASBEENBLOCKED == false then
  1359. if STAGGERHIT == true and Enable_Stagger_Hit == true and RANGED ~= true then
  1360. StaggerHit.Value = true
  1361. end
  1362. if HITARMORSOUND ~= "" and HITARMORSOUND ~= "nil" then
  1363. CreateSound(HITARMORSOUND, HIT, 1, HITARMORSOUNDPITCH)
  1364. end
  1365. elseif DAMAGE > 3 and HASBEENBLOCKED == false then
  1366. if HITPLAYERSOUND ~= "" and HITPLAYERSOUND ~= "nil" then
  1367. CreateSound(HITPLAYERSOUND, HIT, 1, HITPLAYERSOUNDPITCH)
  1368. end
  1369. end
  1370. if DAMAGE > 3 and DAMAGE < 20 and HASBEENBLOCKED == false then
  1371. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1372. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1373. CreateSound("296102734", HIT, 1, 1)
  1374. else
  1375. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 220/255, 0))
  1376. end
  1377. elseif DAMAGE >= 20 and HASBEENBLOCKED == false then
  1378. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1379. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1380. CreateSound("296102734", HIT, 1, 1)
  1381. else
  1382. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 0, 0))
  1383. end
  1384. elseif DAMAGE <= 3 and HASBEENBLOCKED == false then
  1385. if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1386. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1387. CreateSound("296102734", HIT, 1, 1)
  1388. else
  1389. StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(225/255, 225/255, 225/255))
  1390. end
  1391. end
  1392. if TYPE == "Normal" then
  1393. local vp = IT("BodyVelocity")
  1394. vp.P=500
  1395. vp.maxForce = VT(math.huge, 0, math.huge)
  1396. if KNOCKBACKTYPE == 1 then
  1397. vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK + PROPERTY.Velocity / 1.05
  1398. elseif KNOCKBACKTYPE == 2 then
  1399. vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK
  1400. end
  1401. if KNOCKBACK > 0 and HASBEENBLOCKED == false then
  1402. vp.Parent = HIT--.Parent.Torso
  1403. end
  1404. game:GetService("Debris"):AddItem(vp, 0.5)
  1405. end
  1406. HASBEENBLOCKED = false
  1407. RecentEnemy.Value = HIT.Parent
  1408. local DebounceHit = IT("BoolValue", HIT.Parent)
  1409. DebounceHit.Name = "DebounceHit"
  1410. DebounceHit.Value = true
  1411. game:GetService("Debris"):AddItem(DebounceHit, DELAY)
  1412. end
  1413. end
  1414.  
  1415. --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)
  1416. 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)
  1417. for _, c in pairs(workspace:GetChildren()) do
  1418. local HUMANOID = c:FindFirstChild("Humanoid")
  1419. local HEAD = nil
  1420. if HUMANOID ~= nil then
  1421. for _, d in pairs(c:GetChildren()) do
  1422. if d.ClassName == "Model" and RANGED ~= true then
  1423. HEAD = d:FindFirstChild("Hitbox")
  1424. if HEAD ~= nil then
  1425. local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1426. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1427. if Play_Hitbox_Hit_Sound == true then
  1428. local HitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1429. HitRefpart.Anchored = true
  1430. HitRefpart.CFrame = CF(HEAD.Position)
  1431. CreateSound(HITWEAPONSOUND, HitRefpart, 1, HITWEAPONSOUNDPITCH)
  1432. end
  1433. if Enable_Stagger_Hit == true then
  1434. StaggerHit.Value = true
  1435. end
  1436. end
  1437. end
  1438. elseif d:IsA"BasePart" then
  1439. HEAD = d
  1440. if HEAD ~= nil then
  1441. local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1442. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1443. 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)
  1444. end
  1445. end
  1446. end
  1447. end
  1448. end
  1449. end
  1450. end
  1451.  
  1452. --Usage: MagnitudeBuffOrDebuff(Part, 5, "Defense", -0.1, 3, true, true)
  1453. function MagnitudeBuffOrDebuff(PART, MAGNITUDE, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF, APPLYTOOTHERSINSTEAD)
  1454. if Player.Neutral == true then
  1455. IncreaseOrDecreaseStat(Character, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1456. end
  1457. for _, c in pairs(workspace:GetChildren()) do
  1458. local HUMANOID = c:FindFirstChild("Humanoid")
  1459. local THEHEAD = nil
  1460. if HUMANOID ~= nil then
  1461. if c:FindFirstChild("Torso") ~= nil then
  1462. THEHEAD = c:FindFirstChild("Torso")
  1463. elseif c:FindFirstChild("UpperTorso") ~= nil then
  1464. THEHEAD = c:FindFirstChild("UpperTorso")
  1465. end
  1466. if THEHEAD ~= nil then
  1467. local THEMAGNITUDE = (THEHEAD.Position - PART.Position).magnitude
  1468. print("yes 1")
  1469. if APPLYTOOTHERSINSTEAD == true then
  1470. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1471. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1472. if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1473. IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1474. end
  1475. end
  1476. end
  1477. elseif APPLYTOOTHERSINSTEAD == false then
  1478. if THEMAGNITUDE <= (MAGNITUDE * Player_Size) then
  1479. if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1480. if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1481. IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1482. end
  1483. end
  1484. end
  1485. end
  1486. end
  1487. end
  1488. end
  1489. end
  1490.  
  1491. --//=================================\\
  1492. --\\=================================//
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498. --//=================================\\
  1499. --|| WEAPON GUI
  1500. --\\=================================//
  1501.  
  1502. 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")
  1503. 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")
  1504. local MANATEXT = CreateLabel(MANABAR, Mana_Name.." ["..FLOOR(Mana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Mana Text")
  1505.  
  1506. 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")
  1507. 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")
  1508. local HEALTHTEXT = CreateLabel(HEALTHBAR, "Health ["..FLOOR(Humanoid.Health).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Health Text")
  1509.  
  1510. 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")
  1511. 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")
  1512. local STUNTEXT = CreateLabel(STUNFRAME, "Stun ["..FLOOR(StunValue.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Stun Text")
  1513.  
  1514. 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")
  1515. 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")
  1516. local SECONDARYMANATEXT = CreateLabel(SECONDARYMANABAR, Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Secondary Mana Text")
  1517.  
  1518. 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")
  1519. local DEFENSETEXT = CreateLabel(DEFENSEFRAME, "Defense ["..(Defense.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Defense Text")
  1520.  
  1521. 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")
  1522. local DAMAGETEXT = CreateLabel(DAMAGEFRAME, "Damage ["..(Damage.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Damage Text")
  1523.  
  1524. 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")
  1525. local MOVEMENTTEXT = CreateLabel(MOVEMENTFRAME, "Movement ["..(Movement.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Movement Text")
  1526.  
  1527. 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")
  1528. 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")
  1529. 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")
  1530. 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")
  1531.  
  1532. 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")
  1533. 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")
  1534. 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")
  1535. 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")
  1536.  
  1537. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Ability 1", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 1")
  1538. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[X] Ability 2", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 2")
  1539. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 3")
  1540. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 4")
  1541.  
  1542. if Enable_Gui == true then
  1543. WEAPONGUI.Parent = PlayerGui
  1544. end
  1545.  
  1546. if Enable_Stats == true and Show_Stats == true then
  1547. DEFENSEFRAME.Parent = WEAPONGUI
  1548. DAMAGEFRAME.Parent = WEAPONGUI
  1549. MOVEMENTFRAME.Parent = WEAPONGUI
  1550. end
  1551.  
  1552. if Enable_Secondary_Bar == true then
  1553. SECONDARYMANABAR.Parent = WEAPONGUI
  1554. end
  1555.  
  1556. if Enable_Abilities == true then
  1557. SKILL1FRAME.Parent = WEAPONGUI
  1558. SKILL2FRAME.Parent = WEAPONGUI
  1559. SKILL3FRAME.Parent = WEAPONGUI
  1560. SKILL4FRAME.Parent = WEAPONGUI
  1561. end
  1562.  
  1563. if Enable_Stun == true then
  1564. STUNFRAME.Parent = WEAPONGUI
  1565. end
  1566.  
  1567. function UpdateGUI()
  1568. MANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1569. MANACOVER:TweenSize(UD2(1 * (Mana.Value / Max_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1570. MANATEXT.Text = Mana_Name.." ["..FLOOR(Mana.Value).."]"
  1571. HEALTHBAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1572. HEALTHCOVER:TweenSize(UD2(1 * (Humanoid.Health / Humanoid.MaxHealth), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1573. HEALTHTEXT.Text = "Health ["..FLOOR(Humanoid.Health).."]"
  1574. if Enable_Abilities == true then
  1575. SKILL1FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1576. SKILL2FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1577. SKILL3FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1578. SKILL4FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1579. SKILL1BAR:TweenSize(UD2(1 * (CO1 / Cooldown_1), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1580. SKILL2BAR:TweenSize(UD2(1 * (CO2 / Cooldown_2), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1581. SKILL3BAR:TweenSize(UD2(1 * (CO3 / Cooldown_3), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1582. SKILL4BAR:TweenSize(UD2(1 * (CO4 / Cooldown_4), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1583. end
  1584. if Enable_Stats == true and Show_Stats == true then
  1585. DEFENSEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1586. DEFENSETEXT.Text = "Defense ["..(Defense.Value * 100).."%]"
  1587. DAMAGEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1588. DAMAGETEXT.Text = "Damage ["..(Damage.Value * 100).."%]"
  1589. MOVEMENTFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1590. MOVEMENTTEXT.Text = "Movement ["..(Movement.Value * 100).."%]"
  1591. end
  1592. if Enable_Stun == true then
  1593. STUNFRAME:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1594. STUNBAR:TweenSize(UD2(1 * (StunValue.Value / Max_Stun), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1595. STUNTEXT.Text = "Stun ["..FLOOR(StunValue.Value).."]"
  1596. end
  1597. if Enable_Secondary_Bar == true then
  1598. SECONDARYMANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1599. SECONDARYMANACOVER:TweenSize(UD2(1 * (SecondaryMana.Value / Max_Secondary_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
  1600. SECONDARYMANATEXT.Text = Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]"
  1601. end
  1602. end
  1603.  
  1604. if Enable_Gui == true then
  1605. UpdateGUI()
  1606. for _, v in pairs (WEAPONGUI:GetChildren()) do
  1607. if v.ClassName == "Frame" then
  1608. for _, b in pairs (v:GetChildren()) do
  1609. if b.ClassName == "TextLabel" then
  1610. coroutine.resume(coroutine.create(function(THETEXTLABEL)
  1611. wait(Menu_Update_Speed)
  1612. for i = 1, 0, -0.1 do
  1613. Swait()
  1614. THETEXTLABEL.TextTransparency = i
  1615. THETEXTLABEL.TextStrokeTransparency = i
  1616. end
  1617. THETEXTLABEL.TextTransparency = 0
  1618. THETEXTLABEL.TextStrokeTransparency = 0
  1619. end), b)
  1620. end
  1621. end
  1622. end
  1623. end
  1624. end
  1625.  
  1626. --//=================================\\
  1627. --\\=================================//
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633. --//=================================\\
  1634. --|| SKILL FUNCTIONS
  1635. --\\=================================//
  1636.  
  1637. function UpdateSkillsAndStuff()
  1638. if Mana_Regen_Mode == "1" then
  1639. if Mana.Value >= Max_Mana then
  1640. Mana.Value = Max_Mana
  1641. elseif Mana.Value < 0 then
  1642. Mana.Value = 0
  1643. else
  1644. if MANADELAYNUMBER <= Mana_Wait then
  1645. MANADELAYNUMBER = MANADELAYNUMBER + 1
  1646. else
  1647. MANADELAYNUMBER = 0
  1648. Mana.Value = Mana.Value + Recover_Mana
  1649. end
  1650. end
  1651. elseif Mana_Regen_Mode == "2" then
  1652. if Mana.Value <= Max_Mana then
  1653. Mana.Value = Mana.Value + (Recover_Mana / 30) / Animation_Speed
  1654. elseif Mana.Value >= Max_Mana then
  1655. Mana.Value = Max_Mana
  1656. elseif Mana.Value < 0 then
  1657. Mana.Value = 0
  1658. end
  1659. end
  1660. if Enable_Secondary_Bar == true then
  1661. if Secondary_Mana_Regen_Mode == "1" then
  1662. if SecondaryMana.Value >= Max_Secondary_Mana then
  1663. SecondaryMana.Value = Max_Secondary_Mana
  1664. elseif SecondaryMana.Value < 0 then
  1665. SecondaryMana.Value = 0
  1666. else
  1667. if SECONDARYMANADELAYNUMBER <= Secondary_Mana_Wait then
  1668. SECONDARYMANADELAYNUMBER = SECONDARYMANADELAYNUMBER + 1
  1669. else
  1670. SECONDARYMANADELAYNUMBER = 0
  1671. SecondaryMana.Value = SecondaryMana.Value + Recover_Secondary_Mana
  1672. end
  1673. end
  1674. elseif Secondary_Mana_Regen_Mode == "2" then
  1675. if SecondaryMana.Value <= Max_Secondary_Mana then
  1676. SecondaryMana.Value = SecondaryMana.Value + (Recover_Secondary_Mana / 30) / Animation_Speed
  1677. elseif SecondaryMana.Value >= Max_Secondary_Mana then
  1678. SecondaryMana.Value = Max_Secondary_Mana
  1679. elseif SecondaryMana.Value < 0 then
  1680. SecondaryMana.Value = 0
  1681. end
  1682. end
  1683. else
  1684. SecondaryMana.Value = 0
  1685. end
  1686. if Enable_Stun == true then
  1687. if Stun_Lose_Mode == "1" then
  1688. if StunValue.Value > Max_Stun then
  1689. StunValue.Value = Max_Stun
  1690. elseif StunValue.Value <= 0 then
  1691. StunValue.Value = 0
  1692. else
  1693. if STUNDELAYNUMBER <= Stun_Wait then
  1694. STUNDELAYNUMBER = STUNDELAYNUMBER + 1
  1695. else
  1696. STUNDELAYNUMBER = 0
  1697. StunValue.Value = StunValue.Value - Lose_Stun
  1698. end
  1699. end
  1700. elseif Stun_Lose_Mode == "2" then
  1701. if StunValue.Value <= Max_Stun and StunValue.Value > 0 then
  1702. StunValue.Value = StunValue.Value - (Lose_Stun / 30) / Animation_Speed
  1703. elseif StunValue.Value > Max_Stun then
  1704. StunValue.Value = Max_Stun
  1705. elseif StunValue.Value <= 0 then
  1706. StunValue.Value = 0
  1707. end
  1708. end
  1709. else
  1710. StunValue.Value = 0
  1711. end
  1712. if Enable_Abilities == true then
  1713. if CO1 <= Cooldown_1 then
  1714. CO1 = CO1 + (1 / 30) / Animation_Speed
  1715. elseif CO1 >= Cooldown_1 then
  1716. CO1 = Cooldown_1
  1717. end
  1718. if CO2 <= Cooldown_2 then
  1719. CO2 = CO2 + (1 / 30) / Animation_Speed
  1720. elseif CO2 >= Cooldown_2 then
  1721. CO2 = Cooldown_2
  1722. end
  1723. if CO3 <= Cooldown_3 then
  1724. CO3 = CO3 + (1 / 30) / Animation_Speed
  1725. elseif CO3 >= Cooldown_3 then
  1726. CO3 = Cooldown_3
  1727. end
  1728. if CO4 <= Cooldown_4 then
  1729. CO4 = CO4 + (1 / 30) / Animation_Speed
  1730. elseif CO4 >= Cooldown_4 then
  1731. CO4 = Cooldown_4
  1732. end
  1733. end
  1734. end
  1735.  
  1736. --//=================================\\
  1737. --\\=================================//
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743. --//=================================\\
  1744. --|| ATTACK FUNCTIONS AND STUFF
  1745. --\\=================================//
  1746.  
  1747. function EquipWeapon()
  1748. --ATTACK = true
  1749. DEFENSECHANGE1.Parent = nil
  1750. MOVEMENTCHANGE1.Parent = ChangeStat
  1751. for i=0, 1, 0.5 / Animation_Speed do
  1752. Swait()
  1753. 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)
  1754. 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)
  1755. 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)
  1756. 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)
  1757. 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)
  1758. 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)
  1759. end
  1760. for i=0, 1, 0.08 / Animation_Speed do
  1761. Swait()
  1762. 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)
  1763. 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)
  1764. 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)
  1765. 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)
  1766. 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)
  1767. 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)
  1768. end
  1769. HandleWeld.Part0 = RightArm
  1770. 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))
  1771. CreateSound("174884033", HitboxPart, 1, 1.5)
  1772. for i=0, 1, 0.5 / Animation_Speed do
  1773. Swait()
  1774. 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)
  1775. 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)
  1776. 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)
  1777. 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)
  1778. 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)
  1779. 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)
  1780. 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)
  1781. end
  1782. LASTPOINT = EffectPart.CFrame
  1783. for i=0, 1, 0.08 / Animation_Speed do
  1784. Swait()
  1785. TrailEffect("Institutional white", "Neon", EffectPart.CFrame, LASTPOINT, "Block", 0, 0.2, ANGLES(0, 0, 0), -0.01, 0, -0.01, 0.1)
  1786. LASTPOINT = EffectPart.CFrame
  1787. 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)
  1788. 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)
  1789. 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)
  1790. 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)
  1791. 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)
  1792. 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)
  1793. 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)
  1794. end
  1795. LASTPOINT = nil
  1796. --ATTACK = false
  1797. end
  1798.  
  1799. function UnequipWeapon()
  1800. --ATTACK = true
  1801. for i=0, 1, 0.5 / Animation_Speed do
  1802. Swait()
  1803. 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)
  1804. 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)
  1805. 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)
  1806. 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)
  1807. 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)
  1808. 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)
  1809. 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)
  1810. end
  1811. CreateSound("245542809", HitboxPart, 1, 1.2)
  1812. for i=0, 1, 0.08 / Animation_Speed do
  1813. Swait()
  1814. 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)
  1815. 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)
  1816. 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)
  1817. 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)
  1818. 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)
  1819. 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)
  1820. 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)
  1821. end
  1822. HandleWeld.Part0 = Torso
  1823. HandleWeld.C0 = CF(2 * Player_Size, 2 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(135))
  1824. for i=0, 1, 0.5 / Animation_Speed do
  1825. Swait()
  1826. 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)
  1827. 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)
  1828. 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)
  1829. 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)
  1830. 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)
  1831. 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)
  1832. end
  1833. for i=0, 1, 0.08 / Animation_Speed do
  1834. Swait()
  1835. 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)
  1836. 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)
  1837. 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)
  1838. 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)
  1839. 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)
  1840. 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)
  1841. if Disable_Moving_Arms == false then
  1842. RightShoulder.C1 = Clerp(RightShoulder.C1, ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5), 0.3 / Animation_Speed)
  1843. LeftShoulder.C1 = Clerp(LeftShoulder.C1, ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5), 0.3 / Animation_Speed)
  1844. else
  1845. RightShoulder.C1 = Clerp(RightShoulder.C1, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size), 0.3 / Animation_Speed)
  1846. LeftShoulder.C1 = Clerp(LeftShoulder.C1, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size), 0.3 / Animation_Speed)
  1847. end
  1848. 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)
  1849. 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)
  1850. 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)
  1851. 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)
  1852. end
  1853. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1854. RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1855. Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1856. Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1857. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  1858. LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  1859. if Disable_Moving_Arms == false then
  1860. RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1861. LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1862. else
  1863. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1864. LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1865. end
  1866. 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))
  1867. 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))
  1868. 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))
  1869. 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))
  1870. --ATTACK = false
  1871. DEFENSECHANGE1.Parent = ChangeStat
  1872. MOVEMENTCHANGE1.Parent = nil
  1873. end
  1874.  
  1875. function StaggerHitAnimation()
  1876. ATTACK = true
  1877. if Weapon:FindFirstChild("Hitbox") ~= nil then
  1878. for i = 1, MRANDOM(2, 4) do
  1879. 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)
  1880. end
  1881. end
  1882. for i = 0, 1, 0.1 / Animation_Speed do
  1883. Swait()
  1884. 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)
  1885. 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)
  1886. 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)
  1887. 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)
  1888. 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)
  1889. 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)
  1890. if Stagger.Value == true or Stun.Value == true then
  1891. break
  1892. end
  1893. end
  1894. ATTACK = false
  1895. end
  1896.  
  1897. function StaggerAnimation()
  1898. ATTACK = true
  1899. if Weapon:FindFirstChild("Hitbox") ~= nil then
  1900. for i = 1, MRANDOM(2, 4) do
  1901. 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)
  1902. end
  1903. end
  1904. DISABLEJUMPING = true
  1905. COMBO = 1
  1906. StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Staggered!", C3(255 / 255, 255 / 255, 0))
  1907. local STAGGERVELOCITY = Instance.new("BodyVelocity",Torso)
  1908. STAGGERVELOCITY.P = 500
  1909. STAGGERVELOCITY.maxForce = VT(math.huge, 0, math.huge)
  1910. if Rooted.Value == false then
  1911. STAGGERVELOCITY.Velocity = RootPart.CFrame.lookVector * -40
  1912. end
  1913. for i = 0, 1, 0.35 / Animation_Speed do
  1914. Swait()
  1915. 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)
  1916. 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)
  1917. 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)
  1918. 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)
  1919. 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)
  1920. 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)
  1921. end
  1922. for i = 0, 1, 0.2 / Animation_Speed do
  1923. Swait()
  1924. 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)
  1925. 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)
  1926. 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)
  1927. 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)
  1928. 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)
  1929. 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)
  1930. end
  1931. STAGGERVELOCITY.Parent = nil
  1932. for i = 1, 50 * Animation_Speed do
  1933. Swait()
  1934. 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)
  1935. 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)
  1936. 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)
  1937. 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)
  1938. 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)
  1939. 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)
  1940. end
  1941. DISABLEJUMPING = false
  1942. ATTACK = false
  1943. end
  1944.  
  1945. function StunAnimation()
  1946. ATTACK = true
  1947. DISABLEJUMPING = true
  1948. COMBO = 1
  1949. StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Stunned!", C3(255 / 255, 255 / 255, 0))
  1950. for i = 0, 1, 0.3 / Animation_Speed do
  1951. Swait()
  1952. 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)
  1953. 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)
  1954. 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)
  1955. 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)
  1956. 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)
  1957. 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)
  1958. end
  1959. for i = 0, 1, 0.3 / Animation_Speed do
  1960. Swait()
  1961. 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)
  1962. 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)
  1963. 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)
  1964. 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)
  1965. 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)
  1966. 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)
  1967. end
  1968. for i = 0, 1, 0.3 / Animation_Speed do
  1969. Swait()
  1970. 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)
  1971. 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)
  1972. 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)
  1973. 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)
  1974. 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)
  1975. 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)
  1976. end
  1977. for i = 1, 70 * Animation_Speed do
  1978. Swait()
  1979. 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)
  1980. 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)
  1981. 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)
  1982. 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)
  1983. 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)
  1984. 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)
  1985. end
  1986. for i = 0, 1, 0.2 / Animation_Speed do
  1987. Swait()
  1988. 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)
  1989. 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)
  1990. 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)
  1991. 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)
  1992. 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)
  1993. 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)
  1994. end
  1995. DISABLEJUMPING = false
  1996. ATTACK = false
  1997. end
  1998.  
  1999. function EAbility()
  2000. ATTACK = true
  2001. ATTACK = false
  2002. end
  2003.  
  2004. function Attack1()
  2005. ATTACK = true
  2006. for i=0, 1, 0.1 / Animation_Speed do
  2007. Swait()
  2008. 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)
  2009. 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)
  2010. 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)
  2011. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.25 * Player_Size, 0.5 * Player_Size, -0.75 * Player_Size) * ANGLES(RAD(160), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2012. 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)
  2013. 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)
  2014. 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)
  2015. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2016. break
  2017. end
  2018. end
  2019. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2020. local HASHITFLOOR = false
  2021. for i=0, 1, 0.1 / Animation_Speed do
  2022. Swait()
  2023. local Pos = HitboxPart
  2024. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2025. local Color = "Institutional white"
  2026. local Material = "Neon"
  2027. local TheDelay = 0.01
  2028. local Height = 6.2 * Player_Size
  2029. BLCF = Offset
  2030. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2031. 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)
  2032. if a then game:GetService("Debris"):AddItem(a, 1) end
  2033. if b then game:GetService("Debris"):AddItem(b, 1) end
  2034. 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)
  2035. if a then game:GetService("Debris"):AddItem(a, 1) end
  2036. if b then game:GetService("Debris"):AddItem(b, 1) end
  2037. SCFR = BLCF
  2038. elseif not SCFR then
  2039. SCFR = BLCF
  2040. end
  2041. local SWORDHIT, SWORDPOS = Raycast(EffectPart.Position, (CF(EffectPart.Position, EffectPart.Position + VT(0, -1, 0))).lookVector, 1 * Player_Size, Character)
  2042. if SWORDHIT ~= nil and HASHITFLOOR == false and SWORDHIT.Parent:FindFirstChild("Humanoid") == nil then
  2043. HASHITFLOOR = true
  2044. --print(SWORDHIT.Material)
  2045. 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
  2046. CreateSound("525717773", EffectPart, 1.2 , MRANDOM(8, 12) / 10)
  2047. 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
  2048. CreateSound("470790670", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2049. for i = 1, MRANDOM(2, 4) do
  2050. 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)
  2051. end
  2052. elseif SWORDHIT.Material == Enum.Material.Wood or SWORDHIT.Material == Enum.Material.WoodPlanks then
  2053. CreateSound("514586161", EffectPart, 1 , MRANDOM(8, 12) / 10)
  2054. end
  2055. end
  2056. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 35, 45, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2057. if HASHITFLOOR == true then
  2058. 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)
  2059. 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)
  2060. 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)
  2061. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(0 * Player_Size, 0.25 * Player_Size, -0.75 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2062. 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)
  2063. 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)
  2064. 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)
  2065. else
  2066. 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)
  2067. 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)
  2068. 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)
  2069. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(0 * Player_Size, 0.25 * Player_Size, -0.75 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2070. 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)
  2071. 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)
  2072. 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)
  2073. end
  2074. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2075. break
  2076. end
  2077. end
  2078. BLCF = nil
  2079. SCFR = nil
  2080. ATTACK = false
  2081. end
  2082.  
  2083. function Attack2()
  2084. ATTACK = true
  2085. for i=0, 1, 0.1 / Animation_Speed do
  2086. Swait()
  2087. 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)
  2088. 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)
  2089. 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)
  2090. 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)
  2091. 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)
  2092. 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)
  2093. 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)
  2094. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2095. break
  2096. end
  2097. end
  2098. CreateSound("553461718", HitboxPart, 1.2, MRANDOM(7, 9) / 10)
  2099. for i=0, 1, 0.1 / Animation_Speed do
  2100. Swait()
  2101. local Pos = HitboxPart
  2102. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2103. local Color = "Institutional white"
  2104. local Material = "Neon"
  2105. local TheDelay = 0.01
  2106. local Height = 6.2 * Player_Size
  2107. BLCF = Offset
  2108. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2109. 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)
  2110. if a then game:GetService("Debris"):AddItem(a, 1) end
  2111. if b then game:GetService("Debris"):AddItem(b, 1) end
  2112. 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)
  2113. if a then game:GetService("Debris"):AddItem(a, 1) end
  2114. if b then game:GetService("Debris"):AddItem(b, 1) end
  2115. SCFR = BLCF
  2116. elseif not SCFR then
  2117. SCFR = BLCF
  2118. end
  2119. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 35, 45, MRANDOM(5, 10), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2120. 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)
  2121. 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)
  2122. 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)
  2123. 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)
  2124. 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)
  2125. 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)
  2126. 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)
  2127. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2128. break
  2129. end
  2130. end
  2131. BLCF = nil
  2132. SCFR = nil
  2133. ATTACK = false
  2134. end
  2135.  
  2136. function Charged()
  2137. ATTACK = true
  2138. for i=0, 1, 0.1 / Animation_Speed/3 do
  2139. Swait()
  2140. 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)
  2141. 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)
  2142. 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)
  2143. 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)
  2144. 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)
  2145. 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)
  2146. 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)
  2147. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2148. break
  2149. end
  2150. end
  2151. CreateSound("553461718", HitboxPart, 3, MRANDOM(7, 9) / 10)
  2152. for i=0, 1, 0.1 / Animation_Speed do
  2153. Swait()
  2154. local Pos = HitboxPart
  2155. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2156. local Color = "Really black"
  2157. local Material = "Neon"
  2158. local TheDelay = 0.01
  2159. local Height = 6.2 * Player_Size
  2160. BLCF = Offset
  2161. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2162. 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)
  2163. if a then game:GetService("Debris"):AddItem(a, 1) end
  2164. if b then game:GetService("Debris"):AddItem(b, 1) end
  2165. 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)
  2166. if a then game:GetService("Debris"):AddItem(a, 1) end
  2167. if b then game:GetService("Debris"):AddItem(b, 1) end
  2168. SCFR = BLCF
  2169. elseif not SCFR then
  2170. SCFR = BLCF
  2171. end
  2172. MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, HitboxPart, 4, false, 75, 85, MRANDOM(15, 20), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  2173. 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)
  2174. 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)
  2175. 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)
  2176. 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)
  2177. 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)
  2178. 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)
  2179. 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)
  2180. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2181. break
  2182. end
  2183. end
  2184. BLCF = nil
  2185. SCFR = nil
  2186. ATTACK = false
  2187. end
  2188.  
  2189. function Attack3()
  2190. ATTACK = true
  2191. local FIREEFFECTCOLORS = {"White", "White", "White"}
  2192. for i = 1, 6 do
  2193. MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0, MRANDOM(-10, 10) / 10 * Player_Size, 0) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, 0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 1, 1, 1, -0.05, -0.05, -0.05, 0.05)
  2194. end
  2195. for i=0, 1, 0.1 / Animation_Speed do
  2196. Swait()
  2197. 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)
  2198. 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)
  2199. 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)
  2200. 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)
  2201. 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)
  2202. 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)
  2203. 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)
  2204. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2205. break
  2206. end
  2207. end
  2208. CreateSound("553461842", HitboxPart, 1.2, MRANDOM(8, 9) / 10)
  2209. for i=0, 1, 0.1 / Animation_Speed do
  2210. Swait()
  2211. local Pos = HitboxPart
  2212. local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
  2213. local Color = "Institutional white"
  2214. local Material = "Neon"
  2215. local TheDelay = 0.01
  2216. local Height = 6.2 * Player_Size
  2217. BLCF = Offset
  2218. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  2219. 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)
  2220. if a then game:GetService("Debris"):AddItem(a, 1) end
  2221. if b then game:GetService("Debris"):AddItem(b, 1) end
  2222. 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)
  2223. if a then game:GetService("Debris"):AddItem(a, 1) end
  2224. if b then game:GetService("Debris"):AddItem(b, 1) end
  2225. SCFR = BLCF
  2226. elseif not SCFR then
  2227. SCFR = BLCF
  2228. end
  2229. 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)
  2230. 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)
  2231. 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)
  2232. 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)
  2233. 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)
  2234. 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)
  2235. 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)
  2236. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  2237. break
  2238. end
  2239. ShootFireball((Torso.CFrame * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size)).p, HitboxPart.Position, 1, 15, 0.25, 5, 10)
  2240. end
  2241. BLCF = nil
  2242. SCFR = nil
  2243. ATTACK = false
  2244. end
  2245.  
  2246. function ShootFireball(POSITION1, POSITION2, SPEED, SIZE, DURATION, LOWDAMAGE, HIGHDAMAGE)
  2247. local POS1 = POSITION1
  2248. local POS2 = POSITION2
  2249. local MOUSELOOK = CF((POS1 + POS2) / 2, POS2)
  2250. local FIREBALLSPEED = SPEED * Player_Size
  2251. local FIREBALLDURATION = DURATION
  2252. local FIREBALLCOLORS = {"White", "White", "White"}
  2253. local FIREBALLHITSOUNDS = {"522282998", "527535379", "304448425"}
  2254. coroutine.resume(coroutine.create(function()
  2255. repeat
  2256. Swait()
  2257. local FIREBALLHIT, FIREBALLPOS = Raycast(POS1, MOUSELOOK.lookVector, FIREBALLSPEED, Character)
  2258. POS1 = POS1 + (MOUSELOOK.lookVector * FIREBALLSPEED)
  2259. if FIREBALLHIT ~= nil or FIREBALLDURATION <= 0.1 then
  2260. FIREBALLDURATION = 0
  2261. local FireballHitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  2262. FireballHitRefpart.Anchored = true
  2263. FireballHitRefpart.CFrame = CF(FIREBALLPOS)
  2264. game:GetService("Debris"):AddItem(FireballHitRefpart, 5)
  2265. CreateSound(FIREBALLHITSOUNDS[MRANDOM(1, #FIREBALLHITSOUNDS)], FireballHitRefpart, 1.4, MRANDOM(14, 16) / 10)
  2266. for i = 1, MRANDOM(4, 8) do
  2267. 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)
  2268. end
  2269. MagicBlock("White", "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)
  2270. MagicBlock("White", "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)
  2271. MagicBlock("White", "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)
  2272. MagnitudeDamage("", "", "", "", 1, 1, 1, 1, FireballHitRefpart, SIZE / 2, false, 15, 20, 0, "Normal", RootPart, 0, 1, MRANDOM(20, 25), nil, false, true, nil, 0, 0, false)
  2273. else
  2274. FIREBALLDURATION = FIREBALLDURATION - (1 / 30) / Animation_Speed
  2275. end
  2276. until FIREBALLHIT ~= nil or FIREBALLDURATION <= 0
  2277. end))
  2278. end
  2279.  
  2280.  
  2281. function Move1()
  2282. ATTACK = true
  2283. ATTACK = false
  2284. end
  2285.  
  2286. function Move2()
  2287. ATTACK = true
  2288. ATTACK = false
  2289. end
  2290.  
  2291. function Move3()
  2292. ATTACK = true
  2293. ATTACK = false
  2294. end
  2295.  
  2296. function Move4()
  2297. ATTACK = true
  2298. ATTACK = false
  2299. end
  2300.  
  2301. --//=================================\\
  2302. --\\=================================//
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308. --//=================================\\
  2309. --|| SET THINGS UP
  2310. --\\=================================//
  2311.  
  2312. if Start_Equipped == true then
  2313. ATTACK = true
  2314. EQUIPPED = true
  2315. if Disable_Animate == true then
  2316. ANIMATE.Parent = nil
  2317. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  2318. IDLEANIMATION:Play()
  2319. end
  2320. if Disable_Animator == true then
  2321. ANIMATOR.Parent = nil
  2322. end
  2323. if Disable_Moving_Arms == true then
  2324. RSH = Torso["Right Shoulder"]
  2325. LSH = Torso["Left Shoulder"]
  2326. RSH.Parent = nil
  2327. LSH.Parent = nil
  2328. if Use_Motors_Instead_Of_Welds == true then
  2329. RightShoulder = IT("Motor")
  2330. LeftShoulder = IT("Motor")
  2331. else
  2332. RightShoulder = IT("Weld")
  2333. LeftShoulder = IT("Weld")
  2334. end
  2335. RightShoulder.Name = "Right Shoulder"
  2336. RightShoulder.Part0 = Torso
  2337. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2338. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2339. RightShoulder.Part1 = Character["Right Arm"]
  2340. RightShoulder.Parent = Torso
  2341. LeftShoulder.Name = "Left Shoulder"
  2342. LeftShoulder.Part0 = Torso
  2343. LeftShoulder.C0=CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2344. LeftShoulder.C1=CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2345. LeftShoulder.Part1 = Character["Left Arm"]
  2346. LeftShoulder.Parent = Torso
  2347. RIGHTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  2348. LEFTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  2349. end
  2350. if Start_Equipped_With_Equipped_Animation == true then
  2351. Swait()
  2352. EquipWeapon()
  2353. end
  2354. ATTACK = false
  2355. end
  2356.  
  2357. --//=================================\\
  2358. --\\=================================//
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364. --//=================================\\
  2365. --|| ASSIGN THINGS TO KEYS
  2366. --\\=================================//
  2367.  
  2368. Humanoid.Changed:connect(function(Jump)
  2369. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  2370. Humanoid.Jump = false
  2371. end
  2372. end)
  2373.  
  2374. function MouseDown(Mouse)
  2375. if ATTACK == true or EQUIPPED == false then
  2376. return
  2377. end
  2378. HOLD = true
  2379. if COMBO == 1 then
  2380. COMBO = 2
  2381. Attack1()
  2382. elseif COMBO == 2 then
  2383. COMBO = 1
  2384. Attack2()
  2385. end
  2386. coroutine.resume(coroutine.create(function()
  2387. for i=1, 50 do
  2388. if ATTACK == false then
  2389. Swait()
  2390. end
  2391. end
  2392. if ATTACK == false then
  2393. COMBO = 1
  2394. end
  2395. end))
  2396. end
  2397.  
  2398. function MouseUp(Mouse)
  2399. HOLD = false
  2400. end
  2401.  
  2402. function KeyDown(Key)
  2403. if Key == "f" and Can_Equip_Or_Unequip == true and ATTACK == false then
  2404. ATTACK = true
  2405. COMBO = 1
  2406. if EQUIPPED == false then
  2407. EQUIPPED = true
  2408. if Disable_Animate == true then
  2409. ANIMATE.Parent = nil
  2410. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  2411. IDLEANIMATION:Play()
  2412. end
  2413. if Disable_Animator == true then
  2414. ANIMATOR.Parent = nil
  2415. end
  2416. if Disable_Moving_Arms == true then
  2417. RSH = Torso["Right Shoulder"]
  2418. LSH = Torso["Left Shoulder"]
  2419. RSH.Parent = nil
  2420. LSH.Parent = nil
  2421. if Use_Motors_Instead_Of_Welds == true then
  2422. RightShoulder = IT("Motor")
  2423. LeftShoulder = IT("Motor")
  2424. else
  2425. RightShoulder = IT("Weld")
  2426. LeftShoulder = IT("Weld")
  2427. end
  2428. RightShoulder.Name = "Right Shoulder"
  2429. RightShoulder.Part0 = Torso
  2430. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2431. RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2432. RightShoulder.Part1 = Character["Right Arm"]
  2433. RightShoulder.Parent = Torso
  2434. LeftShoulder.Name = "Left Shoulder"
  2435. LeftShoulder.Part0 = Torso
  2436. LeftShoulder.C0=CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2437. LeftShoulder.C1=CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  2438. LeftShoulder.Part1 = Character["Left Arm"]
  2439. LeftShoulder.Parent = Torso
  2440. RIGHTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  2441. LEFTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
  2442. end
  2443. Swait()
  2444. EquipWeapon()
  2445. elseif EQUIPPED == true then
  2446. EQUIPPED = false
  2447. UnequipWeapon()
  2448. if Disable_Animator == true then
  2449. ANIMATOR.Parent = Humanoid
  2450. end
  2451. if Disable_Animate == true then
  2452. ANIMATE.Parent = Character
  2453. end
  2454. Swait()
  2455. if Disable_Moving_Arms == true then
  2456. RightShoulder.Parent = nil
  2457. LeftShoulder.Parent = nil
  2458. RSH.Parent = Torso
  2459. LSH.Parent = Torso
  2460. end
  2461. end
  2462. ATTACK = false
  2463. end
  2464. if Key == "e" and EQUIPPED == true and ATTACK == false then
  2465. Attack3()
  2466. end
  2467. if Key == "z" and EQUIPPED == true and ATTACK == false and CO1 >= Cooldown_1 and Mana.Value >= Skill_1_Mana_Cost then
  2468. Mana.Value = Mana.Value - Skill_1_Mana_Cost
  2469. CO1 = 0
  2470. Move1()
  2471. end
  2472. if Key == "x" and EQUIPPED == true and ATTACK == false and CO2 >= Cooldown_2 and Mana.Value >= Skill_2_Mana_Cost then
  2473. Mana.Value = Mana.Value - Skill_2_Mana_Cost
  2474. CO2 = 0
  2475. Move2()
  2476. end
  2477. if Key == "c" and EQUIPPED == true and ATTACK == false and CO3 >= Cooldown_3 and Mana.Value >= Skill_3_Mana_Cost then
  2478. Mana.Value = Mana.Value - Skill_3_Mana_Cost
  2479. CO3 = 0
  2480. Move3()
  2481. end
  2482. if Key == "v" and EQUIPPED == true and ATTACK == false and CO4 >= Cooldown_4 and Mana.Value >= Skill_4_Mana_Cost then
  2483. Charged()
  2484. end
  2485. if Player.UserId == game.CreatorId or Player.Name == "Player1" or Player.Name == "Player2" or Player.Name == "Brannon1964802" then
  2486. if Key == "q" then
  2487. Mana.Value = Max_Mana
  2488. SecondaryMana.Value = Max_Secondary_Mana
  2489. CO1 = Cooldown_1
  2490. CO2 = Cooldown_2
  2491. CO3 = Cooldown_3
  2492. CO4 = Cooldown_4
  2493. end
  2494. if Key == "p" then
  2495. StaggerHit.Value = true
  2496. end
  2497. if Key == "[" then
  2498. Stagger.Value = true
  2499. end
  2500. if Key == "]" then
  2501. Stun.Value = true
  2502. end
  2503. end
  2504. end
  2505.  
  2506. function KeyUp(Key)
  2507. end
  2508.  
  2509. if Use_HopperBin == false then
  2510.  
  2511. Mouse.Button1Down:connect(function(NEWKEY)
  2512. MouseDown(NEWKEY)
  2513. end)
  2514. Mouse.Button1Up:connect(function(NEWKEY)
  2515. MouseUp(NEWKEY)
  2516. end)
  2517. Mouse.KeyDown:connect(function(NEWKEY)
  2518. KeyDown(NEWKEY)
  2519. end)
  2520. Mouse.KeyUp:connect(function(NEWKEY)
  2521. KeyUp(NEWKEY)
  2522. end)
  2523.  
  2524. elseif Use_HopperBin == true then
  2525. WEAPONTOOL.Parent = Backpack
  2526. script.Parent = WEAPONTOOL
  2527. function SelectTool(Mouse)
  2528. Mouse.Button1Down:connect(function()
  2529. MouseDown(Mouse)
  2530. end)
  2531. Mouse.Button1Up:connect(function()
  2532. MouseUp(Mouse)
  2533. end)
  2534. Mouse.KeyDown:connect(KeyDown)
  2535. Mouse.KeyUp:connect(KeyUp)
  2536. end
  2537. function DeselectTool(Mouse)
  2538. end
  2539. WEAPONTOOL.Selected:connect(SelectTool)
  2540. WEAPONTOOL.Deselected:connect(DeselectTool)
  2541. end
  2542.  
  2543. --//=================================\\
  2544. --\\=================================//
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550. --//=================================\\
  2551. --|| WRAP THE WHOLE SCRIPT UP
  2552. --\\=================================//
  2553.  
  2554. while true do
  2555. Swait()
  2556. if HitboxPart ~= nil and ATTACK == false and StaggerHit.Value == false and Stagger.Value == false and Stun.Value == false then
  2557. HitboxPart.Name = "NilHitbox"
  2558. else
  2559. HitboxPart.Name = "Hitbox"
  2560. end
  2561. if Enable_Gui == true then
  2562. UpdateGUI()
  2563. end
  2564. UpdateSkillsAndStuff()
  2565. if Walkspeed_Depends_On_Movement_Value == true then
  2566. if Movement.Value < 0 or StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true or Rooted.Value == true then
  2567. Humanoid.WalkSpeed = 0
  2568. else
  2569. Humanoid.WalkSpeed = 16 * Movement.Value * Player_Size
  2570. end
  2571. end
  2572. if Enable_Stun == true and StunValue.Value >= Max_Stun then
  2573. StunValue.Value = 0
  2574. Stun.Value = true
  2575. end
  2576. if Enable_Stagger_Hit == true then
  2577. if StaggerHit.Value == true and STAGGERHITANIM == false then
  2578. coroutine.resume(coroutine.create(function()
  2579. STAGGERHITANIM = true
  2580. while ATTACK == true do
  2581. Swait()
  2582. end
  2583. StaggerHitAnimation()
  2584. StaggerHit.Value = false
  2585. STAGGERHITANIM = false
  2586. end))
  2587. end
  2588. else
  2589. StaggerHit.Value = false
  2590. end
  2591. if Enable_Stagger == true then
  2592. if Stagger.Value == true and STAGGERANIM == false then
  2593. coroutine.resume(coroutine.create(function()
  2594. STAGGERANIM = true
  2595. while ATTACK == true do
  2596. Swait()
  2597. end
  2598. StaggerAnimation()
  2599. Stagger.Value = false
  2600. STAGGERANIM = false
  2601. end))
  2602. end
  2603. else
  2604. Stagger.Value = false
  2605. end
  2606. if Enable_Stun == true then
  2607. if Stun.Value == true and STUNANIM == false then
  2608. coroutine.resume(coroutine.create(function()
  2609. StunValue.Value = 0
  2610. STUNANIM = true
  2611. while ATTACK == true do
  2612. Swait()
  2613. end
  2614. StunAnimation()
  2615. Stun.Value = false
  2616. STUNANIM = false
  2617. end))
  2618. end
  2619. else
  2620. StunValue.Value = 0
  2621. Stun.Value = false
  2622. end
  2623. if DONUMBER >= .5 then
  2624. HANDIDLE = true
  2625. elseif DONUMBER <= 0 then
  2626. HANDIDLE = false
  2627. end
  2628. if HANDIDLE == false then
  2629. DONUMBER = DONUMBER + 0.003 / Animation_Speed
  2630. else
  2631. DONUMBER = DONUMBER - 0.003 / Animation_Speed
  2632. end
  2633. if ATTACK == false then
  2634. IDLENUMBER = IDLENUMBER + 1
  2635. else
  2636. IDLENUMBER = 0
  2637. end
  2638. if Enable_Stats == true then
  2639. for _, v in pairs (ChangeStat:GetChildren()) do
  2640. if v:FindFirstChild("Duration") ~= nil then
  2641. v:FindFirstChild("Duration").Value = v:FindFirstChild("Duration").Value - (1 / 30) / Animation_Speed
  2642. if v:FindFirstChild("Duration").Value <= 0 then
  2643. v.Parent = nil
  2644. end
  2645. end
  2646. if v.Name == "ChangeDefense" then
  2647. CHANGEDEFENSE = CHANGEDEFENSE + v.Value
  2648. elseif v.Name == "ChangeDamage" then
  2649. CHANGEDAMAGE = CHANGEDAMAGE + v.Value
  2650. elseif v.Name == "ChangeMovement" then
  2651. CHANGEMOVEMENT = CHANGEMOVEMENT + v.Value
  2652. end
  2653. end
  2654. Defense.Value = 1 + (CHANGEDEFENSE)
  2655. if Defense.Value <= 0.01 then
  2656. Defense.Value = 0.01
  2657. end
  2658. Damage.Value = 1 + (CHANGEDAMAGE)
  2659. if Damage.Value <= 0 then
  2660. Damage.Value = 0
  2661. end
  2662. Movement.Value = 1 + (CHANGEMOVEMENT)
  2663. if Movement.Value <= 0 then
  2664. Movement.Value = 0
  2665. end
  2666. CHANGEDEFENSE = 0
  2667. CHANGEDAMAGE = 0
  2668. CHANGEMOVEMENT = 0
  2669. end
  2670. SINE = SINE + CHANGE
  2671. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2672. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2673. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  2674. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  2675. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  2676. if ANIM == "Walk" and EQUIPPED == true and TORSOVELOCITY > 1 then
  2677. 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)
  2678. 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)
  2679. 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)
  2680. 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)
  2681. elseif (ANIM ~= "Walk" and EQUIPPED == true) or (TORSOVELOCITY < 1) then
  2682. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2683. 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)
  2684. 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)
  2685. 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)
  2686. end
  2687. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  2688. ANIM = "Jump"
  2689. if EQUIPPED == true and ATTACK == false then
  2690. 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)
  2691. 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)
  2692. 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)
  2693. 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)
  2694. 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)
  2695. 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)
  2696. 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)
  2697. end
  2698. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  2699. ANIM = "Fall"
  2700. if EQUIPPED == true and ATTACK == false then
  2701. 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)
  2702. 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)
  2703. 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)
  2704. 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)
  2705. 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)
  2706. 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)
  2707. 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)
  2708. end
  2709. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  2710. ANIM = "Idle"
  2711. if EQUIPPED == true and ATTACK == false then
  2712. 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)
  2713. 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)
  2714. 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)
  2715. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(-2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2716. 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)
  2717. 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)
  2718. 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)
  2719. end
  2720. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  2721. ANIM = "Walk"
  2722. WALK = WALK + 1 / Animation_Speed
  2723. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  2724. WALK = 0
  2725. if WALKINGANIM == true then
  2726. WALKINGANIM = false
  2727. elseif WALKINGANIM == false then
  2728. WALKINGANIM = true
  2729. end
  2730. end
  2731. if EQUIPPED == true and ATTACK == false then
  2732. 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)
  2733. 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)
  2734. 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)
  2735. 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)
  2736. 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)
  2737. 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)
  2738. 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)
  2739. end
  2740. end
  2741.  
  2742. end
  2743.  
  2744. --//=================================\\
  2745. --\\=================================//
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751. --//====================================================\\--
  2752. --|| END OF SCRIPT
  2753. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement