Advertisement
KarmaRange

Untitled

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