Vechol

ff

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