Advertisement
SirSkyvalky

Untitled

Aug 23rd, 2018
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 256.00 KB | None | 0 0
  1. --------------
  2. --Cyber warden--
  3. ----------------------------------------------------------------
  4. print([[
  5. --CREATED BY SHACKLUSTER
  6. --Edited by ozzak1003 --
  7. --YT: https://www.youtube.com/channel/UC38cAdtSgPWJVEHV8zgZi6A--
  8. --Discord: ozzak1003ripagain#3275
  9. --------------------------------
  10. hello good sir
  11. Don't leak pls
  12. Enjoy ;)
  13. -------------------------------
  14. ]])
  15. ------------------------------
  16. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  17. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  18. do
  19. print("FE Compatibility code by Mokiros")
  20. script.Parent = Player.Character
  21.  
  22. --RemoteEvent for communicating
  23. local Event = Instance.new("RemoteEvent")
  24. Event.Name = "UserInput_Event"
  25.  
  26. --Fake event to make stuff like Mouse.KeyDown work
  27. local function fakeEvent()
  28. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  29. t.connect = t.Connect
  30. return t
  31. end
  32.  
  33. --Creating fake input objects with fake variables
  34. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  35. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  36. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  37. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  38. end}
  39. --Merged 2 functions into one by checking amount of arguments
  40. CAS.UnbindAction = CAS.BindAction
  41.  
  42. --This function will trigger the events that have been :Connect()'ed
  43. local function te(self,ev,...)
  44. local t = m[ev]
  45. if t and t._fakeEvent and t.Function then
  46. t.Function(...)
  47. end
  48. end
  49. m.TrigEvent = te
  50. UIS.TrigEvent = te
  51.  
  52. Event.OnServerEvent:Connect(function(plr,io)
  53. if plr~=Player then return end
  54. if io.isMouse then
  55. m.Target = io.Target
  56. m.Hit = io.Hit
  57. else
  58. local b = io.UserInputState == Enum.UserInputState.Begin
  59. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  60. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  61. end
  62. for _,t in pairs(CAS.Actions) do
  63. for _,k in pairs(t.Keys) do
  64. if k==io.KeyCode then
  65. t.Function(t.Name,io.UserInputState,io)
  66. end
  67. end
  68. end
  69. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  70. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  71. end
  72. end)
  73. Event.Parent = NLS([==[
  74. local Player = game:GetService("Players").LocalPlayer
  75. local Event = script:WaitForChild("UserInput_Event")
  76.  
  77. local UIS = game:GetService("UserInputService")
  78. local input = function(io,a)
  79. if a then return end
  80. --Since InputObject is a client-side instance, we create and pass table instead
  81. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  82. end
  83. UIS.InputBegan:Connect(input)
  84. UIS.InputEnded:Connect(input)
  85.  
  86. local Mouse = Player:GetMouse()
  87. local h,t
  88. --Give the server mouse data 30 times every second, but only if the values changed
  89. --If player is not moving their mouse, client won't fire events
  90. while wait(1/30) do
  91. if h~=Mouse.Hit or t~=Mouse.Target then
  92. h,t=Mouse.Hit,Mouse.Target
  93. Event:FireServer({isMouse=true,Target=t,Hit=h})
  94. end
  95. end]==],Player.Character)
  96. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  97. end
  98. game:GetService("StarterGui"):SetCore("SendNotification", {
  99. Title = "Cyber warden beta v1.5 update :3";
  100. Text = "Edited by ozzak1003, \Made by SHACKLUSTER ";
  101. })
  102.  
  103. wait(0.2)
  104.  
  105. Player = owner
  106. PlayerGui = Player.PlayerGui
  107. Cam = workspace.CurrentCamera
  108. Backpack = Player.Backpack
  109. Character = Player.Character
  110. Humanoid = Character.Humanoid
  111.  
  112. RootPart = Character["HumanoidRootPart"]
  113. Torso = Character["Torso"]
  114. Head = Character["Head"]
  115. RightArm = Character["Right Arm"]
  116. LeftArm = Character["Left Arm"]
  117. RightLeg = Character["Right Leg"]
  118. LeftLeg = Character["Left Leg"]
  119. RootJoint = RootPart["RootJoint"]
  120. Neck = Torso["Neck"]
  121. RightShoulder = Torso["Right Shoulder"]
  122. LeftShoulder = Torso["Left Shoulder"]
  123. RightHip = Torso["Right Hip"]
  124. LeftHip = Torso["Left Hip"]
  125. local sick = Instance.new("Sound",Character)
  126. sick.SoundId = "rbxassetid://1118967006"
  127. sick.Looped = true
  128. sick.Volume = 1
  129.  
  130. IT = Instance.new
  131. CF = CFrame.new
  132. VT = Vector3.new
  133. RAD = math.rad
  134. C3 = Color3.new
  135. UD2 = UDim2.new
  136. BRICKC = BrickColor.new
  137. ANGLES = CFrame.Angles
  138. EULER = CFrame.fromEulerAnglesXYZ
  139. COS = math.cos
  140. ACOS = math.acos
  141. SIN = math.sin
  142. ASIN = math.asin
  143. ABS = math.abs
  144. MRANDOM = math.random
  145. FLOOR = math.floor
  146.  
  147. --//=================================\\
  148. --|| USEFUL VALUES
  149. --\\=================================//
  150.  
  151. Animation_Speed = 3
  152. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  153. local Speed = 45
  154. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  155. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  156. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  157. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  158. local DAMAGEMULTIPLIER = 1
  159. local ANIM = "Idle"
  160. local ATTACK = false
  161. local EQUIPPED = false
  162. local HOLD = false
  163. local COMBO = 1
  164. local Rooted = false
  165. local SINE = 0
  166. local KEYHOLD = false
  167. local CHANGE = 2 / Animation_Speed
  168. local WALKINGANIM = false
  169. local VALUE1 = false
  170. local VALUE2 = false
  171. local ROBLOXIDLEANIMATION = IT("Animation")
  172. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  173. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  174. --ROBLOXIDLEANIMATION.Parent = Humanoid
  175. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  176. WEAPONGUI.Name = "Weapon GUI"
  177. local Effects = IT("Folder", Character)
  178. Effects.Name = "Effects"
  179. local ANIMATOR = Humanoid.Animator
  180. local ANIMATE = Character.Animate
  181. local UNANCHOR = true
  182. local HITPOS = nil
  183. local HITFLOOR = nil
  184. local LEFTWINGS = {}
  185. local RIGHTWINGS = {}
  186. local BODY = {}
  187.  
  188. --//=================================\\
  189. --\\=================================//
  190.  
  191.  
  192. --//=================================\\
  193. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  194. --\\=================================//
  195.  
  196. ArtificialHB = Instance.new("BindableEvent", script)
  197. ArtificialHB.Name = "ArtificialHB"
  198.  
  199. script:WaitForChild("ArtificialHB")
  200.  
  201. frame = Frame_Speed
  202. tf = 0
  203. allowframeloss = false
  204. tossremainder = false
  205. lastframe = tick()
  206. script.ArtificialHB:Fire()
  207.  
  208. game:GetService("RunService").Heartbeat:connect(function(s, p)
  209. tf = tf + s
  210. if tf >= frame then
  211. if allowframeloss then
  212. script.ArtificialHB:Fire()
  213. lastframe = tick()
  214. else
  215. for i = 1, math.floor(tf / frame) do
  216. script.ArtificialHB:Fire()
  217. end
  218. lastframe = tick()
  219. end
  220. if tossremainder then
  221. tf = 0
  222. else
  223. tf = tf - frame * math.floor(tf / frame)
  224. end
  225. end
  226. end)
  227.  
  228. --//=================================\\
  229. --\\=================================//
  230.  
  231. --//=================================\\
  232. --|| SOME FUNCTIONS
  233. --\\=================================//
  234. -----
  235. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  236. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  237. end
  238.  
  239. function PositiveAngle(NUMBER)
  240. if NUMBER >= 0 then
  241. NUMBER = 0
  242. end
  243. return NUMBER
  244. end
  245.  
  246. function NegativeAngle(NUMBER)
  247. if NUMBER <= 0 then
  248. NUMBER = 0
  249. end
  250. return NUMBER
  251. end
  252.  
  253. function Swait(NUMBER)
  254. if NUMBER == 0 or NUMBER == nil then
  255. ArtificialHB.Event:wait()
  256. else
  257. for i = 1, NUMBER do
  258. ArtificialHB.Event:wait()
  259. end
  260. end
  261. end
  262.  
  263. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  264. local NEWMESH = IT(MESH)
  265. if MESH == "SpecialMesh" then
  266. NEWMESH.MeshType = MESHTYPE
  267. if MESHID ~= "nil" and MESHID ~= "" then
  268. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  269. end
  270. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  271. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  272. end
  273. end
  274. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  275. NEWMESH.Scale = SCALE
  276. NEWMESH.Parent = PARENT
  277. return NEWMESH
  278. end
  279.  
  280. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  281. local NEWPART = IT("Part")
  282. NEWPART.formFactor = FORMFACTOR
  283. NEWPART.Reflectance = REFLECTANCE
  284. NEWPART.Transparency = TRANSPARENCY
  285. NEWPART.CanCollide = false
  286. NEWPART.Locked = true
  287. NEWPART.Anchored = true
  288. if ANCHOR == false then
  289. NEWPART.Anchored = false
  290. end
  291. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  292. NEWPART.Name = NAME
  293. NEWPART.Size = SIZE
  294. NEWPART.Position = Torso.Position
  295. NEWPART.Material = MATERIAL
  296. NEWPART:BreakJoints()
  297. NEWPART.Parent = PARENT
  298. return NEWPART
  299. end
  300.  
  301. local function weldBetween(a, b)
  302. local weldd = Instance.new("ManualWeld")
  303. weldd.Part0 = a
  304. weldd.Part1 = b
  305. weldd.C0 = CFrame.new()
  306. weldd.C1 = b.CFrame:inverse() * a.CFrame
  307. weldd.Parent = a
  308. return weldd
  309. end
  310.  
  311.  
  312. function QuaternionFromCFrame(cf)
  313. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  314. local trace = m00 + m11 + m22
  315. if trace > 0 then
  316. local s = math.sqrt(1 + trace)
  317. local recip = 0.5 / s
  318. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  319. else
  320. local i = 0
  321. if m11 > m00 then
  322. i = 1
  323. end
  324. if m22 > (i == 0 and m00 or m11) then
  325. i = 2
  326. end
  327. if i == 0 then
  328. local s = math.sqrt(m00 - m11 - m22 + 1)
  329. local recip = 0.5 / s
  330. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  331. elseif i == 1 then
  332. local s = math.sqrt(m11 - m22 - m00 + 1)
  333. local recip = 0.5 / s
  334. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  335. elseif i == 2 then
  336. local s = math.sqrt(m22 - m00 - m11 + 1)
  337. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  338. end
  339. end
  340. end
  341.  
  342. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  343. local xs, ys, zs = x + x, y + y, z + z
  344. local wx, wy, wz = w * xs, w * ys, w * zs
  345. local xx = x * xs
  346. local xy = x * ys
  347. local xz = x * zs
  348. local yy = y * ys
  349. local yz = y * zs
  350. local zz = z * zs
  351. 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))
  352. end
  353.  
  354. function QuaternionSlerp(a, b, t)
  355. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  356. local startInterp, finishInterp;
  357. if cosTheta >= 0.0001 then
  358. if (1 - cosTheta) > 0.0001 then
  359. local theta = ACOS(cosTheta)
  360. local invSinTheta = 1 / SIN(theta)
  361. startInterp = SIN((1 - t) * theta) * invSinTheta
  362. finishInterp = SIN(t * theta) * invSinTheta
  363. else
  364. startInterp = 1 - t
  365. finishInterp = t
  366. end
  367. else
  368. if (1 + cosTheta) > 0.0001 then
  369. local theta = ACOS(-cosTheta)
  370. local invSinTheta = 1 / SIN(theta)
  371. startInterp = SIN((t - 1) * theta) * invSinTheta
  372. finishInterp = SIN(t * theta) * invSinTheta
  373. else
  374. startInterp = t - 1
  375. finishInterp = t
  376. end
  377. end
  378. 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
  379. end
  380.  
  381. function Clerp(a, b, t)
  382. local qa = {QuaternionFromCFrame(a)}
  383. local qb = {QuaternionFromCFrame(b)}
  384. local ax, ay, az = a.x, a.y, a.z
  385. local bx, by, bz = b.x, b.y, b.z
  386. local _t = 1 - t
  387. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  388. end
  389.  
  390. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  391. local frame = IT("Frame")
  392. frame.BackgroundTransparency = TRANSPARENCY
  393. frame.BorderSizePixel = BORDERSIZEPIXEL
  394. frame.Position = POSITION
  395. frame.Size = SIZE
  396. frame.BackgroundColor3 = COLOR
  397. frame.BorderColor3 = BORDERCOLOR
  398. frame.Name = NAME
  399. frame.Parent = PARENT
  400. return frame
  401. end
  402.  
  403. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  404. local label = IT("TextLabel")
  405. label.BackgroundTransparency = 1
  406. label.Size = UD2(1, 0, 1, 0)
  407. label.Position = UD2(0, 0, 0, 0)
  408. label.TextColor3 = TEXTCOLOR
  409. label.TextStrokeTransparency = STROKETRANSPARENCY
  410. label.TextTransparency = TRANSPARENCY
  411. label.FontSize = TEXTFONTSIZE
  412. label.Font = TEXTFONT
  413. label.BorderSizePixel = BORDERSIZEPIXEL
  414. label.TextScaled = false
  415. label.Text = TEXT
  416. label.Name = NAME
  417. label.Parent = PARENT
  418. return label
  419. end
  420.  
  421. function NoOutlines(PART)
  422. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  423. end
  424.  
  425. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  426. local NEWWELD = IT(TYPE)
  427. NEWWELD.Part0 = PART0
  428. NEWWELD.Part1 = PART1
  429. NEWWELD.C0 = C0
  430. NEWWELD.C1 = C1
  431. NEWWELD.Parent = PARENT
  432. return NEWWELD
  433. end
  434.  
  435. local S = IT("Sound")
  436. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  437. local NEWSOUND = nil
  438. coroutine.resume(coroutine.create(function()
  439. NEWSOUND = S:Clone()
  440. NEWSOUND.Parent = PARENT
  441. NEWSOUND.Volume = VOLUME
  442. NEWSOUND.Pitch = PITCH
  443. NEWSOUND.SoundId = "rbxassetid://"..ID
  444. NEWSOUND:play()
  445. if DOESLOOP == true then
  446. NEWSOUND.Looped = true
  447. else
  448. repeat wait(1) until NEWSOUND.Playing == false
  449. NEWSOUND:remove()
  450. end
  451. end))
  452. return NEWSOUND
  453. end
  454.  
  455. function CFrameFromTopBack(at, top, back)
  456. local right = top:Cross(back)
  457. 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)
  458. end
  459.  
  460. function R_RANDOM(CFRAME,DIST)
  461. return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
  462. end
  463.  
  464. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
  465. function WACKYEFFECT(Table)
  466. local TYPE = (Table.EffectType or "Sphere")
  467. local SIZE = (Table.Size or VT(1,1,1))
  468. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  469. local TRANSPARENCY = (Table.Transparency or 0)
  470. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  471. local CFRAME = (Table.CFrame or Torso.CFrame)
  472. local MOVEDIRECTION = (Table.MoveToPos or nil)
  473. local ROTATION1 = (Table.RotationX or 0)
  474. local ROTATION2 = (Table.RotationY or 0)
  475. local ROTATION3 = (Table.RotationZ or 0)
  476. local MATERIAL = (Table.Material or "Neon")
  477. local COLOR = (Table.Color or C3(1,1,1))
  478. local TIME = (Table.Time or 45)
  479. local SOUNDID = (Table.SoundID or nil)
  480. local SOUNDPITCH = (Table.SoundPitch or nil)
  481. local SOUNDVOLUME = (Table.SoundVolume or nil)
  482. local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  483. local BOOMERANG = (Table.Boomerang or 0)
  484. local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  485. coroutine.resume(coroutine.create(function()
  486. local PLAYSSOUND = false
  487. local SOUND = nil
  488. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  489. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  490. PLAYSSOUND = true
  491. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  492. end
  493. EFFECT.Color = COLOR
  494. local MSH = nil
  495. if TYPE == "Sphere" then
  496. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  497. elseif TYPE == "Block" or TYPE == "Box" then
  498. MSH = IT("BlockMesh",EFFECT)
  499. MSH.Scale = SIZE
  500. elseif TYPE == "Wave" then
  501. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  502. elseif TYPE == "Ring" then
  503. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  504. elseif TYPE == "Slash" then
  505. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  506. elseif TYPE == "Round Slash" then
  507. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  508. elseif TYPE == "Swirl" then
  509. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  510. elseif TYPE == "Skull" then
  511. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  512. elseif TYPE == "Crystal" then
  513. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  514. end
  515. if MSH ~= nil then
  516. local BOOMR1 = 1+BOOMERANG/50
  517. local BOOMR2 = 1+SIZEBOOMERANG/50
  518. local MOVESPEED = nil
  519. if MOVEDIRECTION ~= nil then
  520. if USEBOOMERANGMATH == true then
  521. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  522. else
  523. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  524. end
  525. end
  526. local GROWTH = nil
  527. if USEBOOMERANGMATH == true then
  528. GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  529. else
  530. GROWTH = (SIZE - ENDSIZE)
  531. end
  532. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  533. if TYPE == "Block" then
  534. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  535. else
  536. EFFECT.CFrame = CFRAME
  537. end
  538. if USEBOOMERANGMATH == true then
  539. for LOOP = 1, TIME+1 do
  540. Swait()
  541. MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
  542. if TYPE == "Wave" then
  543. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  544. end
  545. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  546. if TYPE == "Block" then
  547. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  548. else
  549. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  550. end
  551. if MOVEDIRECTION ~= nil then
  552. local ORI = EFFECT.Orientation
  553. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  554. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  555. end
  556. end
  557. else
  558. for LOOP = 1, TIME+1 do
  559. Swait()
  560. MSH.Scale = MSH.Scale - GROWTH/TIME
  561. if TYPE == "Wave" then
  562. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  563. end
  564. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  565. if TYPE == "Block" then
  566. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  567. else
  568. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  569. end
  570. if MOVEDIRECTION ~= nil then
  571. local ORI = EFFECT.Orientation
  572. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  573. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  574. end
  575. end
  576. end
  577. EFFECT.Transparency = 1
  578. if PLAYSSOUND == false then
  579. EFFECT:remove()
  580. else
  581. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  582. EFFECT:remove()
  583. end
  584. else
  585. if PLAYSSOUND == false then
  586. EFFECT:remove()
  587. else
  588. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  589. EFFECT:remove()
  590. end
  591. end
  592. end))
  593. end
  594.  
  595. function MakeForm(PART,TYPE)
  596. if TYPE == "Cyl" then
  597. local MSH = IT("CylinderMesh",PART)
  598. elseif TYPE == "Ball" then
  599. local MSH = IT("SpecialMesh",PART)
  600. MSH.MeshType = "Sphere"
  601. elseif TYPE == "Wedge" then
  602. local MSH = IT("SpecialMesh",PART)
  603. MSH.MeshType = "Wedge"
  604. end
  605. end
  606.  
  607. Debris = game:GetService("Debris")
  608.  
  609. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  610. local DIRECTION = CF(StartPos,EndPos).lookVector
  611. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  612. return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, DIRECTION * Distance), Ignore)
  613. end
  614.  
  615. local DECAL = IT("Decal")
  616. function MagicRing()
  617. local RING = CreatePart(3, Effects, "Granite", 0, 1, "Maroon", "MagicRing", VT(0,0,0),true)
  618. local MESH = IT("BlockMesh",RING)
  619. local BOTTOMTEXTURE = DECAL:Clone()
  620. BOTTOMTEXTURE.Parent = RING
  621. BOTTOMTEXTURE.Face = "Bottom"
  622. BOTTOMTEXTURE.Name = "BottomTexture"
  623. local TOPTEXTURE = DECAL:Clone()
  624. TOPTEXTURE.Parent = RING
  625. TOPTEXTURE.Face = "Top"
  626. TOPTEXTURE.Name = "TopTexture"
  627. BOTTOMTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
  628. TOPTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
  629. BOTTOMTEXTURE.Color3 = C3(0,0,0)
  630. TOPTEXTURE.Color3 = C3(0,0,0)
  631. return RING,MESH,TOPTEXTURE,BOTTOMTEXTURE
  632. end
  633.  
  634. function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
  635. coroutine.resume(coroutine.create(function()
  636. local FADE = IT("Model",Effects)
  637. if PARENT ~= nil then
  638. FADE.Parent = PARENT
  639. end
  640. FADE.Name = "FadingEffect"
  641. for _, c in pairs(Character:GetChildren()) do
  642. if c.ClassName == "Part" then
  643. c.CanCollide = false
  644. local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Pearl"), c.Name, c.Size, true)
  645. FADER.CFrame = c.CFrame
  646. FADER.Color = COLOR
  647. if FADER.Name == "Head" then
  648. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
  649. elseif FADER.Name == "HumanoidRootPart" then
  650. FADE.PrimaryPart = FADER
  651. FADER.Transparency = 1
  652. end
  653. end
  654. end
  655. local TRANS = 0.25/TIMER
  656. local DIST = nil
  657. if MOVEDIRECTION ~= nil then
  658. DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
  659. end
  660. for i = 1, TIMER do
  661. Swait()
  662. for _, c in pairs(FADE:GetChildren()) do
  663. if c.ClassName == "Part" then
  664. c.Transparency = c.Transparency + TRANS
  665. end
  666. end
  667. if MOVEDIRECTION ~= nil then
  668. local ORI = FADE.PrimaryPart.Orientation
  669. FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
  670. end
  671. end
  672. FADE:remove()
  673. end))
  674. end
  675.  
  676. -----
  677. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  678. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  679. end
  680.  
  681. function PositiveAngle(NUMBER)
  682. if NUMBER >= 0 then
  683. NUMBER = 0
  684. end
  685. return NUMBER
  686. end
  687.  
  688. function NegativeAngle(NUMBER)
  689. if NUMBER <= 0 then
  690. NUMBER = 0
  691. end
  692. return NUMBER
  693. end
  694.  
  695. function Swait(NUMBER)
  696. if NUMBER == 0 or NUMBER == nil then
  697. ArtificialHB.Event:wait()
  698. else
  699. for i = 1, NUMBER do
  700. ArtificialHB.Event:wait()
  701. end
  702. end
  703. end
  704.  
  705. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  706. local NEWMESH = IT(MESH)
  707. if MESH == "SpecialMesh" then
  708. NEWMESH.MeshType = MESHTYPE
  709. if MESHID ~= "nil" and MESHID ~= "" then
  710. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  711. end
  712. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  713. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  714. end
  715. end
  716. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  717. NEWMESH.Scale = SCALE
  718. NEWMESH.Parent = PARENT
  719. return NEWMESH
  720. end
  721.  
  722. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  723. local NEWPART = IT("Part")
  724. NEWPART.formFactor = FORMFACTOR
  725. NEWPART.Reflectance = REFLECTANCE
  726. NEWPART.Transparency = TRANSPARENCY
  727. NEWPART.CanCollide = false
  728. NEWPART.Locked = true
  729. NEWPART.Anchored = true
  730. if ANCHOR == false then
  731. NEWPART.Anchored = false
  732. end
  733. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  734. NEWPART.Name = NAME
  735. NEWPART.Size = SIZE
  736. NEWPART.Position = Torso.Position
  737. NEWPART.Material = MATERIAL
  738. NEWPART:BreakJoints()
  739. NEWPART.Parent = PARENT
  740. return NEWPART
  741. end
  742.  
  743. local function weldBetween(a, b)
  744. local weldd = IT("Weld")
  745. weldd.Part0 = a
  746. weldd.Part1 = b
  747. weldd.C0 = CF()
  748. weldd.C1 = b.CFrame:inverse() * a.CFrame
  749. weldd.Parent = a
  750. return weldd
  751. end
  752.  
  753.  
  754. function QuaternionFromCFrame(cf)
  755. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  756. local trace = m00 + m11 + m22
  757. if trace > 0 then
  758. local s = math.sqrt(1 + trace)
  759. local recip = 0.5 / s
  760. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  761. else
  762. local i = 0
  763. if m11 > m00 then
  764. i = 1
  765. end
  766. if m22 > (i == 0 and m00 or m11) then
  767. i = 2
  768. end
  769. if i == 0 then
  770. local s = math.sqrt(m00 - m11 - m22 + 1)
  771. local recip = 0.5 / s
  772. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  773. elseif i == 1 then
  774. local s = math.sqrt(m11 - m22 - m00 + 1)
  775. local recip = 0.5 / s
  776. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  777. elseif i == 2 then
  778. local s = math.sqrt(m22 - m00 - m11 + 1)
  779. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  780. end
  781. end
  782. end
  783.  
  784. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  785. local xs, ys, zs = x + x, y + y, z + z
  786. local wx, wy, wz = w * xs, w * ys, w * zs
  787. local xx = x * xs
  788. local xy = x * ys
  789. local xz = x * zs
  790. local yy = y * ys
  791. local yz = y * zs
  792. local zz = z * zs
  793. 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))
  794. end
  795.  
  796. function QuaternionSlerp(a, b, t)
  797. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  798. local startInterp, finishInterp;
  799. if cosTheta >= 0.0001 then
  800. if (1 - cosTheta) > 0.0001 then
  801. local theta = ACOS(cosTheta)
  802. local invSinTheta = 1 / SIN(theta)
  803. startInterp = SIN((1 - t) * theta) * invSinTheta
  804. finishInterp = SIN(t * theta) * invSinTheta
  805. else
  806. startInterp = 1 - t
  807. finishInterp = t
  808. end
  809. else
  810. if (1 + cosTheta) > 0.0001 then
  811. local theta = ACOS(-cosTheta)
  812. local invSinTheta = 1 / SIN(theta)
  813. startInterp = SIN((t - 1) * theta) * invSinTheta
  814. finishInterp = SIN(t * theta) * invSinTheta
  815. else
  816. startInterp = t - 1
  817. finishInterp = t
  818. end
  819. end
  820. 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
  821. end
  822.  
  823. function Clerp(a, b, t)
  824. local qa = {QuaternionFromCFrame(a)}
  825. local qb = {QuaternionFromCFrame(b)}
  826. local ax, ay, az = a.x, a.y, a.z
  827. local bx, by, bz = b.x, b.y, b.z
  828. local _t = 1 - t
  829. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  830. end
  831.  
  832. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  833. local frame = IT("Frame")
  834. frame.BackgroundTransparency = TRANSPARENCY
  835. frame.BorderSizePixel = BORDERSIZEPIXEL
  836. frame.Position = POSITION
  837. frame.Size = SIZE
  838. frame.BackgroundColor3 = COLOR
  839. frame.BorderColor3 = BORDERCOLOR
  840. frame.Name = NAME
  841. frame.Parent = PARENT
  842. return frame
  843. end
  844.  
  845. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  846. local label = IT("TextLabel")
  847. label.BackgroundTransparency = 1
  848. label.Size = UD2(1, 0, 1, 0)
  849. label.Position = UD2(0, 0, 0, 0)
  850. label.TextColor3 = TEXTCOLOR
  851. label.TextStrokeTransparency = STROKETRANSPARENCY
  852. label.TextTransparency = TRANSPARENCY
  853. label.FontSize = TEXTFONTSIZE
  854. label.Font = TEXTFONT
  855. label.BorderSizePixel = BORDERSIZEPIXEL
  856. label.TextScaled = false
  857. label.Text = TEXT
  858. label.Name = NAME
  859. label.Parent = PARENT
  860. return label
  861. end
  862.  
  863. function NoOutlines(PART)
  864. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  865. end
  866.  
  867. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  868. local NEWWELD = IT(TYPE)
  869. NEWWELD.Part0 = PART0
  870. NEWWELD.Part1 = PART1
  871. NEWWELD.C0 = C0
  872. NEWWELD.C1 = C1
  873. NEWWELD.Parent = PARENT
  874. return NEWWELD
  875. end
  876.  
  877. local S = IT("Sound")
  878. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  879. local NEWSOUND = nil
  880. coroutine.resume(coroutine.create(function()
  881. NEWSOUND = S:Clone()
  882. NEWSOUND.Parent = PARENT
  883. NEWSOUND.Volume = VOLUME
  884. NEWSOUND.Pitch = PITCH
  885. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  886. NEWSOUND:play()
  887. if DOESLOOP == true then
  888. NEWSOUND.Looped = true
  889. else
  890. repeat wait(1) until NEWSOUND.Playing == false
  891. NEWSOUND:remove()
  892. end
  893. end))
  894. return NEWSOUND
  895. end
  896.  
  897. function CFrameFromTopBack(at, top, back)
  898. local right = top:Cross(back)
  899. 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)
  900. end
  901.  
  902. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  903. function WACKYEFFECT(Table)
  904. local TYPE = (Table.EffectType or "Sphere")
  905. local SIZE = (Table.Size or VT(1,1,1))
  906. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  907. local TRANSPARENCY = (Table.Transparency or 0)
  908. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  909. local CFRAME = (Table.CFrame or Torso.CFrame)
  910. local MOVEDIRECTION = (Table.MoveToPos or nil)
  911. local ROTATION1 = (Table.RotationX or 0)
  912. local ROTATION2 = (Table.RotationY or 0)
  913. local ROTATION3 = (Table.RotationZ or 0)
  914. local MATERIAL = (Table.Material or "Neon")
  915. local COLOR = (Table.Color or C3(1,1,1))
  916. local TIME = (Table.Time or 45)
  917. local SOUNDID = (Table.SoundID or nil)
  918. local SOUNDPITCH = (Table.SoundPitch or nil)
  919. local SOUNDVOLUME = (Table.SoundVolume or nil)
  920. coroutine.resume(coroutine.create(function()
  921. local PLAYSSOUND = false
  922. local SOUND = nil
  923. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  924. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  925. PLAYSSOUND = true
  926. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  927. end
  928. EFFECT.Color = COLOR
  929. local MSH = nil
  930. if TYPE == "Sphere" then
  931. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  932. elseif TYPE == "Block" then
  933. MSH = IT("BlockMesh",EFFECT)
  934. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  935. elseif TYPE == "Wave" then
  936. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  937. elseif TYPE == "Ring" then
  938. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  939. elseif TYPE == "Slash" then
  940. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  941. elseif TYPE == "Round Slash" then
  942. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  943. elseif TYPE == "Swirl" then
  944. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  945. elseif TYPE == "Skull" then
  946. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  947. elseif TYPE == "Crystal" then
  948. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  949. end
  950. if MSH ~= nil then
  951. local MOVESPEED = nil
  952. if MOVEDIRECTION ~= nil then
  953. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  954. end
  955. local GROWTH = SIZE - ENDSIZE
  956. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  957. if TYPE == "Block" then
  958. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  959. else
  960. EFFECT.CFrame = CFRAME
  961. end
  962. for LOOP = 1, TIME+1 do
  963. Swait()
  964. MSH.Scale = MSH.Scale - GROWTH/TIME
  965. if TYPE == "Wave" then
  966. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  967. end
  968. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  969. if TYPE == "Block" then
  970. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  971. else
  972. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  973. end
  974. if MOVEDIRECTION ~= nil then
  975. local ORI = EFFECT.Orientation
  976. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  977. EFFECT.Orientation = ORI
  978. end
  979. end
  980. if PLAYSSOUND == false then
  981. EFFECT:remove()
  982. else
  983. SOUND.Stopped:Connect(function()
  984. EFFECT:remove()
  985. end)
  986. end
  987. else
  988. if PLAYSSOUND == false then
  989. EFFECT:remove()
  990. else
  991. repeat Swait() until SOUND.Playing == false
  992. EFFECT:remove()
  993. end
  994. end
  995. end))
  996. end
  997.  
  998. local LEFTWINGS = {}
  999. local RIGHTWINGS = {}
  1000. local BODY = {}
  1001.  
  1002. local Back = CreatePart(3, Character, "Neon", 0, 0, "Teal", "Wing", VT(1,1,0.35),false)
  1003. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Back, CF(0, 0.5, 1.2) * ANGLES(RAD(0),RAD(0),RAD(45)), CF(0, 0, 0))
  1004.  
  1005. local ANGLE = 35
  1006. for i = 1, 5 do
  1007. local Wing = CreatePart(3, Character, "Neon", 0, 0, "New Yeller", "Wing", VT(0.15,2+(i/2),0.15),false)
  1008. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
  1009. local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Crimson", "Wing", VT(0.25,1,0.25),false)
  1010. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
  1011. ANGLE = ANGLE - 15
  1012. table.insert(LEFTWINGS,WingWeld)
  1013. end
  1014.  
  1015. ANGLE = 35
  1016. for i = 1, 5 do
  1017. local Wing = CreatePart(3, Character, "Neon", 0, 0, "Crimson", "Wing", VT(0.15,2+(i/2),0.15),false)
  1018. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
  1019. local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Wing", VT(0.25,1,0.25),false)
  1020. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
  1021. ANGLE = ANGLE - 15
  1022. table.insert(RIGHTWINGS,WingWeld)
  1023. end
  1024.  
  1025. function MakeForm(PART,TYPE)
  1026. if TYPE == "Cyl" then
  1027. local MSH = IT("CylinderMesh",PART)
  1028. elseif TYPE == "Ball" then
  1029. local MSH = IT("SpecialMesh",PART)
  1030. MSH.MeshType = "Sphere"
  1031. elseif TYPE == "Wedge" then
  1032. local MSH = IT("SpecialMesh",PART)
  1033. MSH.MeshType = "Wedge"
  1034. end
  1035. end
  1036.  
  1037. Debris = game:GetService("Debris")
  1038.  
  1039. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1040. local DIRECTION = CF(StartPos,EndPos).lookVector
  1041. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1042. end
  1043.  
  1044. function turnto(position)
  1045. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1046. end
  1047.  
  1048. function SpawnTrail(FROM,TO,BIG)
  1049. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Trail", VT(0,0,0))
  1050. MakeForm(TRAIL,"Cyl")
  1051. local DIST = (FROM - TO).Magnitude
  1052. if BIG == true then
  1053. TRAIL.Size = VT(0.5,DIST,0.5)
  1054. else
  1055. TRAIL.Size = VT(0.25,DIST,0.25)
  1056. end
  1057. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1058. coroutine.resume(coroutine.create(function()
  1059. for i = 1, 5 do
  1060. Swait()
  1061. TRAIL.Transparency = TRAIL.Transparency + 0.1
  1062. end
  1063. TRAIL:remove()
  1064. end))
  1065. end
  1066.  
  1067. local asd = Instance.new("ParticleEmitter")
  1068. asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
  1069. asd.LightEmission = .1
  1070. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  1071. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
  1072. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  1073. asd.Transparency = bbb
  1074. asd.Size = aaa
  1075. asd.ZOffset = .9
  1076. asd.Acceleration = Vector3.new(0, -15, 0)
  1077. asd.LockedToPart = false
  1078. asd.EmissionDirection = "Back"
  1079. asd.Lifetime = NumberRange.new(1, 2)
  1080. asd.Rotation = NumberRange.new(-100, 100)
  1081. asd.RotSpeed = NumberRange.new(-100, 100)
  1082. asd.Speed = NumberRange.new(10)
  1083. asd.Enabled = false
  1084. asd.VelocitySpread = 999
  1085.  
  1086. function getbloody(victim,amount)
  1087. local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  1088. PART.CFrame = victim.CFrame
  1089. local HITPLAYERSOUNDS = {"356551938","264486467"}
  1090. Debris:AddItem(PART,5)
  1091. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1092. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1093. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1094. local prtcl = asd:Clone()
  1095. prtcl.Parent = PART
  1096. prtcl:Emit(amount*10)
  1097. end
  1098.  
  1099. local Particle = IT("ParticleEmitter",nil)
  1100. Particle.Enabled = false
  1101. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
  1102. Particle.LightEmission = 0.5
  1103. Particle.Rate = 150
  1104. Particle.ZOffset = 1
  1105. Particle.Rotation = NumberRange.new(-180, 180)
  1106. Particle.RotSpeed = NumberRange.new(-180, 180)
  1107. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  1108. Particle.Color = ColorSequence.new(C3(58,125,21),C3(0.4,0,0))
  1109.  
  1110. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  1111. function ParticleEmitter(Table)
  1112. local PRTCL = Particle:Clone()
  1113. local Speed = Table.Speed or 5
  1114. local Drag = Table.Drag or 0
  1115. local Size1 = Table.Size1 or 1
  1116. local Size2 = Table.Size2 or 5
  1117. local Lifetime1 = Table.Lifetime1 or 1
  1118. local Lifetime2 = Table.Lifetime2 or 1.5
  1119. local Parent = Table.Parent or Torso
  1120. local Emit = Table.Emit or 100
  1121. local Offset = Table.Offset or 360
  1122. local Acel = Table.Acel or VT(0,0,0)
  1123. local Enabled = Table.Enabled or false
  1124. PRTCL.Parent = Parent
  1125. PRTCL.Size = NumberSequence.new(Size1,Size2)
  1126. PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  1127. PRTCL.Speed = NumberRange.new(Speed)
  1128. PRTCL.VelocitySpread = Offset
  1129. PRTCL.Drag = Drag
  1130. PRTCL.Acceleration = Acel
  1131. if Enabled == false then
  1132. PRTCL:Emit(Emit)
  1133. Debris:AddItem(PRTCL,Lifetime2)
  1134. else
  1135. PRTCL.Enabled = true
  1136. end
  1137. return PRTCL
  1138. end
  1139.  
  1140. -----
  1141.  
  1142. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1143. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1144. end
  1145.  
  1146. function PositiveAngle(NUMBER)
  1147. if NUMBER >= 0 then
  1148. NUMBER = 0
  1149. end
  1150. return NUMBER
  1151. end
  1152.  
  1153. function NegativeAngle(NUMBER)
  1154. if NUMBER <= 0 then
  1155. NUMBER = 0
  1156. end
  1157. return NUMBER
  1158. end
  1159.  
  1160. function Swait(NUMBER)
  1161. if NUMBER == 0 or NUMBER == nil then
  1162. ArtificialHB.Event:wait()
  1163. else
  1164. for i = 1, NUMBER do
  1165. ArtificialHB.Event:wait()
  1166. end
  1167. end
  1168. end
  1169.  
  1170. function QuaternionFromCFrame(cf)
  1171. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1172. local trace = m00 + m11 + m22
  1173. if trace > 0 then
  1174. local s = math.sqrt(1 + trace)
  1175. local recip = 0.5 / s
  1176. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1177. else
  1178. local i = 0
  1179. if m11 > m00 then
  1180. i = 1
  1181. end
  1182. if m22 > (i == 0 and m00 or m11) then
  1183. i = 2
  1184. end
  1185. if i == 0 then
  1186. local s = math.sqrt(m00 - m11 - m22 + 1)
  1187. local recip = 0.5 / s
  1188. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1189. elseif i == 1 then
  1190. local s = math.sqrt(m11 - m22 - m00 + 1)
  1191. local recip = 0.5 / s
  1192. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1193. elseif i == 2 then
  1194. local s = math.sqrt(m22 - m00 - m11 + 1)
  1195. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1196. end
  1197. end
  1198. end
  1199.  
  1200. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1201. local xs, ys, zs = x + x, y + y, z + z
  1202. local wx, wy, wz = w * xs, w * ys, w * zs
  1203. local xx = x * xs
  1204. local xy = x * ys
  1205. local xz = x * zs
  1206. local yy = y * ys
  1207. local yz = y * zs
  1208. local zz = z * zs
  1209. 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))
  1210. end
  1211.  
  1212. function QuaternionSlerp(a, b, t)
  1213. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1214. local startInterp, finishInterp;
  1215. if cosTheta >= 0.0001 then
  1216. if (1 - cosTheta) > 0.0001 then
  1217. local theta = ACOS(cosTheta)
  1218. local invSinTheta = 1 / SIN(theta)
  1219. startInterp = SIN((1 - t) * theta) * invSinTheta
  1220. finishInterp = SIN(t * theta) * invSinTheta
  1221. else
  1222. startInterp = 1 - t
  1223. finishInterp = t
  1224. end
  1225. else
  1226. if (1 + cosTheta) > 0.0001 then
  1227. local theta = ACOS(-cosTheta)
  1228. local invSinTheta = 1 / SIN(theta)
  1229. startInterp = SIN((t - 1) * theta) * invSinTheta
  1230. finishInterp = SIN(t * theta) * invSinTheta
  1231. else
  1232. startInterp = t - 1
  1233. finishInterp = t
  1234. end
  1235. end
  1236. 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
  1237. end
  1238.  
  1239. function Clerp(a, b, t)
  1240. local qa = {QuaternionFromCFrame(a)}
  1241. local qb = {QuaternionFromCFrame(b)}
  1242. local ax, ay, az = a.x, a.y, a.z
  1243. local bx, by, bz = b.x, b.y, b.z
  1244. local _t = 1 - t
  1245. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1246. end
  1247.  
  1248. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1249. local frame = IT("Frame")
  1250. frame.BackgroundTransparency = TRANSPARENCY
  1251. frame.BorderSizePixel = BORDERSIZEPIXEL
  1252. frame.Position = POSITION
  1253. frame.Size = SIZE
  1254. frame.BackgroundColor3 = COLOR
  1255. frame.BorderColor3 = BORDERCOLOR
  1256. frame.Name = NAME
  1257. frame.Parent = PARENT
  1258. return frame
  1259. end
  1260.  
  1261. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1262. local label = IT("TextLabel")
  1263. label.BackgroundTransparency = 1
  1264. label.Size = UD2(1, 0, 1, 0)
  1265. label.Position = UD2(0, 0, 0, 0)
  1266. label.TextColor3 = TEXTCOLOR
  1267. label.TextStrokeTransparency = STROKETRANSPARENCY
  1268. label.TextTransparency = TRANSPARENCY
  1269. label.FontSize = TEXTFONTSIZE
  1270. label.Font = TEXTFONT
  1271. label.BorderSizePixel = BORDERSIZEPIXEL
  1272. label.TextScaled = false
  1273. label.Text = TEXT
  1274. label.Name = NAME
  1275. label.Parent = PARENT
  1276. return label
  1277. end
  1278.  
  1279. function NoOutlines(PART)
  1280. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1281. end
  1282.  
  1283.  
  1284. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1285. local NEWWELD = IT(TYPE)
  1286. NEWWELD.Part0 = PART0
  1287. NEWWELD.Part1 = PART1
  1288. NEWWELD.C0 = C0
  1289. NEWWELD.C1 = C1
  1290. NEWWELD.Parent = PARENT
  1291. return NEWWELD
  1292. end
  1293.  
  1294. function CreateSound(ID, PARENT, VOLUME, PITCH)
  1295. local NEWSOUND = nil
  1296. coroutine.resume(coroutine.create(function()
  1297. NEWSOUND = IT("Sound", PARENT)
  1298. NEWSOUND.Volume = VOLUME
  1299. NEWSOUND.Pitch = PITCH
  1300. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1301. Swait()
  1302. NEWSOUND:play()
  1303. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  1304. end))
  1305. return NEWSOUND
  1306. end
  1307.  
  1308. function CFrameFromTopBack(at, top, back)
  1309. local right = top:Cross(back)
  1310. 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)
  1311. end
  1312.  
  1313. function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  1314. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  1315. wave.Color = COLOR
  1316. local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1317. wave.CFrame = CFRAME
  1318. coroutine.resume(coroutine.create(function(PART)
  1319. for i = 1, WAIT do
  1320. Swait()
  1321. mesh.Scale = mesh.Scale + GROW
  1322. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  1323. if DOESROT == true then
  1324. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  1325. end
  1326. wave.Transparency = wave.Transparency + (0.5/WAIT)
  1327. if wave.Transparency > 0.99 then
  1328. wave:remove()
  1329. end
  1330. end
  1331. end))
  1332. end
  1333.  
  1334. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  1335. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  1336. wave.Color = COLOR
  1337. local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0,0,0))
  1338. wave.CFrame = CFRAME
  1339. coroutine.resume(coroutine.create(function(PART)
  1340. for i = 1, WAIT do
  1341. Swait()
  1342. mesh.Scale = mesh.Scale + GROW
  1343. wave.Transparency = wave.Transparency + (1/WAIT)
  1344. if wave.Transparency > 0.99 then
  1345. wave:remove()
  1346. end
  1347. end
  1348. end))
  1349. end
  1350.  
  1351. function Slice(KIND,SIZE,WAIT,CFRAME,COLOR,GROW)
  1352. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  1353. local mesh = nil
  1354. if KIND == "Base" then
  1355. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
  1356. elseif KIND == "Thin" then
  1357. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
  1358. elseif KIND == "Round" then
  1359. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
  1360. end
  1361. wave.CFrame = CFRAME
  1362. coroutine.resume(coroutine.create(function(PART)
  1363. for i = 1, WAIT do
  1364. Swait()
  1365. mesh.Scale = mesh.Scale + GROW/10
  1366. wave.Transparency = wave.Transparency + (0.5/WAIT)
  1367. if wave.Transparency > 0.99 then
  1368. wave:remove()
  1369. end
  1370. end
  1371. end))
  1372. end
  1373.  
  1374. function MakeForm(PART,TYPE)
  1375. if TYPE == "Cyl" then
  1376. local MSH = IT("CylinderMesh",PART)
  1377. elseif TYPE == "Ball" then
  1378. local MSH = IT("SpecialMesh",PART)
  1379. MSH.MeshType = "Sphere"
  1380. elseif TYPE == "Wedge" then
  1381. local MSH = IT("SpecialMesh",PART)
  1382. MSH.MeshType = "Wedge"
  1383. end
  1384. end
  1385.  
  1386. function CheckTableForString(Table, String)
  1387. for i, v in pairs(Table) do
  1388. if string.find(string.lower(String), string.lower(v)) then
  1389. return true
  1390. end
  1391. end
  1392. return false
  1393. end
  1394.  
  1395. function CheckIntangible(Hit)
  1396. local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
  1397. if Hit and Hit.Parent then
  1398. if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
  1399. return true
  1400. end
  1401. end
  1402. return false
  1403. end
  1404.  
  1405. Debris = game:GetService("Debris")
  1406.  
  1407. function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
  1408. local Direction = CFrame.new(StartPos, Vec).lookVector
  1409. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  1410. local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
  1411. if RayHit and CheckIntangible(RayHit) then
  1412. if DelayIfHit then
  1413. wait()
  1414. end
  1415. RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
  1416. end
  1417. return RayHit, RayPos, RayNormal
  1418. end
  1419.  
  1420. function FireArc(Part,ToLocation,AmountOfTime,Height,DoesCourontine)
  1421. if DoesCourontine == false then
  1422. local Direction = CF(Part.Position,ToLocation)
  1423. local Distance = (Part.Position - ToLocation).magnitude
  1424. for i = 1, AmountOfTime do
  1425. Swait()
  1426. Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
  1427. Direction = Part.CFrame
  1428. end
  1429. Part:remove()
  1430. elseif DoesCourontine == true then
  1431. coroutine.resume(coroutine.create(function()
  1432. local Direction = CF(Part.Position,ToLocation)
  1433. local Distance = (Part.Position - ToLocation).magnitude
  1434. for i = 1, AmountOfTime do
  1435. Swait()
  1436. Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
  1437. Direction = Part.CFrame
  1438. end
  1439. Part:remove()
  1440. end))
  1441. end
  1442. end
  1443.  
  1444. function turnto(position)
  1445. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1446. end
  1447. ---
  1448. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1449. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1450. end
  1451.  
  1452. function PositiveAngle(NUMBER)
  1453. if NUMBER >= 0 then
  1454. NUMBER = 0
  1455. end
  1456. return NUMBER
  1457. end
  1458.  
  1459. function NegativeAngle(NUMBER)
  1460. if NUMBER <= 0 then
  1461. NUMBER = 0
  1462. end
  1463. return NUMBER
  1464. end
  1465.  
  1466. function Swait(NUMBER)
  1467. if NUMBER == 0 or NUMBER == nil then
  1468. ArtificialHB.Event:wait()
  1469. else
  1470. for i = 1, NUMBER do
  1471. ArtificialHB.Event:wait()
  1472. end
  1473. end
  1474. end
  1475.  
  1476. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1477. local NEWMESH = IT(MESH)
  1478. if MESH == "SpecialMesh" then
  1479. NEWMESH.MeshType = MESHTYPE
  1480. if MESHID ~= "nil" and MESHID ~= "" then
  1481. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1482. end
  1483. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1484. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1485. end
  1486. end
  1487. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1488. NEWMESH.Scale = SCALE
  1489. NEWMESH.Parent = PARENT
  1490. return NEWMESH
  1491. end
  1492.  
  1493. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1494. local NEWPART = IT("Part")
  1495. NEWPART.formFactor = FORMFACTOR
  1496. NEWPART.Reflectance = REFLECTANCE
  1497. NEWPART.Transparency = TRANSPARENCY
  1498. NEWPART.CanCollide = false
  1499. NEWPART.Locked = true
  1500. NEWPART.Anchored = true
  1501. if ANCHOR == false then
  1502. NEWPART.Anchored = false
  1503. end
  1504. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1505. NEWPART.Name = NAME
  1506. NEWPART.Size = SIZE
  1507. NEWPART.Position = Torso.Position
  1508. NEWPART.Material = MATERIAL
  1509. NEWPART:BreakJoints()
  1510. NEWPART.Parent = PARENT
  1511. return NEWPART
  1512. end
  1513.  
  1514. local function weldBetween(a, b)
  1515. local weldd = Instance.new("ManualWeld")
  1516. weldd.Part0 = a
  1517. weldd.Part1 = b
  1518. weldd.C0 = CFrame.new()
  1519. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1520. weldd.Parent = a
  1521. return weldd
  1522. end
  1523.  
  1524.  
  1525. function QuaternionFromCFrame(cf)
  1526. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1527. local trace = m00 + m11 + m22
  1528. if trace > 0 then
  1529. local s = math.sqrt(1 + trace)
  1530. local recip = 0.5 / s
  1531. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1532. else
  1533. local i = 0
  1534. if m11 > m00 then
  1535. i = 1
  1536. end
  1537. if m22 > (i == 0 and m00 or m11) then
  1538. i = 2
  1539. end
  1540. if i == 0 then
  1541. local s = math.sqrt(m00 - m11 - m22 + 1)
  1542. local recip = 0.5 / s
  1543. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1544. elseif i == 1 then
  1545. local s = math.sqrt(m11 - m22 - m00 + 1)
  1546. local recip = 0.5 / s
  1547. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1548. elseif i == 2 then
  1549. local s = math.sqrt(m22 - m00 - m11 + 1)
  1550. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1551. end
  1552. end
  1553. end
  1554.  
  1555. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1556. local xs, ys, zs = x + x, y + y, z + z
  1557. local wx, wy, wz = w * xs, w * ys, w * zs
  1558. local xx = x * xs
  1559. local xy = x * ys
  1560. local xz = x * zs
  1561. local yy = y * ys
  1562. local yz = y * zs
  1563. local zz = z * zs
  1564. 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))
  1565. end
  1566.  
  1567. function QuaternionSlerp(a, b, t)
  1568. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1569. local startInterp, finishInterp;
  1570. if cosTheta >= 0.0001 then
  1571. if (1 - cosTheta) > 0.0001 then
  1572. local theta = ACOS(cosTheta)
  1573. local invSinTheta = 1 / SIN(theta)
  1574. startInterp = SIN((1 - t) * theta) * invSinTheta
  1575. finishInterp = SIN(t * theta) * invSinTheta
  1576. else
  1577. startInterp = 1 - t
  1578. finishInterp = t
  1579. end
  1580. else
  1581. if (1 + cosTheta) > 0.0001 then
  1582. local theta = ACOS(-cosTheta)
  1583. local invSinTheta = 1 / SIN(theta)
  1584. startInterp = SIN((t - 1) * theta) * invSinTheta
  1585. finishInterp = SIN(t * theta) * invSinTheta
  1586. else
  1587. startInterp = t - 1
  1588. finishInterp = t
  1589. end
  1590. end
  1591. 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
  1592. end
  1593.  
  1594. function Clerp(a, b, t)
  1595. local qa = {QuaternionFromCFrame(a)}
  1596. local qb = {QuaternionFromCFrame(b)}
  1597. local ax, ay, az = a.x, a.y, a.z
  1598. local bx, by, bz = b.x, b.y, b.z
  1599. local _t = 1 - t
  1600. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1601. end
  1602.  
  1603. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1604. local frame = IT("Frame")
  1605. frame.BackgroundTransparency = TRANSPARENCY
  1606. frame.BorderSizePixel = BORDERSIZEPIXEL
  1607. frame.Position = POSITION
  1608. frame.Size = SIZE
  1609. frame.BackgroundColor3 = COLOR
  1610. frame.BorderColor3 = BORDERCOLOR
  1611. frame.Name = NAME
  1612. frame.Parent = PARENT
  1613. return frame
  1614. end
  1615.  
  1616. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1617. local label = IT("TextLabel")
  1618. label.BackgroundTransparency = 1
  1619. label.Size = UD2(1, 0, 1, 0)
  1620. label.Position = UD2(0, 0, 0, 0)
  1621. label.TextColor3 = TEXTCOLOR
  1622. label.TextStrokeTransparency = STROKETRANSPARENCY
  1623. label.TextTransparency = TRANSPARENCY
  1624. label.FontSize = TEXTFONTSIZE
  1625. label.Font = TEXTFONT
  1626. label.BorderSizePixel = BORDERSIZEPIXEL
  1627. label.TextScaled = false
  1628. label.Text = TEXT
  1629. label.Name = NAME
  1630. label.Parent = PARENT
  1631. return label
  1632. end
  1633.  
  1634. function NoOutlines(PART)
  1635. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1636. end
  1637.  
  1638. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1639. local NEWWELD = IT(TYPE)
  1640. NEWWELD.Part0 = PART0
  1641. NEWWELD.Part1 = PART1
  1642. NEWWELD.C0 = C0
  1643. NEWWELD.C1 = C1
  1644. NEWWELD.Parent = PARENT
  1645. return NEWWELD
  1646. end
  1647.  
  1648. local S = IT("Sound")
  1649. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1650. local NEWSOUND = nil
  1651. coroutine.resume(coroutine.create(function()
  1652. NEWSOUND = S:Clone()
  1653. NEWSOUND.Parent = PARENT
  1654. NEWSOUND.Volume = VOLUME
  1655. NEWSOUND.Pitch = PITCH
  1656. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1657. NEWSOUND:play()
  1658. if DOESLOOP == true then
  1659. NEWSOUND.Looped = true
  1660. else
  1661. repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  1662. NEWSOUND:remove()
  1663. end
  1664. end))
  1665. return NEWSOUND
  1666. end
  1667.  
  1668. function CFrameFromTopBack(at, top, back)
  1669. local right = top:Cross(back)
  1670. 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)
  1671. end
  1672.  
  1673. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,255,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1674. function WACKYEFFECT(Table)
  1675. local TYPE = (Table.EffectType or "Sphere")
  1676. local SIZE = (Table.Size or VT(1,1,1))
  1677. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1678. local TRANSPARENCY = (Table.Transparency or 0)
  1679. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1680. local CFRAME = (Table.CFrame or Torso.CFrame)
  1681. local MOVEDIRECTION = (Table.MoveToPos or nil)
  1682. local ROTATION1 = (Table.RotationX or 0)
  1683. local ROTATION2 = (Table.RotationY or 0)
  1684. local ROTATION3 = (Table.RotationZ or 0)
  1685. local MATERIAL = (Table.Material or "Neon")
  1686. local COLOR = (Table.Color or C3(255,0,0))
  1687. local TIME = (Table.Time or 45)
  1688. local SOUNDID = (Table.SoundID or nil)
  1689. local SOUNDPITCH = (Table.SoundPitch or nil)
  1690. local SOUNDVOLUME = (Table.SoundVolume or nil)
  1691. coroutine.resume(coroutine.create(function()
  1692. local PLAYSSOUND = false
  1693. local SOUND = nil
  1694. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1695. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1696. PLAYSSOUND = true
  1697. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1698. end
  1699. EFFECT.Color = COLOR
  1700. local MSH = nil
  1701. if TYPE == "Sphere" then
  1702. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1703. elseif TYPE == "Block" then
  1704. MSH = IT("BlockMesh",EFFECT)
  1705. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1706. elseif TYPE == "Wave" then
  1707. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1708. elseif TYPE == "Ring" then
  1709. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1710. elseif TYPE == "Slash" then
  1711. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1712. elseif TYPE == "Round Slash" then
  1713. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1714. elseif TYPE == "Swirl" then
  1715. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1716. elseif TYPE == "Skull" then
  1717. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1718. elseif TYPE == "Crystal" then
  1719. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1720. end
  1721. if MSH ~= nil then
  1722. local MOVESPEED = nil
  1723. if MOVEDIRECTION ~= nil then
  1724. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1725. end
  1726. local GROWTH = SIZE - ENDSIZE
  1727. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1728. if TYPE == "Block" then
  1729. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1730. else
  1731. EFFECT.CFrame = CFRAME
  1732. end
  1733. for LOOP = 1, TIME+1 do
  1734. Swait()
  1735. MSH.Scale = MSH.Scale - GROWTH/TIME
  1736. if TYPE == "Wave" then
  1737. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1738. end
  1739. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1740. if TYPE == "Block" then
  1741. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1742. else
  1743. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1744. end
  1745. if MOVEDIRECTION ~= nil then
  1746. local ORI = EFFECT.Orientation
  1747. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1748. EFFECT.Orientation = ORI
  1749. end
  1750. end
  1751. if PLAYSSOUND == false then
  1752. EFFECT:remove()
  1753. else
  1754. SOUND.Stopped:Connect(function()
  1755. EFFECT:remove()
  1756. end)
  1757. end
  1758. else
  1759. if PLAYSSOUND == false then
  1760. EFFECT:remove()
  1761. else
  1762. repeat Swait() until SOUND.Playing == false
  1763. EFFECT:remove()
  1764. end
  1765. end
  1766. end))
  1767. end
  1768.  
  1769. function MakeForm(PART,TYPE)
  1770. if TYPE == "Cyl" then
  1771. local MSH = IT("CylinderMesh",PART)
  1772. elseif TYPE == "Ball" then
  1773. local MSH = IT("SpecialMesh",PART)
  1774. MSH.MeshType = "Sphere"
  1775. elseif TYPE == "Wedge" then
  1776. local MSH = IT("SpecialMesh",PART)
  1777. MSH.MeshType = "Wedge"
  1778. end
  1779. end
  1780.  
  1781. function SpawnTrail(FROM,TO,BIG)
  1782. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
  1783. MakeForm(TRAIL,"Cyl")
  1784. local DIST = (FROM - TO).Magnitude
  1785. if BIG == true then
  1786. TRAIL.Size = VT(0.5,DIST,0.5)
  1787. else
  1788. TRAIL.Size = VT(0.25,DIST,0.25)
  1789. end
  1790. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1791. coroutine.resume(coroutine.create(function()
  1792. for i = 1, 5 do
  1793. Swait()
  1794. TRAIL.Transparency = TRAIL.Transparency + 0.1
  1795. end
  1796. TRAIL:remove()
  1797. end))
  1798. end
  1799.  
  1800. Debris = game:GetService("Debris")
  1801.  
  1802. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1803. local DIRECTION = CF(StartPos,EndPos).lookVector
  1804. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1805. end
  1806.  
  1807. function turnto(position)
  1808. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1809. end
  1810. ---
  1811. --
  1812. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1813. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1814. end
  1815.  
  1816. function PositiveAngle(NUMBER)
  1817. if NUMBER >= 0 then
  1818. NUMBER = 0
  1819. end
  1820. return NUMBER
  1821. end
  1822.  
  1823. function NegativeAngle(NUMBER)
  1824. if NUMBER <= 0 then
  1825. NUMBER = 0
  1826. end
  1827. return NUMBER
  1828. end
  1829.  
  1830. function Swait(NUMBER)
  1831. if NUMBER == 0 or NUMBER == nil then
  1832. ArtificialHB.Event:wait()
  1833. else
  1834. for i = 1, NUMBER do
  1835. ArtificialHB.Event:wait()
  1836. end
  1837. end
  1838. end
  1839.  
  1840. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1841. local NEWMESH = IT(MESH)
  1842. if MESH == "SpecialMesh" then
  1843. NEWMESH.MeshType = MESHTYPE
  1844. if MESHID ~= "nil" and MESHID ~= "" then
  1845. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1846. end
  1847. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1848. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1849. end
  1850. end
  1851. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1852. NEWMESH.Scale = SCALE
  1853. NEWMESH.Parent = PARENT
  1854. return NEWMESH
  1855. end
  1856.  
  1857. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1858. local NEWPART = IT("Part")
  1859. NEWPART.formFactor = FORMFACTOR
  1860. NEWPART.Reflectance = REFLECTANCE
  1861. NEWPART.Transparency = TRANSPARENCY
  1862. NEWPART.CanCollide = false
  1863. NEWPART.Locked = true
  1864. NEWPART.Anchored = true
  1865. if ANCHOR == false then
  1866. NEWPART.Anchored = false
  1867. end
  1868. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1869. NEWPART.Name = NAME
  1870. NEWPART.Size = SIZE
  1871. NEWPART.Position = Torso.Position
  1872. NEWPART.Material = MATERIAL
  1873. NEWPART:BreakJoints()
  1874. NEWPART.Parent = PARENT
  1875. return NEWPART
  1876. end
  1877.  
  1878. local function weldBetween(a, b)
  1879. local weldd = Instance.new("ManualWeld")
  1880. weldd.Part0 = a
  1881. weldd.Part1 = b
  1882. weldd.C0 = CFrame.new()
  1883. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1884. weldd.Parent = a
  1885. return weldd
  1886. end
  1887.  
  1888.  
  1889. function QuaternionFromCFrame(cf)
  1890. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1891. local trace = m00 + m11 + m22
  1892. if trace > 0 then
  1893. local s = math.sqrt(1 + trace)
  1894. local recip = 0.5 / s
  1895. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1896. else
  1897. local i = 0
  1898. if m11 > m00 then
  1899. i = 1
  1900. end
  1901. if m22 > (i == 0 and m00 or m11) then
  1902. i = 2
  1903. end
  1904. if i == 0 then
  1905. local s = math.sqrt(m00 - m11 - m22 + 1)
  1906. local recip = 0.5 / s
  1907. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1908. elseif i == 1 then
  1909. local s = math.sqrt(m11 - m22 - m00 + 1)
  1910. local recip = 0.5 / s
  1911. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1912. elseif i == 2 then
  1913. local s = math.sqrt(m22 - m00 - m11 + 1)
  1914. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1915. end
  1916. end
  1917. end
  1918.  
  1919. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1920. local xs, ys, zs = x + x, y + y, z + z
  1921. local wx, wy, wz = w * xs, w * ys, w * zs
  1922. local xx = x * xs
  1923. local xy = x * ys
  1924. local xz = x * zs
  1925. local yy = y * ys
  1926. local yz = y * zs
  1927. local zz = z * zs
  1928. 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))
  1929. end
  1930.  
  1931. function QuaternionSlerp(a, b, t)
  1932. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1933. local startInterp, finishInterp;
  1934. if cosTheta >= 0.0001 then
  1935. if (1 - cosTheta) > 0.0001 then
  1936. local theta = ACOS(cosTheta)
  1937. local invSinTheta = 1 / SIN(theta)
  1938. startInterp = SIN((1 - t) * theta) * invSinTheta
  1939. finishInterp = SIN(t * theta) * invSinTheta
  1940. else
  1941. startInterp = 1 - t
  1942. finishInterp = t
  1943. end
  1944. else
  1945. if (1 + cosTheta) > 0.0001 then
  1946. local theta = ACOS(-cosTheta)
  1947. local invSinTheta = 1 / SIN(theta)
  1948. startInterp = SIN((t - 1) * theta) * invSinTheta
  1949. finishInterp = SIN(t * theta) * invSinTheta
  1950. else
  1951. startInterp = t - 1
  1952. finishInterp = t
  1953. end
  1954. end
  1955. 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
  1956. end
  1957.  
  1958. function Clerp(a, b, t)
  1959. local qa = {QuaternionFromCFrame(a)}
  1960. local qb = {QuaternionFromCFrame(b)}
  1961. local ax, ay, az = a.x, a.y, a.z
  1962. local bx, by, bz = b.x, b.y, b.z
  1963. local _t = 1 - t
  1964. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1965. end
  1966.  
  1967. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1968. local frame = IT("Frame")
  1969. frame.BackgroundTransparency = TRANSPARENCY
  1970. frame.BorderSizePixel = BORDERSIZEPIXEL
  1971. frame.Position = POSITION
  1972. frame.Size = SIZE
  1973. frame.BackgroundColor3 = COLOR
  1974. frame.BorderColor3 = BORDERCOLOR
  1975. frame.Name = NAME
  1976. frame.Parent = PARENT
  1977. return frame
  1978. end
  1979.  
  1980. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1981. local label = IT("TextLabel")
  1982. label.BackgroundTransparency = 1
  1983. label.Size = UD2(1, 0, 1, 0)
  1984. label.Position = UD2(0, 0, 0, 0)
  1985. label.TextColor3 = TEXTCOLOR
  1986. label.TextStrokeTransparency = STROKETRANSPARENCY
  1987. label.TextTransparency = TRANSPARENCY
  1988. label.FontSize = TEXTFONTSIZE
  1989. label.Font = TEXTFONT
  1990. label.BorderSizePixel = BORDERSIZEPIXEL
  1991. label.TextScaled = false
  1992. label.Text = TEXT
  1993. label.Name = NAME
  1994. label.Parent = PARENT
  1995. return label
  1996. end
  1997.  
  1998. function NoOutlines(PART)
  1999. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  2000. end
  2001.  
  2002. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  2003. local NEWWELD = IT(TYPE)
  2004. NEWWELD.Part0 = PART0
  2005. NEWWELD.Part1 = PART1
  2006. NEWWELD.C0 = C0
  2007. NEWWELD.C1 = C1
  2008. NEWWELD.Parent = PARENT
  2009. return NEWWELD
  2010. end
  2011.  
  2012. local S = IT("Sound")
  2013. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  2014. local NEWSOUND = nil
  2015. coroutine.resume(coroutine.create(function()
  2016. NEWSOUND = S:Clone()
  2017. NEWSOUND.Parent = PARENT
  2018. NEWSOUND.Volume = VOLUME
  2019. NEWSOUND.Pitch = PITCH
  2020. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  2021. NEWSOUND:play()
  2022. if DOESLOOP == true then
  2023. NEWSOUND.Looped = true
  2024. else
  2025. repeat wait(1) until NEWSOUND.Playing == false
  2026. NEWSOUND:remove()
  2027. end
  2028. end))
  2029. return NEWSOUND
  2030. end
  2031.  
  2032. local EyeSizes={
  2033. NumberSequenceKeypoint.new(0,2,0),
  2034. NumberSequenceKeypoint.new(1,0,0)
  2035. }
  2036. local EyeTrans={
  2037. NumberSequenceKeypoint.new(0,0.5,0),
  2038. NumberSequenceKeypoint.new(1,1,0)
  2039. }
  2040. local PE=Instance.new("ParticleEmitter",nil)
  2041. PE.LightEmission=.8
  2042. PE.Color = ColorSequence.new(BRICKC("Crimson").Color,BRICKC("Really red").Color)
  2043. PE.Size=NumberSequence.new(EyeSizes)
  2044. PE.Transparency=NumberSequence.new(EyeTrans)
  2045. PE.Lifetime=NumberRange.new(0.35,1)
  2046. PE.Rotation=NumberRange.new(0,360)
  2047. PE.Rate=100
  2048. PE.VelocitySpread = 10000
  2049. PE.Acceleration = Vector3.new(0,85,0)
  2050. PE.Drag = 5
  2051. PE.Speed = NumberRange.new(0.1,5)
  2052. PE.Texture="http://www.roblox.com/asset/?id=818983932"
  2053. PE.ZOffset = 0.5
  2054. PE.Name = "PE"
  2055. PE.Enabled = false
  2056.  
  2057. function Fire(art)
  2058. local PARTICLES = PE:Clone()
  2059. PARTICLES.Parent = art
  2060. PARTICLES.Enabled = true
  2061. return PARTICLES
  2062. end
  2063.  
  2064. function CFrameFromTopBack(at, top, back)
  2065. local right = top:Cross(back)
  2066. 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)
  2067. end
  2068.  
  2069. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2070. function WACKYEFFECT(Table)
  2071. local TYPE = (Table.EffectType or "Sphere")
  2072. local SIZE = (Table.Size or VT(1,1,1))
  2073. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  2074. local TRANSPARENCY = (Table.Transparency or 0)
  2075. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  2076. local CFRAME = (Table.CFrame or Torso.CFrame)
  2077. local MOVEDIRECTION = (Table.MoveToPos or nil)
  2078. local ROTATION1 = (Table.RotationX or 0)
  2079. local ROTATION2 = (Table.RotationY or 0)
  2080. local ROTATION3 = (Table.RotationZ or 0)
  2081. local MATERIAL = (Table.Material or "Neon")
  2082. local COLOR = (Table.Color or C3(1,1,1))
  2083. local TIME = (Table.Time or 45)
  2084. local SOUNDID = (Table.SoundID or nil)
  2085. local SOUNDPITCH = (Table.SoundPitch or nil)
  2086. local SOUNDVOLUME = (Table.SoundVolume or nil)
  2087. coroutine.resume(coroutine.create(function()
  2088. local PLAYSSOUND = false
  2089. local SOUND = nil
  2090. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Crimson"), "Effect", VT(1,1,1), true)
  2091. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  2092. PLAYSSOUND = true
  2093. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  2094. end
  2095. EFFECT.Color = COLOR
  2096. local MSH = nil
  2097. if TYPE == "Sphere" then
  2098. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  2099. elseif TYPE == "Block" or TYPE == "Box" then
  2100. MSH = IT("BlockMesh",EFFECT)
  2101. MSH.Scale = SIZE
  2102. elseif TYPE == "Wave" then
  2103. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  2104. elseif TYPE == "Ring" then
  2105. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  2106. elseif TYPE == "Slash" then
  2107. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  2108. elseif TYPE == "Round Slash" then
  2109. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  2110. elseif TYPE == "Swirl" then
  2111. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  2112. elseif TYPE == "Skull" then
  2113. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  2114. elseif TYPE == "Crystal" then
  2115. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  2116. end
  2117. if MSH ~= nil then
  2118. local MOVESPEED = nil
  2119. if MOVEDIRECTION ~= nil then
  2120. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  2121. end
  2122. local GROWTH = SIZE - ENDSIZE
  2123. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  2124. if TYPE == "Block" then
  2125. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2126. else
  2127. EFFECT.CFrame = CFRAME
  2128. end
  2129. for LOOP = 1, TIME+1 do
  2130. Swait()
  2131. MSH.Scale = MSH.Scale - GROWTH/TIME
  2132. if TYPE == "Wave" then
  2133. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  2134. end
  2135. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  2136. if TYPE == "Block" then
  2137. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2138. else
  2139. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  2140. end
  2141. if MOVEDIRECTION ~= nil then
  2142. local ORI = EFFECT.Orientation
  2143. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  2144. EFFECT.Orientation = ORI
  2145. end
  2146. end
  2147. if PLAYSSOUND == false then
  2148. EFFECT:remove()
  2149. else
  2150. repeat wait(1) until SOUND.Playing == false
  2151. EFFECT:remove()
  2152. end
  2153. else
  2154. if PLAYSSOUND == false then
  2155. EFFECT:remove()
  2156. else
  2157. repeat Swait() until SOUND.Playing == false
  2158. EFFECT:remove()
  2159. end
  2160. end
  2161. end))
  2162. end
  2163.  
  2164. function MakeForm(PART,TYPE)
  2165. if TYPE == "Cyl" then
  2166. local MSH = IT("CylinderMesh",PART)
  2167. elseif TYPE == "Ball" then
  2168. local MSH = IT("SpecialMesh",PART)
  2169. MSH.MeshType = "Sphere"
  2170. elseif TYPE == "Wedge" then
  2171. local MSH = IT("SpecialMesh",PART)
  2172. MSH.MeshType = "Wedge"
  2173. end
  2174. end
  2175.  
  2176. Debris = game:GetService("Debris")
  2177.  
  2178. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  2179. local DIRECTION = CF(StartPos,EndPos).lookVector
  2180. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  2181. end
  2182.  
  2183. local HATWELD = nil
  2184. function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
  2185. PLAYMAINANIM = false
  2186. if WhichPose == "Cast1" then
  2187. for i=0, Time, 0.1 / Animation_Speed do
  2188. Swait()
  2189. if Magic == true then
  2190. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2191. end
  2192. if Gyro ~= nil and Gyro ~= false then
  2193. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2194. end
  2195. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
  2196. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
  2197. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2198. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2199. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2200. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2201. end
  2202. elseif WhichPose == "Cast2" then
  2203. for i=0, Time, 0.1 / Animation_Speed do
  2204. Swait()
  2205. if Magic == true then
  2206. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2207. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2208. end
  2209. if Gyro ~= nil and Gyro ~= false then
  2210. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2211. end
  2212. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  2213. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  2214. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2215. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2216. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2217. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2218. end
  2219. elseif WhichPose == "RightArmUp" then
  2220. for i=0, Time, 0.1 / Animation_Speed do
  2221. Swait()
  2222. if Magic == true then
  2223. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2224. end
  2225. if Gyro ~= nil and Gyro ~= false then
  2226. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2227. end
  2228. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
  2229. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2230. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2231. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2232. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2233. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2234. end
  2235. elseif WhichPose == "Taunt" then
  2236. for i=0, Time, 0.1 / Animation_Speed do
  2237. Swait()
  2238. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  2239. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  2240. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2241. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2242. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2243. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2244. end
  2245. HATWELD.Part0 = RightArm
  2246. HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
  2247. CreateSound(221057812,Torso,10,1,false)
  2248. for i=0, Time*2, 0.1 / Animation_Speed do
  2249. Swait()
  2250. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  2251. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  2252. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2253. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2254. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2255. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2256. end
  2257. for i=0, Time, 0.1 / Animation_Speed do
  2258. Swait()
  2259. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  2260. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
  2261. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2262. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2263. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2264. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2265. HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
  2266. end
  2267. HATWELD.Part0 = Head
  2268. HATWELD.C0 = CF(0,0.35,0)
  2269. elseif WhichPose == "Prepare key" then
  2270. for i=0, Time, 0.1 / Animation_Speed do
  2271. Swait()
  2272. if Gyro ~= nil and Gyro ~= false then
  2273. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  2274. end
  2275. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
  2276. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
  2277. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2278. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2279. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2280. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2281. end
  2282. elseif WhichPose == "Turn key" then
  2283. for i=0, Time, 0.1 / Animation_Speed do
  2284. Swait()
  2285. if Gyro ~= nil and Gyro ~= false then
  2286. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  2287. end
  2288. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
  2289. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
  2290. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  2291. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  2292. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  2293. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  2294. end
  2295. end
  2296. PLAYMAINANIM = true
  2297. end
  2298.  
  2299. --Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false})
  2300. function Lightning(Table)
  2301. local Color = Table.Color or C3(1,1,1)
  2302. local StartPos = Table.Start or Torso.Position
  2303. local EndPos = Table.End or Mouse.Hit.p
  2304. local SegmentLength = Table.SegmentL or 2
  2305. local Thickness = Table.Thickness or 0.1
  2306. local Dissapear = Table.DoesFade or false
  2307. local Parent = Table.Ignore or Character
  2308. local MaxDist = Table.MaxDist or 400
  2309. local Branches = Table.Branches or false
  2310. local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  2311. local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
  2312. local LIGHTNINGMODEL = IT("Model",Effects)
  2313. LIGHTNINGMODEL.Name = "Lightning"
  2314. local LastBolt = nil
  2315. for E = 1, DISTANCE do
  2316. local ExtraSize = (DISTANCE-E)/15
  2317. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  2318. PART.Color = Color
  2319. MakeForm(PART,"Cyl")
  2320. if LastBolt == nil then
  2321. PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  2322. else
  2323. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  2324. end
  2325. LastBolt = PART
  2326. if Branches == true then
  2327. local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  2328. if CHOICE == 1 then
  2329. local LASTBRANCH = nil
  2330. for i = 1, MRANDOM(2,5) do
  2331. local ExtraSize2 = ((DISTANCE-E)/25)/i
  2332. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  2333. PART.Color = Color
  2334. MakeForm(PART,"Cyl")
  2335. if LASTBRANCH == nil then
  2336. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  2337. else
  2338. PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  2339. end
  2340. LASTBRANCH = PART
  2341. end
  2342. end
  2343. end
  2344. end
  2345. if Dissapear == true then
  2346. coroutine.resume(coroutine.create(function()
  2347. for i = 1, 10 do
  2348. Swait()
  2349. for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  2350. if c.ClassName == "Part" then
  2351. c.Transparency = i/10
  2352. end
  2353. end
  2354. end
  2355. LIGHTNINGMODEL:remove()
  2356. end))
  2357. elseif Dissapear == false then
  2358. Debris:AddItem(LIGHTNINGMODEL,0.1)
  2359. end
  2360. return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  2361. end
  2362.  
  2363. --
  2364. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  2365. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  2366. end
  2367.  
  2368. function PositiveAngle(NUMBER)
  2369. if NUMBER >= 0 then
  2370. NUMBER = 0
  2371. end
  2372. return NUMBER
  2373. end
  2374.  
  2375. function NegativeAngle(NUMBER)
  2376. if NUMBER <= 0 then
  2377. NUMBER = 0
  2378. end
  2379. return NUMBER
  2380. end
  2381.  
  2382. function Swait(NUMBER)
  2383. if NUMBER == 0 or NUMBER == nil then
  2384. ArtificialHB.Event:wait()
  2385. else
  2386. for i = 1, NUMBER do
  2387. ArtificialHB.Event:wait()
  2388. end
  2389. end
  2390. end
  2391.  
  2392. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  2393. local NEWMESH = IT(MESH)
  2394. if MESH == "SpecialMesh" then
  2395. NEWMESH.MeshType = MESHTYPE
  2396. if MESHID ~= "nil" and MESHID ~= "" then
  2397. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  2398. end
  2399. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  2400. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  2401. end
  2402. end
  2403. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  2404. NEWMESH.Scale = SCALE
  2405. NEWMESH.Parent = PARENT
  2406. return NEWMESH
  2407. end
  2408.  
  2409. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  2410. local NEWPART = IT("Part")
  2411. NEWPART.formFactor = FORMFACTOR
  2412. NEWPART.Reflectance = REFLECTANCE
  2413. NEWPART.Transparency = TRANSPARENCY
  2414. NEWPART.CanCollide = false
  2415. NEWPART.Locked = true
  2416. NEWPART.Anchored = true
  2417. if ANCHOR == false then
  2418. NEWPART.Anchored = false
  2419. end
  2420. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  2421. NEWPART.Name = NAME
  2422. NEWPART.Size = SIZE
  2423. NEWPART.Position = Torso.Position
  2424. NEWPART.Material = MATERIAL
  2425. NEWPART:BreakJoints()
  2426. NEWPART.Parent = PARENT
  2427. return NEWPART
  2428. end
  2429.  
  2430. local function weldBetween(a, b)
  2431. local weldd = Instance.new("ManualWeld")
  2432. weldd.Part0 = a
  2433. weldd.Part1 = b
  2434. weldd.C0 = CFrame.new()
  2435. weldd.C1 = b.CFrame:inverse() * a.CFrame
  2436. weldd.Parent = a
  2437. return weldd
  2438. end
  2439.  
  2440.  
  2441. function QuaternionFromCFrame(cf)
  2442. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  2443. local trace = m00 + m11 + m22
  2444. if trace > 0 then
  2445. local s = math.sqrt(1 + trace)
  2446. local recip = 0.5 / s
  2447. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  2448. else
  2449. local i = 0
  2450. if m11 > m00 then
  2451. i = 1
  2452. end
  2453. if m22 > (i == 0 and m00 or m11) then
  2454. i = 2
  2455. end
  2456. if i == 0 then
  2457. local s = math.sqrt(m00 - m11 - m22 + 1)
  2458. local recip = 0.5 / s
  2459. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  2460. elseif i == 1 then
  2461. local s = math.sqrt(m11 - m22 - m00 + 1)
  2462. local recip = 0.5 / s
  2463. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  2464. elseif i == 2 then
  2465. local s = math.sqrt(m22 - m00 - m11 + 1)
  2466. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  2467. end
  2468. end
  2469. end
  2470.  
  2471. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  2472. local xs, ys, zs = x + x, y + y, z + z
  2473. local wx, wy, wz = w * xs, w * ys, w * zs
  2474. local xx = x * xs
  2475. local xy = x * ys
  2476. local xz = x * zs
  2477. local yy = y * ys
  2478. local yz = y * zs
  2479. local zz = z * zs
  2480. 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))
  2481. end
  2482.  
  2483. function QuaternionSlerp(a, b, t)
  2484. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  2485. local startInterp, finishInterp;
  2486. if cosTheta >= 0.0001 then
  2487. if (1 - cosTheta) > 0.0001 then
  2488. local theta = ACOS(cosTheta)
  2489. local invSinTheta = 1 / SIN(theta)
  2490. startInterp = SIN((1 - t) * theta) * invSinTheta
  2491. finishInterp = SIN(t * theta) * invSinTheta
  2492. else
  2493. startInterp = 1 - t
  2494. finishInterp = t
  2495. end
  2496. else
  2497. if (1 + cosTheta) > 0.0001 then
  2498. local theta = ACOS(-cosTheta)
  2499. local invSinTheta = 1 / SIN(theta)
  2500. startInterp = SIN((t - 1) * theta) * invSinTheta
  2501. finishInterp = SIN(t * theta) * invSinTheta
  2502. else
  2503. startInterp = t - 1
  2504. finishInterp = t
  2505. end
  2506. end
  2507. 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
  2508. end
  2509.  
  2510. function Clerp(a, b, t)
  2511. local qa = {QuaternionFromCFrame(a)}
  2512. local qb = {QuaternionFromCFrame(b)}
  2513. local ax, ay, az = a.x, a.y, a.z
  2514. local bx, by, bz = b.x, b.y, b.z
  2515. local _t = 1 - t
  2516. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  2517. end
  2518.  
  2519. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  2520. local frame = IT("Frame")
  2521. frame.BackgroundTransparency = TRANSPARENCY
  2522. frame.BorderSizePixel = BORDERSIZEPIXEL
  2523. frame.Position = POSITION
  2524. frame.Size = SIZE
  2525. frame.BackgroundColor3 = COLOR
  2526. frame.BorderColor3 = BORDERCOLOR
  2527. frame.Name = NAME
  2528. frame.Parent = PARENT
  2529. return frame
  2530. end
  2531.  
  2532. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  2533. local label = IT("TextLabel")
  2534. label.BackgroundTransparency = 1
  2535. label.Size = UD2(1, 0, 1, 0)
  2536. label.Position = UD2(0, 0, 0, 0)
  2537. label.TextColor3 = TEXTCOLOR
  2538. label.TextStrokeColor3 = BRICKC"Really red".Color
  2539. label.TextStrokeTransparency = STROKETRANSPARENCY
  2540. label.TextTransparency = TRANSPARENCY
  2541. label.FontSize = TEXTFONTSIZE
  2542. label.Font = TEXTFONT
  2543. label.BorderSizePixel = BORDERSIZEPIXEL
  2544. label.TextScaled = false
  2545. label.Text = TEXT
  2546. label.Name = NAME
  2547. label.Parent = PARENT
  2548. return label
  2549. end
  2550.  
  2551. function NoOutlines(PART)
  2552. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  2553. end
  2554.  
  2555. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  2556. local NEWWELD = IT(TYPE)
  2557. NEWWELD.Part0 = PART0
  2558. NEWWELD.Part1 = PART1
  2559. NEWWELD.C0 = C0
  2560. NEWWELD.C1 = C1
  2561. NEWWELD.Parent = PARENT
  2562. return NEWWELD
  2563. end
  2564.  
  2565. local S = IT("Sound")
  2566. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  2567. local NEWSOUND = nil
  2568. coroutine.resume(coroutine.create(function()
  2569. NEWSOUND = S:Clone()
  2570. NEWSOUND.Parent = PARENT
  2571. NEWSOUND.Volume = VOLUME
  2572. NEWSOUND.Pitch = PITCH
  2573. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  2574. NEWSOUND:play()
  2575. NEWSOUND.Name = "Audio"
  2576. if DOESLOOP == true then
  2577. NEWSOUND.Looped = true
  2578. else
  2579. repeat Swait() until NEWSOUND.Playing == false
  2580. NEWSOUND:remove()
  2581. end
  2582. end))
  2583. return NEWSOUND
  2584. end
  2585.  
  2586. function CFrameFromTopBack(at, top, back)
  2587. local right = top:Cross(back)
  2588. 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)
  2589. end
  2590.  
  2591. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2592. function WACKYEFFECT(Table)
  2593. local TYPE = (Table.EffectType or "Sphere")
  2594. local SIZE = (Table.Size or VT(1,1,1))
  2595. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  2596. local TRANSPARENCY = (Table.Transparency or 0)
  2597. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  2598. local CFRAME = (Table.CFrame or Torso.CFrame)
  2599. local MOVEDIRECTION = (Table.MoveToPos or nil)
  2600. local ROTATION1 = (Table.RotationX or 0)
  2601. local ROTATION2 = (Table.RotationY or 0)
  2602. local ROTATION3 = (Table.RotationZ or 0)
  2603. local MATERIAL = (Table.Material or "Neon")
  2604. local COLOR = (Table.Color or C3(1,1,1))
  2605. local TIME = (Table.Time or 45)
  2606. local SOUNDID = (Table.SoundID or nil)
  2607. local SOUNDPITCH = (Table.SoundPitch or nil)
  2608. local SOUNDVOLUME = (Table.SoundVolume or nil)
  2609. coroutine.resume(coroutine.create(function()
  2610. local PLAYSSOUND = false
  2611. local SOUND = nil
  2612. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  2613. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  2614. PLAYSSOUND = true
  2615. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  2616. end
  2617. EFFECT.Color = COLOR
  2618. local MSH = nil
  2619. if TYPE == "Sphere" then
  2620. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  2621. elseif TYPE == "Block" then
  2622. MSH = IT("BlockMesh",EFFECT)
  2623. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  2624. elseif TYPE == "Box" then
  2625. MSH = IT("BlockMesh",EFFECT)
  2626. MSH.Scale = SIZE
  2627. elseif TYPE == "Wave" then
  2628. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  2629. elseif TYPE == "Ring" then
  2630. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  2631. elseif TYPE == "Slash" then
  2632. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  2633. elseif TYPE == "Round Slash" then
  2634. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  2635. elseif TYPE == "Swirl" then
  2636. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  2637. elseif TYPE == "Skull" then
  2638. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  2639. elseif TYPE == "Crystal" then
  2640. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  2641. end
  2642. if MSH ~= nil then
  2643. local MOVESPEED = nil
  2644. if MOVEDIRECTION ~= nil then
  2645. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  2646. end
  2647. local GROWTH = SIZE - ENDSIZE
  2648. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  2649. if TYPE == "Block" then
  2650. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2651. else
  2652. EFFECT.CFrame = CFRAME
  2653. end
  2654. for LOOP = 1, TIME do
  2655. Swait()
  2656. MSH.Scale = MSH.Scale - GROWTH/TIME
  2657. if TYPE == "Wave" then
  2658. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  2659. end
  2660. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  2661. if TYPE == "Block" then
  2662. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2663. else
  2664. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  2665. end
  2666. if MOVEDIRECTION ~= nil then
  2667. local ORI = EFFECT.Orientation
  2668. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  2669. EFFECT.Orientation = ORI
  2670. end
  2671. end
  2672. if PLAYSSOUND == false then
  2673. EFFECT:remove()
  2674. else
  2675. repeat Swait() until SOUND.Playing == false
  2676. EFFECT:remove()
  2677. end
  2678. else
  2679. if PLAYSSOUND == false then
  2680. EFFECT:remove()
  2681. else
  2682. repeat Swait() until SOUND.Playing == false
  2683. EFFECT:remove()
  2684. end
  2685. end
  2686. end))
  2687. end
  2688.  
  2689. function Shatter(Part)
  2690. if Part.Transparency == 0 then
  2691. local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, Part.BrickColor, "OOF", VT(0,0,0))
  2692. Debris:AddItem(SOUNDPART,5)
  2693. CreateSound("84005018", SOUNDPART, 3, MRANDOM(8,12)/10, false)
  2694. local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
  2695. local SIZESET = SIZE/4
  2696. local XOffset = Part.Size.X*1.5/SIZESET
  2697. local YOffset = Part.Size.Y*1.5/SIZESET
  2698. local ZOffset = Part.Size.Z*1.5/SIZESET
  2699. for x = 1, math.ceil(XOffset) do
  2700. for y = 1, math.ceil(YOffset) do
  2701. for z = 1, math.ceil(ZOffset) do
  2702. local SHARD = CreatePart(3, Effects, "Neon", 0, 0, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
  2703. SHARD.CanCollide = true
  2704. SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-x/4),(Part.Size.Y/2-y/4),(Part.Size.Z/2-z/4))
  2705. SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
  2706. Debris:AddItem(SHARD,MRANDOM(10,25)/3)
  2707. end
  2708. end
  2709. end
  2710. end
  2711. Part:remove()
  2712. end
  2713.  
  2714. function MakeForm(PART,TYPE)
  2715. if TYPE == "Cyl" then
  2716. local MSH = IT("CylinderMesh",PART)
  2717. elseif TYPE == "Ball" then
  2718. local MSH = IT("SpecialMesh",PART)
  2719. MSH.MeshType = "Sphere"
  2720. elseif TYPE == "Wedge" then
  2721. local MSH = IT("SpecialMesh",PART)
  2722. MSH.MeshType = "Wedge"
  2723. end
  2724. end
  2725.  
  2726. Debris = game:GetService("Debris")
  2727.  
  2728. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  2729. local DIRECTION = CF(StartPos,EndPos).lookVector
  2730. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  2731. end
  2732.  
  2733. function turnto(position)
  2734. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  2735. end
  2736.  
  2737. --//=================================\\
  2738. --|| WEAPON CREATION
  2739. --\\=================================//
  2740. --
  2741.  
  2742. local Back = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(1,1,0.35),false)
  2743. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Back, CF(0, 0.5, 1.2) * ANGLES(RAD(0),RAD(0),RAD(45)), CF(0, 0, 0))
  2744.  
  2745. local ANGLE = 35
  2746. for i = 1, 5 do
  2747. local Wing = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.15,2+(i/2),0.15),false)
  2748. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
  2749. local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.25,1,0.25),false)
  2750. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
  2751. ANGLE = ANGLE - 15
  2752. table.insert(LEFTWINGS,WingWeld)
  2753. end
  2754. ANGLE = 35
  2755. for i = 1, 5 do
  2756. local Wing = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.15,2+(i/2),0.15),false)
  2757. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
  2758. local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.25,1,0.25),false)
  2759. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
  2760. ANGLE = ANGLE - 15
  2761. table.insert(RIGHTWINGS,WingWeld)
  2762. end
  2763.  
  2764.  
  2765. local SKILLTEXTCOLOR = BRICKC"Really red".Color
  2766. local SKILLFONT = "SciFi"
  2767. local SKILLTEXTSIZE = 6
  2768.  
  2769. local naeeym2 = Instance.new("BillboardGui",Character)
  2770. naeeym2.AlwaysOnTop = true
  2771. naeeym2.Size = UDim2.new(5,35,2,15)
  2772. naeeym2.StudsOffset = Vector3.new(0,1.2,0)
  2773. naeeym2.Adornee = Character.Head
  2774. naeeym2.Name = "Name"
  2775. naeeym2.PlayerToHideFrom = Player
  2776. local tecks2 = Instance.new("TextLabel",naeeym2)
  2777. tecks2.BackgroundTransparency = 1
  2778. tecks2.TextScaled = true
  2779. tecks2.BorderSizePixel = 0
  2780. tecks2.Text = "Cyber warden"
  2781. tecks2.Font = SKILLFONT
  2782. tecks2.TextSize = 30
  2783. tecks2.TextStrokeTransparency = 0
  2784. tecks2.TextColor3 = C3(0,0,0)
  2785. tecks2.TextStrokeColor3 = BRICKC"Really red".Color
  2786. tecks2.Size = UDim2.new(1,0,0.5,0)
  2787. tecks2.Parent = naeeym2
  2788.  
  2789. for _, c in pairs(Character:GetChildren()) do
  2790. if c.ClassName == "Part" then
  2791. table.insert(BODY,{c,Character})
  2792. for _, q in pairs(c:GetChildren()) do
  2793. if q.ClassName == "Motor6D" or q.ClassName == "Weld" or q.ClassName == "ManualWeld" then
  2794. table.insert(BODY,{q,c})
  2795. end
  2796. end
  2797. end
  2798. end
  2799.  
  2800. function refit()
  2801. Character.Parent = workspace
  2802. for e = 1, #BODY do
  2803. if BODY[e] ~= nil then
  2804. local STUFF = BODY[e]
  2805. local PART = STUFF[1]
  2806. local PARENT = STUFF[2]
  2807. PART.Parent = PARENT
  2808. end
  2809. end
  2810. end
  2811.  
  2812. Humanoid.HealthChanged:connect(function()
  2813. Humanoid.Parent = nil
  2814. Humanoid.MaxHealth = "inf"
  2815. Humanoid.Health = "inf"
  2816. refit()
  2817. Humanoid.Parent = Character
  2818. end)
  2819.  
  2820. Humanoid.Died:connect(function()
  2821. Humanoid.Parent = nil
  2822. Humanoid.MaxHealth = "inf"
  2823. Humanoid.Health = "inf"
  2824. refit()
  2825. Humanoid.Parent = Character
  2826. end)
  2827.  
  2828. --
  2829. for i = 1, 15 do
  2830. local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/15.2, "Dark stone grey", "FaceGradient", VT(1.01,0.58,1.01),false)
  2831. FACE.Color = C3(0,0,0)
  2832. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  2833. CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/35,0), CF(0, 0, 0))
  2834. end
  2835. local HAT1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(2,0.2,2),false)
  2836. MakeForm(HAT1,"Cyl")
  2837. HATWELD = CreateWeldOrSnapOrMotor("Weld", Head, Head, HAT1, CF(0,0.35,0), CF(0, 0, 0))
  2838. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(2.01,0.15,2.01),false)
  2839. BELT.Color = C3(15/255,15/255,15/255)
  2840. MakeForm(BELT,"Cyl")
  2841. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, BELT, CF(0,0,0), CF(0, 0, 0))
  2842. local HAT2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.3,2.2,1.3),false)
  2843. MakeForm(HAT2,"Cyl")
  2844. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, HAT2, CF(0,1.1,0), CF(0, 0, 0))
  2845. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.2,1.31),false)
  2846. BELT.Color = C3(15/255,15/255,15/255)
  2847. MakeForm(BELT,"Cyl")
  2848. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0,0), CF(0, 0, 0))
  2849. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Gem", VT(0.25,0.25,0.1),false)
  2850. MakeForm(GEM,"Ball")
  2851. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,-BELT.Size.X/2), CF(0, 0, 0))
  2852. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Gem", VT(0.25,0.25,0.1),false)
  2853. MakeForm(GEM,"Ball")
  2854. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,BELT.Size.X/2), CF(0, 0, 0))
  2855. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Gem", VT(0.1,0.25,0.25),false)
  2856. MakeForm(GEM,"Ball")
  2857. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(-BELT.Size.X/2,0,0), CF(0, 0, 0))
  2858. local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Gem", VT(0.1,0.25,0.25),false)
  2859. MakeForm(GEM,"Ball")
  2860. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(BELT.Size.X/2,0,0), CF(0, 0, 0))
  2861. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
  2862. BELT.Color = C3(15/255,15/255,15/255)
  2863. MakeForm(BELT,"Cyl")
  2864. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.7,0), CF(0, 0, 0))
  2865. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
  2866. BELT.Color = C3(15/255,15/255,15/255)
  2867. MakeForm(BELT,"Cyl")
  2868. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.7,0), CF(0, 0, 0))
  2869. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
  2870. BELT.Color = C3(15/255,15/255,15/255)
  2871. MakeForm(BELT,"Cyl")
  2872. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.35,0), CF(0, 0, 0))
  2873. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
  2874. BELT.Color = C3(15/255,15/255,15/255)
  2875. MakeForm(BELT,"Cyl")
  2876. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.35,0), CF(0, 0, 0))
  2877. local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.3,0.5,1.3),false)
  2878. MakeForm(BELT,"Ball")
  2879. CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,HAT2.Size.Y/2,0), CF(0, 0, 0))
  2880. Humanoid.DisplayDistanceType = "None"
  2881. local naeeym2 = IT("BillboardGui",Character)
  2882. naeeym2.AlwaysOnTop = true
  2883. naeeym2.Size = UDim2.new(5,35,2,15)
  2884. naeeym2.StudsOffset = Vector3.new(0,3,0)
  2885. naeeym2.MaxDistance = 75
  2886. naeeym2.Adornee = Character.Head
  2887. naeeym2.Name = "Name"
  2888. naeeym2.PlayerToHideFrom = Player
  2889. local tecks2 = IT("TextLabel",naeeym2)
  2890. tecks2.BackgroundTransparency = 1
  2891. tecks2.TextScaled = true
  2892. tecks2.BorderSizePixel = 0
  2893. tecks2.Text = ""
  2894. tecks2.Font = "Bodoni"
  2895. tecks2.TextSize = 30
  2896. tecks2.TextStrokeTransparency = 0.5
  2897. tecks2.TextColor3 = C3(0,0,0)
  2898. tecks2.TextStrokeColor3 = BRICKC"Really red".Color
  2899. tecks2.Size = UDim2.new(1,0,0.5,0)
  2900. tecks2.Parent = naeeym2
  2901. local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really red", "FaceGradient", VT(0.6,0.1,1)/2,false)
  2902. MakeForm(EYE,"Ball")
  2903. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
  2904. local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really red", "FaceGradient", VT(0.6,0.1,1)/2,false)
  2905. MakeForm(EYE,"Ball")
  2906. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
  2907. local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really red", "FaceGradient", VT(0.1,1,1)/2,false)
  2908. MakeForm(EYE,"Ball")
  2909. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
  2910. local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really red", "FaceGradient", VT(0.1,1,1)/2,false)
  2911. MakeForm(EYE,"Ball")
  2912. CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
  2913.  
  2914. local top = Instance.new("Shirt")
  2915. top.ShirtTemplate = "rbxassetid://676428254"
  2916. top.Parent = Character
  2917. top.Name = "Cloth"
  2918. local bottom = Instance.new("Pants")
  2919. bottom.PantsTemplate = "rbxassetid://676428351"
  2920. bottom.Parent = Character
  2921. bottom.Name = "Cloth"
  2922. for _, c in pairs(Character:GetChildren()) do
  2923. if c.ClassName == "Part" and c.Name ~= "FaceGradient" and c.Name ~= "Hat" and c.Name ~= "Gem" then
  2924. c.Material = "Neon"
  2925. if c:FindFirstChildOfClass("ParticleEmitter") then
  2926. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  2927. end
  2928. c.Color = C3(1,1,1)
  2929. if c == Head then
  2930. if c:FindFirstChild("face") then
  2931. c.face:remove()
  2932. end
  2933. end
  2934. elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
  2935. c:remove()
  2936. elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
  2937. c:remove()
  2938. end
  2939. end
  2940. local BODY = {}
  2941. for _, c in pairs(Character:GetDescendants()) do
  2942. if c:IsA("BasePart") and c.Name ~= "Handle" then
  2943. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  2944. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2945. end
  2946. table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  2947. elseif c:IsA("JointInstance") then
  2948. table.insert(BODY,{c,c.Parent,nil,nil,nil})
  2949. end
  2950. end
  2951. for e = 1, #BODY do
  2952. if BODY[e] ~= nil then
  2953. local STUFF = BODY[e]
  2954. local PART = STUFF[1]
  2955. local PARENT = STUFF[2]
  2956. local MATERIAL = STUFF[3]
  2957. local COLOR = STUFF[4]
  2958. local TRANSPARENCY = STUFF[5]
  2959. if PART.ClassName == "Part" and PART ~= RootPart then
  2960. PART.Material = MATERIAL
  2961. PART.Color = COLOR
  2962. PART.Transparency = TRANSPARENCY
  2963. end
  2964. PART.AncestryChanged:Connect(function()
  2965. PART.Parent = PARENT
  2966. end)
  2967. end
  2968. end
  2969. function refit()
  2970. Character.Parent = workspace
  2971. for e = 1, #BODY do
  2972. if BODY[e] ~= nil then
  2973. local STUFF = BODY[e]
  2974. local PART = STUFF[1]
  2975. local PARENT = STUFF[2]
  2976. local MATERIAL = STUFF[3]
  2977. local COLOR = STUFF[4]
  2978. local TRANSPARENCY = STUFF[5]
  2979. if PART.ClassName == "Part" and PART ~= RootPart then
  2980. PART.Material = MATERIAL
  2981. PART.Color = COLOR
  2982. PART.Transparency = TRANSPARENCY
  2983. end
  2984. if PART.Parent ~= PARENT then
  2985. Humanoid:remove()
  2986. PART.Parent = PARENT
  2987. Humanoid = IT("Humanoid",Character)
  2988. end
  2989. end
  2990. end
  2991. end
  2992. local SKILLTEXTCOLOR = BRICKC"Really red".Color
  2993. local SKILLFONT = "Bodoni"
  2994. local SKILLTEXTSIZE = 7
  2995.  
  2996. Humanoid.Died:connect(function()
  2997. refit()
  2998. end)
  2999.  
  3000. --//=================================\\
  3001. --|| DAMAGING
  3002. --\\=================================//
  3003. -----
  3004. function ApplyAoE(POSITION,RANGE,FLING,BURN)
  3005. local CHILDREN = workspace:GetDescendants()
  3006. for index, CHILD in pairs(CHILDREN) do
  3007. if CHILD.ClassName == "Model" and CHILD ~= Character then
  3008. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3009. if HUM then
  3010. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3011. if TORSO then
  3012. if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
  3013. CHILD:BreakJoints()
  3014. if FLING ~= 0 then
  3015. for _, c in pairs(CHILD:GetChildren()) do
  3016. if c:IsA("BasePart") and c.Transparency == 0 then
  3017. if BURN == true then
  3018. Fire(c)
  3019. end
  3020. local bv = Instance.new("BodyVelocity")
  3021. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  3022. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  3023. bv.Parent = c
  3024. Debris:AddItem(bv,0.05)
  3025. end
  3026. end
  3027. end
  3028. end
  3029. end
  3030. end
  3031. end
  3032. end
  3033. end
  3034.  
  3035. function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
  3036. coroutine.resume(coroutine.create(function()
  3037. local METEOR = IT("Model",Effects)
  3038. METEOR.Name = "Meteorite"
  3039. local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
  3040. METEOR.PrimaryPart = CENTER
  3041. local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
  3042. PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  3043. for i = 1, 15 do
  3044. local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really black", "Fire", VT(5.1,1,5.1)*SIZE)
  3045. FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  3046. end
  3047. if ISDEBREE ~= true then
  3048. METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  3049. else
  3050. METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  3051. end
  3052. local IMPACT = false
  3053. CreateSound(463593339, CENTER, 10, 0.6)
  3054. if SIZE >= 3.5 then
  3055. for i = 1, MRANDOM(3,7) do
  3056. SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
  3057. end
  3058. end
  3059. for i = 1, 200 do
  3060. Swait()
  3061. local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
  3062. if HITFLOOR == nil then
  3063. local ORI = CENTER.Orientation
  3064. METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  3065. else
  3066. if HITFLOOR.Anchored == true then
  3067.  
  3068.  
  3069. end
  3070. IMPACT = true
  3071. break
  3072. end
  3073. end
  3074. if IMPACT == true then
  3075. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  3076. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
  3077. WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  3078. ApplyAoE(CENTER.Position,30*SIZE)
  3079.  
  3080. end
  3081. METEOR:remove()
  3082. end))
  3083. end
  3084.  
  3085. function KillChildren(Char)
  3086. local NewCharacter = IT("Model",Effects)
  3087. NewCharacter.Name = "Ow im ded ;-;"
  3088. for _, c in pairs(Char:GetDescendants()) do
  3089. if c:IsA("BasePart") and c.Transparency == 0 then
  3090. if c.Parent == Char then
  3091. getbloody(c,5)
  3092. end
  3093. c:BreakJoints()
  3094. c.Material = "Glass"
  3095. c.Color = C3(0.5,0,0)
  3096. c.CanCollide = true
  3097. c.Transparency = 0.3
  3098. if c:FindFirstChildOfClass("SpecialMesh") then
  3099. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  3100. end
  3101. if c.Name == "Head" then
  3102. c:ClearAllChildren()
  3103. c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  3104. end
  3105. if c.ClassName == "MeshPart" then
  3106. c.TextureID = ""
  3107. end
  3108. if c:FindFirstChildOfClass("BodyPosition") then
  3109. c:FindFirstChildOfClass("BodyPosition"):remove()
  3110. end
  3111. if c:FindFirstChildOfClass("ParticleEmitter") then
  3112. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  3113. end
  3114. c.Parent = NewCharacter
  3115. c.Name = "DeadPart"
  3116. c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  3117. c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  3118. end
  3119. end
  3120. Char:remove()
  3121. Debris:AddItem(NewCharacter,5)
  3122. end
  3123.  
  3124. function Kill(Char)
  3125. local NewCharacter = IT("Model",Effects)
  3126. NewCharacter.Name = "Ow im ded ;-;"
  3127. for _, c in pairs(Char:GetDescendants()) do
  3128. if c:IsA("BasePart") and c.Transparency == 0 then
  3129. if c.Parent == Char then
  3130. getbloody(c,5)
  3131. end
  3132. c:BreakJoints()
  3133. c.Material = "Glass"
  3134. c.Color = C3(0.5,0,0)
  3135. c.CanCollide = true
  3136. c.Transparency = 0.3
  3137. if c:FindFirstChildOfClass("SpecialMesh") then
  3138. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  3139. end
  3140. if c.Name == "Head" then
  3141. c:ClearAllChildren()
  3142. c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  3143. end
  3144. if c.ClassName == "MeshPart" then
  3145. c.TextureID = ""
  3146. end
  3147. if c:FindFirstChildOfClass("BodyPosition") then
  3148. c:FindFirstChildOfClass("BodyPosition"):remove()
  3149. end
  3150. if c:FindFirstChildOfClass("ParticleEmitter") then
  3151. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  3152. end
  3153. c.Parent = NewCharacter
  3154. c.Name = "DeadPart"
  3155. c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  3156. c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  3157. end
  3158. end
  3159. Char:remove()
  3160. Debris:AddItem(NewCharacter,5)
  3161. end
  3162.  
  3163. function ApplyAoE(POSITION,RANGE,BRUTAL)
  3164. local CHILDREN = workspace:GetDescendants()
  3165. for index, CHILD in pairs(CHILDREN) do
  3166. if CHILD.ClassName == "Model" and CHILD ~= Character then
  3167. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3168. if HUM then
  3169. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3170. if TORSO then
  3171. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  3172. if BRUTAL == true then
  3173. Kill(CHILD)
  3174. else
  3175. CHILD:BreakJoints()
  3176. end
  3177. end
  3178. end
  3179. end
  3180. end
  3181. end
  3182. end
  3183.  
  3184. function BulletDetection(FROM,TO,BRUTAL)
  3185. local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
  3186. coroutine.resume(coroutine.create(function()
  3187. if AIMHIT ~= nil then
  3188. if AIMHIT.Parent ~= Character then
  3189. if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  3190. if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") then
  3191. if BRUTAL == true then
  3192. Kill(AIMHIT.Parent)
  3193. else
  3194. getbloody(AIMHIT,15)
  3195. AIMHIT.Parent:BreakJoints()
  3196. if AIMHIT.Name == "Head" then
  3197. AIMHIT.Name = "HEADSHOT"
  3198. AIMHIT:remove()
  3199. end
  3200. end
  3201. else
  3202. if BRUTAL == true then
  3203. Kill(AIMHIT.Parent.Parent)
  3204. else
  3205. AIMHIT.Parent.Parent:BreakJoints()
  3206. end
  3207. end
  3208. end
  3209. end
  3210. end
  3211. end))
  3212. SpawnTrail(FROM,AIMPOS)
  3213. return AIMHIT,AIMPOS,NORMAL
  3214. end
  3215.  
  3216. local Weapon = nil
  3217. local BasePart = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Really black", "BraceletPart", VT(1.01,0.3,1.01),false)
  3218. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, BasePart, CF(0, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  3219.  
  3220. function Charge(TIME,GYRO)
  3221. local SND = CreateSound(ENERGYSOUND,Torso,6,TIME,false)
  3222. local G = nil
  3223. if GYRO == true then
  3224. G = IT("BodyGyro",RootPart)
  3225. G.D = 250
  3226. G.P = 200000
  3227. G.MaxTorque = VT(math.huge,math.huge,math.huge)
  3228. end
  3229. for i=0, TIME, 0.1 / Animation_Speed do
  3230. Swait()
  3231. if G then
  3232. G.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3233. end
  3234. WACKYEFFECT({TIME = 25, EffectType = "Sphere", Size = VT(1.2,1.2,1.2), Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = BasePart.CFrame, MoveToPos = BasePart.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-4).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3235. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3236. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3237. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  3238. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  3239. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3240. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3241. end
  3242. SND:remove()
  3243. if G then
  3244. return G
  3245. end
  3246. end
  3247. -----
  3248. function ApplyAoE(POSITION,RANGE,FLING,BURN)
  3249. local CHILDREN = workspace:GetDescendants()
  3250. for index, CHILD in pairs(CHILDREN) do
  3251. if CHILD.ClassName == "Model" and CHILD ~= Character then
  3252. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3253. if HUM then
  3254. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3255. if TORSO then
  3256. if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
  3257. CHILD:BreakJoints()
  3258. if FLING ~= 0 then
  3259. for _, c in pairs(CHILD:GetChildren()) do
  3260. if c:IsA("BasePart") and c.Transparency == 0 then
  3261. if BURN == true then
  3262. Fire(c)
  3263. end
  3264. local bv = Instance.new("BodyVelocity")
  3265. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  3266. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  3267. bv.Parent = c
  3268. Debris:AddItem(bv,0.05)
  3269. end
  3270. end
  3271. end
  3272. end
  3273. end
  3274. end
  3275. end
  3276. end
  3277. end
  3278. -----------
  3279. function killnearest(position,range,EFFECT)
  3280. for i,v in ipairs(workspace:GetChildren()) do
  3281. local body = v:GetChildren()
  3282. for part = 1, #body do
  3283. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  3284. local SIZE = body[part].Size.Magnitude
  3285. if(body[part].Position - position).Magnitude < range + SIZE/2 then
  3286. if v.ClassName == "Model" then
  3287. if v:FindFirstChildOfClass("Humanoid") ~= nil then
  3288. if v:FindFirstChildOfClass("Humanoid").Health > 0 then
  3289. v:BreakJoints()
  3290. if EFFECT == "Glitch" then
  3291. coroutine.resume(coroutine.create(function()
  3292. local ORIGINPOS = body[part].CFrame
  3293. local SIZE = body[part].Size
  3294. for i = 1, 100 do
  3295. Swait()
  3296. local PART = body[part]
  3297. PART.Anchored = true
  3298. PART.Size = SIZE*MRANDOM(5,15)/10
  3299. PART.CFrame = ORIGINPOS*CF(MRANDOM(-15,15)/15,MRANDOM(-15,15)/15,MRANDOM(-15,15)/15)
  3300. end
  3301. body[part]:remove()
  3302. end))
  3303. elseif EFFECT == "Shatter" then
  3304. for _, c in pairs(v:GetChildren()) do
  3305. if c.ClassName == "Part" or c.ClassName == "MeshPart" then
  3306. Shatter(c)
  3307. end
  3308. end
  3309. end
  3310. end
  3311. end
  3312. end
  3313. end
  3314. end
  3315. end
  3316. end
  3317. end
  3318.  
  3319. --//=================================\\
  3320. --|| ATTACK FUNCTIONS AND STUFF
  3321. --\\=================================//
  3322. ---
  3323.  
  3324. function Corrupted_Immobilization()
  3325. ATTACK = true
  3326. Rooted = true
  3327. Charge(2,false)
  3328.  
  3329. local SND = CreateSound(EXPLOSIONSOUND,RootPart,10,1,false)
  3330. local SND2 = CreateSound(ENERGYSOUND,RootPart,10,1,false)
  3331. for i = 1, 60 do
  3332. Swait()
  3333. ApplyAoE(RootPart.Position,i*1.3,10,20,-200,true)
  3334. SND.Pitch = SND.Pitch - 1/60
  3335. SND2.Pitch = SND.Pitch
  3336. WACKYEFFECT({TIME = 4, EffectType = "Wave", Size = VT(i*2,10,i*2), Size2 = VT(i*2,10,i*2), Transparency = 0.9, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3337. WACKYEFFECT({TIME = math.ceil(15-(i/10)), EffectType = "Wave", Size = VT(0,10,0), Size2 = VT(i*2,6,i*2), Transparency = 0.8, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3338. WACKYEFFECT({TIME = math.ceil(15-(i/10)), EffectType = "Wave", Size = VT(0,6,0), Size2 = VT(i*1.6,10,i*1.6), Transparency = 0.8, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(MRANDOM(-5,5)), RAD(i*5), RAD(MRANDOM(-5,5))), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3339. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3340. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3341. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(-45), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3342. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(45), RAD(-45)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3343. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3344. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3345. end
  3346. SND:remove()
  3347. SND2:remove()
  3348. ATTACK = false
  3349. Rooted = false
  3350. end
  3351.  
  3352. local OFFSET = 0
  3353. local TAUNT = false
  3354.  
  3355. function Taunt()
  3356. ATTACK = true
  3357. Rooted = false
  3358. TAUNT = true
  3359. for i=0, 0.1, 0.1 / Animation_Speed do
  3360. Swait()
  3361. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3362. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  3363. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  3364. end
  3365. for i=0, 3, 0.1 / Animation_Speed do
  3366. Swait()
  3367. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3368. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  3369. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(170), RAD(0), RAD(15)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  3370. end
  3371. CreateSound(363808674, Torso, 10, 1.3)
  3372. for i=0, 1, 0.1 / Animation_Speed do
  3373. Swait()
  3374. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(120)), 3 / Animation_Speed)
  3375. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 3/ Animation_Speed)
  3376. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(230), RAD(0), RAD(35)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  3377. end
  3378. WACKYEFFECT({EffectType = "Block", Size = VT(6,6,6), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BrickColor.new("Really black").Color, SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  3379.  
  3380. for i=0, 0.01, 0.1 / Animation_Speed do
  3381. Swait()
  3382. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
  3383. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
  3384. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, 0.5) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 3 / Animation_Speed)
  3385. end
  3386. ATTACK = false
  3387. Rooted = false
  3388. TAUNT = false
  3389. end
  3390.  
  3391.  
  3392. function nahid_Blast()
  3393. local HITBODIES = {}
  3394. local CENTER = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Relly red", "CenterPart", VT(0,0,0))
  3395. local HITFLOOR,ECH,NORMAL = Raycast(Mouse.Hit.p+VT(0,2,0), (CF(Mouse.Hit.p, Mouse.Hit.p + VT(0, -1, 0))).lookVector, 10000000, Character)
  3396. CENTER.CFrame = CF(ECH)
  3397. local RAY = CreatePart(3, Effects, "Neon", 0, 1, "Relly red", "Laser01", VT(25,99999,25))
  3398. RAY.Color = C3(255,0,0)
  3399. MakeForm(RAY,"Cyl")
  3400. RAY.CFrame = CF(ECH)
  3401. for i = 1, 75 do
  3402. Swait()
  3403. RAY.Transparency = RAY.Transparency - 1/75
  3404. RAY.Size = RAY.Size - VT(25/75,0,25/75)
  3405. MagicSphere(VT(1,1,1),15,CF(ECH)*CF(MRANDOM(-15,15),MRANDOM(0,100),MRANDOM(-15,15)),C3(1,1,1),VT(0,0,0))
  3406. end
  3407. killnearest(ECH,25,25)
  3408. MagicSphere(VT(0,0,0),55,CF(ECH),C3(255,0,0),VT(2,2,2))
  3409. for i = 1, 25 do
  3410. MagicSphere(VT(1,1,1),i*3,CF(ECH)*CF(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45)),C3(1,1,1),VT(0,0,0))
  3411. end
  3412. CreateSound("168586621", CENTER, 10, 0.8)
  3413. RAY:remove()
  3414. Debris:AddItem(CENTER,5)
  3415. end
  3416.  
  3417.  
  3418. function Supernahid()
  3419.  
  3420. if HITFLOOR ~= nil then
  3421. local HITBODIES = {}
  3422. ATTACK = true
  3423. Rooted = true
  3424. local ABSOLUTE = CreatePart(3, Effects, "Neon", 0, 1, "Relly red", "Star", VT(0,0,0))
  3425. MakeForm(ABSOLUTE,"Ball")
  3426. CreateSound("429459101", ABSOLUTE, 10, 1)
  3427. for i=0, 4, 0.1 / Animation_Speed do
  3428. Swait()
  3429. ABSOLUTE.Size = ABSOLUTE.Size + VT(0.2,0.2,0.2)
  3430. ABSOLUTE.CFrame = RootPart.CFrame*CF(0,5+(ABSOLUTE.Size.Y/2),0)
  3431. ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
  3432. local CHARGE = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Star", VT(1,1,1))
  3433. MakeForm(CHARGE,"Ball")
  3434. CHARGE.Color = C3(1,1,1)
  3435. CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15,15),-6,MRANDOM(-15,15))
  3436. FireArc(CHARGE,ABSOLUTE.Position,45,45,true)
  3437. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3438. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3439. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3440. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3441. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  3442. 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)
  3443. end
  3444. CreateSound("907330103", Head, 10, 1.2)
  3445. for i = 1, 75 do
  3446. Swait()
  3447. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3448. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3449. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3450. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3451. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  3452. 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)
  3453. end
  3454. coroutine.resume(coroutine.create(function()
  3455. for i = 1, 13 do
  3456. for e = 1, 8 do
  3457. Swait()
  3458. MagicSphere(VT(1,1,1),15,CF(ABSOLUTE.Position)*CF(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45)),C3(1,1,1),VT(0,0,0))
  3459. CreateSwirl(ABSOLUTE.Size/2,15,CF(HITPOS),true,15,BRICKC"Slime green".Color,VT(i,0.3,i)*2)
  3460. end
  3461. for i = 1, 5 do
  3462. Slice("Round",0,35,CF(ABSOLUTE.Position)*ANGLES(RAD(MRANDOM(-18,18)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-18,18))),C3(1,1,1),VT(i,0,i)/3)
  3463. Slice("Thin",i,55,ABSOLUTE.CFrame * CF(0,-1.1,0) * ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),C3(1,0,0),VT(0,0,0))
  3464. end
  3465. CreateSwirl(ABSOLUTE.Size/2,25,CF(ABSOLUTE.Position),true,-25,BRICKC"Relly red".Color,VT(i,i*2,i))
  3466. CreateSwirl(ABSOLUTE.Size/2,55,CF(ABSOLUTE.Position),true,25,C3(255,0,0),VT(i,i*2,i))
  3467. CreateSound("168586621", ABSOLUTE, 4, 0.8)
  3468. CreateSound("201858144", ABSOLUTE, 10, 0.8)
  3469. killnearest(ABSOLUTE.Position,i*18,i)
  3470. ABSOLUTE.Size = ABSOLUTE.Size*0.9
  3471. MagicSphere(ABSOLUTE.Size,25,CF(ABSOLUTE.Position),BRICKC"Relly red".Color,VT(i,i,i)/1.1)
  3472. MagicSphere(ABSOLUTE.Size,45,CF(ABSOLUTE.Position),C3(255,0,0),VT(i,i,i))
  3473. end
  3474. ABSOLUTE.Transparency = 1
  3475. Debris:AddItem(ABSOLUTE,10)
  3476. end))
  3477. ATTACK = false
  3478. Rooted = false
  3479. end
  3480. end
  3481.  
  3482. local Decal = IT("Decal")
  3483.  
  3484. function cyber_warden()
  3485. ATTACK = true
  3486. Rooted = false
  3487. local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  3488. O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(0),RAD(0))
  3489. local decal = Decal:Clone()
  3490. decal.Parent = O1
  3491. decal.Face = "Top"
  3492. decal.Texture = "http://www.roblox.com/asset/?id=818983932"
  3493. local decal2 = Decal:Clone()
  3494. decal2.Parent = O1
  3495. decal2.Face = "Bottom"
  3496. decal2.Texture = "http://www.roblox.com/asset/?id=818983932"
  3497. local O2 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  3498. local POS = VT(RootPart.Position.X,Mouse.Hit.p.Y+6,RootPart.Position.Z)
  3499. O2.CFrame = CF(Mouse.Hit.p+VT(0,6,0),POS)*ANGLES(RAD(90),RAD(0),RAD(0))
  3500. local ROOT = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0,0,0))
  3501. ROOT.CFrame = CF(O2.Position,RootPart.Position)
  3502. local decal = Decal:Clone()
  3503. decal.Parent = O2
  3504. decal.Face = "Top"
  3505. decal.Texture = "http://www.roblox.com/asset/?id=818983932"
  3506. local decal2 = Decal:Clone()
  3507. decal2.Parent = O2
  3508. decal2.Face = "Bottom"
  3509. decal2.Texture = "http://www.roblox.com/asset/?id=818983932"
  3510. CreateSound("84005018", O1, 10, 0.7)
  3511. CreateSound("84005018", O2, 10, 0.7)
  3512. for i = 1, 75 do
  3513. Swait()
  3514. O1.Size = O1.Size + VT(0.1,0,0.1)
  3515. O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(i),RAD(0))
  3516. O2.Size = O2.Size + VT(0.1,0,0.1)
  3517. O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  3518. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3519. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3520. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3521. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3522. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3523. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3524. end
  3525. Rooted = true
  3526. UNANCHOR = false
  3527. RootPart.Anchored = true
  3528. VALUE1 = true
  3529. for i = 1, 15 do
  3530.  
  3531. Swait()
  3532. RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.13)
  3533. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3534. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3535. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3536. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3537. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3538. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3539. end
  3540. RootPart.CFrame = ROOT.CFrame
  3541. ROOT:remove()
  3542. for i = 1, 15 do
  3543.  
  3544. Swait()
  3545. RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.5)
  3546. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3547. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3548. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3549. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3550. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3551. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3552. end
  3553. VALUE1 = false
  3554. coroutine.resume(coroutine.create(function()
  3555. for i = 1, 75 do
  3556. Swait()
  3557. O1.Size = O1.Size - VT(0.1,0,0.1)
  3558. O1.CFrame = O1.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  3559. O2.Size = O2.Size - VT(0.1,0,0.1)
  3560. O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
  3561. end
  3562. O1:remove()
  3563. O2:remove()
  3564. end))
  3565. UNANCHOR = true
  3566. RootPart.Anchored = false
  3567. ATTACK = false
  3568. Rooted = false
  3569. end
  3570. ---
  3571. function Cyber_Warden_Zap()
  3572. ATTACK = true
  3573. Rooted = false
  3574. local GYRO = IT("BodyGyro",RootPart)
  3575. GYRO.D = 750
  3576. GYRO.P = 20000
  3577. GYRO.MaxTorque = VT(0,40000000,0)
  3578. CreateSound(348663022,RightArm,1.5,2,false)
  3579. Pose("Cast1",0.8,1,true,GYRO)
  3580. local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = RightArm.CFrame*CF(0,-1,0).p, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.2, DoesFade = true, Ignore = Character, MaxDist = 100, Branches = false})
  3581. local Hitpos = LightningTable.End
  3582. ApplyAoE(Hitpos,10,35)
  3583. for i = 1, 4 do
  3584. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,45,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3585. end
  3586. Pose("Cast1",0.8,1,true)
  3587. GYRO:remove()
  3588. ATTACK = false
  3589. Rooted = false
  3590. end
  3591.  
  3592. function Warden_Thunder()
  3593. ATTACK = true
  3594. Rooted = false
  3595. local GYRO = IT("BodyGyro",RootPart)
  3596. GYRO.D = 750
  3597. GYRO.P = 20000
  3598. GYRO.MaxTorque = VT(0,40000000,0)
  3599. CreateSound(469345336,Torso,3,2,false)
  3600. Pose("Cast2",1.5,2,true,GYRO)
  3601. coroutine.resume(coroutine.create(function()
  3602. local FRAME = RootPart.CFrame
  3603. for i = 1, 25 do
  3604. local POS = FRAME*CF(MRANDOM(-17,17),0,-i*15)
  3605. local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = POS*CF(0,85,0).p, End = POS*CF(0,-15,0).p, SegmentL = 3, Thickness = 0.4, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = true})
  3606. local Hitpos = LightningTable.End
  3607. ApplyAoE(Hitpos,20,15)
  3608. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
  3609. for i = 1, 4 do
  3610. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,75,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3611. end
  3612. wait(0.05)
  3613. end
  3614. end))
  3615. Pose("Cast2",1.5,0.7,true)
  3616. GYRO:remove()
  3617. ATTACK = false
  3618. Rooted = false
  3619. end
  3620.  
  3621. function Inferno_Ring()
  3622. ATTACK = true
  3623. Rooted = false
  3624. local GYRO = IT("BodyGyro",RootPart)
  3625. GYRO.D = 750
  3626. GYRO.P = 20000
  3627. GYRO.MaxTorque = VT(0,40000000,0)
  3628. local FIRE = IT("Model",Effects)
  3629. FIRE.Name = "Fire"
  3630. local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "Center", VT(0,0,0))
  3631. FIRE.PrimaryPart = MAIN
  3632. local FIRES = {}
  3633. for i = 1, 45 do
  3634. local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "RingPart", VT(3,3,3))
  3635. PRT.CFrame = MAIN.CFrame*ANGLES(RAD(0),RAD((360/45)*i),RAD(0))*CF(0,0,20)
  3636. local F = Fire(PRT)
  3637. table.insert(FIRES,F)
  3638. end
  3639. repeat
  3640. FIRE:SetPrimaryPartCFrame(CF(Mouse.Hit.p))
  3641. Pose("Cast1",1.5,0.01,false,GYRO)
  3642. until HOLD == true
  3643. coroutine.resume(coroutine.create(function()
  3644. for i = 1, 4 do
  3645. ApplyAoE(MAIN.Position,21,-15,true)
  3646. CreateSound(463598785,MAIN,3,1,false)
  3647. for E = 1, #FIRES do
  3648. if FIRES[E] ~= nil then
  3649. FIRES[E].Acceleration = VT(0,300,0)
  3650. FIRES[E].Lifetime=NumberRange.new(0.35,1.5)
  3651. end
  3652. end
  3653. wait(0.3)
  3654. end
  3655. for E = 1, #FIRES do
  3656. if FIRES[E] ~= nil then
  3657. FIRES[E].Enabled = false
  3658. end
  3659. end
  3660. Debris:AddItem(FIRE,5)
  3661. end))
  3662. CreateSound(215395388,RightArm,3,2,false)
  3663. Pose("RightArmUp",1.5,0.5,true)
  3664. GYRO:remove()
  3665. ATTACK = false
  3666. Rooted = false
  3667. end
  3668.  
  3669. function Warden_Wall()
  3670. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
  3671. if HITFLOOR ~= nil then
  3672. if HITFLOOR.Anchored == true then
  3673. local WALL = HITFLOOR:Clone()
  3674. WALL.Size = VT(45,45,5)
  3675. WALL.Parent = Effects
  3676. WALL.Name = "Wall"
  3677. WALL.CFrame = RootPart.CFrame*CF(0,-65/2.1,-5)*ANGLES(RAD(-15),RAD(0),RAD(0))
  3678. CreateSound(130972023,WALL,5,0.8,false)
  3679. ATTACK = true
  3680. Rooted = true
  3681. local HIT = WALL.Touched:Connect(function(hit)
  3682. if hit.Parent ~= Character then
  3683. hit:BreakJoints()
  3684. end
  3685. end)
  3686. coroutine.resume(coroutine.create(function()
  3687. WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3688. for i = 1, 90 do
  3689. Swait()
  3690. WALL.CFrame = WALL.CFrame*CF(0,0.5,0)
  3691. end
  3692. HIT:disconnect()
  3693. wait(5)
  3694. for i = 1, 46 do
  3695. Swait()
  3696. WALL.CFrame = WALL.CFrame*CF(0,-1,0)
  3697. end
  3698. WALL:remove()
  3699. end))
  3700. Pose("RightArmUp",1.5,1.2,true)
  3701. ATTACK = false
  3702. Rooted = false
  3703. end
  3704. end
  3705. end
  3706.  
  3707. function Prison_Key()
  3708. if Mouse.Target ~= nil then
  3709. if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  3710. local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
  3711. local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  3712. local GYRO = IT("BodyGyro",RootPart)
  3713. GYRO.D = 750
  3714. GYRO.P = 20000
  3715. GYRO.MaxTorque = VT(0,40000000,0)
  3716. local grav = Instance.new("BodyPosition",TORSO)
  3717. grav.D = 15
  3718. grav.P = 20000
  3719. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  3720. grav.position = TORSO.Position
  3721. local GYRO2 = IT("BodyGyro",TORSO)
  3722. GYRO2.D = 750
  3723. GYRO2.P = 20000
  3724. GYRO2.MaxTorque = VT(0,40000000,0)
  3725. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  3726. grav.Name = "Jail"
  3727. local LOCKPARTS = {}
  3728. ATTACK = true
  3729. Rooted = false
  3730. local LOCK = IT("Model",Effects)
  3731. LOCK.Name = "Lock"
  3732. local LOCK2 = IT("Model",LOCK)
  3733. LOCK2.Name = "Metal"
  3734. --CREATE LOCK--
  3735. local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
  3736. LOCK.PrimaryPart = BASE
  3737. BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
  3738. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
  3739. PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
  3740. MakeForm(PRT,"Cyl")
  3741. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
  3742. PRT.Color = C3(0,0,0)
  3743. PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
  3744. MakeForm(PRT,"Cyl")
  3745. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
  3746. PRT.Color = C3(0,0,0)
  3747. PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
  3748. for i = 1, 45 do
  3749. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  3750. PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
  3751. end
  3752. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  3753. PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
  3754. LOCK2.PrimaryPart = PRT
  3755. ---------------
  3756. local CHILDREN = LOCK:GetDescendants()
  3757. for index, CHILD in pairs(CHILDREN) do
  3758. if CHILD:IsA("BasePart") then
  3759. CHILD.Transparency = 1
  3760. end
  3761. end
  3762. for i = 1, 75 do
  3763. LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
  3764. Swait()
  3765. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  3766. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  3767. local CHILDREN = LOCK:GetDescendants()
  3768. for index, CHILD in pairs(CHILDREN) do
  3769. if CHILD:IsA("BasePart") then
  3770. CHILD.Transparency = CHILD.Transparency - 1/75
  3771. end
  3772. end
  3773. end
  3774. HUM.DisplayDistanceType = "None"
  3775. local KEY = IT("Model",Effects)
  3776. KEY.Name = "Key"
  3777. --CREATE KEY--
  3778. local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Really red", "KeyBase", VT(0.1, 1, 0.1),false)
  3779. KEY.PrimaryPart = KBASE
  3780. KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
  3781. local WLD = weldBetween(RightArm,KBASE)
  3782. for i = 1, 45 do
  3783. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really red", "Key", VT(0.1, 0.1, 0.1),false)
  3784. PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
  3785. weldBetween(KBASE,PRT)
  3786. end
  3787. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really red", "Key", VT(0.3, 0.1, 0.1),false)
  3788. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
  3789. weldBetween(KBASE,PRT)
  3790. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really red", "Key", VT(0.3, 0.1, 0.1),false)
  3791. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
  3792. weldBetween(KBASE,PRT)
  3793. --------------
  3794. Rooted = true
  3795. Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
  3796. coroutine.resume(coroutine.create(function()
  3797. for i = 1, 10 do
  3798. Swait()
  3799. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  3800. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  3801. end
  3802. CreateSound(1149318312,BASE,5,1,false)
  3803. CreateSound(160772554,BASE,3,1,false)
  3804. LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
  3805. for i = 1, 4 do
  3806. WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3807. end
  3808. WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
  3809. wait(1)
  3810. TORSO.Parent.Parent = LOCK
  3811. for i = 1, 75 do
  3812. Swait()
  3813. local CHILDREN = KEY:GetDescendants()
  3814. for index, CHILD in pairs(CHILDREN) do
  3815. if CHILD:IsA("BasePart") then
  3816. CHILD.Transparency = i/25
  3817. end
  3818. end
  3819. local CHILDREN = LOCK:GetDescendants()
  3820. for index, CHILD in pairs(CHILDREN) do
  3821. if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
  3822. CHILD.Transparency = CHILD.Transparency + 1/75
  3823. elseif CHILD.ClassName == "Decal" then
  3824. CHILD.Transparency = CHILD.Transparency + 1/75
  3825. end
  3826. end
  3827. end
  3828. TORSO.Parent:ClearAllChildren()
  3829. KEY:remove()
  3830. LOCK:remove()
  3831. end))
  3832. Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
  3833. GYRO:remove()
  3834. ATTACK = false
  3835. Rooted = false
  3836. end
  3837. end
  3838. end
  3839.  
  3840. function hat_taunt()
  3841. ATTACK = true
  3842. Rooted = false
  3843. Pose("Taunt",0.4,1.2,false)
  3844. ATTACK = false
  3845. Rooted = false
  3846. end
  3847.  
  3848. --
  3849. function CyberOutburst()
  3850. if HITFLOOR ~= nil then
  3851. ATTACK = true
  3852. Rooted = true
  3853. for i=0, 2, 0.1 / Animation_Speed do
  3854. Swait()
  3855. WACKYEFFECT({EffectType = "Box", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0, CFrame = Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0), MoveToPos = Torso.Position, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3856. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3857. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3858. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3859. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3860. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3861. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3862. end
  3863. for i=0, 2, 0.1 / Animation_Speed do
  3864. Swait()
  3865. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3866. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3867. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3868. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3869. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3870. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3871. end
  3872. WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(25,25,25), Transparency = 0.25, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 178452241, SoundPitch = 0.6, SoundVolume = 6})
  3873. WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(35,35,35), Transparency = 0.5, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 178452241, SoundPitch = 0.8, SoundVolume = 4})
  3874. WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(40,40,40), Transparency = 0.75, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 178452241, SoundPitch = 1, SoundVolume = 2})
  3875. for i=0, 0.4, 0.1 / Animation_Speed do
  3876. Swait()
  3877. killnearest(Torso.Position,45,"Glitch")
  3878. WACKYEFFECT({Time = 75, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3879. WACKYEFFECT({Time = 45, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(10,10,10), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))*CF(0,0,55).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3880. 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(0)), 1 / Animation_Speed)
  3881. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3882. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3883. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3884. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(20.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3885. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(20.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3886. end
  3887. ATTACK = false
  3888. Rooted = false
  3889. end
  3890. end
  3891.  
  3892. function Technobeam()
  3893. ATTACK = true
  3894. Rooted = false
  3895. local GYRO = IT("BodyGyro",RootPart)
  3896. GYRO.D = 100
  3897. GYRO.P = 2000
  3898. GYRO.MaxTorque = VT(0,4000000,0)
  3899. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3900. CreateSound("93724183", RightArm, 5, 1, false)
  3901. for i=1, 35 do
  3902. Swait()
  3903. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  3904. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3905. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  3906. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3907. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3908. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3909. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  3910. 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)
  3911. end
  3912. local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
  3913. local LOOP = CreateSound("415700134", RightArm, 5, 1, false)
  3914. local TOCH = BEAM.Touched:Connect(function(hit)
  3915. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  3916. Shatter(hit)
  3917. end
  3918. end)
  3919. local I = 0
  3920. repeat
  3921. Swait()
  3922. I = I + 1
  3923. if I <= 10 then
  3924. BEAM.Transparency = BEAM.Transparency - 0.1
  3925. end
  3926. local STARTPOS = RightArm.CFrame*CF(0,-4,0).p
  3927. local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
  3928. local DISTANCE = (STARTPOS - ENDPOS).Magnitude
  3929. BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(0),RAD(0),RAD(I*5))
  3930. BEAM.Size = VT(2,2,DISTANCE)
  3931. WACKYEFFECT({Time = 5, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = CF(ENDPOS)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3932. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-4,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  3933. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  3934. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3935. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  3936. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3937. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3938. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3939. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  3940. 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)
  3941. if ENDHIT ~= nil then
  3942. if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
  3943. Shatter(ENDHIT)
  3944. end
  3945. end
  3946. until LOOP.Playing == false
  3947. GYRO:remove()
  3948. BEAM:remove()
  3949. ATTACK = false
  3950. Rooted = false
  3951. end
  3952.  
  3953. function Technowarp()
  3954. local FRAME = RootPart.Position
  3955. for i = 1, 6 do
  3956. WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})
  3957. end
  3958. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0),VT(FRAME.X,RootPart.Position.Y,FRAME.Z))
  3959. for i = 1, 6 do
  3960. WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})
  3961. end
  3962. end
  3963.  
  3964. function CyberWarden_Smash()
  3965. ATTACK = true
  3966. Rooted = false
  3967. local GYRO = IT("BodyGyro",RootPart)
  3968. GYRO.D = 100
  3969. GYRO.P = 2000
  3970. GYRO.MaxTorque = VT(0,4000000,0)
  3971. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3972. local SMASH = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Block", VT(25,25,25))
  3973. SMASH.CanCollide = true
  3974. SMASH.Color = C3(0,0,0)
  3975. local EF = Instance.new("SelectionBox",SMASH)
  3976. EF.Adornee = SMASH
  3977. EF.Color = BrickColor.new("Really red")
  3978. EF.LineThickness = 0.2
  3979. EF.Transparency = 1
  3980. coroutine.resume(coroutine.create(function()
  3981. for i = 1, 20 do
  3982. Swait()
  3983. SMASH.Transparency = SMASH.Transparency - 0.05
  3984. EF.Transparency = SMASH.Transparency
  3985. end
  3986. end))
  3987. repeat
  3988. SMASH.CFrame = CF(Mouse.Hit.p)*CF(0,35,0)
  3989. Swait()
  3990. GYRO.cframe = CF(RootPart.Position,SMASH.Position)
  3991. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  3992. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  3993. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(130), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3994. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3995. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  3996. 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)
  3997. until HOLD == true and SMASH.Transparency < 0.99
  3998. for i = 1, 25 do
  3999. Swait()
  4000. SMASH.CFrame = SMASH.CFrame*CF(0,15/25,0)
  4001. 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(45)), 1 / Animation_Speed)
  4002. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  4003. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(160), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4004. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4005. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  4006. 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)
  4007. end
  4008. local TOCH = SMASH.Touched:Connect(function(hit)
  4009. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  4010. Shatter(hit)
  4011. end
  4012. end)
  4013. local n0 = nil
  4014. local HITFLOOR,HITPOS = Raycast(SMASH.Position, (CF(SMASH.Position, SMASH.Position + VT(0, -1, 0))).lookVector, 25000, Character)
  4015. if HITFLOOR ~= nil then
  4016. if HITFLOOR.Anchored == false and HITFLOOR.Parent ~= workspace then
  4017. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") or HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  4018. if HITFLOOR.Parent.ClassName == "Model" then
  4019. HITFLOOR.Parent:BreakJoints()
  4020. elseif HITFLOOR.Parent.Parent.ClassName == "Model" then
  4021. HITFLOOR.Parent.Parent:BreakJoints()
  4022. end
  4023. end
  4024. local POS = HITPOS
  4025. n0,HITPOS = Raycast(POS, (CF(POS, POS + VT(0, -1, 0))).lookVector, 25000, HITFLOOR.Parent)
  4026. end
  4027. end
  4028. killnearest(HITPOS,SMASH.Size.X/1.3,"Shatter")
  4029. SMASH.CFrame = CF(HITPOS+VT(0,SMASH.Size.Y/2,0))
  4030. WACKYEFFECT({Time = 25, EffectType = "Box", Size = VT(24,0,24), Size2 = VT(75,2,75), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 130972023, SoundPitch = 1, SoundVolume = 10})
  4031. for i = 1, 25 do
  4032. Swait()
  4033. 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(45)), 1 / Animation_Speed)
  4034. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  4035. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(30), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4036. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4037. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  4038. 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)
  4039. end
  4040. coroutine.resume(coroutine.create(function()
  4041. wait(0.2)
  4042. TOCH:disconnect()
  4043. wait(1.8)
  4044. for i = 1, 100 do
  4045. Swait()
  4046. SMASH.Transparency = i/100
  4047. end
  4048. for i = 1, 10 do
  4049. Swait()
  4050. EF.Transparency = EF.Transparency + 0.1
  4051. end
  4052. SMASH:remove()
  4053. end))
  4054. GYRO:remove()
  4055. ATTACK = false
  4056. Rooted = false
  4057. end
  4058.  
  4059. --//=================================\\
  4060. --|| oof
  4061. --\\=================================//
  4062. -------
  4063. function Cyber_Warden_Wall()
  4064. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
  4065. if HITFLOOR ~= nil then
  4066. if HITFLOOR.Anchored == true then
  4067. local WALL = HITFLOOR:Clone()
  4068. WALL.Size = VT(45,45,5)
  4069. WALL.Parent = Effects
  4070. WALL.Name = "Wall"
  4071. WALL.CFrame = RootPart.CFrame*CF(0,-65/2.1,-5)*ANGLES(RAD(-15),RAD(0),RAD(0))
  4072. CreateSound(130972023,WALL,5,0.8,false)
  4073. ATTACK = true
  4074. Rooted = true
  4075. local HIT = WALL.Touched:Connect(function(hit)
  4076. if hit.Parent ~= Character then
  4077. hit:BreakJoints()
  4078. end
  4079. end)
  4080. coroutine.resume(coroutine.create(function()
  4081. WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Lavender".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4082. for i = 1, 90 do
  4083. Swait()
  4084. WALL.CFrame = WALL.CFrame*CF(0,0.5,0)
  4085. end
  4086. HIT:disconnect()
  4087. wait(5)
  4088. for i = 1, 46 do
  4089. Swait()
  4090. WALL.CFrame = WALL.CFrame*CF(0,-1,0)
  4091. end
  4092. WALL:remove()
  4093. end))
  4094. Pose("RightArmUp",1.5,1.2,true)
  4095. ATTACK = false
  4096. Rooted = false
  4097. end
  4098. end
  4099. end
  4100.  
  4101. function Prison_Key()
  4102. function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
  4103. PLAYMAINANIM = false
  4104. if WhichPose == "Cast1" then
  4105. for i=0, Time, 0.1 / Animation_Speed do
  4106. Swait()
  4107. if Magic == true then
  4108. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4109. end
  4110. if Gyro ~= nil and Gyro ~= false then
  4111. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4112. end
  4113. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
  4114. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
  4115. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4116. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4117. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4118. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4119. end
  4120. elseif WhichPose == "Cast2" then
  4121. for i=0, Time, 0.1 / Animation_Speed do
  4122. Swait()
  4123. if Magic == true then
  4124. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4125. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4126. end
  4127. if Gyro ~= nil and Gyro ~= false then
  4128. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4129. end
  4130. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  4131. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  4132. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4133. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4134. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4135. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4136. end
  4137. elseif WhichPose == "RightArmUp" then
  4138. for i=0, Time, 0.1 / Animation_Speed do
  4139. Swait()
  4140. if Magic == true then
  4141. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4142. end
  4143. if Gyro ~= nil and Gyro ~= false then
  4144. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4145. end
  4146. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
  4147. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4148. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4149. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4150. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4151. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4152. end
  4153. elseif WhichPose == "Taunt" then
  4154. for i=0, Time, 0.1 / Animation_Speed do
  4155. Swait()
  4156. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  4157. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  4158. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4159. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4160. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4161. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4162. end
  4163. HATWELD.Part0 = RightArm
  4164. HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
  4165. CreateSound(221057812,Torso,10,1,false)
  4166. for i=0, Time*2, 0.1 / Animation_Speed do
  4167. Swait()
  4168. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  4169. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  4170. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4171. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4172. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4173. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4174. end
  4175. for i=0, Time, 0.1 / Animation_Speed do
  4176. Swait()
  4177. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  4178. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
  4179. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4180. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4181. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4182. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4183. HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
  4184. end
  4185. HATWELD.Part0 = Head
  4186. HATWELD.C0 = CF(0,0.35,0)
  4187. elseif WhichPose == "Prepare key" then
  4188. for i=0, Time, 0.1 / Animation_Speed do
  4189. Swait()
  4190. if Gyro ~= nil and Gyro ~= false then
  4191. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  4192. end
  4193. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
  4194. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
  4195. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4196. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4197. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4198. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4199. end
  4200. elseif WhichPose == "Turn key" then
  4201. for i=0, Time, 0.1 / Animation_Speed do
  4202. Swait()
  4203. if Gyro ~= nil and Gyro ~= false then
  4204. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  4205. end
  4206. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
  4207. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
  4208. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  4209. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  4210. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  4211. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  4212. end
  4213. end
  4214. PLAYMAINANIM = true
  4215. end
  4216. if Mouse.Target ~= nil then
  4217. if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  4218. local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
  4219. local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  4220. local GYRO = IT("BodyGyro",RootPart)
  4221. GYRO.D = 750
  4222. GYRO.P = 20000
  4223. GYRO.MaxTorque = VT(0,40000000,0)
  4224. local grav = Instance.new("BodyPosition",TORSO)
  4225. grav.D = 15
  4226. grav.P = 20000
  4227. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  4228. grav.position = TORSO.Position
  4229. local GYRO2 = IT("BodyGyro",TORSO)
  4230. GYRO2.D = 750
  4231. GYRO2.P = 20000
  4232. GYRO2.MaxTorque = VT(0,40000000,0)
  4233. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  4234. grav.Name = "Jail"
  4235. local LOCKPARTS = {}
  4236. ATTACK = true
  4237. Rooted = false
  4238. local LOCK = IT("Model",Effects)
  4239. LOCK.Name = "Lock"
  4240. local LOCK2 = IT("Model",LOCK)
  4241. LOCK2.Name = "Metal"
  4242. --CREATE LOCK--
  4243. local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
  4244. LOCK.PrimaryPart = BASE
  4245. BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
  4246. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
  4247. PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
  4248. MakeForm(PRT,"Cyl")
  4249. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
  4250. PRT.Color = C3(0,0,0)
  4251. PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
  4252. MakeForm(PRT,"Cyl")
  4253. local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
  4254. PRT.Color = C3(0,0,0)
  4255. PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
  4256. for i = 1, 45 do
  4257. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  4258. PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
  4259. end
  4260. local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
  4261. PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
  4262. LOCK2.PrimaryPart = PRT
  4263. ---------------
  4264. local CHILDREN = LOCK:GetDescendants()
  4265. for index, CHILD in pairs(CHILDREN) do
  4266. if CHILD:IsA("BasePart") then
  4267. CHILD.Transparency = 1
  4268. end
  4269. end
  4270. for i = 1, 75 do
  4271. LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
  4272. Swait()
  4273. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  4274. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  4275. local CHILDREN = LOCK:GetDescendants()
  4276. for index, CHILD in pairs(CHILDREN) do
  4277. if CHILD:IsA("BasePart") then
  4278. CHILD.Transparency = CHILD.Transparency - 1/75
  4279. end
  4280. end
  4281. end
  4282. HUM.DisplayDistanceType = "None"
  4283. local KEY = IT("Model",Effects)
  4284. KEY.Name = "Key"
  4285. --CREATE KEY--
  4286. local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Really black", "KeyBase", VT(0.1, 1, 0.1),false)
  4287. KEY.PrimaryPart = KBASE
  4288. KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
  4289. local WLD = weldBetween(RightArm,KBASE)
  4290. for i = 1, 45 do
  4291. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really black", "Key", VT(0.1, 0.1, 0.1),false)
  4292. PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
  4293. weldBetween(KBASE,PRT)
  4294. end
  4295. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really black", "Key", VT(0.3, 0.1, 0.1),false)
  4296. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
  4297. weldBetween(KBASE,PRT)
  4298. local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really black", "Key", VT(0.3, 0.1, 0.1),false)
  4299. PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
  4300. weldBetween(KBASE,PRT)
  4301. --------------
  4302. Rooted = true
  4303. Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
  4304. coroutine.resume(coroutine.create(function()
  4305. for i = 1, 10 do
  4306. Swait()
  4307. GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
  4308. GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  4309. end
  4310. CreateSound(1149318312,BASE,5,1,false)
  4311. CreateSound(160772554,BASE,3,1,false)
  4312. LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
  4313. for i = 1, 4 do
  4314. WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4315. end
  4316. WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
  4317. wait(1)
  4318. TORSO.Parent.Parent = LOCK
  4319. for i = 1, 75 do
  4320. Swait()
  4321. local CHILDREN = KEY:GetDescendants()
  4322. for index, CHILD in pairs(CHILDREN) do
  4323. if CHILD:IsA("BasePart") then
  4324. CHILD.Transparency = i/25
  4325. end
  4326. end
  4327. local CHILDREN = LOCK:GetDescendants()
  4328. for index, CHILD in pairs(CHILDREN) do
  4329. if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
  4330. CHILD.Transparency = CHILD.Transparency + 1/75
  4331. elseif CHILD.ClassName == "Decal" then
  4332. CHILD.Transparency = CHILD.Transparency + 1/75
  4333. end
  4334. end
  4335. end
  4336. TORSO.Parent:ClearAllChildren()
  4337. KEY:remove()
  4338. LOCK:remove()
  4339. end))
  4340. Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
  4341. GYRO:remove()
  4342. ATTACK = false
  4343. Rooted = false
  4344. end
  4345. end
  4346. end
  4347.  
  4348.  
  4349. function SpawnSmite(POS)
  4350. local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
  4351. local EMITPOS = HITPOS
  4352. if HITFLOOR ~= nil then
  4353. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
  4354. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
  4355. EMITPOS = HITPOS
  4356. elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  4357. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
  4358. EMITPOS = HITPOS
  4359. end
  4360. end
  4361. if HITFLOOR ~= nil then
  4362. ApplyAoE(EMITPOS,10)
  4363. WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  4364. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  4365. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  4366. for i = 1, 5 do
  4367. local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
  4368. WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  4369. end
  4370. end
  4371. end
  4372.  
  4373.  
  4374. function Teleport()
  4375. ATTACK = true
  4376. Rooted = false
  4377. for i=0, 0.5, 0.1 / Animation_Speed do
  4378. Swait()
  4379. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4380. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-25), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
  4381. end
  4382. for e = 1, #BODY do
  4383. if BODY[e] ~= nil then
  4384. local STUFF = BODY[e]
  4385. local PART = STUFF[1]
  4386. if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
  4387. local PRT = PART:Clone()
  4388. PRT.Anchored = true
  4389. PRT.CanCollide = false
  4390. PRT.Material = "Neon"
  4391. PRT.Color = C3(0,0,0)
  4392. PRT.Name = "WarpEffect"
  4393. PRT.Parent = Effects
  4394. PRT.CFrame = PART.CFrame
  4395. PRT:BreakJoints()
  4396. if PRT:FindFirstChildOfClass("Sound") then
  4397. PRT:FindFirstChildOfClass("Sound"):remove()
  4398. end
  4399. if PRT:FindFirstChildOfClass("Decal") then
  4400. PRT:FindFirstChildOfClass("Decal"):remove()
  4401. end
  4402. coroutine.resume(coroutine.create(function()
  4403. for i = 1, 100 do
  4404. Swait()
  4405. PRT.Transparency = PRT.Transparency + 1/100
  4406. end
  4407. PRT:remove()
  4408. end))
  4409. end
  4410. end
  4411. end
  4412. CreateSound(217767125, Torso, 10, 1)
  4413. local POS = RootPart.Orientation
  4414. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
  4415. RootPart.Orientation = POS
  4416. RootJoint.Parent = RootPart
  4417. for i=0, 0.5, 0.1 / Animation_Speed do
  4418. Swait()
  4419. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4420. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-15), RAD(12)) * ANGLES(RAD(175 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
  4421. end
  4422. for i=0, 0.1, 0.1 / Animation_Speed do
  4423. Swait()
  4424. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  4425. end
  4426. ATTACK = false
  4427. Rooted = false
  4428. end
  4429.  
  4430. function Equivalent_Pain()
  4431. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  4432. if HITFLOOR then
  4433. ATTACK = true
  4434. Rooted = true
  4435. FULL = true
  4436. local GYRO = IT("BodyGyro",RootPart)
  4437. GYRO.D = 25
  4438. GYRO.P = 20000
  4439. GYRO.MaxTorque = VT(0,math.huge,0)
  4440. for i=0, 0.3, 0.1 / Animation_Speed do
  4441. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4442. Swait()
  4443. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4444. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4445. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4446. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-25), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4447. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-35)), 1 / Animation_Speed)
  4448. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(5)), 1 / Animation_Speed)
  4449. end
  4450. GYRO:remove()
  4451. CreateSound(12222200, RightArm, 10, 1)
  4452. for i=0, 0.4, 0.1 / Animation_Speed do
  4453. Swait()
  4454. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, -0.75) * ANGLES(RAD(40), RAD(0), RAD(35)), 1.5 / Animation_Speed)
  4455. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4456. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.45, -1.45) * ANGLES(RAD(75), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  4457. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(-12)) * ANGLES(RAD(-35), RAD(55), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  4458. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.5) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(65)), 1 / Animation_Speed)
  4459. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4460. end
  4461. CreateSound(289842971, RightArm, 10, 1)
  4462. coroutine.resume(coroutine.create(function()
  4463. local HIT,POS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(Mouse.Hit.p+VT(0,1,0), Mouse.Hit.p-VT(0,1,0))).lookVector, 45, Character)
  4464. local ECHO = POS
  4465. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
  4466. HIT,POS = Raycast(ECHO+VT(0,1,0), (CF(ECHO, ECHO + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
  4467. ECHO = POS
  4468. elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  4469. HIT,POS = Raycast(ECHO+VT(0,1,0), (CF(ECHO, ECHO + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
  4470. ECHO = POS
  4471. end
  4472. if ECHO.Y == HITPOS.Y then
  4473. local DISTANCE = (HITPOS - ECHO).Magnitude/3
  4474. local CFRAME = CF(HITPOS,ECHO)
  4475. local RANGE = math.ceil(DISTANCE)
  4476. for i = 1, RANGE-1 do
  4477. Swait(3)
  4478. local A = CFRAME*CF(0,0,-i*3)
  4479. ApplyAoE(A.p,4)
  4480. CreateFlyingDebree(HITFLOOR,A,2,VT(2,2,2),2,65)
  4481. end
  4482. local SIZE = 3
  4483. local POS = CFRAME*CF(0,0,-RANGE*3).p
  4484. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(55,0,55)*SIZE, Size2 = VT(55,15,55)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 0.8, SoundVolume = 10})
  4485. WACKYEFFECT({EffectType = "Sphere", Size = VT(10,250,10)*SIZE, Size2 = VT(20,1000,20)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 178452241, SoundPitch = 1, SoundVolume = 10})
  4486. WACKYEFFECT({EffectType = "Sphere", Size = VT(30,150,30)*SIZE, Size2 = VT(50,300,50)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 178452241, SoundPitch = 1, SoundVolume = 10})
  4487. for i = 1, 9 do
  4488. WACKYEFFECT({TIME = 65, EffectType = "Sphere", Size = VT(5,5,0)*SIZE, Size2 = VT(0,0,35)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS+VT(0,15*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-25*SIZE), MoveToPos = CF(POS+VT(0,15*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-55*SIZE).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
  4489. end
  4490. for i = 1, 9 do
  4491. WACKYEFFECT({TIME = 65, EffectType = "Sphere", Size = VT(5,5,0)*SIZE, Size2 = VT(0,0,35)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS+VT(0,5*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-25*SIZE), MoveToPos = CF(POS+VT(0,5*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-55*SIZE).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
  4492. end
  4493. ApplyAoE(POS,30*SIZE)
  4494. CreateDebreeRing(HITFLOOR,POS,30*SIZE,VT(8,8,8)*SIZE,5)
  4495. CreateDebreeRing(HITFLOOR,POS,50*SIZE,VT(2,2,2)*SIZE,5)
  4496. end
  4497. end))
  4498. for i=0, 0.6, 0.1 / Animation_Speed do
  4499. Swait()
  4500. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, -0.75) * ANGLES(RAD(40), RAD(0), RAD(35)), 1.5 / Animation_Speed)
  4501. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4502. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.45, -1.45) * ANGLES(RAD(75), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  4503. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(-12)) * ANGLES(RAD(-35), RAD(55), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  4504. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.5) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(65)), 1 / Animation_Speed)
  4505. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4506. end
  4507. FULL = false
  4508. ATTACK = false
  4509. Rooted = false
  4510. end
  4511. end
  4512.  
  4513. -------
  4514. local LAUGHS = {"907329532"}
  4515.  
  4516. local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
  4517. MakeForm(RightHole,"Cyl")
  4518. local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
  4519. MakeForm(LeftHole,"Cyl")
  4520.  
  4521. function getbloody(victim,amount)
  4522. local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  4523. PART.CFrame = victim.CFrame
  4524. local HITPLAYERSOUNDS = {"356551938","264486467"}
  4525. Debris:AddItem(PART,5)
  4526. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  4527. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  4528. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  4529. local prtcl = asd:Clone()
  4530. prtcl.Parent = PART
  4531. prtcl:Emit(amount*10)
  4532. end
  4533.  
  4534. function Kill(Char)
  4535. local NewCharacter = IT("Model",Effects)
  4536. NewCharacter.Name = "Ow im ded ;-;"
  4537. for _, c in pairs(Char:GetDescendants()) do
  4538. if c:IsA("BasePart") and c.Transparency == 0 then
  4539. if c.Parent == Char then
  4540. getbloody(c,5)
  4541. end
  4542. c:BreakJoints()
  4543. c.Material = "Glass"
  4544. c.Color = C3(0.5,0,0)
  4545. c.CanCollide = true
  4546. c.Transparency = 0.3
  4547. if c:FindFirstChildOfClass("SpecialMesh") then
  4548. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  4549. end
  4550. if c.Name == "Head" then
  4551. c:ClearAllChildren()
  4552. c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  4553. end
  4554. if c.ClassName == "MeshPart" then
  4555. c.TextureID = ""
  4556. end
  4557. if c:FindFirstChildOfClass("BodyPosition") then
  4558. c:FindFirstChildOfClass("BodyPosition"):remove()
  4559. end
  4560. if c:FindFirstChildOfClass("ParticleEmitter") then
  4561. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  4562. end
  4563. c.Parent = NewCharacter
  4564. c.Name = "DeadPart"
  4565. c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  4566. c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  4567. end
  4568. end
  4569. Char:remove()
  4570. Debris:AddItem(NewCharacter,5)
  4571. end
  4572.  
  4573. function Banisher_Bullet()
  4574. ATTACK = true
  4575. Rooted = false
  4576. for i=0, 0.05, 0.1 / Animation_Speed do
  4577. Swait()
  4578. turnto(Mouse.Hit.p)
  4579. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  4580. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
  4581. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  4582. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  4583. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4584. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4585. end
  4586. repeat
  4587. for i=0, 0.05, 0.1 / Animation_Speed do
  4588. Swait()
  4589. turnto(Mouse.Hit.p)
  4590. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  4591. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
  4592. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  4593. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  4594. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4595. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4596. end
  4597. local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
  4598. SpawnTrail(Hole.Position,POS)
  4599. if HIT ~= nil then
  4600. if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  4601. Banish(HIT.Parent)
  4602. end
  4603. end
  4604. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4605. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(255,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  4606. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(255,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  4607. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(255,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  4608. for i=0, 0.05, 0.1 / Animation_Speed do
  4609. Swait()
  4610. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  4611. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
  4612. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  4613. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  4614. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4615. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  4616. end
  4617. until KEYHOLD == false
  4618. ATTACK = false
  4619. Rooted = false
  4620. end
  4621. function Teleport()
  4622. ATTACK = true
  4623. Rooted = false
  4624. for i=0, 0.5, 0.1 / Animation_Speed do
  4625. Swait()
  4626. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4627. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-25), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
  4628. end
  4629. for e = 1, #BODY do
  4630. if BODY[e] ~= nil then
  4631. local STUFF = BODY[e]
  4632. local PART = STUFF[1]
  4633. if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
  4634. local PRT = PART:Clone()
  4635. PRT.Anchored = true
  4636. PRT.CanCollide = false
  4637. PRT.Material = "Neon"
  4638. PRT.Color = C3(255,0,0)
  4639. PRT.Name = "WarpEffect"
  4640. PRT.Parent = Effects
  4641. PRT.CFrame = PART.CFrame
  4642. PRT:BreakJoints()
  4643. if PRT:FindFirstChildOfClass("Sound") then
  4644. PRT:FindFirstChildOfClass("Sound"):remove()
  4645. end
  4646. if PRT:FindFirstChildOfClass("Decal") then
  4647. PRT:FindFirstChildOfClass("Decal"):remove()
  4648. end
  4649. coroutine.resume(coroutine.create(function()
  4650. for i = 1, 100 do
  4651. Swait()
  4652. PRT.Transparency = PRT.Transparency + 1/100
  4653. end
  4654. PRT:remove()
  4655. end))
  4656. end
  4657. end
  4658. end
  4659. CreateSound(217767125, Torso, 10, 1)
  4660. local POS = RootPart.Orientation
  4661. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
  4662. RootPart.Orientation = POS
  4663. RootJoint.Parent = RootPart
  4664. for i=0, 0.5, 0.1 / Animation_Speed do
  4665. Swait()
  4666. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4667. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-15), RAD(12)) * ANGLES(RAD(175 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
  4668. end
  4669. for i=0, 0.1, 0.1 / Animation_Speed do
  4670. Swait()
  4671. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  4672. end
  4673. ATTACK = false
  4674. Rooted = false
  4675. end
  4676.  
  4677. function BanishmentBeam()
  4678. ATTACK = true
  4679. Rooted = false
  4680. local GYRO = IT("BodyGyro",RootPart)
  4681. GYRO.D = 100
  4682. GYRO.P = 2000
  4683. GYRO.MaxTorque = VT(0,4000000,0)
  4684. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4685. CreateSound("93724183", RightArm, 5, 1, false)
  4686. for i=1, 35 do
  4687. Swait()
  4688. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  4689. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4690. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  4691. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  4692. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4693. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4694. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  4695. 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)
  4696. end
  4697. local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
  4698. local LOOP = CreateSound("415700134", RightArm, 5, 1, false)
  4699. local TOCH = BEAM.Touched:Connect(function(hit)
  4700. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  4701. Kill(hit)
  4702. end
  4703. end)
  4704. local I = 0
  4705. repeat
  4706. Swait()
  4707. I = I + 1
  4708. if I <= 10 then
  4709. BEAM.Transparency = BEAM.Transparency - 0.1
  4710. end
  4711. local STARTPOS = RightArm.CFrame*CF(0,-4,0).p
  4712. local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
  4713. local DISTANCE = (STARTPOS - ENDPOS).Magnitude
  4714. BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(0),RAD(0),RAD(I*5))
  4715. BEAM.Size = VT(2,2,DISTANCE)
  4716. WACKYEFFECT({Time = 5, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = CF(ENDPOS)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4717. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-4,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  4718. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  4719. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  4720. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  4721. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  4722. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4723. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4724. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -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)
  4725. 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)
  4726. if ENDHIT ~= nil then
  4727. if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
  4728. Banish(ENDHIT)
  4729. end
  4730. end
  4731. until LOOP.Playing == false
  4732. GYRO:remove()
  4733. BEAM:remove()
  4734. ATTACK = false
  4735. Rooted = false
  4736. end
  4737. ---
  4738. function Melee()
  4739. ATTACK = true
  4740. BLADE.CanCollide = true
  4741. Rooted = false
  4742. EQUIPPED = true
  4743. local HIT = function()
  4744. local HITS = {}
  4745. local TOUCH = BLADE.Touched:Connect(function(hit)
  4746. if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
  4747. local HUM = hit.Parent:FindFirstChildOfClass("Humanoid")
  4748. local TORSO = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
  4749. if TORSO and HUM.Health > 0 then
  4750. local PASS = true
  4751. for i = 1, #HITS do
  4752. if HITS[i] == hit.Parent then
  4753. PASS = false
  4754. end
  4755. end
  4756. table.insert(HITS,hit.Parent)
  4757. if PASS == true then
  4758. ApplyDamage(HUM,MRANDOM(15,25))
  4759. end
  4760. end
  4761. end
  4762. end)
  4763. return TOUCH
  4764. end
  4765. if COMBO == 1 then
  4766. for i=0, 0.35, 0.1 / Animation_Speed do
  4767. Swait()
  4768. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4769. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  4770. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4771. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4772. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4773. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4774. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  4775. end
  4776. CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
  4777. local TOUCHED = HIT()
  4778. for i=0, 0.5, 0.1 / Animation_Speed do
  4779. Swait()
  4780. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1 / Animation_Speed)
  4781. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 0.9 / Animation_Speed)
  4782. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.8, 0.5, -0.7) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(15), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
  4783. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4784. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4785. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4786. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  4787. end
  4788. TOUCHED:Disconnect()
  4789. COMBO = 2
  4790. elseif COMBO == 2 then
  4791. for i=0, 0.35, 0.1 / Animation_Speed do
  4792. Swait()
  4793. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  4794. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  4795. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(160), RAD(0), RAD(-5)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4796. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4797. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4798. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4799. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  4800. end
  4801. CreateSound(1489705211,BLADE,MRANDOM(7,8),MRANDOM(8,13)/12,false)
  4802. local TOUCHED = HIT()
  4803. for i=0, 0.35, 0.1 / Animation_Speed do
  4804. Swait()
  4805. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  4806. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
  4807. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4808. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4809. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4810. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4811. BLADE.CFrame = Clerp(BLADE.CFrame,RightArm.CFrame*CF(0,-8,0) * ANGLES(RAD(180), RAD(90), RAD(0)),0.4)
  4812. end
  4813. TOUCHED:Disconnect()
  4814. for i=0, 0.2, 0.1 / Animation_Speed do
  4815. Swait()
  4816. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
  4817. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.8 / Animation_Speed)
  4818. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.25, -0.5) * ANGLES(RAD(85), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4819. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4820. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4821. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4822. BLADE.CFrame = Clerp(BLADE.CFrame,RootPart.CFrame*CF(4,0.3,0) * ANGLES(RAD(195), RAD(-25), RAD(15)),0.4)
  4823. end
  4824. COMBO = 1
  4825. end
  4826. coroutine.resume(coroutine.create(function()
  4827. for i = 1, 50 do
  4828. Swait()
  4829. if ATTACK == true then
  4830. break
  4831. end
  4832. end
  4833. if ATTACK == false then
  4834. COMBO = 1
  4835. end
  4836. end))
  4837. BLADE.CanCollide = false
  4838. ATTACK = false
  4839. Rooted = false
  4840. EQUIPPED = false
  4841. end
  4842. function AbyssalShriek()
  4843. if ANIM ~= "Fall" and ANIM ~= "Jump" then
  4844. ATTACK = true
  4845. Rooted = true
  4846. for i=0, 0.2, 0.1 / Animation_Speed do
  4847. Swait()
  4848. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  4849. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4850. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4851. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4852. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4853. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  4854. end
  4855. coroutine.resume(coroutine.create(function()
  4856. repeat
  4857. Swait()
  4858. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  4859. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
  4860. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4861. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4862. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
  4863. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
  4864. until ATTACK == false
  4865. end))
  4866. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position+VT(0,1.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 15})
  4867. CreateSound(130792236,Head,5,1,false)
  4868. for i = 1, 60 do
  4869. Swait()
  4870. ApplyAoE(RootPart.Position,17,1,1,0,false)
  4871. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
  4872. if HITFLOOR then
  4873. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(20,1,20), Size2 = VT(25+MRANDOM(0,8),7,25+MRANDOM(0,8)), Transparency = 0.95, Transparency2 = 1, CFrame = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  4874. end
  4875. local SIZE = VT(1,3,1)
  4876. WACKYEFFECT({EffectType = "Sphere", Size = VT(0,0,0), Size2 = SIZE*MRANDOM(10,65)/10, Transparency = 0.5, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,MRANDOM(1,17),MRANDOM(0,12)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 5})
  4877. end
  4878. wait(0.2)
  4879. ATTACK = false
  4880. Rooted = false
  4881. end
  4882. end
  4883. function AbyssalDash()
  4884. ATTACK = true
  4885. Rooted = true
  4886. UNANCHOR = false
  4887. for i=0, 0.4, 0.1 / Animation_Speed do
  4888. Swait()
  4889. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  4890. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4891. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4892. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4893. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4894. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  4895. end
  4896. CreateSound(1177785010,Torso,2,1,false)
  4897. CreateSound(971125740,Torso,5,1,false)
  4898. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  4899. for index, CHILD in pairs(Character:GetChildren()) do
  4900. if CHILD:IsA("BasePart") then
  4901. CHILD.Transparency = CHILD.Transparency + 1
  4902. elseif CHILD:IsA("Accessory") then
  4903. CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
  4904. end
  4905. end
  4906. local HITS = {}
  4907. for i=0, 1, 0.1 / Animation_Speed do
  4908. Swait()
  4909. for index, CHILD in pairs(workspace:GetDescendants()) do
  4910. if CHILD.ClassName == "Model" and CHILD ~= Character then
  4911. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  4912. if HUM then
  4913. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  4914. if TORSO then
  4915. if (TORSO.Position - RootPart.Position).Magnitude <= 25 then
  4916. local PASS = true
  4917. for E = 1, #HITS do
  4918. if HITS[E] == CHILD then
  4919. PASS = false
  4920. end
  4921. end
  4922. if PASS == true then
  4923. local DMG = MRANDOM(25,45)
  4924.  
  4925. table.insert(HITS,CHILD)
  4926. end
  4927. end
  4928. end
  4929. end
  4930. end
  4931. end
  4932. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(25,0,25), Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,-6) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
  4933. for i = 1, 2 do
  4934. RootPart.CFrame = RootPart.CFrame*CF(0,0,-1)
  4935. CharacterFade(C3(0,0,0),25,R_RANDOM(Torso.CFrame,1.25).p)
  4936. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(65), RAD(0), RAD(0)), 1 / Animation_Speed)
  4937. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4938. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(-25), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4939. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(-25), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4940. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  4941. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4942. end
  4943. end
  4944. for index, CHILD in pairs(Character:GetChildren()) do
  4945. if CHILD:IsA("BasePart") then
  4946. CHILD.Transparency = CHILD.Transparency - 1
  4947. elseif CHILD:IsA("Accessory") then
  4948. CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
  4949. end
  4950. end
  4951. for i=1, 25 do
  4952. Swait()
  4953. RootPart.CFrame = RootPart.CFrame*CF(0,0,-((25-i)/25))
  4954. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  4955. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4956. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4957. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4958. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-45)), 1 / Animation_Speed)
  4959. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-25), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  4960. end
  4961. UNANCHOR = true
  4962. ATTACK = false
  4963. Rooted = false
  4964. end
  4965.  
  4966. function BlackBlast()
  4967. if ANIM ~= "Fall" and ANIM ~= "Jump" then
  4968. ATTACK = true
  4969. Rooted = true
  4970. local GYRO = IT("BodyGyro",RootPart)
  4971. GYRO.D = 25
  4972. GYRO.P = 20000
  4973. GYRO.MaxTorque = VT(0,4000000,0)
  4974. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  4975. CreateSound(429459101,Torso,5,1.5,false)
  4976. local GYROING = true
  4977. coroutine.resume(coroutine.create(function()
  4978. repeat
  4979. Swait()
  4980. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  4981. until GYROING == false
  4982. GYRO:Remove()
  4983. end))
  4984. for i=0, 1, 0.1 / Animation_Speed do
  4985. Swait()
  4986. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  4987. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  4988. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  4989. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  4990. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-15)), 1 / Animation_Speed)
  4991. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(15)), 1 / Animation_Speed)
  4992. end
  4993. for i = 1, 13 do
  4994. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(i,0,i)*2, Transparency = 0.8, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,7.5-i) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
  4995. end
  4996. CreateSound(1368637781,Torso,5,1.5,false)
  4997. WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(12,12,12), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 331666014, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  4998. for index, CHILD in pairs(Character:GetChildren()) do
  4999. if CHILD:IsA("BasePart") then
  5000. CHILD.Transparency = CHILD.Transparency + 1
  5001. elseif CHILD:IsA("Accessory") then
  5002. CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1
  5003. end
  5004. end
  5005. GYROING = false
  5006. coroutine.resume(coroutine.create(function()
  5007. coroutine.resume(coroutine.create(function()
  5008. for i=1, 25 do
  5009. Swait()
  5010. RootPart.CFrame = RootPart.CFrame*CF(0,0,(25-i)/25)
  5011. end
  5012. end))
  5013. repeat
  5014. Swait()
  5015. CharacterFade(C3(0,0,0),12,R_RANDOM(Torso.CFrame,1.25).p)
  5016. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  5017. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
  5018. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5019. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5020. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
  5021. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
  5022. until ATTACK == false
  5023. end))
  5024. coroutine.resume(coroutine.create(function()
  5025. local BULLETCFRAME = RootPart.CFrame
  5026. local EXPLODED = false
  5027. coroutine.resume(coroutine.create(function()
  5028. repeat
  5029. Swait()
  5030. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(10,10,10), Transparency = 0.3, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5031. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(25,25,25), Transparency = 0.8, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5032. until EXPLODED == true
  5033. end))
  5034. for i=1, 50 do
  5035. Swait()
  5036. BULLETCFRAME = BULLETCFRAME*CF(0,0,-((50-i)/15))
  5037. local RAY,HIT,NORM = Raycast(BULLETCFRAME.p,BULLETCFRAME.lookVector,7,Character)
  5038. if RAY then
  5039. ApplyAoE(BULLETCFRAME.p,25,12,54,350,false)
  5040. WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = CF(HIT,HIT+NORM) * ANGLES(RAD(-90), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 765590102, SoundPitch = MRANDOM(9,11)/10, SoundVolume = 10})
  5041. break
  5042. end
  5043. end
  5044. wait(0.5)
  5045. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(75,75,75), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.7, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5046. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(50,50,50), Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 1, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5047. for E = 1, 3 do
  5048. for i = 1, 5 do
  5049. WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(BULLETCFRAME.p) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  5050. end
  5051. end
  5052. ApplyAoE(BULLETCFRAME.p,125,25,75,250,false)
  5053. EXPLODED = true
  5054. for i = 1, 15 do
  5055. Swait()
  5056. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(160,0,160), Transparency = 0.6, Transparency2 = 1, CFrame = BULLETCFRAME * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 1, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2})
  5057. end
  5058. end))
  5059. wait(0.5)
  5060. for index, CHILD in pairs(Character:GetChildren()) do
  5061. if CHILD:IsA("BasePart") then
  5062. CHILD.Transparency = CHILD.Transparency - 1
  5063. elseif CHILD:IsA("Accessory") then
  5064. CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1
  5065. end
  5066. end
  5067. ATTACK = false
  5068. Rooted = false
  5069. end
  5070. end
  5071. function NightmareFall()
  5072. if ANIM ~= "Fall" and ANIM ~= "Jump" and DAMAGEMULTIPLIER == 1 then
  5073. ATTACK = true
  5074. Rooted = true
  5075. EQUIPPED = true
  5076. CreateSound(1466932232,Head,10,1,false)
  5077. for i=0, 2, 0.1 / Animation_Speed do
  5078. Swait()
  5079. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5080. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  5081. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.4 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(120), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  5082. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5083. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5084. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5085.  
  5086. end
  5087. for i=0, 2, 0.1 / Animation_Speed do
  5088. Swait()
  5089. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5090. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  5091. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.15 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(140), RAD(0), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  5092. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5093. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5094. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5095.  
  5096. end
  5097. local SIZE = 0
  5098. local POS = RootPart.Position+VT(0,150,0)
  5099. local BLOWN = false
  5100. coroutine.resume(coroutine.create(function()
  5101. coroutine.resume(coroutine.create(function()
  5102. repeat
  5103. Swait()
  5104. if SIZE > 0 then
  5105. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*2.5, Transparency = 0.3, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5106. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(SIZE,SIZE,SIZE)*3, Transparency = 0.8, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5107. end
  5108. until BLOWN == true
  5109. end))
  5110. repeat
  5111. Swait()
  5112. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(12), RAD(25)), 1 / Animation_Speed)
  5113. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(-15)), 1 / Animation_Speed)
  5114. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(180), RAD(15), RAD(17)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5115. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35, -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5116. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5117. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5118.  
  5119. until ATTACK == false
  5120. end))
  5121. wait(0.2)
  5122. for i = 1, 15 do
  5123. wait(MRANDOM(2,6)/45)
  5124. coroutine.resume(coroutine.create(function()
  5125. local CFRAME = CF(BLADE.Position,POS) * ANGLES(RAD(0), RAD(0), RAD(MRANDOM(-90,90)))
  5126. local HEIGHT = 45/5
  5127. local DISTANCE = (BLADE.Position - POS).Magnitude
  5128. for i = 1, 45 do
  5129. Swait()
  5130. CFRAME = CFRAME * CF(0,(HEIGHT-(i/2.575))/45,-DISTANCE/45)
  5131. WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0.3, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 0})
  5132. end
  5133. SIZE = SIZE + 1
  5134. end))
  5135. end
  5136. wait(2.5)
  5137. BLOWN = true
  5138. WACKYEFFECT({Time = 85, EffectType = "Sphere", Size = VT(25,25,25), Size2 = VT(150,50,150), Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 401056199, SoundPitch = 0.4, SoundVolume = 10, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5139. for E = 1, 5 do
  5140. for i = 1, 5 do
  5141. WACKYEFFECT({Time = 50+(E*4), EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/2, Transparency = 0, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  5142. end
  5143. end
  5144. CreateSound(288641686,Effects,5,1,false)
  5145. CreateSound(592877506,Effects,5,1,false)
  5146. local HITS = {}
  5147. for index, CHILD in pairs(workspace:GetDescendants()) do
  5148. if CHILD.ClassName == "Model" and CHILD ~= Character then
  5149. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  5150. if HUM then
  5151. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  5152. if TORSO then
  5153. if (TORSO.Position - RootPart.Position).Magnitude <= 175 then
  5154. local PASS = true
  5155. for E = 1, #HITS do
  5156. if HITS[E] == CHILD then
  5157. PASS = false
  5158. end
  5159. end
  5160. if PASS == true then
  5161. table.insert(HITS,CHILD)
  5162. end
  5163. end
  5164. end
  5165. end
  5166. end
  5167. end
  5168. if #HITS > 0 then
  5169. local DONE = false
  5170. local HUMS = {}
  5171. coroutine.resume(coroutine.create(function()
  5172. for E = 1, #HITS do
  5173. local HUM = HITS[E]:FindFirstChildOfClass("Humanoid")
  5174. table.insert(HUMS,HUM)
  5175. local TORSO = HITS[E]:FindFirstChild("Torso") or HITS[E]:FindFirstChild("UpperTorso")
  5176. local grav = Instance.new("BodyPosition",TORSO)
  5177. grav.D = 850
  5178. grav.P = 4000
  5179. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  5180. grav.Position = TORSO.Position+VT(0,35,0)
  5181. CreateSound(592877506,TORSO,5,0.5,false)
  5182. if TORSO then
  5183. coroutine.resume(coroutine.create(function()
  5184. local B = IT("Attachment",TORSO)
  5185. local ChainLink = IT("Beam",Torso)
  5186. ChainLink.Texture = "rbxassetid://73042633"
  5187. ChainLink.Color = ColorSequence.new(C3(0,0,0))
  5188. ChainLink.TextureSpeed = -1
  5189. ChainLink.FaceCamera = true
  5190. ChainLink.Width0 = 3
  5191. ChainLink.Width1 = 3
  5192. ChainLink.TextureLength = 3
  5193. ChainLink.Attachment0 = A
  5194. ChainLink.Attachment1 = B
  5195. ChainLink.CurveSize0 = 0
  5196. ChainLink.CurveSize1 = 0
  5197. ChainLink.FaceCamera = true
  5198. ChainLink.TextureMode = "Static"
  5199. ChainLink.Transparency = NumberSequence.new(0)
  5200. repeat
  5201. Swait()
  5202. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(0,0,0), Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 35})
  5203. until DONE == true or HUM.Health < 1
  5204. B:Remove()
  5205. ChainLink:Remove()
  5206. grav:Remove()
  5207. if HUM.Health < 1 then
  5208. for E = 1, 2 do
  5209. for i = 1, 3 do
  5210. WACKYEFFECT({Time = 15, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(E,0,E)/6, Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  5211. end
  5212. end
  5213. WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(2,2,2)*TORSO.Size.Z, Size2 = VT(6,6,6)*TORSO.Size.Z, Transparency = 0.6, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 160772554, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
  5214. for _, c in pairs(HITS[E]:GetChildren()) do
  5215. if c:IsA("BasePart") or c:IsA("Accessory") then
  5216. c:remove()
  5217. end
  5218. end
  5219. local BONES = {
  5220. Skull = {MeshId = 36869983,Size = VT(0.7,0.7,0.7)},
  5221. Ribs = {MeshId = 546760032,Size = VT(2.18, 1.884, 1.105)}
  5222. }
  5223. local SELECTABLEBONES = {
  5224. {MeshId = 546760045,Size = VT(0.468, 1.12, 0.346)},
  5225. {MeshId = 546760042,Size = VT(0.366, 0.991, 0.365)},
  5226. {MeshId = 546760029,Size = VT(0.441, 0.799, 0.347)},
  5227. {MeshId = 546760030,Size = VT(0.605, 0.843, 0.4)}
  5228. }
  5229. for i = 1, 9 do
  5230. local CHOSENPIECE = nil
  5231. if i == 1 then
  5232. CHOSENPIECE = BONES.Skull
  5233. elseif i == 2 then
  5234. CHOSENPIECE = BONES.Ribs
  5235. else
  5236. CHOSENPIECE = SELECTABLEBONES[MRANDOM(1,#SELECTABLEBONES)]
  5237. end
  5238. local BONE = CreatePart(3, HITS[E], "Neon", 0, 0, BRICKC("Salmon"), "RIP", CHOSENPIECE.Size, false)
  5239. BONE.CanCollide = true
  5240. BONE.CFrame = TORSO.CFrame*CF(MRANDOM(-10,10)/30,MRANDOM(-10,10)/30,MRANDOM(-10,10)/30)
  5241. if CHOSENPIECE.MeshId == 36869983 then
  5242. CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1)/1.5, VT(0,0,0))
  5243. else
  5244. CreateMesh("SpecialMesh", BONE, "FileMesh", CHOSENPIECE.MeshId, "", VT(1,1,1), VT(0,0,0))
  5245. end
  5246. end
  5247. end
  5248. end))
  5249. end
  5250. end
  5251. wait(1)
  5252. for i = 1, 250 do
  5253. Swait()
  5254. for E = 1, #HUMS do
  5255. if HUMS[E] then
  5256. if HUMS[E].Health > 0 then
  5257. HUMS[E].Health = HUMS[E].Health - 0.3
  5258. DAMAGEMULTIPLIER = DAMAGEMULTIPLIER + 0.0025
  5259. WACKYEFFECT({Time = 10, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(1.5,0,1.5)/20, Transparency = 0.9, Transparency2 = 1, CFrame = CF(Torso.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  5260. end
  5261. end
  5262. end
  5263. end
  5264. local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0, 0, 0, 0), UD2(1, 0, 1, 0), C3(0,0,0), C3(0, 0, 0), "OWEXTRADAMAGE")
  5265. local SKILLTEXT = CreateLabel(SKILLFRAME, "!You have increased damage!", SKILLTEXTCOLOR, SKILLTEXTSIZE2, SKILLFONT, 1, 2, 1, "AAAA")
  5266. coroutine.resume(coroutine.create(function()
  5267. CreateSound(743521450,Cam,5,0.6,false)
  5268. for E = 1, 75 do
  5269. Swait()
  5270. SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency - 1/75
  5271. end
  5272. wait(4)
  5273. for E = 1, 25 do
  5274. Swait()
  5275. SKILLTEXT.TextTransparency = SKILLTEXT.TextTransparency + 1/25
  5276. end
  5277. SKILLFRAME:Remove()
  5278. end))
  5279. DONE = true
  5280. for i = 1, 50 do
  5281. wait(0.5)
  5282. for i = 1, 3 do
  5283. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(DAMAGEMULTIPLIER-1,0.1,DAMAGEMULTIPLIER-1)*1.5, Transparency = 0.6, Transparency2 = 1, CFrame = CF(RootPart.CFrame*CF(0,-3.25,0).p) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)), MoveToPos = nil, RotationX = 1, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(9,11)/10, SoundVolume = MRANDOM(9,11)/2, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 22})
  5284. end
  5285. end
  5286. DAMAGEMULTIPLIER = 1
  5287. end))
  5288. wait(0.2)
  5289. end
  5290. wait(0.4)
  5291. EQUIPPED = false
  5292. ATTACK = false
  5293. Rooted = false
  5294. end
  5295. end
  5296. function Laugh()
  5297. ATTACK = true
  5298. Rooted = true
  5299. CreateSound(1466932232,Head,10,1,false)
  5300. for i=0, 0.5, 0.1 / Animation_Speed do
  5301. Swait()
  5302. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5303. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.8 / Animation_Speed)
  5304. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.6 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5305. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.45 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5306. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5307. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5308. end
  5309. for i=1, 185 do
  5310. Swait()
  5311. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5312. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1 + 0.05 * SIN(SINE/2)) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  5313. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.55 + 0.15 * SIN(SINE/2), -0.7) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5314. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.4 + 0.15 * SIN(SINE/2), -0.6) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5315. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5316. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5317. end
  5318. for i=1, 185 do
  5319. Swait()
  5320. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5321. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1 + 0.05 * SIN(SINE/2)) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  5322. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.55 + 0.15 * SIN(SINE/2), -0.7) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5323. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.4 + 0.15 * SIN(SINE/2), -0.6) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5324. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5325. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5326. end
  5327. for i=1, 185 do
  5328. Swait()
  5329. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  5330. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1 + 0.05 * SIN(SINE/2)) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  5331. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.55 + 0.15 * SIN(SINE/2), -0.7) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5332. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.4 + 0.15 * SIN(SINE/2), -0.6) * ANGLES(RAD(3 + 3 * SIN(SINE/2)), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5333. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
  5334. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
  5335. end
  5336. ATTACK = false
  5337. Rooted = false
  5338. end
  5339.  
  5340.  
  5341. --//=================================\\
  5342. --|| ASSIGN THINGS TO KEYS
  5343. --\\=================================//
  5344. ----------------
  5345. function MouseDown(Mouse)
  5346. HOLD = true
  5347. if ATTACK == false then
  5348. end
  5349. end
  5350.  
  5351. function MouseUp(Mouse)
  5352. HOLD = false
  5353. end
  5354.  
  5355. function KeyDown(Key)
  5356. KEYHOLD = true
  5357. if Key == "z" and ATTACK == false then
  5358. Cyber_Warden_Zap()
  5359. end
  5360.  
  5361. if Key == "c" and ATTACK == false then
  5362. Inferno_Ring()
  5363. end
  5364.  
  5365. if Key == "v" and ATTACK == false then
  5366. Cyber_Warden_Wall()
  5367. end
  5368.  
  5369. if Key == "x" and ATTACK == false then
  5370. Prison_Key()
  5371. end
  5372.  
  5373. if Key == "h" and ATTACK == false then
  5374. Technobeam()
  5375. end
  5376.  
  5377. if Key == "j" and ATTACK == false then
  5378. CyberWarden_Smash()
  5379. end
  5380.  
  5381. if Key == "l" and ATTACK == false then
  5382. Teleport()
  5383. end
  5384.  
  5385.  
  5386.  
  5387. if Key == "q" and ATTACK == false then
  5388. nahid_Blast()
  5389. end
  5390.  
  5391. if Key == "e" and ATTACK == false then
  5392. Supernahid()
  5393. end
  5394.  
  5395. if Key == "r" and ATTACK == false then
  5396. Corrupted_Immobilization()
  5397. end
  5398.  
  5399. if Key == "y" then
  5400. Taunt()
  5401. end
  5402. if Key == "p" and ATTACK == false then
  5403. AbyssalShriek()
  5404. end
  5405.  
  5406. if Key == "k" and ATTACK == false then
  5407. AbyssalDash()
  5408. end
  5409.  
  5410.  
  5411. if Key == "m" and ATTACK == false then
  5412. BlackBlast()
  5413. end
  5414.  
  5415. if Key == "b" and ATTACK == false then
  5416. NightmareFall()
  5417. end
  5418.  
  5419. if Key == "u" and ATTACK == false then
  5420. Laugh()
  5421. end
  5422.  
  5423. if Key == "t" and ATTACK == false then
  5424. hat_taunt()
  5425. end
  5426. end
  5427.  
  5428. function KeyUp(Key)
  5429. KEYHOLD = false
  5430. end
  5431.  
  5432. Mouse.Button1Down:connect(function(NEWKEY)
  5433. MouseDown(NEWKEY)
  5434. end)
  5435. Mouse.Button1Up:connect(function(NEWKEY)
  5436. MouseUp(NEWKEY)
  5437. end)
  5438. Mouse.KeyDown:connect(function(NEWKEY)
  5439. KeyDown(NEWKEY)
  5440. end)
  5441. Mouse.KeyDown:connect(function(NEWKEY)
  5442. KeyDown(NEWKEY)
  5443. end)
  5444. Mouse.KeyUp:connect(function(NEWKEY)
  5445. KeyUp(NEWKEY)
  5446. end)
  5447. Mouse.Button1Down:connect(function(NEWKEY)
  5448. MouseDown(NEWKEY)
  5449. end)
  5450. Mouse.Button1Up:connect(function(NEWKEY)
  5451. MouseUp(NEWKEY)
  5452. end)
  5453. Mouse.KeyDown:connect(function(NEWKEY)
  5454. KeyDown(NEWKEY)
  5455. end)
  5456. Mouse.KeyUp:connect(function(NEWKEY)
  5457. KeyUp(NEWKEY)
  5458. end)
  5459. Mouse.Button1Down:connect(function(NEWKEY)
  5460. MouseDown(NEWKEY)
  5461. end)
  5462. Mouse.Button1Up:connect(function(NEWKEY)
  5463. MouseUp(NEWKEY)
  5464. end)
  5465. Mouse.KeyDown:connect(function(NEWKEY)
  5466. KeyDown(NEWKEY)
  5467. end)
  5468. Mouse.KeyUp:connect(function(NEWKEY)
  5469. KeyUp(NEWKEY)
  5470. end)
  5471. --//=================================\\
  5472. --\\=================================//
  5473. --//=================================\\
  5474. --\\=================================//
  5475.  
  5476.  
  5477. function unanchor()
  5478. if UNANCHOR == true then
  5479. g = Character:GetChildren()
  5480. for i = 1, #g do
  5481. if g[i].ClassName == "Part" then
  5482. g[i].Anchored = false
  5483. end
  5484. end
  5485. end
  5486. end
  5487.  
  5488.  
  5489. --//=================================\\
  5490. --|| WRAP THE WHOLE SCRIPT UP
  5491. --\\=================================//
  5492.  
  5493. Humanoid.Changed:connect(function(Jump)
  5494. if Jump == "Jump" and (Disable_Jump == true) then
  5495. Humanoid.Jump = false
  5496. end
  5497. end)
  5498.  
  5499. Humanoid.HipHeight = 2
  5500.  
  5501. while true do
  5502. Swait()
  5503. refit()
  5504. Character.Parent = workspace
  5505. Humanoid.Parent = Character
  5506. ANIMATE.Parent = nil
  5507. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  5508. IDLEANIMATION:Play()
  5509. SINE = SINE + CHANGE
  5510. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  5511. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  5512. HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25, Character)
  5513. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  5514. for LW = 1, #LEFTWINGS do
  5515. if LEFTWINGS[LW] ~= nil then
  5516. LEFTWINGS[LW].C1 = Clerp(LEFTWINGS[LW].C1, CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(2.5 * SIN(SINE / 12)), RAD(0), RAD(-3 + 3 * SIN(SINE / 12))), 1 / Animation_Speed)
  5517. end
  5518. end
  5519. for RW = 1, #RIGHTWINGS do
  5520. if RIGHTWINGS[RW] ~= nil then
  5521. RIGHTWINGS[RW].C1 = Clerp(RIGHTWINGS[RW].C1, CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(2.5 * SIN(SINE / 12)), RAD(0), RAD(3 - 3 * SIN(SINE / 12))), 1 / Animation_Speed)
  5522. end
  5523. end
  5524. if ATTACK == false then
  5525. if TORSOVELOCITY < 1 then
  5526. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  5527. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  5528. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  5529. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  5530. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.15 * COS(SINE / 12), -0.1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  5531. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.1, -0.6 - 0.15 * COS(SINE / 12), -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(15), RAD(25)), 0.15 / Animation_Speed)
  5532. elseif TORSOVELOCITY > 1 then
  5533. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  5534. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-10 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-2.5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  5535. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  5536. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  5537. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  5538. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  5539. end
  5540. end
  5541. for _, c in pairs(Character:GetChildren()) do
  5542. if c.ClassName == "Part" and c.Name ~= "Eye" then
  5543. c.Material = "Neon"
  5544. if c:FindFirstChildOfClass("ParticleEmitter") then
  5545. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  5546. end
  5547. if c ~= Head and c ~= RootPart and c:FindFirstChild("BoxEffect") == nil then
  5548. local EF = Instance.new("SelectionBox",c)
  5549. EF.Adornee = c
  5550. EF.Color = BrickColor.new("Really red")
  5551. EF.LineThickness = 0.01
  5552. EF.Transparency = 0
  5553. EF.Name = "BoxEffect"
  5554. end
  5555. c.Color = C3(0,0,0)
  5556. if c == Head then
  5557. --[[if c:FindFirstChild("Dominus") == nil then
  5558. local M = CreateMesh("SpecialMesh", c, "FileMesh", "162384581", "162384608", VT(1,1,1)*1.1, VT(0,0,0))
  5559. M.Name = ""
  5560. end]]--
  5561. if c:FindFirstChild("face") then
  5562. c.face:remove()
  5563. end
  5564. end
  5565. elseif c.ClassName == "Shirt" or c.ClassName == "Pants" or c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
  5566. end
  5567. end
  5568. if HITFLOOR ~= nil and MRANDOM(1,6) == 1 then
  5569. local POSITION = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(MRANDOM(5,15),0,0).p
  5570. local BOXFLOOR,BOXPOS = Raycast(POSITION+VT(0,1,0), (CF(POSITION, POSITION + VT(0, -1, 0))).lookVector, 5, Character)
  5571. if BOXFLOOR ~= nil then
  5572. WACKYEFFECT({EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,15,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(BOXPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  5573. end
  5574. end
  5575. unanchor()
  5576. Humanoid.MaxHealth = "inf"
  5577. Humanoid.Health = "inf"
  5578. if Rooted == false then
  5579. Disable_Jump = false
  5580. Humanoid.WalkSpeed = Speed
  5581. elseif Rooted == true then
  5582. Disable_Jump = true
  5583. Humanoid.WalkSpeed = 0
  5584. end
  5585. for _, c in pairs(workspace:GetChildren()) do
  5586. if c.ClassName == "Model" and c:FindFirstChild("Humanoid") and c ~= Character then
  5587. end
  5588. end
  5589. script.Parent = WEAPONGUI
  5590. Humanoid.Name = "Monarch"
  5591. sick.Parent = Effects
  5592. sick.Pitch = 1
  5593. sick.Playing = true
  5594. for _, q in pairs(Head:GetChildren()) do
  5595. if q.ClassName == "Sound" and q.Name ~= "Audio" then
  5596. q:remove()
  5597. end
  5598. end
  5599. Humanoid.DisplayDistanceType = "None"
  5600. end
  5601.  
  5602. --//=================================\\
  5603. --\\=================================//
  5604.  
  5605.  
  5606.  
  5607.  
  5608. --//====================================================\\--
  5609. --|| END OF SCRIPT
  5610. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement