Advertisement
memberhero

Knight Script

Feb 5th, 2019
415
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. local Mouse,mouse,UserInputService,ContextActionService = owner
  4. do
  5. print("FE Compatibility code by Mokiros Edited by basstracker1970")
  6. script.Parent = Player.Character
  7.  
  8. --RemoteEvent for communicating
  9. local Event = Instance.new("RemoteEvent")
  10. Event.Name = "UserInput_Event"
  11.  
  12. --Fake event to make stuff like Mouse.KeyDown work
  13. local function fakeEvent()
  14. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  15. t.connect = t.Connect
  16. return t
  17. end
  18.  
  19. --Creating fake input objects with fake variables
  20. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  21. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  22. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  23. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  24. end}
  25. --Merged 2 functions into one by checking amount of arguments
  26. CAS.UnbindAction = CAS.BindAction
  27.  
  28. --This function will trigger the events that have been :Connect()'ed
  29. local function te(self,ev,...)
  30. local t = m[ev]
  31. if t and t._fakeEvent and t.Function then
  32. t.Function(...)
  33. end
  34. end
  35. m.TrigEvent = te
  36. UIS.TrigEvent = te
  37.  
  38. Event.OnServerEvent:Connect(function(plr,io)
  39. if plr~=Player then return end
  40. if io.isMouse then
  41. m.Target = io.Target
  42. m.Hit = io.Hit
  43. elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
  44. if io.UserInputState == Enum.UserInputState.Begin then
  45. m:TrigEvent("Button1Down")
  46. else
  47. m:TrigEvent("Button1Up")
  48. end
  49. else
  50. for n,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. if io.UserInputState == Enum.UserInputState.Begin then
  58. m:TrigEvent("KeyDown",io.KeyCode.Name:lower())
  59. UIS:TrigEvent("InputBegan",io,false)
  60. else
  61. m:TrigEvent("KeyUp",io.KeyCode.Name:lower())
  62. UIS:TrigEvent("InputEnded",io,false)
  63. end
  64. end
  65. end)
  66. Event.Parent = NLS([==[
  67. local Player = game:GetService("Players").LocalPlayer
  68. local Event = script:WaitForChild("UserInput_Event")
  69.  
  70. local UIS = game:GetService("UserInputService")
  71. local input = function(io,a)
  72. if a then return end
  73. --Since InputObject is a client-side instance, we create and pass table instead
  74. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  75. end
  76. UIS.InputBegan:Connect(input)
  77. UIS.InputEnded:Connect(input)
  78.  
  79. local Mouse = Player:GetMouse()
  80. local h,t
  81. --Give the server mouse data 30 times every second, but only if the values changed
  82. --If player is not moving their mouse, client won't fire events
  83. while wait(1/30) do
  84. if h~=Mouse.Hit or t~=Mouse.Target then
  85. h,t=Mouse.Hit,Mouse.Target
  86. Event:FireServer({isMouse=true,Target=t,Hit=h})
  87. end
  88. end]==],Player.Character)
  89. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  90.  
  91. end
  92. wait(0.2)
  93. Player = owner
  94. PlayerGui = Player.PlayerGui
  95. Cam = workspace.CurrentCamera
  96. Backpack = Player.Backpack
  97. Character = Player.Character
  98. Humanoid = Character.Humanoid
  99.  
  100. RootPart = Character.HumanoidRootPart
  101. Torso = Character.Torso
  102. Head = Character.Head
  103. RightArm = Character["Right Arm"]
  104. LeftArm = Character["Left Arm"]
  105. RightLeg = Character["Right Leg"]
  106. LeftLeg = Character["Left Leg"]
  107. RootJoint = RootPart.RootJoint
  108. Neck = Torso.Neck
  109. RightShoulder = Torso["Right Shoulder"]
  110. LeftShoulder = Torso["Left Shoulder"]
  111. RightHip = Torso["Right Hip"]
  112. LeftHip = Torso["Left Hip"]
  113. local sick = Instance.new("Sound", Torso)
  114. sick.SoundId = "rbxassetid://152000442"
  115. sick.Looped = true
  116. sick.Pitch = 1
  117. sick.Volume = 1
  118. sick:Play()
  119. IT = Instance.new
  120. CF = CFrame.new
  121. VT = Vector3.new
  122. RAD = math.rad
  123. C3 = Color3.new
  124. UD2 = UDim2.new
  125. BRICKC = BrickColor.new
  126. ANGLES = CFrame.Angles
  127. EULER = CFrame.fromEulerAnglesXYZ
  128. COS = math.cos
  129. ACOS = math.acos
  130. SIN = math.sin
  131. ASIN = math.asin
  132. ABS = math.abs
  133. MRANDOM = math.random
  134. FLOOR = math.floor
  135. Animation_Speed = 3
  136. Humanoid.HipHeight = 1
  137. Frame_Speed = 0.016666666666666666
  138. local Speed = 75
  139. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  140. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  141. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  142. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  143. local DAMAGEMULTIPLIER = 1
  144. local ANIM = "Idle"
  145. local ATTACK = false
  146. local EQUIPPED = false
  147. local HOLD = false
  148. local COMBO = 1
  149. local Rooted = false
  150. local SINE = 0
  151. local KEYHOLD = false
  152. local CHANGE = 2 / Animation_Speed
  153. local WALKINGANIM = false
  154. local VALUE1 = false
  155. local VALUE2 = false
  156. local ROBLOXIDLEANIMATION = IT("Animation")
  157. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  158. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  159. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  160. WEAPONGUI.Name = "Weapon GUI"
  161. local Weapon = IT("Model")
  162. Weapon.Name = "Adds"
  163. local Effects = IT("Folder", Weapon)
  164. Effects.Name = "Effects"
  165. local ANIMATOR = Humanoid.Animator
  166. local ANIMATE = Character.Animate
  167. local UNANCHOR = true
  168. local FORCEWINGS = false
  169. local GYRO, FLIGHTFORCE
  170. local INTRO = false
  171. ArtificialHB = Instance.new("BindableEvent", script)
  172. ArtificialHB.Name = "ArtificialHB"
  173. script:WaitForChild("ArtificialHB")
  174. frame = Frame_Speed
  175. tf = 0
  176. allowframeloss = false
  177. tossremainder = false
  178. lastframe = tick()
  179. script.ArtificialHB:Fire()
  180. game:GetService("RunService").Heartbeat:connect(function(s, p)
  181. tf = tf + s
  182. if tf >= frame then
  183. if allowframeloss then
  184. script.ArtificialHB:Fire()
  185. lastframe = tick()
  186. else
  187. for i = 1, math.floor(tf / frame) do
  188. script.ArtificialHB:Fire()
  189. end
  190. lastframe = tick()
  191. end
  192. if tossremainder then
  193. tf = 0
  194. else
  195. tf = tf - frame * math.floor(tf / frame)
  196. end
  197. end
  198. end)
  199. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  200. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  201. end
  202. function PositiveAngle(NUMBER)
  203. if NUMBER >= 0 then
  204. NUMBER = 0
  205. end
  206. return NUMBER
  207. end
  208. function NegativeAngle(NUMBER)
  209. if NUMBER <= 0 then
  210. NUMBER = 0
  211. end
  212. return NUMBER
  213. end
  214. function Swait(NUMBER)
  215. if NUMBER == 0 or NUMBER == nil then
  216. ArtificialHB.Event:wait()
  217. else
  218. for i = 1, NUMBER do
  219. ArtificialHB.Event:wait()
  220. end
  221. end
  222. end
  223. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  224. local NEWMESH = IT(MESH)
  225. if MESH == "SpecialMesh" then
  226. NEWMESH.MeshType = MESHTYPE
  227. if MESHID ~= "nil" and MESHID ~= "" then
  228. NEWMESH.MeshId = "http://www.roblox.com/asset/?id=" .. MESHID
  229. end
  230. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  231. NEWMESH.TextureId = "http://www.roblox.com/asset/?id=" .. TEXTUREID
  232. end
  233. end
  234. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  235. NEWMESH.Scale = SCALE
  236. NEWMESH.Parent = PARENT
  237. return NEWMESH
  238. end
  239. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  240. local NEWPART = IT("Part")
  241. NEWPART.formFactor = FORMFACTOR
  242. NEWPART.Reflectance = REFLECTANCE
  243. NEWPART.Transparency = TRANSPARENCY
  244. NEWPART.CanCollide = false
  245. NEWPART.Locked = true
  246. NEWPART.Anchored = true
  247. if ANCHOR == false then
  248. NEWPART.Anchored = false
  249. end
  250. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  251. NEWPART.Name = NAME
  252. NEWPART.Size = SIZE
  253. NEWPART.Position = Torso.Position
  254. NEWPART.Material = MATERIAL
  255. NEWPART:BreakJoints()
  256. NEWPART.Parent = PARENT
  257. return NEWPART
  258. end
  259. function QuaternionFromCFrame(cf)
  260. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  261. local trace = m00 + m11 + m22
  262. if trace > 0 then
  263. local s = math.sqrt(1 + trace)
  264. local recip = 0.5 / s
  265. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  266. else
  267. local i = 0
  268. if m00 < m11 then
  269. i = 1
  270. end
  271. if m22 > (i == 0 and m00 or m11) then
  272. i = 2
  273. end
  274. if i == 0 then
  275. local s = math.sqrt(m00 - m11 - m22 + 1)
  276. local recip = 0.5 / s
  277. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  278. elseif i == 1 then
  279. local s = math.sqrt(m11 - m22 - m00 + 1)
  280. local recip = 0.5 / s
  281. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  282. elseif i == 2 then
  283. local s = math.sqrt(m22 - m00 - m11 + 1)
  284. local recip = 0.5 / s
  285. return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  286. end
  287. end
  288. end
  289. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  290. local xs, ys, zs = x + x, y + y, z + z
  291. local wx, wy, wz = w * xs, w * ys, w * zs
  292. local xx = x * xs
  293. local xy = x * ys
  294. local xz = x * zs
  295. local yy = y * ys
  296. local yz = y * zs
  297. local zz = z * zs
  298. 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))
  299. end
  300. function QuaternionSlerp(a, b, t)
  301. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  302. local startInterp, finishInterp
  303. if cosTheta >= 1.0E-4 then
  304. if 1 - cosTheta > 1.0E-4 then
  305. local theta = ACOS(cosTheta)
  306. local invSinTheta = 1 / SIN(theta)
  307. startInterp = SIN((1 - t) * theta) * invSinTheta
  308. finishInterp = SIN(t * theta) * invSinTheta
  309. else
  310. startInterp = 1 - t
  311. finishInterp = t
  312. end
  313. elseif 1 + cosTheta > 1.0E-4 then
  314. local theta = ACOS(-cosTheta)
  315. local invSinTheta = 1 / SIN(theta)
  316. startInterp = SIN((t - 1) * theta) * invSinTheta
  317. finishInterp = SIN(t * theta) * invSinTheta
  318. else
  319. startInterp = t - 1
  320. finishInterp = t
  321. end
  322. 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
  323. end
  324. function Clerp(a, b, t)
  325. local qa = {
  326. QuaternionFromCFrame(a)
  327. }
  328. local qb = {
  329. QuaternionFromCFrame(b)
  330. }
  331. local ax, ay, az = a.x, a.y, a.z
  332. local bx, by, bz = b.x, b.y, b.z
  333. local _t = 1 - t
  334. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  335. end
  336. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  337. local frame = IT("Frame")
  338. frame.BackgroundTransparency = TRANSPARENCY
  339. frame.BorderSizePixel = BORDERSIZEPIXEL
  340. frame.Position = POSITION
  341. frame.Size = SIZE
  342. frame.BackgroundColor3 = COLOR
  343. frame.BorderColor3 = BORDERCOLOR
  344. frame.Name = NAME
  345. frame.Parent = PARENT
  346. return frame
  347. end
  348. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  349. local label = IT("TextLabel")
  350. label.BackgroundTransparency = 1
  351. label.Size = UD2(1, 0, 1, 0)
  352. label.Position = UD2(0, 0, 0, 0)
  353. label.TextColor3 = TEXTCOLOR
  354. label.TextStrokeTransparency = STROKETRANSPARENCY
  355. label.TextTransparency = TRANSPARENCY
  356. label.FontSize = TEXTFONTSIZE
  357. label.Font = TEXTFONT
  358. label.BorderSizePixel = BORDERSIZEPIXEL
  359. label.TextScaled = false
  360. label.Text = TEXT
  361. label.Name = NAME
  362. label.Parent = PARENT
  363. return label
  364. end
  365. function NoOutlines(PART)
  366. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  367. end
  368. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  369. local NEWWELD = IT(TYPE)
  370. NEWWELD.Part0 = PART0
  371. NEWWELD.Part1 = PART1
  372. NEWWELD.C0 = C0
  373. NEWWELD.C1 = C1
  374. NEWWELD.Parent = PARENT
  375. return NEWWELD
  376. end
  377. local S = IT("Sound")
  378. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  379. local NEWSOUND
  380. coroutine.resume(coroutine.create(function()
  381. NEWSOUND = S:Clone()
  382. NEWSOUND.Parent = PARENT
  383. NEWSOUND.Volume = VOLUME
  384. NEWSOUND.Pitch = PITCH
  385. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
  386. NEWSOUND:play()
  387. if DOESLOOP == true then
  388. NEWSOUND.Looped = true
  389. else
  390. repeat
  391. wait(1)
  392. until NEWSOUND.Playing == false
  393. NEWSOUND:remove()
  394. end
  395. end))
  396. return NEWSOUND
  397. end
  398. function CFrameFromTopBack(at, top, back)
  399. local right = top:Cross(back)
  400. 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)
  401. end
  402. function WACKYEFFECT(Table)
  403. local TYPE = Table.EffectType or "Sphere"
  404. local SIZE = Table.Size or VT(1, 1, 1)
  405. local ENDSIZE = Table.Size2 or VT(0, 0, 0)
  406. local TRANSPARENCY = Table.Transparency or 0
  407. local ENDTRANSPARENCY = Table.Transparency2 or 1
  408. local CFRAME = Table.CFrame or Torso.CFrame
  409. local MOVEDIRECTION = Table.MoveToPos or nil
  410. local ROTATION1 = Table.RotationX or 0
  411. local ROTATION2 = Table.RotationY or 0
  412. local ROTATION3 = Table.RotationZ or 0
  413. local MATERIAL = Table.Material or "Neon"
  414. local COLOR = Table.Color or C3(1, 1, 1)
  415. local TIME = Table.Time or 45
  416. local SOUNDID = Table.SoundID or nil
  417. local SOUNDPITCH = Table.SoundPitch or nil
  418. local SOUNDVOLUME = Table.SoundVolume or nil
  419. coroutine.resume(coroutine.create(function()
  420. local PLAYSSOUND = false
  421. local SOUND
  422. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1, 1, 1), true)
  423. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  424. PLAYSSOUND = true
  425. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  426. end
  427. EFFECT.Color = COLOR
  428. local MSH
  429. if TYPE == "Sphere" then
  430. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0, 0, 0))
  431. elseif TYPE == "Block" then
  432. MSH = IT("BlockMesh", EFFECT)
  433. MSH.Scale = VT(SIZE.X, SIZE.X, SIZE.X)
  434. elseif TYPE == "Wave" then
  435. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
  436. elseif TYPE == "Ring" then
  437. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X, SIZE.X, 0.1), VT(0, 0, 0))
  438. elseif TYPE == "Slash" then
  439. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
  440. elseif TYPE == "Round Slash" then
  441. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
  442. elseif TYPE == "Swirl" then
  443. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0, 0, 0))
  444. elseif TYPE == "Skull" then
  445. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0, 0, 0))
  446. elseif TYPE == "Crystal" then
  447. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0, 0, 0))
  448. end
  449. if MSH ~= nil then
  450. local MOVESPEED
  451. if MOVEDIRECTION ~= nil then
  452. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude / TIME
  453. end
  454. local GROWTH = SIZE - ENDSIZE
  455. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  456. if TYPE == "Block" then
  457. EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
  458. else
  459. EFFECT.CFrame = CFRAME
  460. end
  461. for LOOP = 1, TIME + 1 do
  462. Swait()
  463. MSH.Scale = MSH.Scale - GROWTH / TIME
  464. if TYPE == "Wave" then
  465. MSH.Offset = VT(0, 0, -MSH.Scale.X / 8)
  466. end
  467. EFFECT.Transparency = EFFECT.Transparency - TRANS / TIME
  468. if TYPE == "Block" then
  469. EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
  470. else
  471. EFFECT.CFrame = EFFECT.CFrame * ANGLES(RAD(ROTATION1), RAD(ROTATION2), RAD(ROTATION3))
  472. end
  473. if MOVEDIRECTION ~= nil then
  474. local ORI = EFFECT.Orientation
  475. EFFECT.CFrame = CF(EFFECT.Position, MOVEDIRECTION) * CF(0, 0, -MOVESPEED)
  476. EFFECT.Orientation = ORI
  477. end
  478. end
  479. if PLAYSSOUND == false then
  480. EFFECT:remove()
  481. else
  482. SOUND.Stopped:Connect(function()
  483. EFFECT:remove()
  484. end)
  485. end
  486. elseif PLAYSSOUND == false then
  487. EFFECT:remove()
  488. else
  489. repeat
  490. Swait()
  491. until SOUND.Playing == false
  492. EFFECT:remove()
  493. end
  494. end))
  495. end
  496. function MakeForm(PART, TYPE)
  497. if TYPE == "Cyl" then
  498. local MSH = IT("CylinderMesh", PART)
  499. elseif TYPE == "Ball" then
  500. local MSH = IT("SpecialMesh", PART)
  501. MSH.MeshType = "Sphere"
  502. elseif TYPE == "Pine" then
  503. CreateMesh("SpecialMesh", PART, "FileMesh", "1033714", "", PART.Size, VT(0, 0, 0))
  504. end
  505. end
  506. Debris = game:GetService("Debris")
  507. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  508. local DIRECTION = CF(StartPos, EndPos).lookVector
  509. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  510. end
  511. function turnto(position)
  512. RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
  513. end
  514. function Lightning(Table)
  515. local Color = Table.Color or C3(1, 1, 1)
  516. local StartPos = Table.Start or Torso.Position
  517. local EndPos = Table.End or Mouse.Hit.p
  518. local SegmentLength = Table.SegmentL or 2
  519. local Thickness = Table.Thickness or 0.1
  520. local Dissapear = Table.DoesFade or false
  521. local Parent = Table.Ignore or Character
  522. local MaxDist = Table.MaxDist or 400
  523. local Branches = Table.Branches or false
  524. local HIT, HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  525. local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude / SegmentLength)
  526. local LIGHTNINGMODEL = IT("Model", Effects)
  527. LIGHTNINGMODEL.Name = "Lightning"
  528. local LastBolt
  529. for E = 1, DISTANCE do
  530. local ExtraSize = (DISTANCE - E) / 15
  531. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "LightningPart" .. E, VT(Thickness + ExtraSize, SegmentLength, Thickness + ExtraSize))
  532. PART.Color = Color
  533. MakeForm(PART, "Cyl")
  534. if LastBolt == nil then
  535. PART.CFrame = CF(StartPos, HITPOS) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0, -PART.Size.Y / 2, 0)
  536. else
  537. PART.CFrame = CF(LastBolt.CFrame * CF(0, -LastBolt.Size.Y / 2, 0).p, CF(HITPOS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, SegmentLength / 3 + (DISTANCE - E)).p) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0, -PART.Size.Y / 2, 0)
  538. end
  539. LastBolt = PART
  540. if Branches == true then
  541. local CHOICE = MRANDOM(1, 7 + (DISTANCE - E) * 2)
  542. if CHOICE == 1 then
  543. local LASTBRANCH
  544. for i = 1, MRANDOM(2, 5) do
  545. local ExtraSize2 = (DISTANCE - E) / 25 / i
  546. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "Branch" .. E .. "-" .. i, VT(Thickness + ExtraSize2, SegmentLength, Thickness + ExtraSize2))
  547. PART.Color = Color
  548. MakeForm(PART, "Cyl")
  549. if LASTBRANCH == nil then
  550. PART.CFrame = CF(LastBolt.CFrame * CF(0, -LastBolt.Size.Y / 2, 0).p, LastBolt.CFrame * CF(0, -LastBolt.Size.Y / 2, 0) * ANGLES(RAD(0), RAD(0), RAD(MRANDOM(0, 360))) * CF(0, Thickness * 7, 0) * CF(0, 0, -1).p) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0, -PART.Size.Y / 2, 0)
  551. else
  552. PART.CFrame = CF(LASTBRANCH.CFrame * CF(0, -LASTBRANCH.Size.Y / 2, 0).p, LASTBRANCH.CFrame * CF(0, -LASTBRANCH.Size.Y / 2, 0) * ANGLES(RAD(0), RAD(0), RAD(MRANDOM(0, 360))) * CF(0, Thickness * 3, 0) * CF(0, 0, -1).p) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0, -PART.Size.Y / 2, 0)
  553. end
  554. LASTBRANCH = PART
  555. end
  556. end
  557. end
  558. end
  559. if Dissapear == true then
  560. coroutine.resume(coroutine.create(function()
  561. for i = 1, 30 do
  562. Swait()
  563. for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  564. if c.ClassName == "Part" then
  565. c.Transparency = i / 30
  566. end
  567. end
  568. end
  569. LIGHTNINGMODEL:remove()
  570. end))
  571. elseif Dissapear == false then
  572. Debris:AddItem(LIGHTNINGMODEL, 0.1)
  573. end
  574. return {
  575. End = LastBolt.CFrame * CF(0, 0, -LastBolt.Size.Z / 2).p,
  576. LastBolt = LastBolt,
  577. Model = LIGHTNINGMODEL
  578. }
  579. end
  580. local Particle = IT("ParticleEmitter", nil)
  581. Particle.Enabled = false
  582. Particle.Transparency = NumberSequence.new({
  583. NumberSequenceKeypoint.new(0, 0),
  584. NumberSequenceKeypoint.new(0.7, 0),
  585. NumberSequenceKeypoint.new(1, 1)
  586. })
  587. Particle.LightEmission = 0.5
  588. Particle.Rate = 500
  589. Particle.Rotation = NumberRange.new(-180, 180)
  590. Particle.RotSpeed = NumberRange.new(-180, 180)
  591. Particle.Texture = "http://www.roblox.com/asset/?id=51349099"
  592. Particle.Color = ColorSequence.new(C3(1, 1, 1))
  593. function ParticleEmitter(Table)
  594. local PRTCL = Particle:Clone()
  595. local Speed = Table.Speed or 5
  596. local Drag = Table.Drag or 0
  597. local Size1 = Table.Size1 or 1
  598. local Size2 = Table.Size2 or 5
  599. local Lifetime1 = Table.Lifetime1 or 1
  600. local Lifetime2 = Table.Lifetime2 or 1.5
  601. local Parent = Table.Parent or Torso
  602. local Emit = Table.Emit or 100
  603. local Offset = Table.Offset or 360
  604. local Enabled = Table.Enabled or false
  605. PRTCL.Parent = Parent
  606. PRTCL.Size = NumberSequence.new(Size1, Size2)
  607. PRTCL.Lifetime = NumberRange.new(Lifetime1, Lifetime2)
  608. PRTCL.Speed = NumberRange.new(Speed)
  609. PRTCL.VelocitySpread = Offset
  610. PRTCL.Drag = Drag
  611. if Enabled == false then
  612. PRTCL:Emit(Emit)
  613. Debris:AddItem(PRTCL, Lifetime2)
  614. else
  615. PRTCL.Enabled = true
  616. end
  617. return PRTCL
  618. end
  619. local RWING = CreatePart(3, Weapon, "Neon", 0, 1, "Pearl", "Right Wing", VT(2, 3, 2) * 1.5, false)
  620. RWING.Color = C3(0.807843137254902, 0.6392156862745098, 0.8549019607843137)
  621. local RWELD = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, RWING, CF(1, 2, 0.5), CF(-1.5, 0, 0))
  622. local LWING = CreatePart(3, Weapon, "Neon", 0, 1, "Pearl", "Left Wing", VT(2, 3, 2) * 1.5, false)
  623. LWING.Color = C3(0.807843137254902, 0.6392156862745098, 0.8549019607843137)
  624. local LWELD = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, LWING, CF(-1, 2, 0.5), CF(1.6, 0, 0))
  625. CreateMesh("SpecialMesh", RWING, "FileMesh", "90615661", "", VT(1.5, 1.5, 1.5) * 0.8, VT(0, 0, 0))
  626. CreateMesh("SpecialMesh", LWING, "FileMesh", "90615581", "", VT(1.5, 1.5, 1.5) * 0.8, VT(0, 0, 0))
  627. local Mask = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Mask", VT(1, 1, 1), false)
  628. CreateMesh("SpecialMesh", Mask, "FileMesh", "395088733", "", VT(0.5, 0.5, 1), VT(0, 0, 0))
  629. CreateWeldOrSnapOrMotor("Weld", Head, Head, Mask, CF(0, 0, -0.5), CF(0, 0, 0))
  630. local Mask = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "New Yeller", "Mask", VT(1.3, 0.1, 1.3), false)
  631. MakeForm(Mask, "Cyl")
  632. CreateWeldOrSnapOrMotor("Weld", Head, Head, Mask, CF(0, 0.2, 0), CF(0, 0, 0))
  633. local Black = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Mask", VT(0.2, 0.7, 0.3), false)
  634. Black.Color = C3(0, 0, 0)
  635. MakeForm(Black, "Ball")
  636. CreateWeldOrSnapOrMotor("Weld", Head, Head, Black, CF(0, 0.05, -0.6), CF(0, 0, 0))
  637. local Black = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Mask", VT(1, 0.2, 0.3), false)
  638. Black.Color = C3(0, 0, 0)
  639. MakeForm(Black, "Ball")
  640. CreateWeldOrSnapOrMotor("Weld", Head, Head, Black, CF(0, 0.1, -0.6), CF(0, 0, 0))
  641. local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Magenta", "Mask", VT(0.1, 0.1, 0.1), false)
  642. MakeForm(Eye, "Ball")
  643. CreateWeldOrSnapOrMotor("Weld", Head, Head, Eye, CF(0.22, 0.1, -0.7), CF(0, 0, 0))
  644. local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Magenta", "Mask", VT(0.1, 0.1, 0.1), false)
  645. MakeForm(Eye, "Ball")
  646. CreateWeldOrSnapOrMotor("Weld", Head, Head, Eye, CF(-0.22, 0.1, -0.7), CF(0, 0, 0))
  647. local Horns = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "New Yeller", "Horns", VT(1, 1, 1), false)
  648. CreateWeldOrSnapOrMotor("Weld", Head, Head, Horns, CF(0, 0.6, 0.1), CF(0, 0, 0))
  649. local MSH = CreateMesh("SpecialMesh", Horns, "FileMesh", "704130637", "", VT(0.17, 0.17, 0.17), VT(0, 0, 0))
  650. MSH.VertexColor = VT(1, 1, 0.5)
  651. local MaskPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Mask", VT(0.4, 0.4, 0.4), false)
  652. MakeForm(MaskPart, "Ball")
  653. CreateWeldOrSnapOrMotor("Weld", Head, Head, MaskPart, CF(-0.35, 0.35, -0.5), CF(0, 0, 0))
  654. local MaskPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Mask", VT(0.4, 0.4, 0.4), false)
  655. MakeForm(MaskPart, "Ball")
  656. CreateWeldOrSnapOrMotor("Weld", Head, Head, MaskPart, CF(0.35, 0.35, -0.5), CF(0, 0, 0))
  657. local Handle = CreatePart(3, Weapon, "Glass", 0, 0, "New Yeller", "Handle", VT(0.2, 1, 0.2), false)
  658. MakeForm(Handle, "Cyl")
  659. local Grasp = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Handle, CF(0, -1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  660. local Bop = CreatePart(3, Weapon, "Glass", 0, 0, "New Yeller", "Bop", VT(0.5, 0.5, 0.5), false)
  661. MakeForm(Bop, "Ball")
  662. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Bop, CF(0, 0.7, 0), CF(0, 0, 0))
  663. local Part = CreatePart(3, Weapon, "Glass", 0, 0, "Black", "Shield", VT(0.5, 0.2, 0.5), false)
  664. MakeForm(Part, "Pine")
  665. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  666. local Part = CreatePart(3, Weapon, "Glass", 0, 0, "Dark blue", "Shield", VT(0.6, 0.3, 0.6), false)
  667. MakeForm(Part, "Pine")
  668. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  669. local Blade = CreatePart(3, Weapon, "Glass", 0, 0, "Magenta", "Blade", VT(0.3, 5, 0.3), false)
  670. MakeForm(Blade, "Pine")
  671. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Blade, CF(0, -2.5, 0) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  672. local Shield = CreatePart(3, Weapon, "Glass", 0, 0, "New Yeller", "Shield", VT(1.05, 0.1, 1.05), false)
  673. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(0, -0.3, 0), CF(0, 0, 0))
  674. local ShieldBase = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Shield", VT(2, 2, 1), false)
  675. CreateMesh("SpecialMesh", ShieldBase, "FileMesh", "395088733", "", VT(1, 1, 1), VT(0, 0, 0))
  676. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, ShieldBase, CF(-0.5, -0.3, 0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  677. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Shield", VT(0, 0, 0), false)
  678. CreateMesh("SpecialMesh", Shield, "FileMesh", "395088733", "", VT(0.95, 0.95, 1), VT(0, 0, 0))
  679. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.4, -0.3, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)), CF(0, 0, 0))
  680. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Magenta", "Shield", VT(0, 0, 0), false)
  681. CreateMesh("SpecialMesh", Shield, "FileMesh", "395088733", "", VT(0.95, 0.95, 1), VT(0, 0, 0))
  682. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.515, -0.3, 0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  683. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Pearl", "Shield", VT(0, 0, 0), false)
  684. CreateMesh("SpecialMesh", Shield, "FileMesh", "395088733", "", VT(0.7, 0.7, 1), VT(0, 0, 0))
  685. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.6, -0.3, 0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  686. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Magenta", "Shield", VT(0, 0, 0), false)
  687. CreateMesh("SpecialMesh", Shield, "FileMesh", "395088733", "", VT(0.5, 0.5, 1), VT(0, 0, 0))
  688. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.65, -0.3, 0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  689. local Shield = CreatePart(3, Weapon, "Glass", 0, 0, "New Yeller", "Shield", VT(0.8, 2, 0.2), false)
  690. MakeForm(Shield, "Ball")
  691. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.65, -0.3, 0), CF(0, 0, 0))
  692. local Shield = CreatePart(3, Weapon, "Glass", 0, 0, "New Yeller", "Shield", VT(0.8, 0.2, 2), false)
  693. MakeForm(Shield, "Ball")
  694. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.65, -0.3, 0), CF(0, 0, 0))
  695. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Magenta", "Shield", VT(0.8, 2, 0.3), false)
  696. MakeForm(Shield, "Ball")
  697. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.6, -0.3, 0), CF(0, 0, 0))
  698. local Shield = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Magenta", "Shield", VT(0.8, 0.3, 2), false)
  699. MakeForm(Shield, "Ball")
  700. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Shield, CF(-0.6, -0.3, 0), CF(0, 0, 0))
  701. local SKILLTEXTCOLOR = BRICKC("Magenta").Color
  702. local SKILLFONT = "SciFi"
  703. local SKILLTEXTSIZE = 12
  704. Humanoid.DisplayDistanceType = "None"
  705. local naeeym2 = IT("BillboardGui", Character)
  706. naeeym2.AlwaysOnTop = true
  707. naeeym2.Size = UDim2.new(5, 35, 2, 15)
  708. naeeym2.StudsOffset = Vector3.new(0, 1.3, 0)
  709. naeeym2.MaxDistance = 75
  710. naeeym2.Adornee = Character.Head
  711. naeeym2.Name = "Name"
  712. naeeym2.PlayerToHideFrom = Player
  713. local tecks2 = IT("TextLabel", naeeym2)
  714. tecks2.BackgroundTransparency = 1
  715. tecks2.TextScaled = true
  716. tecks2.BorderSizePixel = 0
  717. tecks2.Text = Player.Name
  718. tecks2.Font = "SciFi"
  719. tecks2.TextSize = 30
  720. tecks2.TextStrokeTransparency = 0
  721. tecks2.TextColor3 = C3(1, 1, 1)
  722. tecks2.TextStrokeColor3 = SKILLTEXTCOLOR
  723. tecks2.Size = UDim2.new(1, 0, 0.5, 0)
  724. tecks2.Parent = naeeym2
  725. for _, c in pairs(Weapon:GetChildren()) do
  726. if c.ClassName == "Part" then
  727. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  728. end
  729. end
  730. Weapon.Parent = Character
  731. Humanoid.Died:connect(function()
  732. ATTACK = true
  733. end)
  734. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Frame")
  735. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[ Z - B - C - V - G - X - Q ]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text")
  736. function ApplyDamage(Humanoid, Damage, TorsoPart)
  737. local defence = Instance.new("BoolValue", Humanoid.Parent)
  738. defence.Name = "HitBy" .. Player.Name
  739. game:GetService("Debris"):AddItem(defence, 0.001)
  740. Damage = Damage * DAMAGEMULTIPLIER
  741. if Humanoid.Health ~= 0 then
  742. local CritChance = MRANDOM(1, 100)
  743. if Damage > Humanoid.Health then
  744. Damage = math.ceil(Humanoid.Health)
  745. if Damage == 0 then
  746. Damage = 0.1
  747. end
  748. end
  749. Humanoid.Health = Humanoid.Health - Damage
  750. end
  751. end
  752. function ApplyAoE(POSITION, RANGE, MINDMG, MAXDMG, FLING, FRAME)
  753. local CHILDREN = workspace:GetDescendants()
  754. for index, CHILD in pairs(CHILDREN) do
  755. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD:FindFirstChild(Player.Name .. "Frames") == nil then
  756. do
  757. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  758. if HUM then
  759. do
  760. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  761. if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude and HUM.Health > 0 then
  762. do
  763. local FRAMES = IT("Folder", CHILD)
  764. FRAMES.Name = Player.Name .. "Frames"
  765. local DMG = 0
  766. if MINDMG > 1 then
  767. DMG = MRANDOM(MINDMG, MAXDMG)
  768. else
  769. DMG = MINDMG
  770. end
  771. ApplyDamage(HUM, DMG, TORSO)
  772. CreateSound(12222242, TORSO, 5, 1, false)
  773. coroutine.resume(coroutine.create(function()
  774. for _, c in pairs(CHILD:GetDescendants()) do
  775. if c:IsA("BasePart") then
  776. local bv = Instance.new("BodyVelocity")
  777. bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
  778. if POSITION.Y < TORSO.Position.Y then
  779. bv.velocity = CF(POSITION, TORSO.Position + VT(0, TORSO.Position.Y - POSITION.Y, 0)).lookVector * FLING
  780. else
  781. bv.velocity = CF(POSITION, TORSO.Position + VT(0, 5, 0)).lookVector * FLING
  782. end
  783. bv.Parent = c
  784. c.Reflectance = c.Transparency
  785. c.Transparency = 1
  786. Debris:AddItem(bv, 0.05)
  787. end
  788. end
  789. if 0 < HUM.Health then
  790. if FRAME > 0 then
  791. for i = 1, FRAME do
  792. for _, c in pairs(CHILD:GetDescendants()) do
  793. if c:IsA("BasePart") then
  794. c.Transparency = c.Reflectance
  795. c.Reflectance = 0
  796. end
  797. end
  798. wait()
  799. for _, c in pairs(CHILD:GetDescendants()) do
  800. if c:IsA("BasePart") then
  801. c.Reflectance = c.Transparency
  802. c.Transparency = 1
  803. end
  804. end
  805. wait()
  806. end
  807. else
  808. coroutine.resume(coroutine.create(function()
  809. HUM.CameraOffset = VT(MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65)
  810. end))
  811. TORSO.CFrame = TORSO.CFrame * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
  812. end
  813. for _, c in pairs(CHILD:GetDescendants()) do
  814. if c:IsA("BasePart") then
  815. c.Transparency = c.Reflectance
  816. c.Reflectance = 0
  817. end
  818. end
  819. else
  820. for _, c in pairs(CHILD:GetDescendants()) do
  821. if c:IsA("BasePart") then
  822. c.Transparency = c.Reflectance
  823. c.Reflectance = 0
  824. end
  825. end
  826. end
  827. coroutine.resume(coroutine.create(function()
  828. HUM.CameraOffset = VT(0, 0, 0)
  829. end))
  830. FRAMES:remove()
  831. end))
  832. end
  833. end
  834. end
  835. end
  836. end
  837. end
  838. end
  839. end
  840. function X()
  841. ATTACK = true
  842. Rooted = true
  843. local TOAIM = Mouse.Hit.p
  844. turnto(Mouse.Hit.p)
  845. local DONE = false
  846. Humanoid.HipHeight = 5
  847. for i = 0, 0.2, 0.1 / Animation_Speed do
  848. Swait()
  849. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 3 / Animation_Speed)
  850. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), 0.75 / Animation_Speed)
  851. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  852. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-35), RAD(12)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  853. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(35), RAD(-12)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  854. end
  855. for i = 0, 1.3, 0.1 / Animation_Speed do
  856. Swait()
  857. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.5 * COS(SINE), 0) * ANGLES(RAD(0), RAD(0), RAD(230)), 0.75 / Animation_Speed)
  858. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(-50)), 0.75 / Animation_Speed)
  859. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(75), RAD(35), RAD(-35)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  860. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  861. end
  862. CreateSound(1537955136, Blade, 5, 1, false)
  863. local SLICE = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "Slash", VT(0, 16, 0))
  864. MakeForm(SLICE, "Ball")
  865. CreateSound(342793847, SLICE, 5, 3, false)
  866. SLICE.CFrame = CF(RootPart.CFrame * CF(0, 0, 4).p, TOAIM) * ANGLES(RAD(0), RAD(0), RAD(-45))
  867. ParticleEmitter({
  868. Speed = 2,
  869. Drag = 3,
  870. Size1 = 0.2,
  871. Size2 = 1,
  872. Lifetime1 = 1,
  873. Lifetime2 = 3,
  874. Parent = SLICE,
  875. Emit = 15,
  876. Offset = 360,
  877. Enabled = false
  878. })
  879. coroutine.resume(coroutine.create(function()
  880. Swait(35)
  881. SLICE.Transparency = 0
  882. for i = 1, 45 do
  883. Swait()
  884. SLICE.Size = SLICE.Size + VT(1 + i / 45, 0, 0) / 5
  885. end
  886. wait(0.3)
  887. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "SlashBeam", VT(0, 0, 0))
  888. MakeForm(BEAM, "Cyl")
  889. BEAM.Color = SLICE.Color
  890. local AIMHIT, AIMPOS = CastProperRay(SLICE.Position, TOAIM, 750, Character)
  891. local DISTANCE = (SLICE.Position - AIMPOS).Magnitude
  892. BEAM.CFrame = CF(SLICE.Position, AIMPOS) * CF(0, 0, -(DISTANCE / 2) - 7.5) * ANGLES(RAD(90), RAD(0), RAD(0))
  893. BEAM.Size = VT(0, DISTANCE + 15, 0)
  894. BEAM.Mesh.Scale = VT(1.8, 1, 1.8)
  895. local BOP = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "Bop", VT(0, 0, 0))
  896. MakeForm(BOP, "Ball")
  897. BOP.Color = SLICE.Color
  898. BOP.CFrame = BEAM.CFrame * CF(0, -BEAM.Size.Y / 2, 0)
  899. wait(0.1)
  900. local SIZE = SLICE.Size.X
  901. local SOUND = CreateSound(415700134, SLICE, 10, 1, false)
  902. local PRT = ParticleEmitter({
  903. Speed = 0,
  904. Drag = 0,
  905. Size1 = 0.3,
  906. Size2 = 0.7,
  907. Lifetime1 = 1,
  908. Lifetime2 = 1.5,
  909. Parent = BEAM,
  910. Emit = 100,
  911. Offset = 360,
  912. Enabled = true
  913. })
  914. PRT.ZOffset = 12
  915. for i = 1, 25 do
  916. Swait()
  917. for i = 1, math.ceil(BEAM.Size.Y / 5) do
  918. ApplyAoE(BEAM.CFrame * CF(0, BEAM.Size.Y / 2 - i * 5, 0).p, BEAM.Size.X / 1.5, 1, 1, 5, 0)
  919. end
  920. BEAM.Size = BEAM.Size + VT(SIZE / 25, 0, SIZE / 25) / 1.8
  921. BOP.Size = BOP.Size + VT(SIZE / 25, SIZE / 25, SIZE / 25)
  922. Humanoid.CameraOffset = VT(MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65)
  923. end
  924. repeat
  925. Swait()
  926. BOP.CFrame = BEAM.CFrame * CF(0, -BEAM.Size.Y / 2, 0)
  927. SOUND.Parent = SLICE
  928. for i = 1, math.ceil(BEAM.Size.Y / 5) do
  929. ApplyAoE(BEAM.CFrame * CF(0, BEAM.Size.Y / 2 - i * 5, 0).p, BEAM.Size.X, 1, 1, 5, 0)
  930. end
  931. Humanoid.CameraOffset = VT(MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65, MRANDOM(-35, 35) / 65)
  932. until SOUND.Playing == false
  933. BOP:remove()
  934. BEAM:remove()
  935. DONE = true
  936. Humanoid.CameraOffset = VT(0, 0, 0)
  937. for i = 1, 45 do
  938. Swait()
  939. SLICE.Size = SLICE.Size - VT(1 + i / 45, 0, 0) / 5
  940. end
  941. SLICE:remove()
  942. end))
  943. for i = 0, 1, 0.1 / Animation_Speed do
  944. Swait()
  945. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(40), RAD(0), RAD(0)), 3 / Animation_Speed)
  946. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(130)), 3 / Animation_Speed)
  947. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(0)), 3 / Animation_Speed)
  948. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-5), RAD(-75), RAD(45)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
  949. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  950. end
  951. FORCEWINGS = true
  952. for i = 1, 200 do
  953. Swait()
  954. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 3 / Animation_Speed)
  955. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(180 + i)) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(i, -i, i * 5), 0.75 / Animation_Speed)
  956. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  957. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-35), RAD(12)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  958. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(35), RAD(-12)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  959. end
  960. repeat
  961. wait()
  962. until DONE == true
  963. RootJoint.C0 = CF(0, 300, 0)
  964. Humanoid.HipHeight = 1
  965. for i = 1, 50 do
  966. Swait()
  967. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(40), RAD(0), RAD(0)), 3 / Animation_Speed)
  968. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0), 0.25 / Animation_Speed)
  969. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  970. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-35), RAD(32)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  971. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(35), RAD(-32)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  972. end
  973. ATTACK = false
  974. Rooted = false
  975. FORCEWINGS = false
  976. end
  977. function Intro()
  978. ATTACK = true
  979. Rooted = true
  980. for i = 0, 0.2, 0.1 / Animation_Speed do
  981. Swait()
  982. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.7, 0.85) * ANGLES(RAD(0), RAD(-15), RAD(0)), 0.75 / Animation_Speed)
  983. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.7, 0.85) * ANGLES(RAD(0), RAD(15), RAD(0)), 0.75 / Animation_Speed)
  984. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(50)), 0.75 / Animation_Speed)
  985. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(-50)), 0.75 / Animation_Speed)
  986. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(75), RAD(35), RAD(-35)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  987. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  988. end
  989. for i = 0, 3, 0.1 / Animation_Speed do
  990. Swait()
  991. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.7, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  992. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.7, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  993. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 - 0.5 * COS(SINE), 0, 0) * ANGLES(RAD(0), RAD(0), RAD(50)), 0.75 / Animation_Speed)
  994. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(-50)), 0.75 / Animation_Speed)
  995. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(75), RAD(35), RAD(-35)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  996. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  997. end
  998. CreateSound(1537955136, Blade, 5, 1, false)
  999. RWING.Transparency = 0
  1000. LWING.Transparency = 0
  1001. for i = 1, 15 do
  1002. Swait()
  1003. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.7, 0.55) * ANGLES(RAD(0), RAD(15), RAD(0)), 0.75 / Animation_Speed)
  1004. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.7, 0.55) * ANGLES(RAD(0), RAD(-15), RAD(0)), 0.75 / Animation_Speed)
  1005. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-50 - i / 15 * 360)), 0.75 / Animation_Speed)
  1006. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(50)), 0.75 / Animation_Speed)
  1007. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-5), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1008. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1009. end
  1010. for i = 1, 15 do
  1011. Swait()
  1012. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.7, 0.55) * ANGLES(RAD(0), RAD(15), RAD(0)), 0.75 / Animation_Speed)
  1013. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.7, 0.55) * ANGLES(RAD(0), RAD(-15), RAD(0)), 0.75 / Animation_Speed)
  1014. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-50)), 0.75 / Animation_Speed)
  1015. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(50)), 0.75 / Animation_Speed)
  1016. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-5), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1017. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1018. end
  1019. for i = 0, 1, 0.1 / Animation_Speed do
  1020. Swait()
  1021. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.5, 0.85) * ANGLES(RAD(-25), RAD(65), RAD(0)), 0.75 / Animation_Speed)
  1022. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.5, 0.85) * ANGLES(RAD(-25), RAD(-65), RAD(0)), 0.75 / Animation_Speed)
  1023. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1024. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1025. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1026. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1027. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(80), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1028. end
  1029. ATTACK = false
  1030. Rooted = false
  1031. end
  1032. function Z()
  1033. ATTACK = true
  1034. Rooted = true
  1035. CreateSound(1537955136, Torso, 5, 1, false)
  1036. for i = 1, 15 do
  1037. Swait()
  1038. RootPart.CFrame = RootPart.CFrame * CF(0, 0, 0.5)
  1039. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + i / 15 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.75 / Animation_Speed)
  1040. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(75)), 0.75 / Animation_Speed)
  1041. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(15 - 5 * COS(SINE / 12)), RAD(-35), RAD(35 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1042. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1043. end
  1044. for i = 0, 0.3, 0.1 / Animation_Speed do
  1045. Swait()
  1046. RootPart.CFrame = RootPart.CFrame * CF(0, 0, 0.015)
  1047. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.75 / Animation_Speed)
  1048. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(75)), 0.75 / Animation_Speed)
  1049. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(15 - 5 * COS(SINE / 12)), RAD(-35), RAD(35 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1050. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1051. end
  1052. FORCEWINGS = true
  1053. for i = 1, 10 do
  1054. for i = 0, 0.02, 0.1 / Animation_Speed do
  1055. Swait()
  1056. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), 2 / Animation_Speed)
  1057. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(85)), 2 / Animation_Speed)
  1058. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)), 2 / Animation_Speed)
  1059. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  1060. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  1061. end
  1062. do
  1063. local RANDOM = MRANDOM(-7, 7) / 5
  1064. local RANDOM2 = MRANDOM(-7, 7) / 5
  1065. for i = 0, 0.01, 0.1 / Animation_Speed do
  1066. Swait()
  1067. RootPart.CFrame = RootPart.CFrame * CF(0, 0, -0.2)
  1068. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), 3 / Animation_Speed)
  1069. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 3 / Animation_Speed)
  1070. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 3 / Animation_Speed)
  1071. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.75, 0.5 + RANDOM, 0 + RANDOM2) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
  1072. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  1073. end
  1074. local WAVES = {}
  1075. coroutine.resume(coroutine.create(function()
  1076. repeat
  1077. Swait()
  1078. for E = 1, #WAVES do
  1079. if WAVES[E] ~= nil then
  1080. ApplyAoE(WAVES[E].Position, 3, 25, 35, 35, 3)
  1081. if WAVES[E].Transparency > 0.99 then
  1082. WAVES[E]:remove()
  1083. table.remove(WAVES, E)
  1084. else
  1085. WAVES[E].CFrame = WAVES[E].CFrame * CF(0, 1.2, 0)
  1086. WAVES[E].Transparency = WAVES[E].Transparency + 0.03
  1087. end
  1088. end
  1089. end
  1090. until #WAVES == 0
  1091. end))
  1092. local Wave = CreatePart(3, Effects, "Glass", 0, 0.25, "New Yeller", "Wave", VT(1, 3, 1))
  1093. MakeForm(Wave, "Pine")
  1094. Wave.CFrame = Blade.CFrame
  1095. table.insert(WAVES, Wave)
  1096. CreateSound(1537955679, Wave, 7, 1, true)
  1097. end
  1098. end
  1099. ATTACK = false
  1100. Rooted = false
  1101. FORCEWINGS = false
  1102. end
  1103. function B()
  1104. ATTACK = true
  1105. Rooted = false
  1106. FORCEWINGS = true
  1107. for i = 0, 1, 0.1 / Animation_Speed do
  1108. Swait()
  1109. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(170), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1110. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.5 * COS(SINE), 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1111. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1112. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.3) * ANGLES(RAD(140), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1113. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.3) * ANGLES(RAD(140), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1114. end
  1115. CreateSound(1537955679, Blade, 7, 0.7, false)
  1116. Rooted = true
  1117. for i = 0, 0.4, 0.1 / Animation_Speed do
  1118. Swait()
  1119. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(115), RAD(-35), RAD(0)), 0.75 / Animation_Speed)
  1120. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1121. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1122. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1123. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1124. end
  1125. coroutine.resume(coroutine.create(function()
  1126. local FRAME = RootPart.CFrame * CF(0, -5, -0.5)
  1127. for i = 1, 125 do
  1128. Swait()
  1129. FRAME = FRAME * CF(0, 0, -1)
  1130. ApplyAoE(FRAME.p, 5, 45, 55, 35, 15)
  1131. WACKYEFFECT({
  1132. Time = 25,
  1133. EffectType = "Sphere",
  1134. Size = VT(1, 18, 1),
  1135. Size2 = VT(1, 0, 1),
  1136. Transparency = 0,
  1137. Transparency2 = 1,
  1138. CFrame = FRAME,
  1139. MoveToPos = nil,
  1140. RotationX = 0,
  1141. RotationY = 0,
  1142. RotationZ = 0,
  1143. Material = "Neon",
  1144. Color = RWING.Color,
  1145. SoundID = nil,
  1146. SoundPitch = nil,
  1147. SoundVolume = nil
  1148. })
  1149. end
  1150. end))
  1151. for i = 0, 0.2, 0.1 / Animation_Speed do
  1152. Swait()
  1153. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(115), RAD(-35), RAD(0)), 0.75 / Animation_Speed)
  1154. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1155. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1156. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1157. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1158. end
  1159. FORCEWINGS = false
  1160. ATTACK = false
  1161. Rooted = false
  1162. end
  1163. function C()
  1164. FORCEWINGS = true
  1165. ATTACK = true
  1166. for i = 0, 1, 0.1 / Animation_Speed do
  1167. Swait()
  1168. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1169. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1170. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1171. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1172. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(80), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1173. end
  1174. Rooted = true
  1175. local Orb = CreatePart(3, Effects, "Neon", 0, 0, "Pearl", "Orb", VT(0, 0, 0))
  1176. MakeForm(Orb, "Ball")
  1177. Orb.CFrame = Blade.CFrame * CF(0, 2.25, 0)
  1178. for i = 1, 35 do
  1179. Swait()
  1180. Orb.CFrame = Blade.CFrame * CF(0, 2.25, 0)
  1181. Orb.Size = Orb.Size + VT(0.05, 0.05, 0.05)
  1182. end
  1183. local MAIN = CreatePart(3, Effects, "Neon", 0, 0, "Pearl", "Beam", VT(0, 0, 0))
  1184. MakeForm(MAIN, "Cyl")
  1185. for i = 1, 200 do
  1186. Swait()
  1187. local AIMHIT, AIMPOS = CastProperRay(Orb.Position, Mouse.Hit.p, 750, Character)
  1188. local DISTANCE = (Orb.Position - AIMPOS).Magnitude
  1189. MAIN.CFrame = CF(Orb.Position, AIMPOS) * CF(0, 0, -DISTANCE / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
  1190. MAIN.Size = VT(0.7, DISTANCE, 0.7)
  1191. ApplyAoE(AIMPOS, 3, 35, 65, 35, 20)
  1192. end
  1193. MAIN:remove()
  1194. ATTACK = false
  1195. Rooted = false
  1196. FORCEWINGS = false
  1197. for i = 1, 35 do
  1198. Swait()
  1199. Orb.Size = Orb.Size - VT(0.05, 0.05, 0.05)
  1200. end
  1201. Orb:remove()
  1202. end
  1203. function V()
  1204. FORCEWINGS = true
  1205. ATTACK = true
  1206. Rooted = true
  1207. local AREAS = {}
  1208. for i = 1, 15 do
  1209. local AREA = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(6, 35)).p
  1210. local HITFLOOR, HITPOS = CastProperRay(AREA + VT(0, 35, 0), AREA - VT(0, 35, 0), 65, Character)
  1211. if HITFLOOR then
  1212. table.insert(AREAS, HITPOS)
  1213. end
  1214. end
  1215. for E = 1, 35 do
  1216. Swait()
  1217. for i = 1, #AREAS do
  1218. WACKYEFFECT({
  1219. Time = 5,
  1220. EffectType = "Wave",
  1221. Size = VT(5, 1, 5),
  1222. Size2 = VT(5, 1, 5),
  1223. Transparency = 0.5,
  1224. Transparency2 = 1,
  1225. CFrame = CF(AREAS[i]) * ANGLES(RAD(0), RAD(E), RAD(0)),
  1226. MoveToPos = nil,
  1227. RotationX = 0,
  1228. RotationY = 0,
  1229. RotationZ = 0,
  1230. Material = "Neon",
  1231. Color = RWING.Color,
  1232. SoundID = nil,
  1233. SoundPitch = nil,
  1234. SoundVolume = nil
  1235. })
  1236. end
  1237. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.5 * COS(SINE), 0) * ANGLES(RAD(0), RAD(0), RAD(-50)), 0.75 / Animation_Speed)
  1238. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(35), RAD(0), RAD(50)), 0.75 / Animation_Speed)
  1239. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-5), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1240. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1241. end
  1242. for E = 1, 12 do
  1243. Swait()
  1244. for i = 1, #AREAS do
  1245. WACKYEFFECT({
  1246. Time = 5,
  1247. EffectType = "Wave",
  1248. Size = VT(5, 1, 5),
  1249. Size2 = VT(5, 1, 5),
  1250. Transparency = 0.5,
  1251. Transparency2 = 1,
  1252. CFrame = CF(AREAS[i]) * ANGLES(RAD(0), RAD(E + 35), RAD(0)),
  1253. MoveToPos = nil,
  1254. RotationX = 0,
  1255. RotationY = 0,
  1256. RotationZ = 0,
  1257. Material = "Neon",
  1258. Color = RWING.Color,
  1259. SoundID = nil,
  1260. SoundPitch = nil,
  1261. SoundVolume = nil
  1262. })
  1263. end
  1264. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1265. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1266. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1267. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1268. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(80), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1269. end
  1270. for i = 1, #AREAS do
  1271. ApplyAoE(AREAS[i], 15, 45, 55, 35, 20)
  1272. Lightning({
  1273. Color = BRICKC("New Yeller").Color,
  1274. Start = AREAS[i],
  1275. End = AREAS[i] + VT(0, 100, 0),
  1276. SegmentL = 2,
  1277. Thickness = 0.2,
  1278. DoesFade = true,
  1279. Ignore = workspace,
  1280. MaxDist = 30,
  1281. Branches = false
  1282. })
  1283. Lightning({
  1284. Color = RWING.Color,
  1285. Start = AREAS[i],
  1286. End = AREAS[i] + VT(0, 100, 0),
  1287. SegmentL = 2,
  1288. Thickness = 0.3,
  1289. DoesFade = true,
  1290. Ignore = workspace,
  1291. MaxDist = 35,
  1292. Branches = false
  1293. })
  1294. WACKYEFFECT({
  1295. Time = 15,
  1296. EffectType = "Wave",
  1297. Size = VT(10, 0, 10),
  1298. Size2 = VT(9, 5, 9),
  1299. Transparency = 0,
  1300. Transparency2 = 1,
  1301. CFrame = CF(AREAS[i]),
  1302. MoveToPos = nil,
  1303. RotationX = 0,
  1304. RotationY = 5,
  1305. RotationZ = 0,
  1306. Material = "Neon",
  1307. Color = RWING.Color,
  1308. SoundID = 1537955136,
  1309. SoundPitch = MRANDOM(6, 8) / 10,
  1310. SoundVolume = 2
  1311. })
  1312. end
  1313. for i = 0, 0.5, 0.1 / Animation_Speed do
  1314. Swait()
  1315. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1316. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1317. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1318. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1319. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(80), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1320. end
  1321. FORCEWINGS = false
  1322. ATTACK = false
  1323. Rooted = false
  1324. end
  1325. function G()
  1326. ATTACK = true
  1327. Rooted = true
  1328. FORCEWINGS = true
  1329. CreateSound(1537955136, Torso, 5, 1, false)
  1330. for i = 1, 15 do
  1331. Swait()
  1332. RootPart.CFrame = RootPart.CFrame * CF(0, 0, 0.8)
  1333. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + i / 15 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.75 / Animation_Speed)
  1334. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(75)), 0.75 / Animation_Speed)
  1335. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(15 - 5 * COS(SINE / 12)), RAD(-35), RAD(35 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1336. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1337. end
  1338. for i = 0, 0.3, 0.1 / Animation_Speed do
  1339. Swait()
  1340. RootPart.CFrame = RootPart.CFrame * CF(0, 0, 0.015)
  1341. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.75 / Animation_Speed)
  1342. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(75)), 0.75 / Animation_Speed)
  1343. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(15 - 5 * COS(SINE / 12)), RAD(-35), RAD(35 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1344. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1345. end
  1346. for i = 0, 1, 0.1 / Animation_Speed do
  1347. Swait()
  1348. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(170), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1349. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.5 * COS(SINE), 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1350. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1351. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.3) * ANGLES(RAD(140), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1352. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.3) * ANGLES(RAD(140), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1353. end
  1354. CreateSound(1537955679, Blade, 7, 0.7, false)
  1355. for i = 0, 0.4, 0.1 / Animation_Speed do
  1356. Swait()
  1357. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(115), RAD(-35), RAD(0)), 0.75 / Animation_Speed)
  1358. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1359. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1360. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1361. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1362. end
  1363. local TORNADOBASE = CreatePart(3, Effects, "Neon", 0, 0, "Magenta", "Tornado", VT(5, 22.5, 5))
  1364. MakeForm(TORNADOBASE, "Ball")
  1365. TORNADOBASE.Mesh.Scale = VT(1, 8, 1)
  1366. local SWIRL = CreatePart(3, Effects, "Neon", 0, 0, "New Yeller", "Tornado", VT(0, 0, 0))
  1367. CreateMesh("SpecialMesh", SWIRL, "FileMesh", "1051557", "", VT(6, 135, 6), VT(0, 0, 0))
  1368. local SWIRL2 = CreatePart(3, Effects, "Neon", 0, 0, "New Yeller", "Tornado", VT(0, 0, 0))
  1369. CreateMesh("SpecialMesh", SWIRL2, "FileMesh", "1051557", "", VT(6, 135, 6), VT(0, 0, 0))
  1370. CreateSound(415700134, TORNADOBASE, 3, 0.5, true)
  1371. coroutine.resume(coroutine.create(function()
  1372. local FRAME = RootPart.CFrame * CF(0, -5, -0.5)
  1373. for E = 1, 185 do
  1374. Swait()
  1375. FRAME = FRAME * CF(0, 0, -0.8)
  1376. TORNADOBASE.CFrame = FRAME * CF(0, TORNADOBASE.Size.Y / 2, 0)
  1377. SWIRL.CFrame = TORNADOBASE.CFrame * ANGLES(RAD(0), RAD(E * 5), RAD(0))
  1378. SWIRL2.CFrame = TORNADOBASE.CFrame * ANGLES(RAD(0), RAD(-E * 15), RAD(0))
  1379. for i = 1, math.ceil(TORNADOBASE.Size.Y / 6) do
  1380. ApplyAoE(TORNADOBASE.CFrame * CF(0, TORNADOBASE.Size.Y / 2, 0) * CF(0, -i * 6, 0).p, 8, 2, 3, -35, 0)
  1381. end
  1382. WACKYEFFECT({
  1383. Time = 5,
  1384. EffectType = "Wave",
  1385. Size = VT(10, 8, 10),
  1386. Size2 = VT(0, 0, 0),
  1387. Transparency = 0,
  1388. Transparency2 = 1,
  1389. CFrame = CF(FRAME.p) * ANGLES(RAD(0), RAD(E * 5), RAD(0)),
  1390. MoveToPos = nil,
  1391. RotationX = 0,
  1392. RotationY = 5,
  1393. RotationZ = 0,
  1394. Material = "Neon",
  1395. Color = TORNADOBASE.Color,
  1396. SoundID = nil,
  1397. SoundPitch = MRANDOM(6, 8) / 10,
  1398. SoundVolume = 2
  1399. })
  1400. end
  1401. for i = 1, 15 do
  1402. Swait()
  1403. TORNADOBASE.Transparency = i / 15
  1404. SWIRL.Transparency = i / 15
  1405. SWIRL2.Transparency = i / 15
  1406. SWIRL.CFrame = SWIRL.CFrame * ANGLES(RAD(0), RAD(i * 5), RAD(0))
  1407. SWIRL2.CFrame = SWIRL2.CFrame * ANGLES(RAD(0), RAD(-i * 15), RAD(0))
  1408. end
  1409. TORNADOBASE:remove()
  1410. SWIRL:remove()
  1411. SWIRL2:remove()
  1412. end))
  1413. for i = 0, 0.2, 0.1 / Animation_Speed do
  1414. Swait()
  1415. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(115), RAD(-35), RAD(0)), 0.75 / Animation_Speed)
  1416. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1417. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1418. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-42)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1419. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(35), RAD(0), RAD(42)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1420. end
  1421. FORCEWINGS = false
  1422. ATTACK = false
  1423. Rooted = false
  1424. end
  1425. function MouseDown(Mouse)
  1426. if ATTACK == false then
  1427. end
  1428. end
  1429. function MouseUp(Mouse)
  1430. HOLD = false
  1431. end
  1432. function KeyDown(Key)
  1433. KEYHOLD = true
  1434. if VALUE1 == false then
  1435. if Key == "z" and ATTACK == false then
  1436. Z()
  1437. end
  1438. if Key == "b" and ATTACK == false then
  1439. B()
  1440. end
  1441. if Key == "c" and ATTACK == false then
  1442. C()
  1443. end
  1444. if Key == "v" and ATTACK == false then
  1445. V()
  1446. end
  1447. if Key == "g" and ATTACK == false then
  1448. G()
  1449. end
  1450. if Key == "x" and ATTACK == false then
  1451. X()
  1452. end
  1453. if Key == "q" and ATTACK == false then
  1454. VALUE1 = true
  1455. GYRO = IT("BodyGyro", RootPart)
  1456. GYRO.D = 75
  1457. GYRO.P = 40000
  1458. GYRO.MaxTorque = VT(40000, 40000, 40000)
  1459. GYRO.cframe = CF(RootPart.Position, RootPart.CFrame * CF(0, 0, -1).p)
  1460. FLIGHTFORCE = Instance.new("BodyPosition", RootPart)
  1461. FLIGHTFORCE.D = 215
  1462. FLIGHTFORCE.P = 20000
  1463. FLIGHTFORCE.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  1464. FLIGHTFORCE.position = RootPart.Position + VT(0, 1, 0)
  1465. end
  1466. elseif VALUE1 == true then
  1467. if Key == "q" and ATTACK == false then
  1468. VALUE1 = false
  1469. end
  1470. if Key == "w" and ATTACK == false then
  1471. CreateSound(1537955679, RWING, 7, 1.2, false)
  1472. CreateSound(1537955679, LWING, 7, 1.2, false)
  1473. repeat
  1474. VALUE2 = true
  1475. Swait()
  1476. FLIGHTFORCE.Position = RootPart.CFrame * CF(0, 0, -5).p
  1477. until KEYHOLD == false
  1478. VALUE2 = false
  1479. end
  1480. end
  1481. end
  1482. function KeyUp(Key)
  1483. KEYHOLD = false
  1484. end
  1485. Mouse.Button1Down:connect(function(NEWKEY)
  1486. MouseDown(NEWKEY)
  1487. end)
  1488. Mouse.Button1Up:connect(function(NEWKEY)
  1489. MouseUp(NEWKEY)
  1490. end)
  1491. Mouse.KeyDown:connect(function(NEWKEY)
  1492. KeyDown(NEWKEY)
  1493. end)
  1494. Mouse.KeyUp:connect(function(NEWKEY)
  1495. KeyUp(NEWKEY)
  1496. end)
  1497. function unanchor()
  1498. if UNANCHOR == true then
  1499. g = Character:GetChildren()
  1500. for i = 1, #g do
  1501. if g[i].ClassName == "Part" then
  1502. g[i].Anchored = false
  1503. end
  1504. end
  1505. end
  1506. end
  1507. Humanoid.Changed:connect(function(Jump)
  1508. if Jump == "Jump" and Disable_Jump == true then
  1509. Humanoid.Jump = false
  1510. end
  1511. end)
  1512. while true do
  1513. Swait()
  1514. script.Parent = WEAPONGUI
  1515. ANIMATE.Parent = nil
  1516. for _, v in next, Humanoid:GetPlayingAnimationTracks() do
  1517. v:Stop()
  1518. end
  1519. SINE = SINE + CHANGE * 2
  1520. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1521. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1522. if VALUE1 == false then
  1523. if GYRO ~= nil then
  1524. GYRO:remove()
  1525. end
  1526. if FLIGHTFORCE ~= nil then
  1527. FLIGHTFORCE:remove()
  1528. end
  1529. if ATTACK == false then
  1530. Grasp.C1 = Clerp(Grasp.C1, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1531. if TORSOVELOCITY < 1 then
  1532. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 0.75 / Animation_Speed)
  1533. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1534. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(5 - 5 * COS(SINE / 12)), RAD(-35), RAD(12 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1535. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1536. elseif TORSOVELOCITY > 1 then
  1537. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 - 0.1 * SIN(SINE / 12)) * ANGLES(RAD(35), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1538. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1539. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-35), RAD(12)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1540. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(25), RAD(-35), RAD(-12)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1541. end
  1542. end
  1543. elseif VALUE1 == true then
  1544. if VALUE2 == false and ATTACK == false then
  1545. if GYRO ~= nil then
  1546. GYRO.MaxTorque = VT(0, 40000, 0)
  1547. GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
  1548. end
  1549. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 0.75 / Animation_Speed)
  1550. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(35)), 0.75 / Animation_Speed)
  1551. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(5 - 5 * COS(SINE / 12)), RAD(-35), RAD(12 - 3 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1552. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-35), RAD(-12 + 3 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1553. elseif VALUE2 == true and ATTACK == false then
  1554. if GYRO ~= nil then
  1555. GYRO.MaxTorque = VT(40000, 40000, 40000)
  1556. GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
  1557. end
  1558. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(75), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1559. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-40), RAD(0), RAD(0)), 0.75 / Animation_Speed)
  1560. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-35), RAD(12)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  1561. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(25), RAD(-35), RAD(-12)) * LEFTSHOULDERC0, 0.75 / Animation_Speed)
  1562. end
  1563. end
  1564. if FORCEWINGS == true or ATTACK == false then
  1565. LWELD.C0 = Clerp(LWELD.C0, CF(-1, 1.5, 0.7 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(12 * COS(SINE / 12)), RAD(45), RAD(0)), 0.75 / Animation_Speed)
  1566. RWELD.C0 = Clerp(RWELD.C0, CF(1, 1.5, 0.7 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(12 * COS(SINE / 12)), RAD(-45), RAD(0)), 0.75 / Animation_Speed)
  1567. end
  1568. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.7, -0.4) * ANGLES(RAD(-25), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1569. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.7, -0.4) * ANGLES(RAD(-15), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1570. unanchor()
  1571. Humanoid.MaxHealth = "inf"
  1572. Humanoid.Health = "inf"
  1573. if Rooted == false then
  1574. Disable_Jump = false
  1575. Humanoid.WalkSpeed = Speed
  1576. elseif Rooted == true then
  1577. Disable_Jump = true
  1578. Humanoid.WalkSpeed = 0
  1579. end
  1580. sick.SoundId = "rbxassetid://152000442"
  1581. sick.Looped = true
  1582. sick.Pitch = 1
  1583. sick.Volume = 3
  1584. sick.Parent = Torso
  1585. sick:Resume()
  1586. if INTRO == false then
  1587. INTRO = true
  1588. coroutine.resume(coroutine.create(function()
  1589. Intro()
  1590. end))
  1591. end
  1592. for _, c in pairs(Character:GetChildren()) do
  1593. if c.ClassName == "CharacterMesh" or c.Name == "Body Colors" then
  1594. c:remove()
  1595. elseif c.ClassName == "Accessory" and c.Handle:FindFirstChild("HairAttachment") == nil then
  1596. c:remove()
  1597. end
  1598. end
  1599. Humanoid.Name = "Galacta " .. Player.Name
  1600. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement