Advertisement
goofy_faxts

Hooded ArcAngel Fe Compatible

Apr 19th, 2019 (edited)
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 62.32 KB | None | 0 0
  1. -- This script has convert to FE by who i don't know?
  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,game,owner = owner,game
  6. local RealPlayer = Player
  7. do
  8. print("FE Compatibility code by Mokiros | Showcase by Bacon Hair!")
  9. local rp = RealPlayer
  10. script.Parent = rp.Character
  11.  
  12. --RemoteEvent for communicating
  13. local Event = Instance.new("RemoteEvent")
  14. Event.Name = "UserInput_Event"
  15.  
  16. --Fake event to make stuff like Mouse.KeyDown work
  17. local function fakeEvent()
  18. local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  19. t.connect = t.Connect
  20. return t
  21. end
  22.  
  23. --Creating fake input objects with fake variables
  24. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  25. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  26. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  27. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  28. end}
  29. --Merged 2 functions into one by checking amount of arguments
  30. CAS.UnbindAction = CAS.BindAction
  31.  
  32. --This function will trigger the events that have been :Connect()'ed
  33. local function te(self,ev,...)
  34. local t = m[ev]
  35. if t and t._fakeEvent then
  36. for _,f in pairs(t.Functions) do
  37. f(...)
  38. end
  39. end
  40. end
  41. m.TrigEvent = te
  42. UIS.TrigEvent = te
  43.  
  44. Event.OnServerEvent:Connect(function(plr,io)
  45. if plr~=rp then return end
  46. m.Target = io.Target
  47. m.Hit = io.Hit
  48. if not io.isMouse then
  49. local b = io.UserInputState == Enum.UserInputState.Begin
  50. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  51. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  52. end
  53. for _,t in pairs(CAS.Actions) do
  54. for _,k in pairs(t.Keys) do
  55. if k==io.KeyCode then
  56. t.Function(t.Name,io.UserInputState,io)
  57. end
  58. end
  59. end
  60. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  61. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  62. end
  63. end)
  64. Event.Parent = NLS([==[
  65. local Player = game:GetService("Players").LocalPlayer
  66. local Event = script:WaitForChild("UserInput_Event")
  67.  
  68. local Mouse = Player:GetMouse()
  69. local UIS = game:GetService("UserInputService")
  70. local input = function(io,a)
  71. if a then return end
  72. --Since InputObject is a client-side instance, we create and pass table instead
  73. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  74. end
  75. UIS.InputBegan:Connect(input)
  76. UIS.InputEnded:Connect(input)
  77.  
  78. local h,t
  79. --Give the server mouse data 30 times every second, but only if the values changed
  80. --If player is not moving their mouse, client won't fire events
  81. while wait(1/30) do
  82. if h~=Mouse.Hit or t~=Mouse.Target then
  83. h,t=Mouse.Hit,Mouse.Target
  84. Event:FireServer({isMouse=true,Target=t,Hit=h})
  85. end
  86. end]==],Player.Character)
  87.  
  88. ----Sandboxed game object that allows the usage of client-side methods and services
  89. --Real game object
  90. local _rg = game
  91.  
  92. --Metatable for fake service
  93. local fsmt = {
  94. __index = function(self,k)
  95. local s = rawget(self,"_RealService")
  96. if s then return s[k] end
  97. end,
  98. __newindex = function(self,k,v)
  99. local s = rawget(self,"_RealService")
  100. if s then s[k]=v end
  101. end,
  102. __call = function(self,...)
  103. local s = rawget(self,"_RealService")
  104. if s then return s(...) end
  105. end
  106. }
  107. local function FakeService(t,RealService)
  108. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  109. return setmetatable(t,fsmt)
  110. end
  111.  
  112. --Fake game object
  113. local g = {
  114. GetService = function(self,s)
  115. return self[s]
  116. end,
  117. Players = FakeService({
  118. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  119. },"Players"),
  120. UserInputService = FakeService(UIS,"UserInputService"),
  121. ContextActionService = FakeService(CAS,"ContextActionService"),
  122. }
  123. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  124. g.service = g.GetService
  125.  
  126. g.RunService = FakeService({
  127. RenderStepped = _rg:GetService("RunService").Heartbeat,
  128. BindToRenderStep = function(self,name,_,fun)
  129.  
  130. end,
  131. UnbindFromRenderStep = function(self,name)
  132. self._btrs[name]:Disconnect()
  133. end,
  134. },"RunService")
  135.  
  136. setmetatable(g,{
  137. __index=function(self,s)
  138. return _rg:GetService(s) or typeof(_rg[s])=="function"
  139. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  140. end,
  141. __newindex = fsmt.__newindex,
  142. __call = fsmt.__call
  143. })
  144. --Changing owner to fake player object to support owner:GetMouse()
  145. game,owner = g,g.Players.LocalPlayer
  146. end
  147. --fixed by allahuahkbar
  148. --made by shackluster
  149.  
  150. --// \\--
  151. --|| MADE BY SHACKLUSTER ||--
  152. --|| FIXED BY ALLAHUAHKBAR ||--
  153. --|| ARCHANGEL ||--
  154. --\\ //--
  155.  
  156. --Converted with ttyyuu12345's model to script plugin v4
  157. function sandbox(var,func)
  158. local env = getfenv(func)
  159. local newenv = setmetatable({},{
  160. __index = function(self,k)
  161. if k=="script" then
  162. return var
  163. else
  164. return env[k]
  165. end
  166. end,
  167. })
  168. setfenv(func,newenv)
  169. return func
  170. end
  171. function NS(...)
  172. local tab = {...}
  173. local fat = {}
  174. for i = 1, #tab do
  175. local v = tab[i]
  176. table.insert(fat,NumberSequenceKeypoint.new(v[1],v[2]))
  177. end
  178. return NumberSequence.new(fat);
  179. end
  180.  
  181. cors = {}
  182. mas = Instance.new("Model",game:GetService("Lighting"))
  183. ParticleEmitter0 = Instance.new("ParticleEmitter")
  184. ParticleEmitter1 = Instance.new("ParticleEmitter")
  185. ParticleEmitter2 = Instance.new("ParticleEmitter")
  186. ParticleEmitter0.Name = "Flames"
  187. ParticleEmitter0.Parent = mas
  188. ParticleEmitter0.Speed = NumberRange.new(0, 15)
  189. ParticleEmitter0.Rotation = NumberRange.new(0, 360)
  190. ParticleEmitter0.Enabled = false
  191. ParticleEmitter0.LightEmission = 1
  192. ParticleEmitter0.LightInfluence = 1
  193. ParticleEmitter0.Transparency = NumberSequence.new(1,0)
  194. ParticleEmitter0.ZOffset = 1
  195. ParticleEmitter0.Size = NumberSequence.new(10,0)
  196. ParticleEmitter0.EmissionDirection = Enum.NormalId.Back
  197. ParticleEmitter0.Lifetime = NumberRange.new(0, 2)
  198. ParticleEmitter0.Rate = 9999
  199. ParticleEmitter0.RotSpeed = NumberRange.new(-25, 25)
  200. ParticleEmitter0.SpreadAngle = Vector2.new(25, 25)
  201. ParticleEmitter0.VelocitySpread = 25
  202. ParticleEmitter0.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  203. ParticleEmitter1.Name = "Death"
  204. ParticleEmitter1.Parent = mas
  205. ParticleEmitter1.Rotation = NumberRange.new(0, 360)
  206. ParticleEmitter1.Enabled = false
  207. ParticleEmitter1.LightEmission = 0.75
  208. ParticleEmitter1.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  209. ParticleEmitter1.Transparency = NS({0,0.47540986537933},{.168,0.37704920768738},{.457,0.25683063268661},{.803,0.4426229596138},{.948,0.62841534614563},{1,1})
  210. ParticleEmitter1.ZOffset = 0.5
  211. ParticleEmitter1.Size = NS({0,1},{.656,1.8032789230347},{.843,1.4207655191422},{1,0})
  212. ParticleEmitter1.Acceleration = Vector3.new(0, 35, 0)
  213. ParticleEmitter1.Drag = 5
  214. ParticleEmitter1.EmissionDirection = Enum.NormalId.Right
  215. ParticleEmitter1.Lifetime = NumberRange.new(0, 1)
  216. ParticleEmitter1.Rate = 999
  217. ParticleEmitter1.RotSpeed = NumberRange.new(-56, 56)
  218. ParticleEmitter1.SpreadAngle = Vector2.new(360, 360)
  219. ParticleEmitter1.VelocitySpread = 360
  220. ParticleEmitter2.Name = "Wing"
  221. ParticleEmitter2.Parent = mas
  222. ParticleEmitter2.Rotation = NumberRange.new(0, 360)
  223. ParticleEmitter2.Enabled = false
  224. ParticleEmitter2.LightEmission = 1
  225. ParticleEmitter2.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
  226. ParticleEmitter2.Size = NS({0,0.05464494228363},{.193,1.0382515192032},{.352,1.3661205768585},{1,0})
  227. ParticleEmitter2.Acceleration = Vector3.new(0, -7, 15)
  228. ParticleEmitter2.Lifetime = NumberRange.new(0.80000001192093, 0.80000001192093)
  229. ParticleEmitter2.LockedToPart = true
  230. ParticleEmitter2.Rate = 300
  231.  
  232. for i,v in pairs(mas:GetChildren()) do
  233. v.Parent = script
  234. pcall(function() v:MakeJoints() end)
  235. end
  236. mas:Destroy()
  237. for i,v in pairs(cors) do
  238. spawn(function()
  239. pcall(v)
  240. end)
  241. end
  242.  
  243.  
  244. New = function(Object, Parent, Name, Data)
  245. local Object = Instance.new(Object)
  246. for Index, Value in pairs(Data or {}) do
  247. Object[Index] = Value
  248. end
  249. Object.Parent = Parent
  250. Object.Name = Name
  251. return Object
  252. end
  253.  
  254.  
  255.  
  256.  
  257. wait(0.2)
  258. Player = game:GetService("Players").LocalPlayer
  259. PlayerGui = Player.PlayerGui
  260. Cam = workspace.CurrentCamera
  261. Backpack = Player.Backpack
  262. Character = Player.Character
  263. Humanoid = Character.Humanoid
  264. for _, v in next, Humanoid:GetPlayingAnimationTracks() do
  265. v:Stop()
  266. end
  267. Mouse = Player:GetMouse()
  268. RootPart = Character.HumanoidRootPart
  269. Torso = Character.Torso
  270. Head = Character.Head
  271. RightArm = Character["Right Arm"]
  272. LeftArm = Character["Left Arm"]
  273. RightLeg = Character["Right Leg"]
  274. LeftLeg = Character["Left Leg"]
  275. RootJoint = RootPart.RootJoint
  276. Neck = Torso.Neck
  277. RightShoulder = Torso["Right Shoulder"]
  278. LeftShoulder = Torso["Left Shoulder"]
  279. RightHip = Torso["Right Hip"]
  280. LeftHip = Torso["Left Hip"]
  281. local sick = Instance.new("Sound", Character)
  282. wait(1)
  283. IT = Instance.new
  284. CF = CFrame.new
  285. VT = Vector3.new
  286. RAD = math.rad
  287. C3 = Color3.new
  288. UD2 = UDim2.new
  289. BRICKC = BrickColor.new
  290. ANGLES = CFrame.Angles
  291. EULER = CFrame.fromEulerAnglesXYZ
  292. COS = math.cos
  293. ACOS = math.acos
  294. SIN = math.sin
  295. ASIN = math.asin
  296. ABS = math.abs
  297. MRANDOM = math.random
  298. FLOOR = math.floor
  299. Animation_Speed = 3
  300. Frame_Speed = 0.016666666666666666
  301. local Speed = 70
  302. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  303. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  304. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  305. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  306. local DAMAGEMULTIPLIER = 1
  307. local ANIM = "Idle"
  308. local ATTACK = false
  309. local EQUIPPED = false
  310. local HOLD = false
  311. local COMBO = 1
  312. local Rooted = false
  313. local SINE = 0
  314. local KEYHOLD = false
  315. local CHANGE = 2 / Animation_Speed
  316. local WALKINGANIM = false
  317. local VALUE1 = false
  318. local VALUE2 = false
  319. local ROBLOXIDLEANIMATION = IT("Animation")
  320. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  321. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  322. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  323. WEAPONGUI.Name = "Weapon GUI"
  324. local Effects = IT("Folder", Character)
  325. Effects.Name = "Effects"
  326. local ANIMATOR = Humanoid.Animator
  327. local ANIMATE = Character.Animate
  328. local UNANCHOR = true
  329. ArtificialHB = Instance.new("BindableEvent", script)
  330. ArtificialHB.Name = "ArtificialHB"
  331. script:WaitForChild("ArtificialHB")
  332. frame = Frame_Speed
  333. tf = 0
  334. allowframeloss = false
  335. tossremainder = false
  336. lastframe = tick()
  337. script.ArtificialHB:Fire()
  338. game:GetService("RunService").Heartbeat:connect(function(s, p)
  339. tf = tf + s
  340. if tf >= frame then
  341. if allowframeloss then
  342. script.ArtificialHB:Fire()
  343. lastframe = tick()
  344. else
  345. for i = 1, math.floor(tf / frame) do
  346. script.ArtificialHB:Fire()
  347. end
  348. lastframe = tick()
  349. end
  350. if tossremainder then
  351. tf = 0
  352. else
  353. tf = tf - frame * math.floor(tf / frame)
  354. end
  355. end
  356. end)
  357. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  358. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  359. end
  360. function PositiveAngle(NUMBER)
  361. if NUMBER >= 0 then
  362. NUMBER = 0
  363. end
  364. return NUMBER
  365. end
  366. function NegativeAngle(NUMBER)
  367. if NUMBER <= 0 then
  368. NUMBER = 0
  369. end
  370. return NUMBER
  371. end
  372. function Swait(NUMBER)
  373. if NUMBER == 0 or NUMBER == nil then
  374. ArtificialHB.Event:wait()
  375. else
  376. for i = 1, NUMBER do
  377. ArtificialHB.Event:wait()
  378. end
  379. end
  380. end
  381. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  382. local NEWMESH = IT(MESH)
  383. if MESH == "SpecialMesh" then
  384. NEWMESH.MeshType = MESHTYPE
  385. if MESHID ~= "nil" and MESHID ~= "" then
  386. NEWMESH.MeshId = "http://www.roblox.com/asset/?id=" .. MESHID
  387. end
  388. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  389. NEWMESH.TextureId = "http://www.roblox.com/asset/?id=" .. TEXTUREID
  390. end
  391. end
  392. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  393. NEWMESH.Scale = SCALE
  394. NEWMESH.Parent = PARENT
  395. return NEWMESH
  396. end
  397. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  398. local NEWPART = IT("Part")
  399. NEWPART.formFactor = FORMFACTOR
  400. NEWPART.Reflectance = REFLECTANCE
  401. NEWPART.Transparency = TRANSPARENCY
  402. NEWPART.CanCollide = false
  403. NEWPART.Locked = true
  404. NEWPART.Anchored = true
  405. if ANCHOR == false then
  406. NEWPART.Anchored = false
  407. end
  408. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  409. NEWPART.Name = NAME
  410. NEWPART.Size = SIZE
  411. NEWPART.Position = Torso.Position
  412. NEWPART.Material = MATERIAL
  413. NEWPART:BreakJoints()
  414. NEWPART.Parent = PARENT
  415. return NEWPART
  416. end
  417. local weldBetween = function(a, b)
  418. local weldd = Instance.new("ManualWeld")
  419. weldd.Part0 = a
  420. weldd.Part1 = b
  421. weldd.C0 = CFrame.new()
  422. weldd.C1 = b.CFrame:inverse() * a.CFrame
  423. weldd.Parent = a
  424. return weldd
  425. end
  426. function QuaternionFromCFrame(cf)
  427. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  428. local trace = m00 + m11 + m22
  429. if trace > 0 then
  430. local s = math.sqrt(1 + trace)
  431. local recip = 0.5 / s
  432. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  433. else
  434. local i = 0
  435. if m00 < m11 then
  436. i = 1
  437. end
  438. if m22 > (i == 0 and m00 or m11) then
  439. i = 2
  440. end
  441. if i == 0 then
  442. local s = math.sqrt(m00 - m11 - m22 + 1)
  443. local recip = 0.5 / s
  444. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  445. elseif i == 1 then
  446. local s = math.sqrt(m11 - m22 - m00 + 1)
  447. local recip = 0.5 / s
  448. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  449. elseif i == 2 then
  450. local s = math.sqrt(m22 - m00 - m11 + 1)
  451. local recip = 0.5 / s
  452. return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  453. end
  454. end
  455. end
  456. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  457. local xs, ys, zs = x + x, y + y, z + z
  458. local wx, wy, wz = w * xs, w * ys, w * zs
  459. local xx = x * xs
  460. local xy = x * ys
  461. local xz = x * zs
  462. local yy = y * ys
  463. local yz = y * zs
  464. local zz = z * zs
  465. 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))
  466. end
  467. function QuaternionSlerp(a, b, t)
  468. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  469. local startInterp, finishInterp
  470. if cosTheta >= 1.0E-4 then
  471. if 1 - cosTheta > 1.0E-4 then
  472. local theta = ACOS(cosTheta)
  473. local invSinTheta = 1 / SIN(theta)
  474. startInterp = SIN((1 - t) * theta) * invSinTheta
  475. finishInterp = SIN(t * theta) * invSinTheta
  476. else
  477. startInterp = 1 - t
  478. finishInterp = t
  479. end
  480. elseif 1 + cosTheta > 1.0E-4 then
  481. local theta = ACOS(-cosTheta)
  482. local invSinTheta = 1 / SIN(theta)
  483. startInterp = SIN((t - 1) * theta) * invSinTheta
  484. finishInterp = SIN(t * theta) * invSinTheta
  485. else
  486. startInterp = t - 1
  487. finishInterp = t
  488. end
  489. 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
  490. end
  491. function Clerp(a, b, t)
  492. local qa = {
  493. QuaternionFromCFrame(a)
  494. }
  495. local qb = {
  496. QuaternionFromCFrame(b)
  497. }
  498. local ax, ay, az = a.x, a.y, a.z
  499. local bx, by, bz = b.x, b.y, b.z
  500. local _t = 1 - t
  501. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  502. end
  503. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  504. local frame = IT("Frame")
  505. frame.BackgroundTransparency = TRANSPARENCY
  506. frame.BorderSizePixel = BORDERSIZEPIXEL
  507. frame.Position = POSITION
  508. frame.Size = SIZE
  509. frame.BackgroundColor3 = COLOR
  510. frame.BorderColor3 = BORDERCOLOR
  511. frame.Name = NAME
  512. frame.Parent = PARENT
  513. return frame
  514. end
  515. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  516. local label = IT("TextLabel")
  517. label.BackgroundTransparency = 1
  518. label.Size = UD2(1, 0, 1, 0)
  519. label.Position = UD2(0, 0, 0, 0)
  520. label.TextColor3 = TEXTCOLOR
  521. label.TextStrokeTransparency = STROKETRANSPARENCY
  522. label.TextTransparency = TRANSPARENCY
  523. label.FontSize = TEXTFONTSIZE
  524. label.Font = TEXTFONT
  525. label.BorderSizePixel = BORDERSIZEPIXEL
  526. label.TextScaled = false
  527. label.Text = TEXT
  528. label.Name = NAME
  529. label.Parent = PARENT
  530. return label
  531. end
  532. function NoOutlines(PART)
  533. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  534. end
  535. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  536. local NEWWELD = IT(TYPE)
  537. NEWWELD.Part0 = PART0
  538. NEWWELD.Part1 = PART1
  539. NEWWELD.C0 = C0
  540. NEWWELD.C1 = C1
  541. NEWWELD.Parent = PARENT
  542. return NEWWELD
  543. end
  544. local S = IT("Sound")
  545. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  546. local NEWSOUND
  547. coroutine.resume(coroutine.create(function()
  548. NEWSOUND = S:Clone()
  549. NEWSOUND.Parent = PARENT
  550. NEWSOUND.EmitterSize = VOLUME * 3
  551. NEWSOUND.Volume = VOLUME
  552. NEWSOUND.Pitch = PITCH
  553. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
  554. NEWSOUND:play()
  555. if DOESLOOP == true then
  556. NEWSOUND.Looped = true
  557. else
  558. repeat
  559. wait(1)
  560. until NEWSOUND.Playing == false
  561. NEWSOUND:remove()
  562. end
  563. end))
  564. return NEWSOUND
  565. end
  566. function CFrameFromTopBack(at, top, back)
  567. local right = top:Cross(back)
  568. 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)
  569. end
  570. function WACKYEFFECT(Table)
  571. local TYPE = Table.EffectType or "Sphere"
  572. local SIZE = Table.Size or VT(1, 1, 1)
  573. local ENDSIZE = Table.Size2 or VT(0, 0, 0)
  574. local TRANSPARENCY = Table.Transparency or 0
  575. local ENDTRANSPARENCY = Table.Transparency2 or 1
  576. local CFRAME = Table.CFrame or Torso.CFrame
  577. local MOVEDIRECTION = Table.MoveToPos or nil
  578. local ROTATION1 = Table.RotationX or 0
  579. local ROTATION2 = Table.RotationY or 0
  580. local ROTATION3 = Table.RotationZ or 0
  581. local MATERIAL = Table.Material or "Neon"
  582. local COLOR = Table.Color or C3(1, 1, 1)
  583. local TIME = Table.Time or 45
  584. local SOUNDID = Table.SoundID or nil
  585. local SOUNDPITCH = Table.SoundPitch or nil
  586. local SOUNDVOLUME = Table.SoundVolume or nil
  587. coroutine.resume(coroutine.create(function()
  588. local PLAYSSOUND = false
  589. local SOUND
  590. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1, 1, 1), true)
  591. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  592. PLAYSSOUND = true
  593. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  594. end
  595. EFFECT.Color = COLOR
  596. local MSH
  597. if TYPE == "Sphere" then
  598. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0, 0, 0))
  599. elseif TYPE == "Block" then
  600. MSH = IT("BlockMesh", EFFECT)
  601. MSH.Scale = VT(SIZE.X, SIZE.X, SIZE.X)
  602. elseif TYPE == "Wave" then
  603. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
  604. elseif TYPE == "Ring" then
  605. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X, SIZE.X, 0.1), VT(0, 0, 0))
  606. elseif TYPE == "Slash" then
  607. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
  608. elseif TYPE == "Round Slash" then
  609. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
  610. elseif TYPE == "Swirl" then
  611. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0, 0, 0))
  612. elseif TYPE == "Skull" then
  613. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0, 0, 0))
  614. elseif TYPE == "Crystal" then
  615. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0, 0, 0))
  616. end
  617. if MSH ~= nil then
  618. local MOVESPEED
  619. if MOVEDIRECTION ~= nil then
  620. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude / TIME
  621. end
  622. local GROWTH = SIZE - ENDSIZE
  623. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  624. if TYPE == "Block" then
  625. EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
  626. else
  627. EFFECT.CFrame = CFRAME
  628. end
  629. for LOOP = 1, TIME + 1 do
  630. Swait()
  631. MSH.Scale = MSH.Scale - GROWTH / TIME
  632. if TYPE == "Wave" then
  633. MSH.Offset = VT(0, 0, -MSH.Scale.X / 8)
  634. end
  635. EFFECT.Transparency = EFFECT.Transparency - TRANS / TIME
  636. if TYPE == "Block" then
  637. EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
  638. else
  639. EFFECT.CFrame = EFFECT.CFrame * ANGLES(RAD(ROTATION1), RAD(ROTATION2), RAD(ROTATION3))
  640. end
  641. if MOVEDIRECTION ~= nil then
  642. local ORI = EFFECT.Orientation
  643. EFFECT.CFrame = CF(EFFECT.Position, MOVEDIRECTION) * CF(0, 0, -MOVESPEED)
  644. EFFECT.Orientation = ORI
  645. end
  646. end
  647. if PLAYSSOUND == false then
  648. EFFECT:remove()
  649. else
  650. repeat
  651. Swait()
  652. until SOUND.Playing == false
  653. EFFECT:remove()
  654. end
  655. elseif PLAYSSOUND == false then
  656. EFFECT:remove()
  657. else
  658. repeat
  659. Swait()
  660. until SOUND.Playing == false
  661. EFFECT:remove()
  662. end
  663. end))
  664. end
  665. function MakeForm(PART, TYPE)
  666. if TYPE == "Cyl" then
  667. local MSH = IT("CylinderMesh", PART)
  668. elseif TYPE == "Ball" then
  669. local MSH = IT("SpecialMesh", PART)
  670. MSH.MeshType = "Sphere"
  671. elseif TYPE == "Wedge" then
  672. local MSH = IT("SpecialMesh", PART)
  673. MSH.MeshType = "Wedge"
  674. end
  675. end
  676. Debris = game:GetService("Debris")
  677. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  678. local DIRECTION = CF(StartPos, EndPos).lookVector
  679. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  680. end
  681. function turnto(position)
  682. RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
  683. end
  684. local DECAL = IT("Decal")
  685. function MakeRing()
  686. local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Pearl"), "MagicRing", VT(0, 0, 0), true)
  687. local MSH = IT("BlockMesh", RING)
  688. local TOP = DECAL:Clone()
  689. local BOTTOM = DECAL:Clone()
  690. TOP.Parent = RING
  691. BOTTOM.Parent = RING
  692. TOP.Face = "Top"
  693. BOTTOM.Face = "Bottom"
  694. TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
  695. BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
  696. local function REMOVE()
  697. coroutine.resume(coroutine.create(function()
  698. local SIZE = MSH.Scale.X
  699. for i = 1, 35 do
  700. Swait()
  701. MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
  702. TOP.Transparency = TOP.Transparency + 0.02857142857142857
  703. BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
  704. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
  705. end
  706. RING:remove()
  707. end))
  708. end
  709. return RING, MSH, REMOVE
  710. end
  711. function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
  712. local TORSO = Torso
  713. local HUM = Humanoid
  714. if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
  715. coroutine.wrap(function()
  716. VT = Vector3.new
  717. MRANDOM = math.random
  718. local A = TIME
  719. local B = INTENSITY
  720. local C = true
  721. local HUMANOID = Humanoid
  722. local TIMER = A or 35
  723. local SHAKE = B or 5
  724. local FADE = C or true
  725. if HUMANOID then
  726. local FADER = SHAKE / TIMER
  727. for i = 1, TIMER do
  728. wait()
  729. HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
  730. end
  731. HUMANOID.CameraOffset = VT(0, 0, 0)
  732. end
  733.  
  734. end)()
  735. end
  736. end
  737.  
  738. local SKILLTEXTCOLOR = C3(0, 0, 0)
  739. local SKILLFONT = "SciFi"
  740. local SKILLTEXTSIZE = 7
  741. local WING = Instance.new("Attachment")
  742. local WING1 = WING:Clone()
  743. local WING2 = WING:Clone()
  744. WING1.Parent = Torso
  745. WING2.Parent = Torso
  746. WING1.Position = VT(-1, 0.6, 1)
  747. WING2.Position = VT(1, 0.6, 1)
  748. WING1.Orientation = VT(0, 0, 0)
  749. WING2.Orientation = VT(0, 0, 0)
  750. local WINGS = {}
  751. for i = 1, 5 do
  752. local PARTICLES = script.Wing:Clone()
  753. PARTICLES.Parent = WING1
  754. PARTICLES.Enabled = true
  755. PARTICLES.Acceleration = VT(-i * 10, -5 - i * 1.5, 15)
  756. table.insert(WINGS, {
  757. PARTICLES,
  758. VT(-i * 30, 0, 25)
  759. })
  760. end
  761. for i = 1, 5 do
  762. local PARTICLES = script.Wing:Clone()
  763. PARTICLES.Parent = WING2
  764. PARTICLES.Enabled = true
  765. PARTICLES.Acceleration = VT(i * 10, -5 - i * 1.5, 15)
  766. table.insert(WINGS, {
  767. PARTICLES,
  768. VT(i * 30, 0, 25)
  769. })
  770. end
  771.  
  772. Base = New("Part",Head,"Base",{BrickColor = BrickColor.new("Institutional white"),Material = Enum.Material.SmoothPlastic,Transparency = 1,Transparency = 1,Size = Vector3.new(2, 1, 1),CFrame = CFrame.new(4.56395578, 30.9732971, 96.5572357, -1, 0, -3.7252903e-09, 0, 1, 0, -3.7252903e-09, 0, -1.00000012),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0,0,0),})
  773. Mesh = New("SpecialMesh",Base,"Mesh",{Scale = Vector3.new(1,1,1),})
  774. Hood = New("Part",Head,"Hood",{Size = Vector3.new(2.04900002, 2.18899989, 1.97500002),CFrame = CFrame.new(4.59299994, 31.1469994, 96.4520035, -0.99907124, -0.00109502568, 0.043075189, -0.00244226633, 0.999509037, -0.0312363114, -0.0430198386, -0.0313125029, -0.998583436),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,})
  775. Mesh = New("SpecialMesh",Hood,"Mesh",{MeshId = "rbxassetid://93129244",TextureId = "rbxassetid://94020325",MeshType = Enum.MeshType.FileMesh,})
  776. mot = New("Motor",Hood,"mot",{Part0 = Hood,Part1 = Base,C0 = CFrame.new(0, 0, 0, -0.99907124, -0.00244226633, -0.0430198386, -0.00109502568, 0.999509037, -0.0313125029, 0.043075189, -0.0312363114, -0.998583436),C1 = CFrame.new(-0.0290441513, 0.17370224, 0.105232239, -1, 0, 0, 0, 1, 0, 0, 0, -1),})
  777.  
  778. CreateWeldOrSnapOrMotor('Weld', Head, Head, Base, CF(), CF())
  779.  
  780. Head.Color = C3(0,0,0)
  781.  
  782. local DParticles = script.Death
  783. DParticles:remove()
  784. DParticles.Name = "ArchangelDeathParticles"
  785. local BODY = {}
  786. for _, c in pairs(Character:GetDescendants()) do
  787. if c:IsA("BasePart") and c.Name ~= "Handle" then
  788. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  789. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  790. end
  791. table.insert(BODY, {
  792. c,
  793. c.Parent,
  794. c.Material,
  795. c.Color,
  796. c.Transparency
  797. })
  798. elseif c:IsA("JointInstance") then
  799. table.insert(BODY, {
  800. c,
  801. c.Parent,
  802. nil,
  803. nil,
  804. nil
  805. })
  806. end
  807. end
  808. for e = 1, #BODY do
  809. if BODY[e] ~= nil then
  810. do
  811. local STUFF = BODY[e]
  812. local PART = STUFF[1]
  813. local PARENT = STUFF[2]
  814. local MATERIAL = STUFF[3]
  815. local COLOR = STUFF[4]
  816. local TRANSPARENCY = STUFF[5]
  817. if PART.ClassName == "Part" and PART ~= RootPart then
  818. PART.Material = MATERIAL
  819. PART.Color = COLOR
  820. PART.Transparency = TRANSPARENCY
  821. end
  822. PART.AncestryChanged:Connect(function()
  823. PART.Parent = PARENT
  824. end)
  825. end
  826. end
  827. end
  828. function refit()
  829. Character.Parent = workspace
  830. for e = 1, #BODY do
  831. if BODY[e] ~= nil then
  832. local STUFF = BODY[e]
  833. local PART = STUFF[1]
  834. local PARENT = STUFF[2]
  835. local MATERIAL = STUFF[3]
  836. local COLOR = STUFF[4]
  837. local TRANSPARENCY = STUFF[5]
  838. if PART:IsA("BasePart") and PART ~= RootPart then
  839. PART.Material = MATERIAL
  840. PART.Color = COLOR
  841. PART.Transparency = TRANSPARENCY
  842. end
  843. if PART.Parent ~= PARENT then
  844. Humanoid:remove()
  845. PART.Parent = PARENT
  846. Humanoid = IT("Humanoid", Character)
  847. end
  848. end
  849. end
  850. end
  851. Humanoid.Died:connect(function()
  852. refit()
  853. end)
  854.  
  855.  
  856. local SKILLTEXTCOLOR = C3(1, 1, 1)
  857. local SKILLFONT = "Fantasy"
  858. local SKILLTEXTSIZE = 3
  859. local ATTACKS = {
  860. "Z - Holy Smite",
  861. "B - Divine Ravage",
  862. "C - Divine Earthquake",
  863. "V - Beam of Light",
  864. "X - Divine Nova"
  865. }
  866. for i = 1, #ATTACKS do
  867. local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.74, 0, 0.97 - 0.02 * i, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill Frame")
  868. local SKILLTEXT = CreateLabel(SKILLFRAME, "[" .. ATTACKS[i] .. "]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Skill text")
  869. SKILLTEXT.TextXAlignment = "Right"
  870. end
  871.  
  872. function ApplyAoE(POSITION, RANGE)
  873. local PARTS = {}
  874. for index, CHILD in pairs(workspace:GetDescendants()) do
  875. if CHILD.ClassName == "Model" and CHILD ~= Character then
  876. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  877. if HUM then
  878. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  879. if TORSO and HUM.Health > 0 and RANGE >= (TORSO.Position - POSITION).Magnitude then
  880. CHILD:BreakJoints()
  881. for index, PART in pairs(CHILD:GetChildren()) do
  882. if PART:IsA("BasePart") and PART.Name ~= "HumanoidRootPart" then
  883. local P = DParticles:Clone()
  884. P.Parent = PART
  885. P.Enabled = true
  886. P.Color = ColorSequence.new(PART.Color, C3(1, 1, 1))
  887. PART.Anchored = true
  888. table.insert(PARTS, {PART, P})
  889. end
  890. end
  891. end
  892. end
  893. elseif CHILD:IsA("BasePart") and CHILD.Parent.Parent ~= Character and CHILD.Parent:FindFirstChildOfClass("Humanoid") == nil and CHILD:FindFirstChild("ewdfrfgrwefd") == nil and CHILD.Size.Magnitude < RANGE * 2 and CHILD.Size.Magnitude < 200 and RANGE > (CHILD.Position - POSITION).Magnitude then
  894. local FOLDER = IT("Folder", CHILD)
  895. FOLDER.Name = "ewdfrfgrwefd"
  896. local P = DParticles:Clone()
  897. P.Parent = CHILD
  898. P.Enabled = true
  899. CHILD:BreakJoints()
  900. CHILD.CanCollide = false
  901. CHILD.Anchored = true
  902. P.Rate = math.ceil(CHILD.Size.Magnitude / 2)
  903. P.Color = ColorSequence.new(CHILD.Color, C3(1, 1, 1))
  904. table.insert(PARTS, {CHILD, P})
  905. end
  906. end
  907. coroutine.resume(coroutine.create(function()
  908. if #PARTS > 0 then
  909. for i = 1, 85 do
  910. Swait()
  911. for E = 1, #PARTS do
  912. local F = PARTS[E]
  913. local A = F[1]
  914. local B = F[2]
  915. A.Transparency = A.Transparency + 0.011764705882352941
  916. B.Rate = math.ceil(B.Rate * 1.2)
  917. for index, E in pairs(A:GetChildren()) do
  918. if E:IsA("Decal") or E:IsA("Texture") then
  919. E.Transparency = E.Transparency + 0.011764705882352941
  920. elseif E:IsA("JointInstance") then
  921. E:remove()
  922. elseif E:IsA("Light") or E:IsA("ParticleEmitter") and E ~= B and E.Name ~= "ArchangelDeathParticles" or E:IsA("Fire") or E:IsA("Sparkles") or E:IsA("Smoke") then
  923. E.Enabled = false
  924. end
  925. end
  926. end
  927. end
  928. for E = 1, #PARTS do
  929. local F = PARTS[E]
  930. local A = F[1]
  931. local B = F[2]
  932. B.Enabled = false
  933. Debris:AddItem(A, 3)
  934. end
  935. end
  936. end))
  937. end
  938. function Smite()
  939. local RING, MESH, DELET = MakeRing()
  940. local POS = Mouse.Hit.p
  941. RING.CFrame = CF(Mouse.Hit.p + VT(MRANDOM(-25, 25), 200, MRANDOM(-25, 25)), Mouse.Hit.p) * ANGLES(RAD(90), RAD(0), RAD(0))
  942. for i = 1, 45 do
  943. Swait()
  944. MESH.Scale = MESH.Scale + VT(12, 0, 12)
  945. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  946. end
  947. local HITFLOOR, HITPOS = Raycast(RING.Position, CF(RING.Position, RING.CFrame * CF(0, -1, 0).p).lookVector, 500, Character)
  948. if HITFLOOR then
  949. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(0, 0, 0), true)
  950. MakeForm(BEAM, "Cyl")
  951. local DIST = (RING.Position - HITPOS).Magnitude
  952. BEAM.Size = VT(0, DIST, 0)
  953. BEAM.CFrame = CF(RING.Position, HITPOS) * CF(0, 0, -DIST / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
  954. for i = 1, 5 do
  955. WACKYEFFECT({
  956. EffectType = "Wave",
  957. Size = VT(25, 0, 25),
  958. Size2 = VT(40, 0, 40) + VT(i * 6, i / 5, i * 6),
  959. Transparency = 0,
  960. Transparency2 = 1,
  961. CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
  962. MoveToPos = nil,
  963. RotationX = 0,
  964. RotationY = 3,
  965. RotationZ = 0,
  966. Material = "Neon",
  967. Color = C3(1, 1, 1),
  968. SoundID = nil,
  969. SoundPitch = nil,
  970. SoundVolume = nil
  971. })
  972. WACKYEFFECT({
  973. EffectType = "Round Slash",
  974. Size = VT(3, 0, 3) / 13,
  975. Size2 = (VT(3, 0, 3) + VT(i, 0, i)) / 5,
  976. Transparency = 0,
  977. Transparency2 = 1,
  978. CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
  979. MoveToPos = nil,
  980. RotationX = 0,
  981. RotationY = 0,
  982. RotationZ = 0,
  983. Material = "Neon",
  984. Color = C3(1, 1, 1),
  985. SoundID = nil,
  986. SoundPitch = nil,
  987. SoundVolume = nil
  988. })
  989. WACKYEFFECT({
  990. Time = 35,
  991. EffectType = "Sphere",
  992. Size = VT(22, 22, 22),
  993. Size2 = VT(45, 45, 45) + VT(i * 5, i * 5, i * 5),
  994. Transparency = 0,
  995. Transparency2 = 1,
  996. CFrame = CF(HITPOS),
  997. MoveToPos = nil,
  998. RotationX = 0,
  999. RotationY = 0,
  1000. RotationZ = 0,
  1001. Material = "Neon",
  1002. Color = C3(1, 1, 1),
  1003. SoundID = 459523898,
  1004. SoundPitch = MRANDOM(9, 12) / 10,
  1005. SoundVolume = 10
  1006. })
  1007. end
  1008. SHAKECAM(HITPOS, 100, 8, 15)
  1009. ApplyAoE(HITPOS, 50)
  1010. for i = 1, 25 do
  1011. Swait()
  1012. BEAM.Size = BEAM.Size + VT(0.5, 0, 0.5)
  1013. BEAM.Transparency = BEAM.Transparency + 0.04
  1014. end
  1015. BEAM:remove()
  1016. end
  1017. wait(0.2)
  1018. DELET()
  1019. end
  1020. function Ravage()
  1021. ATTACK = true
  1022. Rooted = false
  1023. local RING, MESH, DELET = MakeRing()
  1024. RING.Anchored = false
  1025. RING.CFrame = RightArm.CFrame * CF(0, -1.3, 0)
  1026. local WELD = weldBetween(RightArm, RING)
  1027. local GYRO = IT("BodyGyro", RootPart)
  1028. GYRO.D = 20
  1029. GYRO.P = 4000
  1030. GYRO.MaxTorque = VT(0, 40000, 0)
  1031. coroutine.resume(coroutine.create(function()
  1032. repeat
  1033. GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
  1034. Swait()
  1035. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
  1036. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-90)), 1 / Animation_Speed)
  1037. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1038. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1039. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1040. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1041. until ATTACK == false
  1042. GYRO:remove()
  1043. end))
  1044. CreateSound(459523787, RING, 8, 1, false)
  1045. for i = 1, 45 do
  1046. Swait()
  1047. MESH.Scale = MESH.Scale + VT(13, 0, 13)
  1048. WELD.C0 = WELD.C0 * ANGLES(RAD(0), RAD(5), RAD(0))
  1049. end
  1050. wait(0.3)
  1051. repeat
  1052. for i = 1, 25 do
  1053. Swait()
  1054. WACKYEFFECT({
  1055. Time = 15,
  1056. EffectType = "Sphere",
  1057. Size = VT(4, 4, 4),
  1058. Size2 = VT(0, 0, 0),
  1059. Transparency = 1,
  1060. Transparency2 = 0,
  1061. CFrame = CF(RING.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, 35),
  1062. MoveToPos = RING.Position,
  1063. RotationX = 0,
  1064. RotationY = 0,
  1065. RotationZ = 0,
  1066. Material = "Neon",
  1067. Color = C3(1, 1, 1),
  1068. SoundID = nil,
  1069. SoundPitch = nil,
  1070. SoundVolume = nil
  1071. })
  1072. end
  1073. WACKYEFFECT({
  1074. Time = 35,
  1075. EffectType = "Sphere",
  1076. Size = VT(25, 2, 25),
  1077. Size2 = VT(35, 5, 35),
  1078. Transparency = 0,
  1079. Transparency2 = 1,
  1080. CFrame = RING.CFrame,
  1081. MoveToPos = nil,
  1082. RotationX = 0,
  1083. RotationY = 0,
  1084. RotationZ = 0,
  1085. Material = "Neon",
  1086. Color = C3(1, 1, 1),
  1087. SoundID = 459523898,
  1088. SoundPitch = MRANDOM(9, 12) / 10,
  1089. SoundVolume = 10
  1090. })
  1091. coroutine.resume(coroutine.create(function()
  1092. local PROJECTILE = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(12, 12, 12), true)
  1093. MakeForm(PROJECTILE, "Ball")
  1094. PROJECTILE.CFrame = RootPart.CFrame * CF(0, 0, -10)
  1095. local FIRE = script.Flames:Clone()
  1096. FIRE.Parent = PROJECTILE
  1097. FIRE.Enabled = true
  1098. local SPEED = -0.2
  1099. for i = 1, 1000 do
  1100. Swait()
  1101. SPEED = SPEED - 0.01
  1102. local HIT = Raycast(PROJECTILE.Position, PROJECTILE.CFrame.lookVector, 6 + SPEED / 5, Character)
  1103. if HIT then
  1104. do
  1105. local POS = PROJECTILE.Position
  1106. ApplyAoE(POS, 100)
  1107. SHAKECAM(POS, 150, 12, 15)
  1108. coroutine.resume(coroutine.create(function()
  1109. for i = 1, 5 do
  1110. Swait()
  1111. WACKYEFFECT({
  1112. Time = 85,
  1113. EffectType = "Wave",
  1114. Size = VT(25, 0, 25),
  1115. Size2 = VT(40, 0, 40) + VT(i * 6, i / 5, i * 6) * 15,
  1116. Transparency = 0,
  1117. Transparency2 = 1,
  1118. CFrame = CF(POS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
  1119. MoveToPos = nil,
  1120. RotationX = 0,
  1121. RotationY = 3,
  1122. RotationZ = 0,
  1123. Material = "Neon",
  1124. Color = C3(1, 1, 1),
  1125. SoundID = nil,
  1126. SoundPitch = nil,
  1127. SoundVolume = nil
  1128. })
  1129. WACKYEFFECT({
  1130. Time = 85,
  1131. EffectType = "Round Slash",
  1132. Size = VT(3, 0, 3) / 13,
  1133. Size2 = (VT(3, 0, 3) + VT(i, 0, i)) * 2,
  1134. Transparency = 0,
  1135. Transparency2 = 1,
  1136. CFrame = CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
  1137. MoveToPos = nil,
  1138. RotationX = 0,
  1139. RotationY = 0,
  1140. RotationZ = 0,
  1141. Material = "Neon",
  1142. Color = C3(1, 1, 1),
  1143. SoundID = nil,
  1144. SoundPitch = nil,
  1145. SoundVolume = nil
  1146. })
  1147. WACKYEFFECT({
  1148. Time = 75,
  1149. EffectType = "Sphere",
  1150. Size = VT(22, 22, 22),
  1151. Size2 = VT(45, 45, 45) + VT(i * 5, i * 5, i * 5) * 7,
  1152. Transparency = 0,
  1153. Transparency2 = 1,
  1154. CFrame = CF(POS),
  1155. MoveToPos = nil,
  1156. RotationX = 0,
  1157. RotationY = 0,
  1158. RotationZ = 0,
  1159. Material = "Neon",
  1160. Color = C3(1, 1, 1),
  1161. SoundID = 533636431,
  1162. SoundPitch = MRANDOM(9, 12) / 10,
  1163. SoundVolume = 10
  1164. })
  1165. end
  1166. end))
  1167. break
  1168. end
  1169. else
  1170. PROJECTILE.CFrame = PROJECTILE.CFrame * CF(0, 0, SPEED)
  1171. for index, CHILD in pairs(workspace:GetDescendants()) do
  1172. if CHILD.ClassName == "Model" and CHILD ~= Character then
  1173. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1174. if HUM then
  1175. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1176. if TORSO and 0 < HUM.Health and 150 > (TORSO.Position - PROJECTILE.Position).Magnitude then
  1177. PROJECTILE.CFrame = Clerp(PROJECTILE.CFrame, CF(PROJECTILE.Position, TORSO.Position), 0.08)
  1178. end
  1179. end
  1180. end
  1181. end
  1182. end
  1183. end
  1184. FIRE.Enabled = false
  1185. PROJECTILE.Transparency = 1
  1186. Debris:AddItem(PROJECTILE, 5)
  1187. end))
  1188. until KEYHOLD == false
  1189. wait(0.1)
  1190. RING.Anchored = true
  1191. WELD:remove()
  1192. DELET()
  1193. ATTACK = false
  1194. Rooted = false
  1195. end
  1196. function Earthquake()
  1197. ATTACK = true
  1198. Rooted = true
  1199. local GYRO = IT("BodyGyro", RootPart)
  1200. GYRO.D = 20
  1201. GYRO.P = 4000
  1202. GYRO.MaxTorque = VT(0, 40000, 0)
  1203. local RING, MESH, DELET = MakeRing()
  1204. local HITFLOOR, HITPOS = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
  1205. RING.CFrame = CF(HITPOS)
  1206. for i = 0, 0.6, 0.1 / Animation_Speed do
  1207. GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
  1208. Swait()
  1209. MESH.Scale = MESH.Scale + VT(53, 0, 53)
  1210. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  1211. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
  1212. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  1213. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25 - 7.5 * SIN(SINE / 12)), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1214. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1215. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1216. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1217. end
  1218. local BLASTS = {468991944, 468991990}
  1219. coroutine.resume(coroutine.create(function()
  1220. local CFRAME = RootPart.CFrame
  1221. for i = 1, 100 do
  1222. CFRAME = CFRAME * CF(0, 0, -35)
  1223. do
  1224. local HITFLOOR, HITPOS = Raycast(CFRAME.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
  1225. if HITFLOOR then
  1226. Swait()
  1227. do
  1228. local OFFSET = CFRAME * CF(MRANDOM(-25, 25), 0, 0)
  1229. coroutine.resume(coroutine.create(function()
  1230. local RING, MESH, DELET = MakeRing()
  1231. RING.CFrame = CF(OFFSET.p.X, HITPOS.Y, OFFSET.p.Z)
  1232. for i = 1, 25 do
  1233. Swait()
  1234. MESH.Scale = MESH.Scale + VT(42, 0, 42)
  1235. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  1236. end
  1237. ApplyAoE(RING.Position, 65)
  1238. SHAKECAM(RING.Position, 80, 12, 15)
  1239. local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
  1240. WACKYEFFECT({
  1241. Time = 25,
  1242. EffectType = "Sphere",
  1243. Size = VT(22, 22, 22),
  1244. Size2 = VT(85, 85, 85),
  1245. Transparency = 0,
  1246. Transparency2 = 1,
  1247. CFrame = CF(RING.Position),
  1248. MoveToPos = nil,
  1249. RotationX = 0,
  1250. RotationY = 0,
  1251. RotationZ = 0,
  1252. Material = "Neon",
  1253. Color = C3(1, 1, 1),
  1254. SoundID = BLASTS[MRANDOM(1, #BLASTS)],
  1255. SoundPitch = MRANDOM(9, 12) / 10,
  1256. SoundVolume = 10
  1257. })
  1258. for e = 1, 3 do
  1259. WACKYEFFECT({
  1260. EffectType = "Wave",
  1261. Size = VT(25, 0, 25),
  1262. Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
  1263. Transparency = 0,
  1264. Transparency2 = 1,
  1265. CFrame = CF(RING.Position) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
  1266. MoveToPos = nil,
  1267. RotationX = 0,
  1268. RotationY = 3,
  1269. RotationZ = 0,
  1270. Material = "Neon",
  1271. Color = C3(1, 1, 1),
  1272. SoundID = nil,
  1273. SoundPitch = nil,
  1274. SoundVolume = nil
  1275. })
  1276. WACKYEFFECT({
  1277. Time = 35,
  1278. EffectType = "Sphere",
  1279. Size = VT(22, 45, 22),
  1280. Size2 = VT(25, 45 + e * 75, 25),
  1281. Transparency = 0,
  1282. Transparency2 = 1,
  1283. CFrame = CF(RING.Position) * TURN,
  1284. MoveToPos = nil,
  1285. RotationX = 0,
  1286. RotationY = 0,
  1287. RotationZ = 0,
  1288. Material = "Neon",
  1289. Color = C3(1, 1, 1),
  1290. SoundID = nil,
  1291. SoundPitch = MRANDOM(9, 12) / 10,
  1292. SoundVolume = 10
  1293. })
  1294. end
  1295. wait(0.3)
  1296. DELET()
  1297. end))
  1298. end
  1299. end
  1300. end
  1301. end
  1302. end))
  1303. Rooted = false
  1304. for i = 0, 0.2, 0.1 / Animation_Speed do
  1305. Swait()
  1306. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(75)), 1 / Animation_Speed)
  1307. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), 1 / Animation_Speed)
  1308. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(145 - 7.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1309. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1310. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1311. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1312. end
  1313. DELET()
  1314. GYRO:remove()
  1315. ATTACK = false
  1316. Rooted = false
  1317. end
  1318. function Beam()
  1319. ATTACK = true
  1320. Rooted = false
  1321. local GYRO = IT("BodyGyro", RootPart)
  1322. GYRO.D = 20
  1323. GYRO.P = 4000
  1324. GYRO.MaxTorque = VT(0, 40000, 0)
  1325. local RING, MESH, DELET = MakeRing()
  1326. local POS = RootPart.Position + VT(0, 25, 0)
  1327. RING.CFrame = CF(POS, Mouse.Hit.p) * ANGLES(RAD(90), RAD(0), RAD(0))
  1328. CreateSound(459523787, RING, 8, 1, false)
  1329. local BLASTS = {468991944, 468991990}
  1330. coroutine.resume(coroutine.create(function()
  1331. local E = 0
  1332. repeat
  1333. E = E + 5
  1334. GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
  1335. Swait()
  1336. RING.CFrame = CF(POS, Mouse.Hit.p) * ANGLES(RAD(90), RAD(E), RAD(0))
  1337. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
  1338. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-90)), 1 / Animation_Speed)
  1339. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1340. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1341. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1342. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1343. until ATTACK == false
  1344. GYRO:remove()
  1345. DELET()
  1346. end))
  1347. for i = 1, 50 do
  1348. Swait()
  1349. MESH.Scale = MESH.Scale + VT(22, 0, 22)
  1350. end
  1351. for i = 1, 25 do
  1352. Swait()
  1353. WACKYEFFECT({
  1354. Time = 15,
  1355. EffectType = "Sphere",
  1356. Size = VT(4, 4, 4),
  1357. Size2 = VT(0, 0, 0),
  1358. Transparency = 1,
  1359. Transparency2 = 0,
  1360. CFrame = CF(RING.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, 35),
  1361. MoveToPos = RING.Position,
  1362. RotationX = 0,
  1363. RotationY = 0,
  1364. RotationZ = 0,
  1365. Material = "Neon",
  1366. Color = C3(1, 1, 1),
  1367. SoundID = nil,
  1368. SoundPitch = nil,
  1369. SoundVolume = nil
  1370. })
  1371. end
  1372. local LOOP = 0
  1373. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(0, 0, 0), true)
  1374. MakeForm(BEAM, "Cyl")
  1375. CreateSound(BLASTS[MRANDOM(1, #BLASTS)], RING, 5, MRANDOM(9, 11) / 10, false)
  1376. repeat
  1377. local DISTANCE = (RING.Position - Mouse.Hit.p).Magnitude
  1378. if DISTANCE < 2000 then
  1379. BEAM.Size = VT(10 + 2 * COS(SINE / 4), DISTANCE, 10 + 2 * COS(SINE / 4))
  1380. BEAM.CFrame = CF(RING.Position, Mouse.Hit.p) * CF(0, 0, -DISTANCE / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
  1381. ApplyAoE(Mouse.Hit.p, 35)
  1382. WACKYEFFECT({
  1383. Time = 35,
  1384. EffectType = "Sphere",
  1385. Size = VT(10 + 2 * COS(SINE / 4), 10 + 2 * COS(SINE / 4), 10 + 2 * COS(SINE / 4)) * 2,
  1386. Size2 = VT(5, 75, 5),
  1387. Transparency = 0,
  1388. Transparency2 = 1,
  1389. CFrame = CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
  1390. MoveToPos = nil,
  1391. RotationX = 0,
  1392. RotationY = 0,
  1393. RotationZ = 0,
  1394. Material = "Neon",
  1395. Color = C3(1, 1, 1),
  1396. SoundID = nil,
  1397. SoundPitch = MRANDOM(9, 12) / 10,
  1398. SoundVolume = 10
  1399. })
  1400. Swait()
  1401. LOOP = LOOP + 1
  1402. end
  1403. until KEYHOLD == false and LOOP >= 35 or DISTANCE >= 2000
  1404. coroutine.resume(coroutine.create(function()
  1405. for i = 1, 15 do
  1406. Swait()
  1407. BEAM.Size = BEAM.Size - VT(0.2, 0, 0.2)
  1408. BEAM.Transparency = BEAM.Transparency + 0.06666666666666667
  1409. end
  1410. BEAM:remove()
  1411. end))
  1412. ATTACK = false
  1413. Rooted = false
  1414. end
  1415. function Nuke()
  1416. ATTACK = true
  1417. Rooted = true
  1418. local CHARGE = false
  1419. local BLASTS = {468991944, 468991990}
  1420. coroutine.resume(coroutine.create(function()
  1421. repeat
  1422. Swait()
  1423. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 0.1 / Animation_Speed)
  1424. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 0.1 / Animation_Speed)
  1425. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
  1426. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
  1427. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
  1428. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
  1429. until CHARGE == true
  1430. for i = 0, 0.4, 0.1 / Animation_Speed do
  1431. Swait()
  1432. WACKYEFFECT({
  1433. Time = 15,
  1434. EffectType = "Sphere",
  1435. Size = VT(60, 60, 60),
  1436. Size2 = VT(0, 0, 0),
  1437. Transparency = 1,
  1438. Transparency2 = 0.7,
  1439. CFrame = CF(RootPart.Position),
  1440. MoveToPos = nil,
  1441. RotationX = 0,
  1442. RotationY = 0,
  1443. RotationZ = 0,
  1444. Material = "Neon",
  1445. Color = C3(1, 1, 1),
  1446. SoundID = nil,
  1447. SoundPitch = nil,
  1448. SoundVolume = nil
  1449. })
  1450. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
  1451. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1452. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-50 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1453. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(50 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1454. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1455. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1456. end
  1457. coroutine.resume(coroutine.create(function()
  1458. local POS = RootPart.Position
  1459. wait(0.2)
  1460. for i = 1, 5 do
  1461. WACKYEFFECT({
  1462. Time = 65,
  1463. EffectType = "Sphere",
  1464. Size = VT(2, 2, 2),
  1465. Size2 = VT(0, 0, 500),
  1466. Transparency = 1,
  1467. Transparency2 = 0,
  1468. CFrame = CF(POS),
  1469. MoveToPos = nil,
  1470. RotationX = MRANDOM(-2, 2),
  1471. RotationY = MRANDOM(-12, 12),
  1472. RotationZ = MRANDOM(-2, 2),
  1473. Material = "Neon",
  1474. Color = C3(1, 1, 1),
  1475. SoundID = nil,
  1476. SoundPitch = nil,
  1477. SoundVolume = nil
  1478. })
  1479. end
  1480. wait(1)
  1481. SHAKECAM(POS, 9999999999, 25, 25)
  1482. ApplyAoE(POS, 450)
  1483. WACKYEFFECT({
  1484. Time = 85,
  1485. EffectType = "Sphere",
  1486. Size = VT(120, 120, 120),
  1487. Size2 = VT(350, 350, 350),
  1488. Transparency = 0,
  1489. Transparency2 = 1,
  1490. CFrame = CF(POS),
  1491. MoveToPos = nil,
  1492. RotationX = 0,
  1493. RotationY = 0,
  1494. RotationZ = 0,
  1495. Material = "Neon",
  1496. Color = C3(1, 1, 1),
  1497. SoundID = nil,
  1498. SoundPitch = 1,
  1499. SoundVolume = 10
  1500. })
  1501. for i = 1, 20 do
  1502. WACKYEFFECT({
  1503. Time = 85,
  1504. EffectType = "Sphere",
  1505. Size = VT(120, 120, 120),
  1506. Size2 = VT(120, 120, 144) + VT(i * 3, i * 3, i * 3),
  1507. Transparency = 0.8,
  1508. Transparency2 = 1,
  1509. CFrame = CF(POS),
  1510. MoveToPos = nil,
  1511. RotationX = 0,
  1512. RotationY = 0,
  1513. RotationZ = 0,
  1514. Material = "Neon",
  1515. Color = C3(1, 1, 1),
  1516. SoundID = nil,
  1517. SoundPitch = 1,
  1518. SoundVolume = 10
  1519. })
  1520. WACKYEFFECT({
  1521. Time = 100,
  1522. EffectType = "Wave",
  1523. Size = VT(25, 2, 25),
  1524. Size2 = VT(400, 0, 400) * 1.2,
  1525. Transparency = 0,
  1526. Transparency2 = 1,
  1527. CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
  1528. MoveToPos = nil,
  1529. RotationX = 0,
  1530. RotationY = 0,
  1531. RotationZ = 0,
  1532. Material = "Neon",
  1533. Color = C3(1, 1, 1),
  1534. SoundID = nil,
  1535. SoundPitch = nil,
  1536. SoundVolume = nil
  1537. })
  1538. end
  1539. local HITFLOOR, HITPOS = Raycast(POS, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
  1540. for i = 1, 5 do
  1541. CreateSound(438666077, Effects, 15, 1 - i / 15, false)
  1542. WACKYEFFECT({
  1543. Time = 120,
  1544. EffectType = "Wave",
  1545. Size = VT(150, 2, 150),
  1546. Size2 = VT(300 + i * 170, 0, 300 + i * 170) * 1.2,
  1547. Transparency = 0,
  1548. Transparency2 = 1,
  1549. CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)),
  1550. MoveToPos = nil,
  1551. RotationX = 0,
  1552. RotationY = 0,
  1553. RotationZ = 0,
  1554. Material = "Neon",
  1555. Color = C3(1, 1, 1),
  1556. SoundID = nil,
  1557. SoundPitch = nil,
  1558. SoundVolume = nil
  1559. })
  1560. end
  1561. end))
  1562. for i = 0, 1, 0.1 / Animation_Speed do
  1563. Swait()
  1564. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
  1565. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1566. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1567. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1568. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1569. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1570. end
  1571. ATTACK = false
  1572. Rooted = false
  1573. end))
  1574. for i = 1, 30 do
  1575. wait(0.01)
  1576. local POS = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(10, 150))
  1577. local HITFLOOR, HITPOS = Raycast(POS.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
  1578. if HITFLOOR then
  1579. ApplyAoE(HITPOS, 65)
  1580. local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
  1581. WACKYEFFECT({
  1582. Time = 25,
  1583. EffectType = "Sphere",
  1584. Size = VT(22, 22, 22),
  1585. Size2 = VT(85, 85, 85),
  1586. Transparency = 0,
  1587. Transparency2 = 1,
  1588. CFrame = CF(HITPOS),
  1589. MoveToPos = nil,
  1590. RotationX = 0,
  1591. RotationY = 0,
  1592. RotationZ = 0,
  1593. Material = "Neon",
  1594. Color = C3(1, 1, 1),
  1595. SoundID = BLASTS[MRANDOM(1, #BLASTS)],
  1596. SoundPitch = MRANDOM(9, 12) / 10,
  1597. SoundVolume = 10
  1598. })
  1599. for e = 1, 3 do
  1600. WACKYEFFECT({
  1601. EffectType = "Wave",
  1602. Size = VT(25, 0, 25),
  1603. Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
  1604. Transparency = 0,
  1605. Transparency2 = 1,
  1606. CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
  1607. MoveToPos = nil,
  1608. RotationX = 0,
  1609. RotationY = 3,
  1610. RotationZ = 0,
  1611. Material = "Neon",
  1612. Color = C3(1, 1, 1),
  1613. SoundID = nil,
  1614. SoundPitch = nil,
  1615. SoundVolume = nil
  1616. })
  1617. WACKYEFFECT({
  1618. Time = 35,
  1619. EffectType = "Sphere",
  1620. Size = VT(22, 45, 22),
  1621. Size2 = VT(25, 45 + e * 75, 25),
  1622. Transparency = 0,
  1623. Transparency2 = 1,
  1624. CFrame = CF(HITPOS) * TURN,
  1625. MoveToPos = nil,
  1626. RotationX = 0,
  1627. RotationY = 0,
  1628. RotationZ = 0,
  1629. Material = "Neon",
  1630. Color = C3(1, 1, 1),
  1631. SoundID = nil,
  1632. SoundPitch = MRANDOM(9, 12) / 10,
  1633. SoundVolume = 10
  1634. })
  1635. end
  1636. end
  1637. end
  1638. CHARGE = true
  1639. end
  1640. function MouseDown(Mouse)
  1641. if ATTACK == false then
  1642. end
  1643. end
  1644. function MouseUp(Mouse)
  1645. HOLD = false
  1646. end
  1647. function KeyDown(Key)
  1648. KEYHOLD = true
  1649. if Key == "z" and ATTACK == false then
  1650. Smite()
  1651. end
  1652. if Key == "b" and ATTACK == false then
  1653. Ravage()
  1654. end
  1655. if Key == "c" and ATTACK == false then
  1656. Earthquake()
  1657. end
  1658. if Key == "v" and ATTACK == false then
  1659. Beam()
  1660. end
  1661. if Key == "x" and ATTACK == false then
  1662. Nuke()
  1663. end
  1664. end
  1665. function KeyUp(Key)
  1666. if Key ~= "w" and Key ~= "s" and Key ~= "a" and Key ~= "d" then
  1667. KEYHOLD = false
  1668. end
  1669. end
  1670. Mouse.Button1Down:connect(function(NEWKEY)
  1671. MouseDown(NEWKEY)
  1672. end)
  1673. Mouse.Button1Up:connect(function(NEWKEY)
  1674. MouseUp(NEWKEY)
  1675. end)
  1676. Mouse.KeyDown:connect(function(NEWKEY)
  1677. KeyDown(NEWKEY)
  1678. end)
  1679. Mouse.KeyUp:connect(function(NEWKEY)
  1680. KeyUp(NEWKEY)
  1681. end)
  1682. function unanchor()
  1683. for _, c in pairs(Character:GetChildren()) do
  1684. if c:IsA("BasePart") and c ~= RootPart then
  1685. c.Anchored = false
  1686. end
  1687. end
  1688. if UNANCHOR == true then
  1689. RootPart.Anchored = false
  1690. else
  1691. RootPart.Anchored = true
  1692. end
  1693. end
  1694. Humanoid.Changed:connect(function(Jump)
  1695. if Jump == "Jump" and Disable_Jump == true then
  1696. Humanoid.Jump = false
  1697. end
  1698. end)
  1699. while true do
  1700. Swait()
  1701. Humanoid.HipHeight = 7
  1702. script.Parent = WEAPONGUI
  1703. ANIMATE.Parent = nil
  1704. for _, v in next, Humanoid:GetPlayingAnimationTracks() do
  1705. v:Stop()
  1706. end
  1707. SINE = SINE + CHANGE / 2
  1708. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1709. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1710. if ATTACK == false then
  1711. if TORSOVELOCITY < 1 then
  1712. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
  1713. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1714. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1715. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1716. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1717. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1718. elseif TORSOVELOCITY > 1 then
  1719. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1720. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1721. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(25 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1722. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-25 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1723. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1724. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1725. end
  1726. end
  1727. for WING = 1, #WINGS do
  1728. local STUFF = WINGS[WING]
  1729. local FEATHERS = STUFF[1]
  1730. local ACCEL = STUFF[2]
  1731. FEATHERS.Acceleration = ACCEL + VT(0, 35 * SIN(SINE / 12), 0)
  1732. end
  1733. unanchor()
  1734. Humanoid.MaxHealth = 3000000
  1735. Humanoid.Health = 3000000
  1736. if Rooted == false then
  1737. Disable_Jump = false
  1738. Humanoid.WalkSpeed = Speed
  1739. elseif Rooted == true then
  1740. Disable_Jump = true
  1741. Humanoid.WalkSpeed = 0
  1742. end
  1743. for _, c in pairs(Character:GetChildren()) do
  1744. if c.ClassName == "Accessory" or c.Name == "Body Colors" then
  1745. local hand = c:FindFirstChild'Handle'
  1746. if(hand)then
  1747. hand.Parent = Character
  1748. weldBetween(hand,Head)
  1749. end
  1750. c:destroy()
  1751. end
  1752. end
  1753. sick.Playing = true
  1754. sick.SoundId = "rbxassetid://1073318933"
  1755. sick.Looped = true
  1756. sick.Pitch = 1
  1757. sick.Volume = 3
  1758. if sick.Parent ~= Character then
  1759. sick = IT("Sound", Character)
  1760. end
  1761. Head.Color = C3(0,0,0)
  1762. pcall(function() Head:FindFirstChildOfClass'Decal':destroy() end)
  1763. ApplyAoE(Torso.Position, 12)
  1764. refit()
  1765. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement