Advertisement
KarmaRange

Untitled

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