Advertisement
Guest User

Untitled

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