Advertisement
doryna2281337

Untitled

Mar 14th, 2020
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. do
  4. print("FE Compatibility code by Mokiros")
  5. script.Parent = Player.Character
  6.  
  7. --RemoteEvent for communicating
  8. local Event = Instance.new("RemoteEvent")
  9. Event.Name = "UserInput_Event"
  10.  
  11. --Fake event to make stuff like Mouse.KeyDown work
  12. local function fakeEvent()
  13. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  14. t.connect = t.Connect
  15. return t
  16. end
  17.  
  18. --Creating fake input objects with fake variables
  19. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  20. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  21. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  22. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  23. end}
  24. --Merged 2 functions into one by checking amount of arguments
  25. CAS.UnbindAction = CAS.BindAction
  26.  
  27. --This function will trigger the events that have been :Connect()'ed
  28. local function te(self,ev,...)
  29. local t = m[ev]
  30. if t and t._fakeEvent and t.Function then
  31. t.Function(...)
  32. end
  33. end
  34. m.TrigEvent = te
  35. UIS.TrigEvent = te
  36.  
  37. Event.OnServerEvent:Connect(function(plr,io)
  38. if plr~=Player then return end
  39. if io.isMouse then
  40. m.Target = io.Target
  41. m.Hit = io.Hit
  42. else
  43. local b = io.UserInputState == Enum.UserInputState.Begin
  44. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  45. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  46. end
  47. for _,t in pairs(CAS.Actions) do
  48. for _,k in pairs(t.Keys) do
  49. if k==io.KeyCode then
  50. t.Function(t.Name,io.UserInputState,io)
  51. end
  52. end
  53. end
  54. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  55. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  56. end
  57. end)
  58. Event.Parent = NLS([==[
  59. local Player = game:GetService("Players").LocalPlayer
  60. local Event = script:WaitForChild("UserInput_Event")
  61.  
  62. local UIS = game:GetService("UserInputService")
  63. local input = function(io,a)
  64. if a then return end
  65. --Since InputObject is a client-side instance, we create and pass table instead
  66. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  67. end
  68. UIS.InputBegan:Connect(input)
  69. UIS.InputEnded:Connect(input)
  70.  
  71. local Mouse = Player:GetMouse()
  72. local h,t
  73. --Give the server mouse data 30 times every second, but only if the values changed
  74. --If player is not moving their mouse, client won't fire events
  75. while wait(1/30) do
  76. if h~=Mouse.Hit or t~=Mouse.Target then
  77. h,t=Mouse.Hit,Mouse.Target
  78. Event:FireServer({isMouse=true,Target=t,Hit=h})
  79. end
  80. end]==],Player.Character)
  81. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  82. end
  83.  
  84. wait(0.2)
  85.  
  86.  
  87.  
  88.  
  89.  
  90. CV="Magenta"
  91. p = game.Players.LocalPlayer
  92. char = p.Character
  93. local txt = Instance.new("BillboardGui", char)
  94. txt.Adornee = char .Head
  95. txt.Name = "_status"
  96. txt.Size = UDim2.new(2, 0, 1.2, 0)
  97. txt.StudsOffset = Vector3.new(-9, 8, 0)
  98. local text = Instance.new("TextLabel", txt)
  99. text.Size = UDim2.new(10, 0, 7, 0)
  100. text.FontSize = "Size24"
  101. text.TextScaled = true
  102. text.TextTransparency = 0
  103. text.BackgroundTransparency = 1
  104. text.TextTransparency = 0
  105. text.TextStrokeTransparency = 0
  106. text.Font = "Bodoni"
  107. text.TextStrokeColor3 = Color3.new(0,0,0)
  108.  
  109. v=Instance.new("Part")
  110. v.Name = "ColorBrick"
  111. v.Parent=p.Character
  112. v.FormFactor="Symmetric"
  113. v.Anchored=true
  114. v.CanCollide=false
  115. v.BottomSurface="Smooth"
  116. v.TopSurface="Smooth"
  117. v.Size=Vector3.new(10,5,3)
  118. v.Transparency=1
  119. v.CFrame=char.Torso.CFrame
  120. v.BrickColor=BrickColor.new(CV)
  121. v.Transparency=1
  122. text.TextColor3 = Color3.new(170,0,170)
  123. v.Shape="Block"
  124. text.Text = "Sin"
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132. Player = owner
  133. PlayerGui = Player.PlayerGui
  134. Cam = workspace.CurrentCamera
  135. Backpack = Player.Backpack
  136. Character = Player.Character
  137. Humanoid = Character.Humanoid
  138. RootPart = Character["HumanoidRootPart"]
  139. Torso = Character["Torso"]
  140. Head = Character["Head"]
  141. RightArm = Character["Right Arm"]
  142. LeftArm = Character["Left Arm"]
  143. RightLeg = Character["Right Leg"]
  144. LeftLeg = Character["Left Leg"]
  145. RootJoint = RootPart["RootJoint"]
  146. Neck = Torso["Neck"]
  147. RightShoulder = Torso["Right Shoulder"]
  148. LeftShoulder = Torso["Left Shoulder"]
  149. RightHip = Torso["Right Hip"]
  150. LeftHip = Torso["Left Hip"]
  151. local sick = Instance.new("Sound",Character)
  152. sick.SoundId = "rbxassetid://165498643"
  153. sick.Looped = true
  154. sick.Pitch = 1
  155. sick.Volume = 3
  156. sick:Play()
  157. Humanoid.DisplayDistanceType = "None"
  158.  
  159. IT = Instance.new
  160. CF = CFrame.new
  161. VT = Vector3.new
  162. RAD = math.rad
  163. C3 = Color3.new
  164. UD2 = UDim2.new
  165. BRICKC = BrickColor.new
  166. ANGLES = CFrame.Angles
  167. EULER = CFrame.fromEulerAnglesXYZ
  168. COS = math.cos
  169. ACOS = math.acos
  170. SIN = math.sin
  171. ASIN = math.asin
  172. ABS = math.abs
  173. MRANDOM = math.random
  174. FLOOR = math.floor
  175.  
  176. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  177. local NEWMESH = IT(MESH)
  178. if MESH == "SpecialMesh" then
  179. NEWMESH.MeshType = MESHTYPE
  180. if MESHID ~= "nil" and MESHID ~= "" then
  181. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  182. end
  183. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  184. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  185. end
  186. end
  187. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  188. NEWMESH.Scale = SCALE
  189. NEWMESH.Parent = PARENT
  190. return NEWMESH
  191. end
  192.  
  193. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  194. local NEWPART = IT("Part")
  195. NEWPART.formFactor = FORMFACTOR
  196. NEWPART.Reflectance = REFLECTANCE
  197. NEWPART.Transparency = TRANSPARENCY
  198. NEWPART.CanCollide = false
  199. NEWPART.Anchored = true
  200. NEWPART.Locked = true
  201. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  202. NEWPART.Name = NAME
  203. NEWPART.Size = SIZE
  204. NEWPART.Position = Torso.Position
  205. NEWPART.Material = MATERIAL
  206. NEWPART:BreakJoints()
  207. NEWPART.Parent = PARENT
  208. return NEWPART
  209. end
  210.  
  211.  
  212. --//=================================\\
  213. --|| CUSTOMIZATION
  214. --\\=================================//
  215.  
  216. Class_Name = "Sin"
  217. Weapon_Name = "Add-ons"
  218.  
  219. Custom_Colors = {
  220. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  221. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  222.  
  223. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  224. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  225. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  226. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  227. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  228.  
  229. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  230. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  231. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  232. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  233. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  234. }
  235.  
  236.  
  237. Player_Size = 1.15 --Size of the player.
  238. Animation_Speed = 1.2
  239. Attack_Animation_Speed = 2.5
  240. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  241.  
  242. local Speed = 45
  243. local Effects2 = {}
  244.  
  245. --//=================================\\
  246. --|| END OF CUSTOMIZATION
  247. --\\=================================//
  248.  
  249. local function weldBetween(a, b)
  250. local weldd = Instance.new("ManualWeld")
  251. weldd.Part0 = a
  252. weldd.Part1 = b
  253. weldd.C0 = CFrame.new()
  254. weldd.C1 = b.CFrame:inverse() * a.CFrame
  255. weldd.Parent = a
  256. return weldd
  257. end
  258.  
  259. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  260. local acs = Instance.new("Part")
  261. acs.CanCollide = false
  262. acs.Anchored = false
  263. acs.Size = Vector3.new(0,0,0)
  264. acs.CFrame = attachmentpart.CFrame
  265. acs.Parent = Character
  266. acs.BrickColor = color
  267. local meshs = Instance.new("SpecialMesh")
  268. meshs.MeshId = mesh
  269. meshs.TextureId = texture
  270. meshs.Parent = acs
  271. meshs.Scale = scale
  272. meshs.Offset = offset
  273. weldBetween(attachmentpart,acs)
  274. end
  275.  
  276. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  277. if TYPE == "Gem" then
  278. local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  279. acs.Anchored = false
  280. acs.CanCollide = false
  281. acs.CFrame = PART.CFrame
  282. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  283. weldBetween(PART,acs)
  284. elseif TYPE == "Skull" then
  285. local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  286. acs.Anchored = false
  287. acs.CanCollide = false
  288. acs.CFrame = PART.CFrame
  289. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  290. weldBetween(PART,acs)
  291. elseif TYPE == "Eye" then
  292. local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  293. acs.Anchored = false
  294. acs.CanCollide = false
  295. acs.CFrame = PART.CFrame
  296. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  297. weldBetween(PART,acs)
  298. end
  299. end
  300.  
  301. --//=================================\\
  302. --|| USEFUL VALUES
  303. --\\=================================//
  304.  
  305. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  306. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  307. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  308. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  309. local CO1 = 0
  310. local CO2 = 0
  311. local CO3 = 0
  312. local CO4 = 0
  313. local CHANGEDEFENSE = 0
  314. local CHANGEDAMAGE = 1e999
  315. local CHANGEMOVEMENT = 0
  316. local ANIM = "Idle"
  317. local ATTACK = false
  318. local EQUIPPED = false
  319. local HOLD = false
  320. local COMBO = 1
  321. local LASTPOINT = nil
  322. local BLCF = nil
  323. local SCFR = nil
  324. local STAGGERHITANIM = false
  325. local STAGGERANIM = false
  326. local STUNANIM = false
  327. local CRITCHANCENUMBER = 1e999
  328. local IDLENUMBER = 0
  329. local DONUMBER = 0
  330. local HANDIDLE = false
  331. local SINE = 0
  332. local CHANGE = 2 / Animation_Speed
  333. local WALKINGANIM = false
  334. local WALK = 0
  335. local DISABLEJUMPING = false
  336. local HASBEENBLOCKED = false
  337. local STUNDELAYNUMBER = 0
  338. local MANADELAYNUMBER = 0
  339. local HASJUMPED = false
  340. local punch = 1
  341. local KEYHOLD = false
  342. local SECONDARYMANADELAYNUMBER = 0
  343. local ROBLOXIDLEANIMATION = IT("Animation")
  344. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  345. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  346. --ROBLOXIDLEANIMATION.Parent = Humanoid
  347. local WEAPONGUI = IT("ScreenGui", nil)
  348. WEAPONGUI.Name = "Weapon GUI"
  349. local WEAPONTOOL = IT("HopperBin", nil)
  350. WEAPONTOOL.Name = Weapon_Name
  351. local Weapon = IT("Model")
  352. Weapon.Name = Weapon_Name
  353. local Effects = IT("Folder", Weapon)
  354. Effects.Name = "Effects"
  355. local ANIMATOR = Humanoid.Animator
  356. local ANIMATE = Character.Animate
  357. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  358. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  359. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  360. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  361. local ATTACKSOUNDS = {"159972643","159972627"}
  362. local UNANCHOR = true
  363.  
  364. --//=================================\\
  365. --\\=================================//
  366.  
  367. --//=================================\\
  368. --|| STATS
  369. --\\=================================//
  370.  
  371. if Character:FindFirstChild("Stats") ~= nil then
  372. Character:FindFirstChild("Stats").Parent = nil
  373. end
  374.  
  375. local Stats = IT("Folder", nil)
  376. Stats.Name = "Stats"
  377. local ChangeStat = IT("Folder", Stats)
  378. ChangeStat.Name = "ChangeStat"
  379. local Defense = IT("NumberValue", Stats)
  380. Defense.Name = "Defense"
  381. Defense.Value = 1e999
  382. local Movement = IT("NumberValue", Stats)
  383. Movement.Name = "Movement"
  384. Movement.Value = 1
  385. local Damage = IT("NumberValue", Stats)
  386. Damage.Name = "Damage"
  387. Damage.Value = 1e999
  388. local Mana = IT("NumberValue", Stats)
  389. Mana.Name = "Mana"
  390. Mana.Value = 0
  391. local SecondaryMana = IT("NumberValue", Stats)
  392. SecondaryMana.Name = "SecondaryMana"
  393. SecondaryMana.Value = 0
  394. local CanCrit = IT("BoolValue", Stats)
  395. CanCrit.Name = "CanCrit"
  396. CanCrit.Value = false
  397. local CritChance = IT("NumberValue", Stats)
  398. CritChance.Name = "CritChance"
  399. CritChance.Value = 20
  400. local CanPenetrateArmor = IT("BoolValue", Stats)
  401. CanPenetrateArmor.Name = "CanPenetrateArmor"
  402. CanPenetrateArmor.Value = false
  403. local AntiTeamKill = IT("BoolValue", Stats)
  404. AntiTeamKill.Name = "AntiTeamKill"
  405. AntiTeamKill.Value = false
  406. local Rooted = IT("BoolValue", Stats)
  407. Rooted.Name = "Rooted"
  408. Rooted.Value = false
  409. local Block = IT("BoolValue", Stats)
  410. Block.Name = "Block"
  411. Block.Value = false
  412. local RecentEnemy = IT("ObjectValue", Stats)
  413. RecentEnemy.Name = "RecentEnemy"
  414. RecentEnemy.Value = nil
  415. local StaggerHit = IT("BoolValue", Stats)
  416. StaggerHit.Name = "StaggerHit"
  417. StaggerHit.Value = false
  418. local Stagger = IT("BoolValue", Stats)
  419. Stagger.Name = "Stagger"
  420. Stagger.Value = false
  421. local Stun = IT("BoolValue", Stats)
  422. Stun.Name = "Stun"
  423. Stun.Value = false
  424. local StunValue = IT("NumberValue", Stats)
  425. StunValue.Name = "StunValue"
  426. StunValue.Value = 0
  427.  
  428.  
  429. --//=================================\\
  430. --\\=================================//
  431.  
  432.  
  433.  
  434.  
  435.  
  436. --//=================================\\
  437. --|| DEBUFFS / BUFFS
  438. --\\=================================//
  439.  
  440. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  441. DEFENSECHANGE1.Name = "ChangeDefense"
  442. DEFENSECHANGE1.Value = 0
  443.  
  444. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  445. MOVEMENTCHANGE1.Name = "ChangeMovement"
  446. MOVEMENTCHANGE1.Value = 0
  447.  
  448. --//=================================\\
  449. --\\=================================//
  450.  
  451.  
  452.  
  453.  
  454.  
  455. --//=================================\\
  456. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  457. --\\=================================//
  458.  
  459. ArtificialHB = Instance.new("BindableEvent", script)
  460. ArtificialHB.Name = "ArtificialHB"
  461.  
  462. script:WaitForChild("ArtificialHB")
  463.  
  464. frame = Frame_Speed
  465. tf = 0
  466. allowframeloss = false
  467. tossremainder = false
  468. lastframe = tick()
  469. script.ArtificialHB:Fire()
  470.  
  471. game:GetService("RunService").Heartbeat:connect(function(s, p)
  472. tf = tf + s
  473. if tf >= frame then
  474. if allowframeloss then
  475. script.ArtificialHB:Fire()
  476. lastframe = tick()
  477. else
  478. for i = 1, math.floor(tf / frame) do
  479. script.ArtificialHB:Fire()
  480. end
  481. lastframe = tick()
  482. end
  483. if tossremainder then
  484. tf = 0
  485. else
  486. tf = tf - frame * math.floor(tf / frame)
  487. end
  488. end
  489. end)
  490.  
  491. --//=================================\\
  492. --\\=================================//
  493.  
  494.  
  495.  
  496.  
  497.  
  498. --//=================================\\
  499. --|| SOME FUNCTIONS
  500. --\\=================================//
  501.  
  502. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  503. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  504. end
  505.  
  506. function PositiveAngle(NUMBER)
  507. if NUMBER >= 0 then
  508. NUMBER = 0
  509. end
  510. return NUMBER
  511. end
  512.  
  513. function NegativeAngle(NUMBER)
  514. if NUMBER <= 0 then
  515. NUMBER = 0
  516. end
  517. return NUMBER
  518. end
  519.  
  520. function Swait(NUMBER)
  521. if NUMBER == 0 or NUMBER == nil then
  522. ArtificialHB.Event:wait()
  523. else
  524. for i = 1, NUMBER do
  525. ArtificialHB.Event:wait()
  526. end
  527. end
  528. end
  529.  
  530. function QuaternionFromCFrame(cf)
  531. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  532. local trace = m00 + m11 + m22
  533. if trace > 0 then
  534. local s = math.sqrt(1 + trace)
  535. local recip = 0.5 / s
  536. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  537. else
  538. local i = 0
  539. if m11 > m00 then
  540. i = 1
  541. end
  542. if m22 > (i == 0 and m00 or m11) then
  543. i = 2
  544. end
  545. if i == 0 then
  546. local s = math.sqrt(m00 - m11 - m22 + 1)
  547. local recip = 0.5 / s
  548. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  549. elseif i == 1 then
  550. local s = math.sqrt(m11 - m22 - m00 + 1)
  551. local recip = 0.5 / s
  552. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  553. elseif i == 2 then
  554. local s = math.sqrt(m22 - m00 - m11 + 1)
  555. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  556. end
  557. end
  558. end
  559.  
  560. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  561. local xs, ys, zs = x + x, y + y, z + z
  562. local wx, wy, wz = w * xs, w * ys, w * zs
  563. local xx = x * xs
  564. local xy = x * ys
  565. local xz = x * zs
  566. local yy = y * ys
  567. local yz = y * zs
  568. local zz = z * zs
  569. 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))
  570. end
  571.  
  572. function QuaternionSlerp(a, b, t)
  573. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  574. local startInterp, finishInterp;
  575. if cosTheta >= 0.0001 then
  576. if (1 - cosTheta) > 0.0001 then
  577. local theta = ACOS(cosTheta)
  578. local invSinTheta = 1 / SIN(theta)
  579. startInterp = SIN((1 - t) * theta) * invSinTheta
  580. finishInterp = SIN(t * theta) * invSinTheta
  581. else
  582. startInterp = 1 - t
  583. finishInterp = t
  584. end
  585. else
  586. if (1 + cosTheta) > 0.0001 then
  587. local theta = ACOS(-cosTheta)
  588. local invSinTheta = 1 / SIN(theta)
  589. startInterp = SIN((t - 1) * theta) * invSinTheta
  590. finishInterp = SIN(t * theta) * invSinTheta
  591. else
  592. startInterp = t - 1
  593. finishInterp = t
  594. end
  595. end
  596. 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
  597. end
  598.  
  599. function Clerp(a, b, t)
  600. local qa = {QuaternionFromCFrame(a)}
  601. local qb = {QuaternionFromCFrame(b)}
  602. local ax, ay, az = a.x, a.y, a.z
  603. local bx, by, bz = b.x, b.y, b.z
  604. local _t = 1 - t
  605. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  606. end
  607.  
  608. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  609. local frame = IT("Frame")
  610. frame.BackgroundTransparency = TRANSPARENCY
  611. frame.BorderSizePixel = BORDERSIZEPIXEL
  612. frame.Position = POSITION
  613. frame.Size = SIZE
  614. frame.BackgroundColor3 = COLOR
  615. frame.BorderColor3 = BORDERCOLOR
  616. frame.Name = NAME
  617. frame.Parent = PARENT
  618. return frame
  619. end
  620.  
  621. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  622. local label = IT("TextLabel")
  623. label.BackgroundTransparency = 1
  624. label.Size = UD2(1, 0, 1, 0)
  625. label.Position = UD2(0, 0, 0, 0)
  626. label.TextColor3 = C3(255, 255, 255)
  627. label.TextStrokeTransparency = STROKETRANSPARENCY
  628. label.TextTransparency = TRANSPARENCY
  629. label.FontSize = TEXTFONTSIZE
  630. label.Font = TEXTFONT
  631. label.BorderSizePixel = BORDERSIZEPIXEL
  632. label.TextScaled = true
  633. label.Text = TEXT
  634. label.Name = NAME
  635. label.Parent = PARENT
  636. return label
  637. end
  638.  
  639. function NoOutlines(PART)
  640. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  641. end
  642.  
  643.  
  644. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  645. local NEWWELD = IT(TYPE)
  646. NEWWELD.Part0 = PART0
  647. NEWWELD.Part1 = PART1
  648. NEWWELD.C0 = C0
  649. NEWWELD.C1 = C1
  650. NEWWELD.Parent = PARENT
  651. return NEWWELD
  652. end
  653.  
  654. function CreateSound(ID, PARENT, VOLUME, PITCH)
  655. local NEWSOUND = IT("Sound", PARENT)
  656. NEWSOUND.Volume = VOLUME
  657. NEWSOUND.Pitch = PITCH
  658. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  659. coroutine.resume(coroutine.create(function()
  660. Swait()
  661. NEWSOUND:play()
  662. repeat Swait() until NEWSOUND.Playing == false
  663. NEWSOUND:remove()
  664. end))
  665. return NEWSOUND
  666. end
  667.  
  668. function CFrameFromTopBack(at, top, back)
  669. local right = top:Cross(back)
  670. 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)
  671. end
  672.  
  673. function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
  674. local MAGNITUDE = (POSITION1 - POSITION2).magnitude
  675. local CURRENTPOSITION = POSITION1
  676. local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
  677. coroutine.resume(coroutine.create(function()
  678. for i = 1, MULTIPLIERTIME do
  679. local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
  680. LIGHTNINGPART.Anchored = true
  681. local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)])
  682. local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
  683. if MULTIPLIERTIME == i then
  684. local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
  685. LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
  686. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
  687. else
  688. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
  689. end
  690. CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
  691. game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
  692. coroutine.resume(coroutine.create(function()
  693. while LIGHTNINGPART.Transparency ~= 1 do
  694. --local StartTransparency = tra
  695. for i=0, 1, LASTINGTIME do
  696. Swait()
  697. LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
  698. end
  699. end
  700. end))
  701. Swait(LIGHTNINGDELAY / Animation_Speed)
  702. end
  703. end))
  704. end
  705.  
  706. function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  707. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  708. EFFECTPART.Anchored = true
  709. EFFECTPART.CFrame = CFRAME
  710. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  711. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  712. coroutine.resume(coroutine.create(function(PART, MESH)
  713. for i = 0, 1, delay do
  714. Swait()
  715. PART.CFrame = PART.CFrame * ROTATION
  716. PART.Transparency = i
  717. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  718. end
  719. PART.Parent = nil
  720. end), EFFECTPART, EFFECTMESH)
  721. end
  722.  
  723. function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  724. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  725. EFFECTPART.Anchored = true
  726. EFFECTPART.CFrame = CFRAME
  727. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  728. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  729. coroutine.resume(coroutine.create(function(PART, MESH)
  730. for i = 0, 1, delay do
  731. Swait()
  732. PART.CFrame = PART.CFrame * ROTATION
  733. PART.Transparency = i
  734. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  735. end
  736. PART.Parent = nil
  737. end), EFFECTPART, EFFECTMESH)
  738. end
  739.  
  740. function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  741. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  742. EFFECTPART.Anchored = true
  743. EFFECTPART.CFrame = CFRAME
  744. local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  745. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  746. coroutine.resume(coroutine.create(function(PART, MESH)
  747. for i = 0, 1, delay do
  748. Swait()
  749. PART.CFrame = PART.CFrame * ROTATION
  750. PART.Transparency = i
  751. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  752. end
  753. PART.Parent = nil
  754. end), EFFECTPART, EFFECTMESH)
  755. end
  756.  
  757. function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  758. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  759. EFFECTPART.Anchored = true
  760. EFFECTPART.CFrame = CFRAME
  761. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  762. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  763. coroutine.resume(coroutine.create(function(PART, MESH)
  764. for i = 0, 1, delay do
  765. Swait()
  766. PART.CFrame = PART.CFrame * ROTATION
  767. PART.Transparency = i
  768. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  769. end
  770. PART.Parent = nil
  771. end), EFFECTPART, EFFECTMESH)
  772. end
  773.  
  774. function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  775. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  776. EFFECTPART.Anchored = true
  777. EFFECTPART.CFrame = CFRAME
  778. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  779. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  780. coroutine.resume(coroutine.create(function(PART, MESH)
  781. for i = 0, 1, delay do
  782. Swait()
  783. PART.CFrame = PART.CFrame * ROTATION
  784. PART.Transparency = i
  785. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  786. end
  787. PART.Parent = nil
  788. end), EFFECTPART, EFFECTMESH)
  789. end
  790.  
  791. function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  792. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  793. EFFECTPART.Anchored = true
  794. EFFECTPART.CFrame = CFRAME
  795. 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))
  796. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  797. coroutine.resume(coroutine.create(function(PART, MESH)
  798. for i = 0, 1, delay do
  799. Swait()
  800. PART.CFrame = PART.CFrame * ROTATION
  801. PART.Transparency = i
  802. MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
  803. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  804. end
  805. PART.Parent = nil
  806. end), EFFECTPART, EFFECTMESH)
  807. end
  808.  
  809. function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  810. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  811. EFFECTPART.Anchored = true
  812. EFFECTPART.CFrame = CFRAME
  813. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  814. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  815. coroutine.resume(coroutine.create(function(PART, MESH)
  816. for i = 0, 1, delay do
  817. Swait()
  818. PART.CFrame = PART.CFrame * ROTATION
  819. PART.Transparency = i
  820. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  821. end
  822. PART.Parent = nil
  823. end), EFFECTPART, EFFECTMESH)
  824. end
  825.  
  826. function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  827. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  828. EFFECTPART.Anchored = true
  829. EFFECTPART.CFrame = CFRAME
  830. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  831. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  832. coroutine.resume(coroutine.create(function(PART, MESH)
  833. for i = 0, 1, delay do
  834. Swait()
  835. PART.CFrame = PART.CFrame * ROTATION
  836. PART.Transparency = i
  837. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  838. end
  839. PART.Parent = nil
  840. end), EFFECTPART, EFFECTMESH)
  841. end
  842.  
  843. function MagicSharpCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  844. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  845. EFFECTPART.Anchored = true
  846. EFFECTPART.CFrame = CFRAME
  847. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1778999", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  848. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  849. coroutine.resume(coroutine.create(function(PART, MESH)
  850. for i = 0, 1, delay do
  851. Swait()
  852. PART.CFrame = PART.CFrame * ROTATION
  853. PART.Transparency = i
  854. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  855. end
  856. PART.Parent = nil
  857. end), EFFECTPART, EFFECTMESH)
  858. end
  859.  
  860. function MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  861. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  862. EFFECTPART.Anchored = true
  863. EFFECTPART.CFrame = CFRAME
  864. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  865. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  866. coroutine.resume(coroutine.create(function(PART, MESH)
  867. for i = 0, 1, delay do
  868. Swait()
  869. PART.CFrame = PART.CFrame * ROTATION
  870. PART.Transparency = i
  871. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  872. end
  873. PART.Parent = nil
  874. end), EFFECTPART, EFFECTMESH)
  875. end
  876.  
  877. function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  878. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  879. EFFECTPART.Anchored = true
  880. EFFECTPART.CFrame = CFRAME
  881. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  882. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  883. coroutine.resume(coroutine.create(function(PART, MESH)
  884. for i = 0, 1, delay do
  885. Swait()
  886. PART.CFrame = PART.CFrame * ROTATION
  887. PART.Transparency = i
  888. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  889. end
  890. PART.Parent = nil
  891. end), EFFECTPART, EFFECTMESH)
  892. end
  893.  
  894. function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  895. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  896. EFFECTPART.Anchored = true
  897. EFFECTPART.CFrame = CFRAME
  898. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  899. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  900. coroutine.resume(coroutine.create(function(PART, MESH)
  901. for i = 0, 1, delay do
  902. Swait()
  903. PART.CFrame = PART.CFrame * ROTATION
  904. PART.Transparency = i
  905. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  906. end
  907. PART.Parent = nil
  908. end), EFFECTPART, EFFECTMESH)
  909. end
  910.  
  911. function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  912. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  913. EFFECTPART.Anchored = true
  914. EFFECTPART.CFrame = CFRAME
  915. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  916. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  917. coroutine.resume(coroutine.create(function(PART, MESH)
  918. for i = 0, 1, delay do
  919. Swait()
  920. PART.CFrame = PART.CFrame * ROTATION
  921. PART.Transparency = i
  922. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  923. end
  924. PART.Parent = nil
  925. end), EFFECTPART, EFFECTMESH)
  926. end
  927.  
  928. function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
  929. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  930. EFFECTPART.Anchored = true
  931. EFFECTPART.CFrame = CFRAME
  932. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
  933. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  934. local XVALUE = MRANDOM()
  935. local YVALUE = MRANDOM()
  936. local ZVALUE = MRANDOM()
  937. coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
  938. for i = 0, 1, delay do
  939. Swait()
  940. PART.CFrame = PART.CFrame * ROTATION
  941. PART.Transparency = i
  942. THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
  943. THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
  944. THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
  945. MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
  946. end
  947. PART.Parent = nil
  948. end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
  949. end
  950.  
  951. function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
  952. local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
  953. if MAGNITUDECFRAME > (1 / 100) then
  954. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
  955. EFFECTPART.Anchored = true
  956. EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
  957. local THEMESHTYPE = "BlockMesh"
  958. if MESHTYPE == "Cylinder" then
  959. THEMESHTYPE = "CylinderMesh"
  960. end
  961. local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
  962. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  963. coroutine.resume(coroutine.create(function(PART, MESH)
  964. for i = 0, 1, delay do
  965. Swait()
  966. PART.CFrame = PART.CFrame * ROTATION
  967. PART.Transparency = i
  968. MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
  969. end
  970. PART.Parent = nil
  971. end), EFFECTPART, EFFECTMESH)
  972. end
  973. end
  974.  
  975. function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
  976. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
  977. EFFECTPART.Anchored = true
  978. EFFECTPART.CFrame = CFRAME
  979. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
  980. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  981. local THELASTPOINT = CFRAME
  982. coroutine.resume(coroutine.create(function(PART)
  983. for i = 1, DURATION do
  984. Swait()
  985. PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
  986. 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)
  987. THELASTPOINT = PART.CFrame
  988. end
  989. PART.Parent = nil
  990. end), EFFECTPART)
  991. end
  992.  
  993. function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset)
  994. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, Torso.BrickColor, "Effect", VT(0,0,0))
  995. local mesh = IT("SpecialMesh",wave)
  996. mesh.MeshType = "FileMesh"
  997. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  998. mesh.Scale = VT(size,size,size)
  999. mesh.Offset = VT(0,0,-size/8)
  1000. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  1001. coroutine.resume(coroutine.create(function(PART)
  1002. for i = 1, waitt do
  1003. Swait()
  1004. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  1005. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  1006. if doesrotate == true then
  1007. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  1008. end
  1009. wave.Transparency = wave.Transparency + (0.5/waitt)
  1010. if wave.Transparency > 0.99 then
  1011. wave:remove()
  1012. end
  1013. end
  1014. end))
  1015. end
  1016.  
  1017. function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2)
  1018. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, Torso.BrickColor, "Effect", VT(0,0,0))
  1019. local mesh = IT("SpecialMesh",wave)
  1020. mesh.MeshType = "FileMesh"
  1021. mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  1022. mesh.Scale = VT(size,size,size)
  1023. mesh.Offset = VT(0,0,0)
  1024. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  1025. coroutine.resume(coroutine.create(function(PART)
  1026. for i = 1, waitt do
  1027. Swait()
  1028. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  1029. if doesrotate == true then
  1030. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
  1031. end
  1032. wave.Transparency = wave.Transparency + (0.5/waitt)
  1033. if wave.Transparency > 0.99 then
  1034. wave:remove()
  1035. end
  1036. end
  1037. end))
  1038. end
  1039.  
  1040. function CreatePentagram(size,doesrotate,rotatedirection,waitt,cframe,offset)
  1041. local sinkhole = IT("Part",Effects)
  1042. sinkhole.Size = VT(size,0,size)
  1043. sinkhole.CFrame = cframe * CF(0,offset,0)
  1044. sinkhole.Material = "Neon"
  1045. sinkhole.Color = C3(170, 0, 170)
  1046. sinkhole.Anchored = true
  1047. sinkhole.CanCollide = false
  1048. sinkhole.Transparency = 1
  1049. local decal = IT("Decal",sinkhole)
  1050. decal.Face = "Top"
  1051. decal.Texture = "http://www.roblox.com/asset/?id=177470914"
  1052. coroutine.resume(coroutine.create(function(PART)
  1053. for i = 1, waitt do
  1054. Swait()
  1055. if doesrotate == true then
  1056. sinkhole.CFrame = sinkhole.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  1057. end
  1058. if i > waitt-11 then
  1059. decal.Transparency = decal.Transparency + 0.1
  1060. end
  1061. end
  1062. sinkhole:remove()
  1063. end))
  1064. return sinkhole
  1065. end
  1066.  
  1067. --local list={}
  1068. function Triangle(Color, Material, a, b, c, delay)
  1069. local edge1 = (c - a):Dot((b - a).unit)
  1070. local edge2 = (a - b):Dot((c - b).unit)
  1071. local edge3 = (b - c):Dot((a - c).unit)
  1072. if edge1 <= (b - a).magnitude and edge1 >= 0 then
  1073. a, b, c=a, b, c
  1074. elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
  1075. a, b, c=b, c, a
  1076. elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
  1077. a, b, c=c, a, b
  1078. else
  1079. assert(false, "unreachable")
  1080. end
  1081. local len1 = (c - a):Dot((b - a).unit)
  1082. local len2 = (b - a).magnitude - len1
  1083. local width = (a + (b - a).unit * len1 - c).magnitude
  1084. local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
  1085. if len1 > 1 / 100 then
  1086. local sz = VT(0.2, width, len1)
  1087. local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  1088. local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
  1089. w1.Anchored = true
  1090. w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
  1091. coroutine.resume(coroutine.create(function()
  1092. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  1093. Swait()
  1094. w1.Transparency = i
  1095. end
  1096. w1.Parent = nil
  1097. end))
  1098. game:GetService("Debris"):AddItem(w1, 10)
  1099. --table.insert(list, w1)
  1100. end
  1101. if len2 > 1 / 100 then
  1102. local sz = VT(0.2, width, len2)
  1103. local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  1104. local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
  1105. w2.Anchored = true
  1106. w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
  1107. coroutine.resume(coroutine.create(function()
  1108. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  1109. Swait()
  1110. w2.Transparency = i
  1111. end
  1112. w2.Parent = nil
  1113. end))
  1114. game:GetService("Debris"):AddItem(w2, 10)
  1115. --table.insert(list, w2)
  1116. end
  1117. --return unpack(list)
  1118. end
  1119.  
  1120. --[[Usage:
  1121. local Pos = Part
  1122. local Offset = Part.CFrame * CF(0, 0, 0)
  1123. local Color = "Institutional white"
  1124. local Material = "Neon"
  1125. local TheDelay = 0.01
  1126. local Height = 4
  1127. BLCF = Offset
  1128. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  1129. 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)
  1130. if a then game:GetService("Debris"):AddItem(a, 1) end
  1131. if b then game:GetService("Debris"):AddItem(b, 1) end
  1132. 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)
  1133. if a then game:GetService("Debris"):AddItem(a, 1) end
  1134. if b then game:GetService("Debris"):AddItem(b, 1) end
  1135. SCFR = BLCF
  1136. elseif not SCFR then
  1137. SCFR = BLCF
  1138. end
  1139. --
  1140. BLCF = nil
  1141. SCFR = nil
  1142. --]]
  1143.  
  1144. --//=================================\\
  1145. --\\=================================//
  1146.  
  1147. if Player_Size ~= 1 then
  1148. RootPart.Size = RootPart.Size * Player_Size
  1149. Torso.Size = Torso.Size * Player_Size
  1150. Head.Size = Head.Size * Player_Size
  1151. RightArm.Size = RightArm.Size * Player_Size
  1152. LeftArm.Size = LeftArm.Size * Player_Size
  1153. RightLeg.Size = RightLeg.Size * Player_Size
  1154. LeftLeg.Size = LeftLeg.Size * Player_Size
  1155. RootJoint.Parent = RootPart
  1156. Neck.Parent = Torso
  1157. RightShoulder.Parent = Torso
  1158. LeftShoulder.Parent = Torso
  1159. RightHip.Parent = Torso
  1160. LeftHip.Parent = Torso
  1161.  
  1162. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1163. RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  1164. Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1165. Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1166. RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  1167. LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  1168. --if Disable_Moving_Arms == false then
  1169. RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1170. LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  1171. --else
  1172. --RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1173. --LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  1174. --end
  1175. 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))
  1176. 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))
  1177. 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))
  1178. 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))
  1179. end
  1180.  
  1181. --//=================================\\
  1182. --|| WEAPON CREATION
  1183. --\\=================================//
  1184.  
  1185. if Player_Size ~= 1 then
  1186. for _, v in pairs (Weapon:GetChildren()) do
  1187. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  1188. local p1 = v.Part1
  1189. v.Part1 = nil
  1190. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  1191. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  1192. v.Part1 = p1
  1193. elseif v.ClassName == "Part" then
  1194. for _, b in pairs (v:GetChildren()) do
  1195. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  1196. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  1197. end
  1198. end
  1199. end
  1200. end
  1201. end
  1202.  
  1203. createaccessory(Head,"http://www.roblox.com/asset/?id=210118899","",VT(1, 1, 1),VT(0, 0.25, 0.1),BrickColor.new"Really black")
  1204.  
  1205.  
  1206. local AT1 = IT("Attachment",RightArm)
  1207. AT1.Position = VT(0,-1.15,0)
  1208. local AT2 = IT("Attachment",LeftArm)
  1209. AT2.Position = VT(0,-1.15,0)
  1210.  
  1211. Humanoid.HealthChanged:connect(function()
  1212. if Humanoid.Health ~= "inf" then
  1213. Humanoid.Health = "inf"
  1214. end
  1215. if Humanoid.MaxHealth ~= "inf" then
  1216. Humanoid.MaxHealth = "inf"
  1217. end
  1218. end)
  1219.  
  1220. local EyeSizes={
  1221. NumberSequenceKeypoint.new(0,1.2,0),
  1222. NumberSequenceKeypoint.new(1,0,0)
  1223. }
  1224. local EyeTrans={
  1225. NumberSequenceKeypoint.new(0,0.8,0),
  1226. NumberSequenceKeypoint.new(1,1,0)
  1227. }
  1228. local PE=Instance.new("ParticleEmitter")
  1229. PE.LightEmission=0
  1230. PE.Size=NumberSequence.new(EyeSizes)
  1231. PE.Transparency=NumberSequence.new(EyeTrans)
  1232. PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
  1233. PE.Rotation=NumberRange.new(0,360)
  1234. PE.Rate=999
  1235. PE.Acceleration = Vector3.new(0,0,0)
  1236. PE.Drag = 5
  1237. PE.LockedToPart = false
  1238. PE.Speed = NumberRange.new(0,0,0)
  1239. PE.Rotation = NumberRange.new(-100, 100)
  1240. PE.RotSpeed = NumberRange.new(-100, 100)
  1241. PE.Texture="http://www.roblox.com/asset/?id=669492379"
  1242. PE.Color = ColorSequence.new(Color3.new(170, 0, 170))
  1243. PE.ZOffset = 0
  1244. PE.Name = "Reign"
  1245. PE.Enabled = false
  1246. PE.VelocitySpread = 10000
  1247.  
  1248. function particles(art)
  1249. local o = PE:Clone()
  1250. o.Parent = art
  1251. o.Enabled = true
  1252. return o
  1253. end
  1254.  
  1255. particles(AT1)
  1256. particles(AT2)
  1257.  
  1258. createbodypart("Gem","Magenta",Torso,VT(0, 0.2, 0.5),VT(0.6,1.5,0.5))
  1259. createbodypart("Gem","Magenta",Torso,VT(0, -0.2, 0.5),VT(0.2,1,0.5))
  1260. createbodypart("Gem","Magenta",Torso,VT(-0.3, 0.5, 0.5),VT(0.5,0.8,0.2))
  1261. createbodypart("Gem","Magenta",Torso,VT(0.3, 0.5, 0.5),VT(0.5,0.8,0.2))
  1262.  
  1263. ---ribs---
  1264. createbodypart("Gem","Magenta",Torso,VT(0.6, 0.9, -0.57),VT(0.8,0.2,0.2))
  1265. createbodypart("Gem","Magenta",Torso,VT(-0.6, 0.9, -0.57),VT(0.8,0.2,0.2))
  1266.  
  1267. createbodypart("Gem","Magenta",Torso,VT(0.7, 0.5, -0.57),VT(0.6,0.2,0.2))
  1268. createbodypart("Gem","Magenta",Torso,VT(-0.7, 0.5, -0.57),VT(0.6,0.2,0.2))
  1269.  
  1270. createbodypart("Gem","Magenta",Torso,VT(0.8, 0.2, -0.57),VT(0.4,0.2,0.2))
  1271. createbodypart("Gem","Magenta",Torso,VT(-0.8, 0.2, -0.57),VT(0.4,0.2,0.2))
  1272. ----------
  1273.  
  1274.  
  1275.  
  1276. for _, c in pairs(Weapon:GetChildren()) do
  1277. if c.ClassName == "Part" then
  1278. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1279. end
  1280. end
  1281.  
  1282. Weapon.Parent = Character
  1283.  
  1284. Humanoid.Died:connect(function()
  1285. q = workspace:GetChildren()
  1286. CreatePentagram(1500,true,-0.1,150,CF(RootPart.Position),-3)
  1287. Head.Parent = nil
  1288. Head = nil
  1289. for i = 1, #q do
  1290. local child = q[i]
  1291. if child.ClassName == "Model" and child:FindFirstChild("Humanoid") then
  1292. child:BreakJoints()
  1293. end
  1294. end
  1295. local taunt = CreateSound("135009414", workspace, 10, 1)
  1296. local effect = IT("PitchShiftSoundEffect",taunt)
  1297. effect.Octave = 0.700
  1298. ATTACK = true
  1299. end)
  1300.  
  1301. print(Class_Name.." loaded.")
  1302.  
  1303. --//=================================\\
  1304. --\\=================================//
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310. --//=================================\\
  1311. --|| DAMAGE FUNCTIONS
  1312. --\\=================================//
  1313.  
  1314. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1315. local STATPART = CreatePart(3, Effects, "Neon", 0, 1, "Really black", "Effect", VT())
  1316. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1317. local BODYGYRO = IT("BodyGyro", STATPART)
  1318. local BODYPOSITION = IT("BodyPosition", STATPART)
  1319. BODYPOSITION.P = 2000
  1320. BODYPOSITION.D = 100
  1321. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1322. if LABELTYPE == "Normal" then
  1323. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1324. elseif LABELTYPE == "Debuff" then
  1325. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  1326. elseif LABELTYPE == "Interruption" then
  1327. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  1328. end
  1329. game:GetService("Debris"):AddItem(STATPART ,5)
  1330. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1331. BILLBOARDGUI.Adornee = STATPART
  1332. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1333. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1334. BILLBOARDGUI.AlwaysOnTop = true
  1335. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1336. TEXTLABEL.BackgroundTransparency = 1
  1337. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1338. TEXTLABEL.Text = TEXT
  1339. TEXTLABEL.Font = "Antique"
  1340. TEXTLABEL.FontSize="Size42"
  1341. TEXTLABEL.TextColor3 = COLOR
  1342. TEXTLABEL.TextStrokeTransparency = 1
  1343. TEXTLABEL.TextScaled = true
  1344. TEXTLABEL.TextWrapped = true
  1345. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1346. wait(0.2)
  1347. for i=1, 5 do
  1348. wait()
  1349. THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  1350. end
  1351. wait(1.2)
  1352. for i=1, 5 do
  1353. wait()
  1354. THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1355. THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1356. THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1357. end
  1358. THEPART.Parent = nil
  1359. end),STATPART, BODYPOSITION, TEXTLABEL)
  1360. end
  1361.  
  1362.  
  1363. --//=================================\\
  1364. --|| DAMAGING
  1365. --\\=================================//
  1366.  
  1367.  
  1368.  
  1369. function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
  1370. if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
  1371. local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  1372. local dmg = math.random(min,max)
  1373. if humanoid.Health > 0 then
  1374. if beserk == true then
  1375. humanoid.Health = 0
  1376. else
  1377. CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
  1378. hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
  1379. if math.random(1,100) < critrate+1 then
  1380. humanoid.Health = humanoid.Health - dmg*critmultiplier
  1381. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(1, 0, 0))
  1382. else
  1383. humanoid.Health = humanoid.Health - dmg
  1384. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
  1385. end
  1386. local defence = Instance.new("BoolValue",hit.Parent)
  1387. defence.Name = ("HitBy"..Player.Name)
  1388. game:GetService("Debris"):AddItem(defence, 0.5)
  1389. end
  1390. end
  1391. end
  1392. end
  1393.  
  1394. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
  1395. local dmg = math.random(min,max)
  1396. for i,v in ipairs(workspace:GetChildren()) do
  1397. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1398. local body = v:GetChildren()
  1399. for part = 1, #body do
  1400. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1401. if(body[part].Position - position).Magnitude < radius then
  1402. if v.ClassName == "Model" then
  1403. if v:FindFirstChild("Humanoid") then
  1404. if v.Humanoid.Health ~= 0 then
  1405. if CanBeDodgedByJumping == true then
  1406. if body[part].Position.Y < position.Y+5 then
  1407. if math.random(1,100) < critrate+1 then
  1408. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1409. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1410. else
  1411. v.Humanoid.Health = v.Humanoid.Health - dmg
  1412. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1413. end
  1414. local defence = Instance.new("BoolValue",v)
  1415. defence.Name = ("HitBy"..Player.Name)
  1416. game:GetService("Debris"):AddItem(defence, 0.5)
  1417. end
  1418. else
  1419. if beserk == true then
  1420. v.Humanoid.Health = 0
  1421. end
  1422. if math.random(1,100) < critrate+1 then
  1423. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1424. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1425. else
  1426. v.Humanoid.Health = v.Humanoid.Health - dmg
  1427. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1428. end
  1429. local defence = Instance.new("BoolValue",v)
  1430. defence.Name = ("HitBy"..Player.Name)
  1431. game:GetService("Debris"):AddItem(defence, 0.5)
  1432. end
  1433. end
  1434. end
  1435. end
  1436. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1437. end
  1438. end
  1439. end
  1440. if v.ClassName == "Part" then
  1441. if v.Anchored == false and (v.Position - position).Magnitude < radius then
  1442. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1443. end
  1444. end
  1445. end
  1446. end
  1447. end
  1448.  
  1449. function killnearest(position,range,maxstrength)
  1450. for i,v in ipairs(workspace:GetChildren()) do
  1451. local body = v:GetChildren()
  1452. for part = 1, #body do
  1453. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1454. if(body[part].Position - position).Magnitude < range then
  1455. if v.ClassName == "Model" then
  1456. v:BreakJoints()
  1457. end
  1458. --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
  1459. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1460. end
  1461. end
  1462. end
  1463. if v.ClassName == "Part" then
  1464. if v.Anchored == false and (v.Position - position).Magnitude < range then
  1465. --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
  1466. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1467. end
  1468. end
  1469. end
  1470. end
  1471.  
  1472. --//=================================\\
  1473. --|| ATTACK FUNCTIONS AND STUFF
  1474. --\\=================================//
  1475.  
  1476. Humanoid.HealthChanged:connect(function()
  1477. if Humanoid.Health == 0 then
  1478. Humanoid.MaxHealth = "inf"
  1479. Humanoid.Health = "inf"
  1480. if ATTACK == false then
  1481. if Humanoid.Health == 0 then
  1482. workspace:ClearAllChildren()
  1483. else
  1484. ViolentRoar()
  1485. end
  1486. end
  1487. end
  1488. end)
  1489.  
  1490. function clerp(a, b, t)
  1491. return a:lerp(b, t)
  1492. end
  1493.  
  1494. function newBezier(startpos, pos2, pos3, endpos, t)
  1495. local A = clerp(startpos, pos2, t)
  1496. local B = clerp(pos2, pos3, t)
  1497. local C = clerp(pos3, endpos, t)
  1498. local lerp1 = clerp(A, B, t)
  1499. local lerp2 = clerp(B, C, t)
  1500. local cubic = clerp(lerp1, lerp2, t)
  1501. return cubic
  1502. end
  1503.  
  1504. function Mortar(Target)
  1505. local newball = Instance.new("Part", workspace)
  1506. newball.Anchored = true
  1507. newball.Shape = "Ball"
  1508. newball.Material = "Neon"
  1509. newball.Size = Vector3.new(2, 2, 2)
  1510. newball.CanCollide = false
  1511. newball.CFrame = Target.CFrame
  1512. newball.BrickColor = BrickColor.new("Magenta")
  1513. newball.Transparency = 0.5
  1514. local Cys = Instance.new("SpecialMesh", newball)
  1515. Cys.MeshType = "FileMesh"
  1516. Cys.MeshId = "rbxassetid://9756362"
  1517. Cys.Scale = Vector3.new(1, 1, 1)
  1518. local onefourth = Target.Position:Lerp(Mouse.Hit.p, 0.25) + Vector3.new(math.random(-25, 25), math.random(0, 25), math.random(-25, 25))
  1519. local threefourths = Target.Position:Lerp(Mouse.Hit.p, 0.75) + Vector3.new(math.random(-25, 25), math.random(0, 25), math.random(-25, 25))
  1520. local MPos = Mouse.Hit.p
  1521. local A1 = IT("Attachment",newball)
  1522. A1.Position = Vector3.new(0, 1, 0)
  1523. local A2 = IT("Attachment",newball)
  1524. A2.Position = Vector3.new(0, -1, 0)
  1525. local Trail = IT("Trail",newball)
  1526. Trail.LightEmission = 1
  1527. Trail.FaceCamera = true
  1528. Trail.Texture = "rbxassetid://945758042"
  1529. Trail.Attachment0 = A1
  1530. Trail.Attachment1 = A2
  1531. Trail.Lifetime = 0.5
  1532. Trail.MinLength = 0
  1533. Trail.Transparency = NumberSequence.new(0.3, 1)
  1534. Trail.Color = ColorSequence.new(BrickColor.new("Magenta").Color)
  1535. coroutine.resume(coroutine.create(function()
  1536. local loop = 0
  1537. for i = 0, 1, 0.07 do
  1538. Swait()
  1539. loop = loop + 1
  1540. if loop == 1 then
  1541. CreateRing(0,3,true,-0.2,15,newball,0,0.3,-0.3)
  1542. elseif loop == 2 then
  1543. CreateRing(0,3,true,-0.2,15,newball,0,-0.3,0.3)
  1544. loop = 1
  1545. end
  1546. newball.CFrame = CFrame.new(newBezier(Target.Position, onefourth, threefourths, MPos, i))
  1547. end
  1548. killnearest(newball.Position,5,10)
  1549. MagicSphere("Magenta", "Neon", CF(newball.Position) * 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), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
  1550. MagicBlock("Magenta", "Neon", CF(newball.Position) * 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), 0.25, 0.25, 0.25, 7.5, 7.5,7.5, 0.05)
  1551. newball.Transparency = 1
  1552. CreateSound("971125740", newball, 10, 1)
  1553. for i = 1, 7 do
  1554. coroutine.resume(coroutine.create(function()
  1555. local ray = IT("Part",Effects)
  1556. ray.Size = VT(newball.Size.Y,newball.Size.Y/10,newball.Size.Y/10)
  1557. ray.CFrame = CFrame.new(newball.Position,Vector3.new(newball.Position.X+math.random(-360,360),newball.Position.Y+math.random(-360,360),newball.Position.Z+math.random(-360,360)))
  1558. local mesh = IT("BlockMesh",ray)
  1559. ray.Anchored = true
  1560. ray.CanCollide = false
  1561. ray.Material = newball.Material
  1562. ray.Color = newball.Color
  1563. table.insert(Effects2,{ray,"Block1",0.04,1,0,0,2})
  1564. end))
  1565. end
  1566. game:GetService("Debris"):AddItem(newball, 5)
  1567. end))
  1568. end
  1569.  
  1570. function RayCast(Position, Direction, MaxDistance, IgnoreList)
  1571. return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList)
  1572. end
  1573.  
  1574. function JumpUp()
  1575. ATTACK = true
  1576. --Rooted = true
  1577. for i=0, 2, 0.1 / Animation_Speed do
  1578. Swait()
  1579. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1580. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1581. 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)
  1582. 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)
  1583. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1584. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1585. end
  1586. CreateSound("2767090", Torso, 5, MRANDOM(7, 12) / 10)
  1587. CreateWave(0,3.5,true,0.2,150,RootPart,-2)
  1588. CreateWave(0,5,true,-0.2,150,RootPart,-2)
  1589. local bv = Instance.new("BodyVelocity")
  1590. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1591. bv.velocity = Vector3.new(0,300,0)
  1592. bv.Parent = Torso
  1593. bv.Name = "DASH"
  1594. ATTACK = false
  1595. --Rooted = false
  1596. game:GetService("Debris"):AddItem(bv, 0.5)
  1597. coroutine.resume(coroutine.create(function()
  1598. Swait(50)
  1599. HASJUMPED = false
  1600. end))
  1601. end
  1602.  
  1603.  
  1604. function attacktemplate()
  1605. ATTACK = true
  1606. for i=0, 1, 0.1 / Animation_Speed do
  1607. Swait()
  1608. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1609. 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(0)), 0.15 / Animation_Speed)
  1610. 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.15 / Animation_Speed)
  1611. 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.15 / Animation_Speed)
  1612. 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.15 / Animation_Speed)
  1613. 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.15 / Animation_Speed)
  1614. end
  1615. ATTACK = false
  1616. end
  1617.  
  1618.  
  1619. function Attack1()
  1620. Rooted = true
  1621. ATTACK = true
  1622. for i=0, 1, 0.1 / Animation_Speed do
  1623. Swait()
  1624. 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)
  1625. 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)
  1626. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1627. 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)
  1628. 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)
  1629. 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)
  1630. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  1631. break
  1632. end
  1633. end
  1634. CreatePentagram(15,true,0.1,45,CF(RootPart.Position),-3)
  1635. local paw = RightArm.Touched:Connect(function(hit)
  1636. dealdamage(hit,9999,9999,9000,false,9999,9999)
  1637. end)
  1638. local bv = Instance.new("BodyVelocity")
  1639. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1640. bv.velocity = RootPart.CFrame.lookVector * 50
  1641. bv.Parent = Torso
  1642. bv.Name = "DASH"
  1643. ATTACK = false
  1644. Rooted = false
  1645. game:GetService("Debris"):AddItem(bv, 0.05)
  1646. for i=0, 1, 0.1 / Animation_Speed do
  1647. Swait()
  1648. 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)
  1649. 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)
  1650. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(10)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1651. 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)
  1652. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(40), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
  1653. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-35), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
  1654. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  1655. break
  1656. end
  1657. end
  1658. COMBO = 2
  1659. paw:disconnect()
  1660. BLCF = nil
  1661. SCFR = nil
  1662. ATTACK = false
  1663. Rooted = false
  1664. end
  1665.  
  1666. function Attack2()
  1667. Rooted = true
  1668. ATTACK = true
  1669. for i=0, 1, 0.1 / Animation_Speed do
  1670. Swait()
  1671. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(20)), 0.4 / Animation_Speed)
  1672. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-10)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1673. 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)
  1674. 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)
  1675. 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)
  1676. 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)
  1677. end
  1678. CreatePentagram(15,true,-0.1,45,CF(RootPart.Position),-3)
  1679. local paw = LeftArm.Touched:Connect(function(hit)
  1680. dealdamage(hit,9999,9999,9000,false,9999,9999)
  1681. end)
  1682. local bv = Instance.new("BodyVelocity")
  1683. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1684. bv.velocity = RootPart.CFrame.lookVector * 50
  1685. bv.Parent = Torso
  1686. bv.Name = "DASH"
  1687. ATTACK = false
  1688. Rooted = false
  1689. game:GetService("Debris"):AddItem(bv, 0.05)
  1690. for i=0, 1.5, 0.1 / Animation_Speed do
  1691. Swait()
  1692. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-90)), 0.4 / Animation_Speed)
  1693. 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)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1694. 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)
  1695. 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)
  1696. 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)
  1697. 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)
  1698. end
  1699. COMBO = 3
  1700. paw:disconnect()
  1701. ATTACK = false
  1702. Rooted = false
  1703. end
  1704.  
  1705. function Attack3()
  1706. ATTACK = true
  1707. Rooted = true
  1708. for i=0, 1, 0.1 / Animation_Speed do
  1709. Swait()
  1710. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1711. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1712. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, -0.2 * Player_Size, 0.3 * Player_Size) * ANGLES(RAD(50), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1713. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1714. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1715. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1716. if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
  1717. break
  1718. end
  1719. end
  1720. for i=0, 1, 0.1 / Animation_Speed do
  1721. Swait()
  1722. 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)
  1723. 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)
  1724. 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)
  1725. 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)
  1726. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1727. 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)
  1728. end
  1729. for i=0, 1, 0.1 / Animation_Speed*7 do
  1730. Swait()
  1731. 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)
  1732. 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)
  1733. 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)
  1734. 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)
  1735. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -4.7 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(45), RAD(45), RAD(0)), 0.2 / Animation_Speed)
  1736. 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*5)
  1737. end
  1738. CreateSound("2248511", RightLeg, 2, 1)
  1739. CreateWave(0,3.5,true,0.2,25,RightLeg,-1)
  1740. CreateWave(0,3,true,-0.2,25,RightLeg,-1)
  1741. CreateWave(0,2.5,true,0.2,25,RightLeg,-1)
  1742. CreateWave(0,2,true,-0.2,25,RightLeg,-1)
  1743. AoEDamage(RightLeg.Position,15,25,30,15,false,5,3,true)
  1744. COMBO = 1
  1745. Rooted = false
  1746. ATTACK = false
  1747. end
  1748.  
  1749. function Sinnerwave()
  1750. ATTACK = true
  1751. Rooted = true
  1752. for i=0, 2, 0.1 / Animation_Speed do
  1753. Swait()
  1754. Rooted = true
  1755. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1756. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1757. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1758. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1759. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1760. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(-5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1761. end
  1762. Rooted = true
  1763. local Animation_Speed2 = Animation_Speed/2
  1764. for i=0, 1, 0.1 / Animation_Speed2 do
  1765. Swait()
  1766. Rooted = true
  1767. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1768. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1769. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1770. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1771. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1772. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1773. end
  1774. CreateWave(0,4,true,0.2,45,RootPart,-5)
  1775. CreateWave(0,4.5,true,-0.2,40,RootPart,-5)
  1776. CreateWave(0,5,true,0.2,35,RootPart,-5)
  1777. CreateWave(0,5.5,true,-0.2,30,RootPart,-5)
  1778. CreateWave(0,6,true,0.2,25,RootPart,-5)
  1779. CreateSound("971126018", Torso, 2, 1)
  1780. coroutine.resume(coroutine.create(function()
  1781. local RayHit, RayPos = RayCast(Torso.Position, Vector3.new(0, -1, 0), (10000), {Character})
  1782. local SpawnPosition = RayPos
  1783. local floor = RayHit
  1784. local needcframe = RootPart.CFrame
  1785. local LastPosition = RootPart.Position
  1786. local Delay = 1
  1787. for i = 1, 6 do
  1788. local RayHit, RayPos = RayCast(LastPosition, needcframe.lookVector, 10, {workspace})
  1789. local End = RayPos
  1790. LastPosition = End
  1791. local locatepart = Instance.new("Part",Effects)
  1792. locatepart.Size = VT(0.5,0.5,0.5)
  1793. locatepart.Position = End
  1794. locatepart.CanCollide = false
  1795. locatepart.Anchored = true
  1796. locatepart.Transparency = 1
  1797. if SpawnPosition then
  1798. if i ~= 6 then
  1799. CreateSound("971125740", locatepart, 7, 1)
  1800. AoEDamage(End,15,25,30,15,false,5,3,false)
  1801. CreateWave(0,2.5,true,-0.05,25,locatepart,-2)
  1802. CreateWave(0,2,true,0.05,25,locatepart,-2)
  1803. CreateWave(0,1.5,true,-0.05,25,locatepart,-2)
  1804. CreateWave(0,1,true,0.05,25,locatepart,-2)
  1805. else
  1806. CreateRing(0,15,true,-0.2,35,locatepart,0,0.3,0.3)
  1807. CreateRing(0,12.5,true,0.2,35,locatepart,0,0.3,-0.3)
  1808. CreateRing(0,10,true,-0.2,35,locatepart,0,-0.3,0.3)
  1809. CreateRing(0,7.5,true,0.2,35,locatepart,0,-0.3,-0.3)
  1810. CreatePentagram(85,true,-0.05,75,CF(End),0)
  1811. CreateSound("971125740", locatepart, 7, 0.5)
  1812. AoEDamage(End,25,45,60,15,false,5,3,false)
  1813. CreateWave(0,6.5,true,-0.05,45,locatepart,-2)
  1814. CreateWave(0,6,true,0.05,45,locatepart,-2)
  1815. CreateWave(0,5.5,true,-0.05,45,locatepart,-2)
  1816. CreateWave(0,5,true,0.05,45,locatepart,-2)
  1817. local particle = particles(locatepart)
  1818. particle.Enabled = false
  1819. particle.Drag = 1
  1820. particle.Lifetime=NumberRange.new(2.35,2.35,2.35)
  1821. particle.Speed = NumberRange.new(25,25,25)
  1822. particle:Emit(250)
  1823. end
  1824. end
  1825. Swait(5)
  1826. game:GetService("Debris"):AddItem(locatepart, 5)
  1827. end
  1828. end))
  1829. Swait(50)
  1830. ATTACK = false
  1831. Rooted = false
  1832. end
  1833.  
  1834. function ViolentRoar()
  1835. ATTACK = true
  1836. Rooted = true
  1837. for i=0, 2, 0.1 / Animation_Speed do
  1838. Swait()
  1839. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1840. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1841. 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)
  1842. 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)
  1843. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed*5)
  1844. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
  1845. end
  1846. if Head ~= nil then
  1847. local roar = CreateSound("577131694", Head, 10, 1)
  1848. repeat
  1849. for i=0, 1.3, 0.1 / Animation_Speed do
  1850. Swait()
  1851. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  1852. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1853. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(70)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1854. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-120)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1855. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(120), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1856. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1857. end
  1858. killnearest(Head.Position,25,25)
  1859. CreateRing(0,6,true,-0.2,35,Head,0,0.3,-0.3)
  1860. CreateRing(0,6,true,-0.2,35,Head,0,0.3,0.3)
  1861. CreateWave(0,5.5,true,0.05,45,RootPart,-4)
  1862. if roar.Playing == true then
  1863. for i=0, 1.3, 0.1 / Animation_Speed do
  1864. Swait()
  1865. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  1866. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1867. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(120)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1868. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-70)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1869. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1870. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-120), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1871. end
  1872. killnearest(Head.Position,25,25)
  1873. CreateRing(0,6,true,-0.2,35,Head,0,-0.3,-0.3)
  1874. CreateRing(0,6,true,-0.2,35,Head,0,-0.3,0.3)
  1875. CreateWave(0,5.5,true,-0.05,45,RootPart,-4)
  1876. end
  1877. until roar.Playing == false
  1878. end
  1879. Rooted = false
  1880. ATTACK = false
  1881. end
  1882.  
  1883. function BulletsFromAbove()
  1884. HASJUMPED = true
  1885. --Rooted = true
  1886. for i=0, 2, 0.1 / Animation_Speed do
  1887. Swait()
  1888. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1889. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1890. 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)
  1891. 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)
  1892. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1893. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1894. end
  1895. CreateSound("2767090", Torso, 5, MRANDOM(7, 12) / 10)
  1896. CreateWave(0,3.5,true,0.2,150,RootPart,-2)
  1897. CreateWave(0,5,true,-0.2,150,RootPart,-2)
  1898. local bv = Instance.new("BodyVelocity")
  1899. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1900. bv.velocity = Vector3.new(0,300,0)
  1901. bv.Parent = Torso
  1902. bv.Name = "DASH"
  1903. --Rooted = false
  1904. game:GetService("Debris"):AddItem(bv, 0.5)
  1905. Swait(125)
  1906. ATTACK = true
  1907. Rooted = true
  1908. UNANCHOR = false
  1909. RootPart.Anchored = true
  1910. local BulletHolder = IT("Folder",Weapon)
  1911. BulletHolder.Name = "Bullets"
  1912. game:GetService("Debris"):AddItem(BulletHolder, 30)
  1913. for i=0, 5, 0.1 / Animation_Speed do
  1914. Swait()
  1915. Rooted = true
  1916. RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1917. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1918. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1919. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1920. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1921. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1922. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(-5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1923. end
  1924. for i = 1 ,15 do
  1925. Swait()
  1926. RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1927. end
  1928. CreateSound("333476017", Torso, 10, 1)
  1929. for i = 1, 35 do
  1930. Swait()
  1931. RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1932. coroutine.resume(coroutine.create(function()
  1933. local gem = IT("Part",BulletHolder)
  1934. gem.Size = VT(0.2,0.2,0.2)
  1935. gem.CFrame = Torso.CFrame * CF(math.random(-25,25),math.random(-25,25),math.random(-25,25))
  1936. gem.Anchored = true
  1937. gem.Color = C3(170, 0, 170)
  1938. local e = particles(gem)
  1939. e.LockedToPart = false
  1940. local Cys = Instance.new("SpecialMesh", gem)
  1941. Cys.MeshType = "FileMesh"
  1942. Cys.MeshId = "rbxassetid://9756362"
  1943. Cys.Scale = Vector3.new(2,2,2)
  1944. end))
  1945. end
  1946. local Animation_Speed2 = Animation_Speed/2
  1947. for i=0, 1, 0.1 / Animation_Speed2 do
  1948. Swait()
  1949. --RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1950. Rooted = true
  1951. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1952. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1953. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1954. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1955. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1956. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1957. end
  1958. CreateSound("318745457", Torso, 2, 1)
  1959. coroutine.resume(coroutine.create(function()
  1960. q = BulletHolder:GetChildren()
  1961. for i = 1, #q do
  1962. local bullet = q[i]
  1963. local bv = Instance.new("BodyVelocity")
  1964. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1965. bv.velocity = RootPart.CFrame.lookVector * math.random(150,300)
  1966. bv.Parent = bullet
  1967. bv.Name = "DASH"
  1968. bullet.Anchored = false
  1969. local paw = bullet.Touched:Connect(function(hit)
  1970. if bullet.Reign.Enabled == true then
  1971. local cframe = bullet.CFrame
  1972. bullet.Anchored = true
  1973. bullet.Reign.Enabled = false
  1974. local particle = particles(bullet)
  1975. particle.Enabled = false
  1976. particle.Drag = 1
  1977. particle.Name = "poof"
  1978. particle.Lifetime=NumberRange.new(2.35,2.35,2.35)
  1979. particle.Speed = NumberRange.new(25,25,25)
  1980. particle:Emit(250)
  1981. CreateSound("438666196", bullet, 5, 1)
  1982. CreateRing(0,4,true,-0.2,35,bullet,0,0.3,-0.3)
  1983. CreateRing(0,4,true,-0.2,35,bullet,0,0.3,0.3)
  1984. CreateRing(0,6,true,-0.2,35,bullet,0,-0.3,0.3)
  1985. CreateRing(0,6,true,-0.2,35,bullet,0,-0.3,-0.3)
  1986. CreateWave(0,2.5,true,-0.05,25,bullet,-2)
  1987. CreateWave(0,2,true,0.05,25,bullet,-2)
  1988. CreateWave(0,1.5,true,-0.05,25,bullet,-2)
  1989. CreateWave(0,1,true,0.05,25,bullet,-2)
  1990. table.insert(Effects2,{bullet,"Block1",0.025,1,1,1,2})
  1991. AoEDamage(bullet.Position,25,25,30,15,false,5,3,false)
  1992. end
  1993. end)
  1994. end
  1995. end))
  1996. for i = 1, 35 do
  1997. Swait()
  1998. end
  1999. UNANCHOR = true
  2000. RootPart.Anchored = false
  2001. Rooted = false
  2002. ATTACK = false
  2003. coroutine.resume(coroutine.create(function()
  2004. Swait(50)
  2005. HASJUMPED = false
  2006. end))
  2007. end
  2008.  
  2009. function fromthedepths()
  2010. ATTACK = true
  2011. Rooted = true
  2012. for i=0, 2, 0.1 / Animation_Speed do
  2013. Swait()
  2014. turnto(Mouse.Hit.p)
  2015. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2016. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2017. 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)
  2018. 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)
  2019. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2020. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2021. end
  2022. local sinkhole = IT("Part",Effects)
  2023. sinkhole.Size = VT(85,0,85)
  2024. sinkhole.CFrame = CF(Mouse.Hit.p)
  2025. sinkhole.Material = "Neon"
  2026. sinkhole.Color = C3(170, 0, 170)
  2027. sinkhole.Anchored = true
  2028. sinkhole.CanCollide = false
  2029. sinkhole.Transparency = 1
  2030. local decal = IT("Decal",sinkhole)
  2031. decal.Face = "Top"
  2032. decal.Texture = "http://www.roblox.com/asset/?id=177470914"
  2033. repeat
  2034. Swait()
  2035. turnto(Mouse.Hit.p)
  2036. sinkhole.CFrame = CF(Mouse.Hit.p)
  2037. until KEYHOLD == false
  2038. coroutine.resume(coroutine.create(function()
  2039. local soundeffect = IT("Sound",sinkhole)
  2040. soundeffect.SoundId = "rbxassetid://487186990"
  2041. soundeffect.Looped = true
  2042. soundeffect.Volume = 10
  2043. soundeffect.Playing = true
  2044. for i = 1, 450 do
  2045. AoEDamage(sinkhole.Position,15,666,666,15,false,0,0,false)
  2046. AoEDamage(sinkhole.Position,25,65,80,15,false,5,3,true)
  2047. AoEDamage(sinkhole.Position,45,45,60,15,false,5,3,true)
  2048. Swait()
  2049. CreateWave(0,8,true,0.05,45,sinkhole,-1)
  2050. CreateWave(0,8,true,-0.05,45,sinkhole,-1)
  2051. if i > 439 then
  2052. decal.Transparency = decal.Transparency + 0.1
  2053. soundeffect.Volume = soundeffect.Volume - 1
  2054. end
  2055. end
  2056. sinkhole:remove()
  2057. end))
  2058. for i=0, 3, 0.1 / Animation_Speed do
  2059. Swait()
  2060. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2061. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2062. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2063. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2064. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2065. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2066. end
  2067. Rooted = false
  2068. ATTACK = false
  2069. end
  2070.  
  2071. function Warp()
  2072. ATTACK = true
  2073. CreateRing(0,2,true,-0.2,35,RootPart,0,0.3,0.3)
  2074. CreateRing(0,2.5,true,-0.2,35,RootPart,0,-0.3,0.3)
  2075. CreateRing(0,3,true,-0.2,35,RootPart,0,0.3,-0.3)
  2076. CreateRing(0,3.5,true,-0.2,35,RootPart,0,-0.3,-0.3)
  2077. local originalcframe = RootPart.CFrame
  2078. RootPart.CFrame = CF(VT(Mouse.Hit.p.X,Mouse.Hit.p.Y+(RootPart.Size.Y/2),Mouse.Hit.Z),originalcframe.p)
  2079. local penta = CreatePentagram(15,false,0,45,CF(RootPart.Position),-1)
  2080. CreateSound("3264923", penta, 2, 2)
  2081. ATTACK = false
  2082. end
  2083.  
  2084. --//=================================\\
  2085. --|| ASSIGN THINGS TO KEYS
  2086. --\\=================================//
  2087.  
  2088. function turnto(pos)
  2089. RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
  2090. end
  2091.  
  2092. function MouseDown(Mouse)
  2093. if ATTACK == false and HASJUMPED == false and COMBO ~= "HALT" and Rooted == false then
  2094. HOLD = true
  2095. if ATTACK == false then
  2096. if COMBO == 1 then
  2097. COMBO = "HALT"
  2098. Attack1()
  2099. elseif COMBO == 2 then
  2100. COMBO = "HALT"
  2101. Attack2()
  2102. elseif COMBO == 3 then
  2103. COMBO = "HALT"
  2104. Attack3()
  2105. end
  2106. coroutine.resume(coroutine.create(function()
  2107. for i=1, 50 do
  2108. if ATTACK == false and COMBO ~= "HALT" then
  2109. Swait()
  2110. end
  2111. end
  2112. if ATTACK == false and COMBO ~= "HALT" then
  2113. COMBO = 1
  2114. end
  2115. end))
  2116. end
  2117. end
  2118. end
  2119.  
  2120. function MouseUp(Mouse)
  2121. HOLD = false
  2122. end
  2123.  
  2124. function KeyDown(Key)
  2125. KEYHOLD = true
  2126. if Key == "e" and HASJUMPED == false and ATTACK == false then
  2127. Warp()
  2128. end
  2129. if Key == "g" and HASJUMPED == false and ATTACK == false then
  2130. fromthedepths()
  2131. end
  2132. if Key == "q" and HASJUMPED == false and ATTACK == false then
  2133. ViolentRoar()
  2134. end
  2135. if Key == "x" and HASJUMPED == false and ATTACK == false then
  2136. BulletsFromAbove()
  2137. end
  2138. if Key == "f" and HASJUMPED == false and ATTACK == false then
  2139. Sinnerwave()
  2140. end
  2141. if Key == "t" and ATTACK == false then
  2142. local taunt = CreateSound("907332670", Head, 10, 1)
  2143. local effect = IT("PitchShiftSoundEffect",taunt)
  2144. effect.Octave = 0.700
  2145. end
  2146. end
  2147.  
  2148. function KeyUp(Key)
  2149. KEYHOLD = false
  2150. end
  2151.  
  2152. Mouse.Button1Down:connect(function(NEWKEY)
  2153. MouseDown(NEWKEY)
  2154. end)
  2155. Mouse.Button1Up:connect(function(NEWKEY)
  2156. MouseUp(NEWKEY)
  2157. end)
  2158. Mouse.KeyDown:connect(function(NEWKEY)
  2159. KeyDown(NEWKEY)
  2160. end)
  2161. Mouse.KeyUp:connect(function(NEWKEY)
  2162. KeyUp(NEWKEY)
  2163. end)
  2164.  
  2165. --//=================================\\
  2166. --\\=================================//
  2167.  
  2168.  
  2169. function unanchor()
  2170. if UNANCHOR == true then
  2171. g = Character:GetChildren()
  2172. for i = 1, #g do
  2173. if g[i].ClassName == "Part" then
  2174. g[i].Anchored = false
  2175. end
  2176. end
  2177. end
  2178. end
  2179.  
  2180.  
  2181. --//=================================\\
  2182. --|| WRAP THE WHOLE SCRIPT UP
  2183. --\\=================================//
  2184.  
  2185. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  2186.  
  2187. Humanoid.Changed:connect(function(Jump)
  2188. if Jump == "Jump" then
  2189. Humanoid.Jump = false
  2190. if HASJUMPED == false and HITFLOOR ~= nil and ATTACK == false and DISABLEJUMPING == false then
  2191. HASJUMPED = true
  2192. JumpUp()
  2193. end
  2194. end
  2195. end)
  2196. Rooted = true
  2197. ANIMATE.Parent = nil
  2198. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  2199. IDLEANIMATION:Play()
  2200. Swait()
  2201. Rooted = false
  2202.  
  2203. createbodypart("Eye","Magenta",Head,VT(0.25, 0, -0.65),VT(3,3,3))
  2204. createbodypart("Eye","Magenta",Head,VT(-0.25, 0, -0.65),VT(3,3,3))
  2205. createbodypart("Eye","Magenta",Head,VT(0, 0.2, -0.65),VT(5,5,3))
  2206.  
  2207. while true do
  2208. Swait()
  2209. SINE = SINE + CHANGE
  2210. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2211. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2212. HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  2213. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  2214. local WALKSPEEDVALUE = 24 / (Humanoid.WalkSpeed / 16)
  2215. if ANIM == "Walk" and ATTACK == false and TORSOVELOCITY > 1 then
  2216. 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)
  2217. 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)
  2218. 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*2)
  2219. 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*2)
  2220. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  2221. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2222. 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)
  2223. 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*2)
  2224. 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*2)
  2225. end
  2226. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  2227. ANIM = "Jump"
  2228. if ATTACK == false then
  2229. CreateWave(180,3,true,0,15,RootPart,-4)
  2230. 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)
  2231. 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)
  2232. 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)
  2233. 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)
  2234. 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)
  2235. 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)
  2236. end
  2237. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil and ATTACK == false then
  2238. ANIM = "Fall"
  2239. if ATTACK == false then
  2240. 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)
  2241. 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)
  2242. 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)
  2243. 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)
  2244. 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)
  2245. 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)
  2246. end
  2247. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil and ATTACK == false then
  2248. ANIM = "Idle"
  2249. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2250. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2251. --RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  2252. --LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1 * Player_Size, 0.2 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  2253. 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)
  2254. 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)
  2255. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2256. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2257. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  2258. ANIM = "Walk"
  2259. WALK = WALK + 1 / Animation_Speed
  2260. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  2261. WALK = 0
  2262. if WALKINGANIM == true then
  2263. WALKINGANIM = false
  2264. elseif WALKINGANIM == false then
  2265. WALKINGANIM = true
  2266. end
  2267. end
  2268. --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)
  2269. --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)
  2270. if ATTACK == false then
  2271. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.5 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(35), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2272. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2273. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  2274. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  2275. --RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2276. --LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2277. 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.15 / Animation_Speed)
  2278. 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.15 / Animation_Speed)
  2279. end
  2280. end
  2281. if #Effects2>0 then
  2282. for e=1,#Effects2 do
  2283. if Effects2[e]~=nil then
  2284. local Thing=Effects2[e]
  2285. if Thing~=nil then
  2286. local Part=Thing[1]
  2287. local Mode=Thing[2]
  2288. local Delay=Thing[3]
  2289. local IncX=Thing[4]
  2290. local IncY=Thing[5]
  2291. local IncZ=Thing[6]
  2292. local Part2=Thing[8]
  2293. if Thing[1].Transparency<=1 then
  2294. if Thing[2]=="Block1" then
  2295. Thing[1].CFrame=Thing[1].CFrame
  2296. Mesh=Thing[1].Mesh
  2297. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  2298. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2299. elseif Thing[2]=="Cylinder" then
  2300. Mesh=Thing[1].Mesh
  2301. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  2302. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2303. elseif Thing[2]=="Blood" then
  2304. Mesh=Thing[7]
  2305. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  2306. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  2307. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2308. elseif Thing[2]=="Elec" then
  2309. Mesh=Thing[1].Mesh
  2310. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  2311. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2312. elseif Thing[2]=="Disappear" then
  2313. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2314. end
  2315. else
  2316. Part.Parent=nil
  2317. table.remove(Effects2,e)
  2318. end
  2319. end
  2320. end
  2321. end
  2322. end
  2323. if UNANCHOR == true then
  2324. unanchor()
  2325. end
  2326. Humanoid.MaxHealth = "inf"
  2327. Humanoid.Health = "inf"
  2328. if Rooted == false then
  2329. DISABLEJUMPING = false
  2330. if ANIM == "Fall" then
  2331. Humanoid.WalkSpeed = Speed*3
  2332. else
  2333. Humanoid.WalkSpeed = Speed
  2334. end
  2335. elseif Rooted == true then
  2336. DISABLEJUMPING = true
  2337. Humanoid.WalkSpeed = 0
  2338. end
  2339. q = Character:GetChildren()
  2340. for u = 1, #q do
  2341. if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
  2342. q[u]:remove()
  2343. elseif q[u].ClassName == "Shirt" then
  2344. q[u]:Destroy()
  2345. elseif q[u].ClassName == "Pants" then
  2346. q[u]:Destroy()
  2347. elseif q[u].ClassName == "CharacterMesh" then
  2348. q[u]:remove()
  2349. elseif q[u].ClassName == "ShirtGraphic" then
  2350. q[u]:remove()
  2351. elseif q[u].ClassName == "Part" and q[u].Name ~= "HumanoidRootPart" then
  2352. q[u].Color = Color3.new(0/255, 0/255, 0/255)
  2353. end
  2354. end
  2355. if Head:FindFirstChild("face") then
  2356. Head.face:remove()
  2357. end
  2358. end
  2359.  
  2360. --//=================================\\
  2361. --\\=================================//
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367. --//====================================================\\--
  2368. --|| END OF SCRIPT
  2369. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement