Advertisement
wanTH092

Ruler of space and time

Jul 20th, 2018
406
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 166.88 KB | None | 0 0
  1. ---//The Ruler Of Space And Time
  2. ---||Roblox Edit
  3. ---\\Edited By Leo
  4.  
  5. local Player = game.Players.localPlayer
  6. local Character = Player.Character
  7. local Humanoid = Character.Humanoid
  8. local Mouse = Player:GetMouse()
  9. local LeftArm = Character["Left Arm"]
  10. local RightArm = Character["Right Arm"]
  11. local LeftLeg = Character["Left Leg"]
  12. local RightLeg = Character["Right Leg"]
  13. local Head = Character.Head
  14. local Torso = Character.Torso
  15. local Camera = game.Workspace.CurrentCamera
  16. local RootPart = Character.HumanoidRootPart
  17. local RootJoint = RootPart.RootJoint
  18. local attack = false
  19. local Anim = 'Idle'
  20. local Lighty = game:GetService"Lighting"
  21. local attacktype = 1
  22. local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  23. local velocity = RootPart.Velocity.y
  24. local sine = 0
  25. local change = 1
  26. local bored = {492070484,1232162751,1534958855,303535614,1117396305,0}
  27. local Create = LoadLibrary("RbxUtility").Create
  28. function swait(num)
  29.     if num == 0 or num == nil then
  30.         ArtificialHB.Event:wait()
  31.     else
  32.         for i = 0, num do
  33.             ArtificialHB.Event:wait()
  34.         end
  35.     end
  36. end
  37.  
  38. wait(0.2)
  39.  
  40. Player = game:GetService("Players").LocalPlayer
  41. PlayerGui = Player.PlayerGui
  42. Cam = workspace.CurrentCamera
  43. Backpack = Player.Backpack
  44. Character = Player.Character
  45. Humanoid = Character.Humanoid
  46. Mouse = Player:GetMouse()
  47. RootPart = Character["HumanoidRootPart"]
  48. Torso = Character["Torso"]
  49. Head = Character["Head"]
  50. RightArm = Character["Right Arm"]
  51. LeftArm = Character["Left Arm"]
  52. RightLeg = Character["Right Leg"]
  53. LeftLeg = Character["Left Leg"]
  54. RootJoint = RootPart["RootJoint"]
  55. Neck = Torso["Neck"]
  56. RightShoulder = Torso["Right Shoulder"]
  57. LeftShoulder = Torso["Left Shoulder"]
  58. RightHip = Torso["Right Hip"]
  59. LeftHip = Torso["Left Hip"]
  60. Character.Archivable = true
  61. Player:ClearCharacterAppearance()
  62.  
  63. IT = Instance.new
  64. CF = CFrame.new
  65. VT = Vector3.new
  66. RAD = math.rad
  67. C3 = Color3.new
  68. UD2 = UDim2.new
  69. BRICKC = BrickColor.new
  70. ANGLES = CFrame.Angles
  71. EULER = CFrame.fromEulerAnglesXYZ
  72. COS = math.cos
  73. ACOS = math.acos
  74. SIN = math.sin
  75. ASIN = math.asin
  76. ABS = math.abs
  77. MRANDOM = math.random
  78. FLOOR = math.floor
  79. local CHOICE = MRANDOM(1,5)
  80. --//=================================\\
  81. --||          USEFUL VALUES
  82. --\\=================================//
  83.  
  84. Animation_Speed = 3
  85. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  86. local Speed = 20
  87. local SIZE = 1
  88. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  89. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  90. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  91. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  92. local DAMAGEMULTIPLIER = "inf"
  93. local ANIM = "Idle"
  94. local ATTACK = false
  95. local EQUIPPED = false
  96. local HOLD = false
  97. local COMBO = 1
  98. local Rooted = false
  99. local SINE = 0
  100. local KEYHOLD = false
  101. local CHANGE = 2 / Animation_Speed
  102. local WALKINGANIM = false
  103. local VALUE1 = false
  104. local VALUE2 = false
  105. local ROBLOXIDLEANIMATION = IT("Animation")
  106. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  107. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  108. local ATANIM = IT("Animation")
  109. ATANIM.Name = "Attack Animation"
  110. ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
  111. --ROBLOXIDLEANIMATION.Parent = Humanoid
  112. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  113. WEAPONGUI.Name = "Weapon GUI"
  114. local Weapon = IT("Model")
  115. Weapon.Name = "Adds"
  116. local Effects = IT("Folder", Weapon)
  117. Effects.Name = "Effects"
  118. local ANIMATOR = Humanoid.Animator
  119. local ANIMATE = Character.Animate
  120. local UNANCHOR = true
  121. local CLOCKLOOP = 0
  122. local SONG = 492070484
  123. local CLOCKTARGET = nil
  124. local CLOCKSPEED = 4
  125. script.Parent = WEAPONGUI
  126. local CLONE = Character:Clone()
  127. CLONE.Parent = nil
  128. Character.Archivable = false
  129. local sick = Instance.new("Sound",Torso)
  130. sick.Volume = 50999
  131. local LAUGHS = {834001699,834001752,834001797,834001828}
  132. local SONGS = {534861083,530959353,1534958855,0}
  133. local CHOICE = MRANDOM(1,4)
  134. local TOBANISH = {}
  135. local EXTRATRANS = 0
  136. local Effects2 = {}
  137. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  138. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  139. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  140. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  141.  
  142. --//=================================\\
  143. --\\=================================//
  144.  
  145.  
  146. --//=================================\\
  147. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  148. --\\=================================//
  149.  
  150. ArtificialHB = Instance.new("BindableEvent", script)
  151. ArtificialHB.Name = "ArtificialHB"
  152.  
  153. script:WaitForChild("ArtificialHB")
  154.  
  155. frame = Frame_Speed
  156. tf = 0
  157. allowframeloss = false
  158. tossremainder = false
  159. lastframe = tick()
  160. script.ArtificialHB:Fire()
  161.  
  162. game:GetService("RunService").Heartbeat:connect(function(s, p)
  163.     tf = tf + s
  164.     if tf >= frame then
  165.         if allowframeloss then
  166.             script.ArtificialHB:Fire()
  167.             lastframe = tick()
  168.         else
  169.             for i = 1, math.floor(tf / frame) do
  170.                 script.ArtificialHB:Fire()
  171.             end
  172.         lastframe = tick()
  173.         end
  174.         if tossremainder then
  175.             tf = 0
  176.         else
  177.             tf = tf - frame * math.floor(tf / frame)
  178.         end
  179.     end
  180. end)
  181.  
  182. --//=================================\\
  183. --\\=================================//
  184.  
  185. --//=================================\\
  186. --||          SOME FUNCTIONS
  187. --\\=================================//
  188.  
  189. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  190.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  191. end
  192.  
  193. function PositiveAngle(NUMBER)
  194.     if NUMBER >= 0 then
  195.         NUMBER = 0
  196.     end
  197.     return NUMBER
  198. end
  199.  
  200. function NegativeAngle(NUMBER)
  201.     if NUMBER <= 0 then
  202.         NUMBER = 0
  203.     end
  204.     return NUMBER
  205. end
  206.  
  207. function Swait(NUMBER)
  208.     if NUMBER == 0 or NUMBER == nil then
  209.         ArtificialHB.Event:wait()
  210.     else
  211.         for i = 1, NUMBER do
  212.             ArtificialHB.Event:wait()
  213.         end
  214.     end
  215. end
  216.  
  217. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  218.     local NEWMESH = IT(MESH)
  219.     if MESH == "SpecialMesh" then
  220.         NEWMESH.MeshType = MESHTYPE
  221.         if MESHID ~= "nil" and MESHID ~= "" then
  222.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  223.         end
  224.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  225.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  226.         end
  227.     end
  228.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  229.     NEWMESH.Scale = SCALE
  230.     NEWMESH.Parent = PARENT
  231.     return NEWMESH
  232. end
  233.  
  234. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  235.     local NEWPART = IT("Part")
  236.     NEWPART.formFactor = FORMFACTOR
  237.     NEWPART.Reflectance = REFLECTANCE
  238.     NEWPART.Transparency = TRANSPARENCY
  239.     NEWPART.CanCollide = false
  240.     NEWPART.Locked = true
  241.     NEWPART.Anchored = true
  242.     if ANCHOR == false then
  243.         NEWPART.Anchored = false
  244.     end
  245.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  246.     NEWPART.Name = NAME
  247.     NEWPART.Size = SIZE
  248.     NEWPART.Position = Torso.Position
  249.     NEWPART.Material = MATERIAL
  250.     NEWPART:BreakJoints()
  251.     NEWPART.Parent = PARENT
  252.     return NEWPART
  253. end
  254.  
  255.     local function weldBetween(a, b)
  256.         local weldd = Instance.new("ManualWeld")
  257.         weldd.Part0 = a
  258.         weldd.Part1 = b
  259.         weldd.C0 = CFrame.new()
  260.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  261.         weldd.Parent = a
  262.         return weldd
  263.     end
  264.  
  265.  
  266. function QuaternionFromCFrame(cf)
  267.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  268.     local trace = m00 + m11 + m22
  269.     if trace > 0 then
  270.         local s = math.sqrt(1 + trace)
  271.         local recip = 0.5 / s
  272.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  273.     else
  274.         local i = 0
  275.         if m11 > m00 then
  276.             i = 1
  277.         end
  278.         if m22 > (i == 0 and m00 or m11) then
  279.             i = 2
  280.         end
  281.         if i == 0 then
  282.             local s = math.sqrt(m00 - m11 - m22 + 1)
  283.             local recip = 0.5 / s
  284.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  285.         elseif i == 1 then
  286.             local s = math.sqrt(m11 - m22 - m00 + 1)
  287.             local recip = 0.5 / s
  288.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  289.         elseif i == 2 then
  290.             local s = math.sqrt(m22 - m00 - m11 + 1)
  291.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  292.         end
  293.     end
  294. end
  295.  
  296. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  297.     local xs, ys, zs = x + x, y + y, z + z
  298.     local wx, wy, wz = w * xs, w * ys, w * zs
  299.     local xx = x * xs
  300.     local xy = x * ys
  301.     local xz = x * zs
  302.     local yy = y * ys
  303.     local yz = y * zs
  304.     local zz = z * zs
  305.     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))
  306. end
  307.  
  308. function QuaternionSlerp(a, b, t)
  309.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  310.     local startInterp, finishInterp;
  311.     if cosTheta >= 0.0001 then
  312.         if (1 - cosTheta) > 0.0001 then
  313.             local theta = ACOS(cosTheta)
  314.             local invSinTheta = 1 / SIN(theta)
  315.             startInterp = SIN((1 - t) * theta) * invSinTheta
  316.             finishInterp = SIN(t * theta) * invSinTheta
  317.         else
  318.             startInterp = 1 - t
  319.             finishInterp = t
  320.         end
  321.     else
  322.         if (1 + cosTheta) > 0.0001 then
  323.             local theta = ACOS(-cosTheta)
  324.             local invSinTheta = 1 / SIN(theta)
  325.             startInterp = SIN((t - 1) * theta) * invSinTheta
  326.             finishInterp = SIN(t * theta) * invSinTheta
  327.         else
  328.             startInterp = t - 1
  329.             finishInterp = t
  330.         end
  331.     end
  332.     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
  333. end
  334.  
  335. function Clerp(a, b, t)
  336.     local qa = {QuaternionFromCFrame(a)}
  337.     local qb = {QuaternionFromCFrame(b)}
  338.     local ax, ay, az = a.x, a.y, a.z
  339.     local bx, by, bz = b.x, b.y, b.z
  340.     local _t = 1 - t
  341.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  342. end
  343.  
  344. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  345.     local frame = IT("Frame")
  346.     frame.BackgroundTransparency = TRANSPARENCY
  347.     frame.BorderSizePixel = BORDERSIZEPIXEL
  348.     frame.Position = POSITION
  349.     frame.Size = SIZE
  350.     frame.BackgroundColor3 = COLOR
  351.     frame.BorderColor3 = BORDERCOLOR
  352.     frame.Name = NAME
  353.     frame.Parent = PARENT
  354.     return frame
  355. end
  356.  
  357. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  358.     local label = IT("TextLabel")
  359.     label.BackgroundTransparency = 1
  360.     label.Size = UD2(1, 0, 1, 0)
  361.     label.Position = UD2(0, 0, 0, 0)
  362.     label.TextColor3 = TEXTCOLOR
  363.     label.TextStrokeTransparency = STROKETRANSPARENCY
  364.     label.TextTransparency = TRANSPARENCY
  365.     label.FontSize = TEXTFONTSIZE
  366.     label.Font = TEXTFONT
  367.     label.BorderSizePixel = BORDERSIZEPIXEL
  368.     label.TextScaled = false
  369.     label.Text = TEXT
  370.     label.Name = NAME
  371.     label.Parent = PARENT
  372.     return label
  373. end
  374.  
  375. function NoOutlines(PART)
  376.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  377. end
  378.  
  379. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  380.     local NEWWELD = IT(TYPE)
  381.     NEWWELD.Part0 = PART0
  382.     NEWWELD.Part1 = PART1
  383.     NEWWELD.C0 = C0
  384.     NEWWELD.C1 = C1
  385.     NEWWELD.Parent = PARENT
  386.     return NEWWELD
  387. end
  388.  
  389. local S = IT("Sound")
  390. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  391.     local NEWSOUND = nil
  392.     coroutine.resume(coroutine.create(function()
  393.         NEWSOUND = S:Clone()
  394.         NEWSOUND.Parent = PARENT
  395.         NEWSOUND.Volume = VOLUME
  396.         NEWSOUND.Pitch = PITCH
  397.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  398.         NEWSOUND:play()
  399.         if DOESLOOP == true then
  400.             NEWSOUND.Looped = true
  401.         else
  402.             local REPOSITION = NEWSOUND.AncestryChanged:Connect(function()
  403.                 NEWSOUND.Parent = PARENT
  404.             end)
  405.             repeat wait(1) until NEWSOUND.Playing == false
  406.             REPOSITION:disconnect()
  407.             NEWSOUND:remove()
  408.         end
  409.     end))
  410.     return NEWSOUND
  411. end
  412.  
  413. function CFrameFromTopBack(at, top, back)
  414.     local right = top:Cross(back)
  415.     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)
  416. end
  417.  
  418. --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})
  419. function WACKYEFFECT(Table)
  420.     local TYPE = (Table.EffectType or "Sphere")
  421.     local SIZE = (Table.Size or VT(1,1,1))
  422.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  423.     local TRANSPARENCY = (Table.Transparency or 0)
  424.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  425.     local CFRAME = (Table.CFrame or Torso.CFrame)
  426.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  427.     local ROTATION1 = (Table.RotationX or 0)
  428.     local ROTATION2 = (Table.RotationY or 0)
  429.     local ROTATION3 = (Table.RotationZ or 0)
  430.     local MATERIAL = (Table.Material or "Neon")
  431.     local COLOR = (Table.Color or C3(1,1,1))
  432.     local TIME = (Table.Time or 45)
  433.     local SOUNDID = (Table.SoundID or nil)
  434.     local SOUNDPITCH = (Table.SoundPitch or nil)
  435.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  436.     coroutine.resume(coroutine.create(function()
  437.         local PLAYSSOUND = false
  438.         local SOUND = nil
  439.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  440.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  441.             PLAYSSOUND = true
  442.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  443.         end
  444.         EFFECT.Color = COLOR
  445.         local MSH = nil
  446.         if TYPE == "Sphere" then
  447.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  448.         elseif TYPE == "Block" then
  449.             MSH = IT("BlockMesh",EFFECT)
  450.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  451.         elseif TYPE == "Wave" then
  452.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  453.         elseif TYPE == "Ring" then
  454.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  455.         elseif TYPE == "Slash" then
  456.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  457.         elseif TYPE == "Round Slash" then
  458.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  459.         elseif TYPE == "Swirl" then
  460.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  461.         elseif TYPE == "Skull" then
  462.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  463.         elseif TYPE == "Crystal" then
  464.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  465.         end
  466.         if MSH ~= nil then
  467.             local MOVESPEED = nil
  468.             if MOVEDIRECTION ~= nil then
  469.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  470.             end
  471.             local GROWTH = SIZE - ENDSIZE
  472.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  473.             if TYPE == "Block" then
  474.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  475.             else
  476.                 EFFECT.CFrame = CFRAME
  477.             end
  478.             for LOOP = 1, TIME+1 do
  479.                 Swait()
  480.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  481.                 if TYPE == "Wave" then
  482.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  483.                 end
  484.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  485.                 if TYPE == "Block" then
  486.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  487.                 else
  488.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  489.                 end
  490.                 if MOVEDIRECTION ~= nil then
  491.                     local ORI = EFFECT.Orientation
  492.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  493.                     EFFECT.Orientation = ORI
  494.                 end
  495.             end
  496.             EFFECT.Transparency = 1
  497.             if PLAYSSOUND == false then
  498.                 EFFECT:remove()
  499.             else
  500.                 repeat Swait() until SOUND.Playing == false
  501.                 EFFECT:remove()
  502.             end
  503.         else
  504.             if PLAYSSOUND == false then
  505.                 EFFECT:remove()
  506.             else
  507.                 repeat Swait() until SOUND.Playing == false
  508.                 EFFECT:remove()
  509.             end
  510.         end
  511.     end))
  512. end
  513.  
  514. function Shatter(Part)
  515.     if Part.Transparency < 1 then
  516.         local SOUNDPART = CreatePart(3, Effects, "Glass", 0, Part.Transparency + 0.1, Part.BrickColor, "OOF", VT(0,0,0))
  517.         Debris:AddItem(SOUNDPART,5)
  518.         CreateSound("626807593", SOUNDPART, 3, MRANDOM(8,12)/10, false)
  519.         local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
  520.         local SIZESET = SIZE/4
  521.         local XOffset = Part.Size.X*1.5/SIZESET
  522.         local YOffset = Part.Size.Y*1.5/SIZESET
  523.         local ZOffset = Part.Size.Z*1.5/SIZESET
  524.         for x = 1, math.ceil(XOffset) do
  525.             for y = 1, math.ceil(YOffset) do
  526.                 for z = 1, math.ceil(ZOffset) do
  527.                     local SHARD = CreatePart(3, Effects, "Glass", 0, 0.15, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
  528.                     SHARD.CanCollide = true
  529.                     SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-Part.Size.X/4),(Part.Size.Y/2-Part.Size.Y/4),(Part.Size.Z/2-Part.Size.Z/4))
  530.                     SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
  531.                     Debris:AddItem(SHARD,MRANDOM(10,25)/10)
  532.                     for _, c in pairs(Part:GetChildren()) do
  533.                         if c.ClassName == "ParticleEmitter" or c.ClassName == "PointLight" or c.ClassName == "Fire" then
  534.                             c:Clone().Parent = SHARD
  535.                         end
  536.                     end
  537.                 end
  538.             end
  539.         end
  540.     end
  541.     Part:remove()
  542. end
  543.  
  544. --Lightning({Material = "Neon", FadeIn = false, 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, FadeTime = 15, Thicken = false})
  545. function Lightning(Table)
  546.     local Color = Table.Color or C3(1,1,1)
  547.     local StartPos = Table.Start or Torso.Position
  548.     local EndPos = Table.End or Mouse.Hit.p
  549.     local SegmentLength = Table.SegmentL or 2
  550.     local Thickness = Table.Thickness or 0.1
  551.     local Dissapear = Table.DoesFade or false
  552.     local Parent = Table.Ignore or Character
  553.     local MaxDist = Table.MaxDist or 400
  554.     local Branches = Table.Branches or false
  555.     local Thicken = Table.Thicken or false
  556.     local FadeTime = Table.FadeTime or 15
  557.     local FadeIn = Table.FadeIn or false
  558.     local Material = Table.Material or "Neon"
  559.     local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  560.     local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
  561.     local LIGHTNINGMODEL = IT("Model",Effects)
  562.     LIGHTNINGMODEL.Name = "Lightning"
  563.     local LastBolt = nil
  564.     for E = 1, DISTANCE do
  565.         local ExtraSize = 0
  566.         if Thicken == true then
  567.             ExtraSize = (DISTANCE-E)/15
  568.         end
  569.         local TRANSPARENCY = 0
  570.         if FadeIn == true then
  571.             TRANSPARENCY = 1-(E/(DISTANCE/1.5))
  572.             if TRANSPARENCY < 0 then
  573.                 TRANSPARENCY = 0
  574.             end
  575.         end
  576.         local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  577.         PART.Color = Color
  578.         MakeForm(PART,"Cyl")
  579.         if LastBolt == nil then
  580.             PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  581.         else
  582.             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,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  583.         end
  584.         LastBolt = PART
  585.         if Branches == true and E < (DISTANCE-5) then
  586.             local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  587.             if CHOICE == 1 then
  588.                 local LASTBRANCH = nil
  589.                 for i = 1, MRANDOM(2,5) do
  590.                     local ExtraSize2 = 0
  591.                     if Thicken == true then
  592.                         ExtraSize = ((DISTANCE-E)/25)/i
  593.                     end
  594.                     local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  595.                     PART.Color = Color
  596.                     MakeForm(PART,"Cyl")
  597.                     if LASTBRANCH == nil then
  598.                         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)
  599.                     else
  600.                         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)
  601.                     end
  602.                     LASTBRANCH = PART
  603.                 end
  604.             end
  605.         end
  606.     end
  607.     if Dissapear == true then
  608.         coroutine.resume(coroutine.create(function()
  609.             for i = 1, FadeTime do
  610.                 Swait()
  611.                 for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  612.                     if c.ClassName == "Part" then
  613.                         c.Transparency = c.Transparency + (i/FadeTime)/10
  614.                     end
  615.                 end
  616.             end
  617.             LIGHTNINGMODEL:remove()
  618.         end))
  619.     elseif Dissapear == false then
  620.         Debris:AddItem(LIGHTNINGMODEL,0.1)
  621.     end
  622.     return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  623. end
  624.  
  625. function MakeForm(PART,TYPE)
  626.     if TYPE == "Cyl" then
  627.         local MSH = IT("CylinderMesh",PART)
  628.     elseif TYPE == "Ball" then
  629.         local MSH = IT("SpecialMesh",PART)
  630.         MSH.MeshType = "Sphere"
  631.     elseif TYPE == "Wedge" then
  632.         local MSH = IT("SpecialMesh",PART)
  633.         MSH.MeshType = "Wedge"
  634.     end
  635. end
  636.  
  637. Debris = game:GetService("Debris")
  638.  
  639. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  640.     local DIRECTION = CF(StartPos,EndPos).lookVector
  641.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  642. end
  643.  
  644. function turnto(position)
  645.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  646. end
  647.  
  648. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  649.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  650. end
  651.  
  652. function PositiveAngle(NUMBER)
  653.     if NUMBER >= 0 then
  654.         NUMBER = 0
  655.     end
  656.     return NUMBER
  657. end
  658.  
  659. function NegativeAngle(NUMBER)
  660.     if NUMBER <= 0 then
  661.         NUMBER = 0
  662.     end
  663.     return NUMBER
  664. end
  665.  
  666. function Swait(NUMBER)
  667.     if NUMBER == 0 or NUMBER == nil then
  668.         ArtificialHB.Event:wait()
  669.     else
  670.         for i = 1, NUMBER do
  671.             ArtificialHB.Event:wait()
  672.         end
  673.     end
  674. end
  675.  
  676. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  677.     local NEWMESH = IT(MESH)
  678.     if MESH == "SpecialMesh" then
  679.         NEWMESH.MeshType = MESHTYPE
  680.         if MESHID ~= "nil" and MESHID ~= "" then
  681.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  682.         end
  683.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  684.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  685.         end
  686.     end
  687.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  688.     NEWMESH.Scale = SCALE
  689.     NEWMESH.Parent = PARENT
  690.     return NEWMESH
  691. end
  692.  
  693. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  694.     local NEWPART = IT("Part")
  695.     NEWPART.formFactor = FORMFACTOR
  696.     NEWPART.Reflectance = REFLECTANCE
  697.     NEWPART.Transparency = TRANSPARENCY
  698.     NEWPART.CanCollide = false
  699.     NEWPART.Locked = true
  700.     NEWPART.Anchored = true
  701.     if ANCHOR == false then
  702.         NEWPART.Anchored = false
  703.     end
  704.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  705.     NEWPART.Name = NAME
  706.     NEWPART.Size = SIZE
  707.     NEWPART.Position = Torso.Position
  708.     NEWPART.Material = MATERIAL
  709.     NEWPART:BreakJoints()
  710.     NEWPART.Parent = PARENT
  711.     return NEWPART
  712. end
  713.  
  714.     local function weldBetween(a, b)
  715.         local weldd = Instance.new("ManualWeld")
  716.         weldd.Part0 = a
  717.         weldd.Part1 = b
  718.         weldd.C0 = CFrame.new()
  719.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  720.         weldd.Parent = a
  721.         return weldd
  722.     end
  723.  
  724.  
  725. function QuaternionFromCFrame(cf)
  726.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  727.     local trace = m00 + m11 + m22
  728.     if trace > 0 then
  729.         local s = math.sqrt(1 + trace)
  730.         local recip = 0.5 / s
  731.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  732.     else
  733.         local i = 0
  734.         if m11 > m00 then
  735.             i = 1
  736.         end
  737.         if m22 > (i == 0 and m00 or m11) then
  738.             i = 2
  739.         end
  740.         if i == 0 then
  741.             local s = math.sqrt(m00 - m11 - m22 + 1)
  742.             local recip = 0.5 / s
  743.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  744.         elseif i == 1 then
  745.             local s = math.sqrt(m11 - m22 - m00 + 1)
  746.             local recip = 0.5 / s
  747.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  748.         elseif i == 2 then
  749.             local s = math.sqrt(m22 - m00 - m11 + 1)
  750.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  751.         end
  752.     end
  753. end
  754.  
  755. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  756.     local xs, ys, zs = x + x, y + y, z + z
  757.     local wx, wy, wz = w * xs, w * ys, w * zs
  758.     local xx = x * xs
  759.     local xy = x * ys
  760.     local xz = x * zs
  761.     local yy = y * ys
  762.     local yz = y * zs
  763.     local zz = z * zs
  764.     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))
  765. end
  766.  
  767. function QuaternionSlerp(a, b, t)
  768.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  769.     local startInterp, finishInterp;
  770.     if cosTheta >= 0.0001 then
  771.         if (1 - cosTheta) > 0.0001 then
  772.             local theta = ACOS(cosTheta)
  773.             local invSinTheta = 1 / SIN(theta)
  774.             startInterp = SIN((1 - t) * theta) * invSinTheta
  775.             finishInterp = SIN(t * theta) * invSinTheta
  776.         else
  777.             startInterp = 1 - t
  778.             finishInterp = t
  779.         end
  780.     else
  781.         if (1 + cosTheta) > 0.0001 then
  782.             local theta = ACOS(-cosTheta)
  783.             local invSinTheta = 1 / SIN(theta)
  784.             startInterp = SIN((t - 1) * theta) * invSinTheta
  785.             finishInterp = SIN(t * theta) * invSinTheta
  786.         else
  787.             startInterp = t - 1
  788.             finishInterp = t
  789.         end
  790.     end
  791.     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
  792. end
  793.  
  794. function Clerp(a, b, t)
  795.     local qa = {QuaternionFromCFrame(a)}
  796.     local qb = {QuaternionFromCFrame(b)}
  797.     local ax, ay, az = a.x, a.y, a.z
  798.     local bx, by, bz = b.x, b.y, b.z
  799.     local _t = 1 - t
  800.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  801. end
  802.  
  803. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  804.     local frame = IT("Frame")
  805.     frame.BackgroundTransparency = TRANSPARENCY
  806.     frame.BorderSizePixel = BORDERSIZEPIXEL
  807.     frame.Position = POSITION
  808.     frame.Size = SIZE
  809.     frame.BackgroundColor3 = COLOR
  810.     frame.BorderColor3 = BORDERCOLOR
  811.     frame.Name = NAME
  812.     frame.Parent = PARENT
  813.     return frame
  814. end
  815.  
  816. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  817.     local label = IT("TextLabel")
  818.     label.BackgroundTransparency = 1
  819.     label.Size = UD2(1, 0, 1, 0)
  820.     label.Position = UD2(0, 0, 0, 0)
  821.     label.TextColor3 = TEXTCOLOR
  822.     label.TextStrokeTransparency = STROKETRANSPARENCY
  823.     label.TextTransparency = TRANSPARENCY
  824.     label.FontSize = TEXTFONTSIZE
  825.     label.Font = TEXTFONT
  826.     label.BorderSizePixel = BORDERSIZEPIXEL
  827.     label.TextScaled = false
  828.     label.Text = TEXT
  829.     label.Name = NAME
  830.     label.Parent = PARENT
  831.     return label
  832. end
  833.  
  834. function NoOutlines(PART)
  835.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  836. end
  837.  
  838. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  839.     local NEWWELD = IT(TYPE)
  840.     NEWWELD.Part0 = PART0
  841.     NEWWELD.Part1 = PART1
  842.     NEWWELD.C0 = C0
  843.     NEWWELD.C1 = C1
  844.     NEWWELD.Parent = PARENT
  845.     return NEWWELD
  846. end
  847.  
  848. local S = IT("Sound")
  849. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  850.     local NEWSOUND = nil
  851.     coroutine.resume(coroutine.create(function()
  852.         NEWSOUND = S:Clone()
  853.         NEWSOUND.Parent = PARENT
  854.         NEWSOUND.Volume = VOLUME
  855.         NEWSOUND.Pitch = PITCH
  856.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  857.         NEWSOUND:play()
  858.         if DOESLOOP == true then
  859.             NEWSOUND.Looped = true
  860.         else
  861.             repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  862.             NEWSOUND:remove()
  863.         end
  864.     end))
  865.     return NEWSOUND
  866. end
  867.  
  868. function CFrameFromTopBack(at, top, back)
  869.     local right = top:Cross(back)
  870.     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)
  871. end
  872.  
  873. --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(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  874. function WACKYEFFECT(Table)
  875.     local TYPE = (Table.EffectType or "Sphere")
  876.     local SIZE = (Table.Size or VT(1,1,1))
  877.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  878.     local TRANSPARENCY = (Table.Transparency or 0)
  879.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  880.     local CFRAME = (Table.CFrame or Torso.CFrame)
  881.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  882.     local ROTATION1 = (Table.RotationX or 0)
  883.     local ROTATION2 = (Table.RotationY or 0)
  884.     local ROTATION3 = (Table.RotationZ or 0)
  885.     local MATERIAL = (Table.Material or "Neon")
  886.     local COLOR = (Table.Color or C3(0,0,0))
  887.     local TIME = (Table.Time or 45)
  888.     local SOUNDID = (Table.SoundID or nil)
  889.     local SOUNDPITCH = (Table.SoundPitch or nil)
  890.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  891.     coroutine.resume(coroutine.create(function()
  892.         local PLAYSSOUND = false
  893.         local SOUND = nil
  894.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  895.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  896.             PLAYSSOUND = true
  897.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  898.         end
  899.         EFFECT.Color = COLOR
  900.         local MSH = nil
  901.         if TYPE == "Sphere" then
  902.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  903.         elseif TYPE == "Block" then
  904.             MSH = IT("BlockMesh",EFFECT)
  905.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  906.         elseif TYPE == "Wave" then
  907.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  908.         elseif TYPE == "Ring" then
  909.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  910.         elseif TYPE == "Slash" then
  911.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  912.         elseif TYPE == "Round Slash" then
  913.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  914.         elseif TYPE == "Swirl" then
  915.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  916.         elseif TYPE == "Skull" then
  917.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  918.         elseif TYPE == "Crystal" then
  919.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  920.         end
  921.         if MSH ~= nil then
  922.             local MOVESPEED = nil
  923.             if MOVEDIRECTION ~= nil then
  924.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  925.             end
  926.             local GROWTH = SIZE - ENDSIZE
  927.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  928.             if TYPE == "Block" then
  929.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  930.             else
  931.                 EFFECT.CFrame = CFRAME
  932.             end
  933.             for LOOP = 1, TIME+1 do
  934.                 Swait()
  935.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  936.                 if TYPE == "Wave" then
  937.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  938.                 end
  939.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  940.                 if TYPE == "Block" then
  941.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  942.                 else
  943.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  944.                 end
  945.                 if MOVEDIRECTION ~= nil then
  946.                     local ORI = EFFECT.Orientation
  947.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  948.                     EFFECT.Orientation = ORI
  949.                 end
  950.             end
  951.             if PLAYSSOUND == false then
  952.                 EFFECT:remove()
  953.             else
  954.                 SOUND.Stopped:Connect(function()
  955.                     EFFECT:remove()
  956.                 end)
  957.             end
  958.         else
  959.             if PLAYSSOUND == false then
  960.                 EFFECT:remove()
  961.             else
  962.                 repeat Swait() until SOUND.Playing == false
  963.                 EFFECT:remove()
  964.             end
  965.         end
  966.     end))
  967. end
  968. --Lightning({Material = "Neon", FadeIn = false, 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, FadeTime = 15, Thicken = false})
  969. function Lightning(Table)
  970.     local Color = Table.Color or C3(1,1,1)
  971.     local StartPos = Table.Start or Torso.Position
  972.     local EndPos = Table.End or Mouse.Hit.p
  973.     local SegmentLength = Table.SegmentL or 2
  974.     local Thickness = Table.Thickness or 0.1
  975.     local Dissapear = Table.DoesFade or false
  976.     local Parent = Table.Ignore or Character
  977.     local MaxDist = Table.MaxDist or 400
  978.     local Branches = Table.Branches or false
  979.     local Thicken = Table.Thicken or false
  980.     local FadeTime = Table.FadeTime or 15
  981.     local FadeIn = Table.FadeIn or false
  982.     local Material = Table.Material or "Neon"
  983.     local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  984.     local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
  985.     local LIGHTNINGMODEL = IT("Model",Effects)
  986.     LIGHTNINGMODEL.Name = "Lightning"
  987.     local LastBolt = nil
  988.     for E = 1, DISTANCE do
  989.         local ExtraSize = 0
  990.         if Thicken == true then
  991.             ExtraSize = (DISTANCE-E)/15
  992.         end
  993.         local TRANSPARENCY = 0
  994.         if FadeIn == true then
  995.             TRANSPARENCY = 1-(E/(DISTANCE/1.5))
  996.             if TRANSPARENCY < 0 then
  997.                 TRANSPARENCY = 0
  998.             end
  999.         end
  1000.         local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  1001.         PART.Color = Color
  1002.         MakeForm(PART,"Cyl")
  1003.         if LastBolt == nil then
  1004.             PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1005.         else
  1006.             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,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1007.         end
  1008.         LastBolt = PART
  1009.         if Branches == true and E < (DISTANCE-5) then
  1010.             local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  1011.             if CHOICE == 1 then
  1012.                 local LASTBRANCH = nil
  1013.                 for i = 1, MRANDOM(2,5) do
  1014.                     local ExtraSize2 = 0
  1015.                     if Thicken == true then
  1016.                         ExtraSize = ((DISTANCE-E)/25)/i
  1017.                     end
  1018.                     local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  1019.                     PART.Color = Color
  1020.                     MakeForm(PART,"Cyl")
  1021.                     if LASTBRANCH == nil then
  1022.                         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)
  1023.                     else
  1024.                         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)
  1025.                     end
  1026.                     LASTBRANCH = PART
  1027.                 end
  1028.             end
  1029.         end
  1030.     end
  1031.     if Dissapear == true then
  1032.         coroutine.resume(coroutine.create(function()
  1033.             for i = 1, FadeTime do
  1034.                 Swait()
  1035.                 for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  1036.                     if c.ClassName == "Part" then
  1037.                         c.Transparency = c.Transparency + (i/FadeTime)/10
  1038.                     end
  1039.                 end
  1040.             end
  1041.             LIGHTNINGMODEL:remove()
  1042.         end))
  1043.     elseif Dissapear == false then
  1044.         Debris:AddItem(LIGHTNINGMODEL,0.1)
  1045.     end
  1046.     return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  1047. end
  1048. function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  1049.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  1050.     wave.Color = COLOR
  1051.     local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1052.     wave.CFrame = CFRAME
  1053.     coroutine.resume(coroutine.create(function(PART)
  1054.         for i = 1, WAIT do
  1055.             Swait()
  1056.             mesh.Scale = mesh.Scale + GROW
  1057.             mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  1058.             if DOESROT == true then
  1059.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  1060.             end
  1061.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  1062.             if wave.Transparency > 0.99 then
  1063.                 wave:remove()
  1064.             end
  1065.         end
  1066.     end))
  1067. end
  1068.  
  1069. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  1070.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  1071.     wave.Color = COLOR
  1072.     local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0,0,0))
  1073.     wave.CFrame = CFRAME
  1074.     coroutine.resume(coroutine.create(function(PART)
  1075.         for i = 1, WAIT do
  1076.             Swait()
  1077.             mesh.Scale = mesh.Scale + GROW
  1078.             wave.Transparency = wave.Transparency + (1/WAIT)
  1079.             if wave.Transparency > 0.99 then
  1080.                 wave:remove()
  1081.             end
  1082.         end
  1083.     end))
  1084. end
  1085. function MakeForm(PART,TYPE)
  1086.     if TYPE == "Cyl" then
  1087.         local MSH = IT("BlockMesh",PART)
  1088.     elseif TYPE == "Ball" then
  1089.         local MSH = IT("SpecialMesh",PART)
  1090.         MSH.MeshType = "Sphere"
  1091.     elseif TYPE == "Cyl2" then
  1092.         local MSH = IT("CylinderMesh",PART)
  1093.     elseif TYPE == "Wedge" then
  1094.         local MSH = IT("SpecialMesh",PART)
  1095.         MSH.MeshType = "Wedge"
  1096.     end
  1097. end
  1098.  
  1099. function SpawnTrail(FROM,TO,BIG)
  1100.     local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Light gray", "Trail", VT(0,0,0))
  1101.     MakeForm(TRAIL,"Cyl")
  1102.     local DIST = (FROM - TO).Magnitude
  1103.     if BIG == true then
  1104.         TRAIL.Size = VT(0.5,DIST,0.5)
  1105.     else
  1106.         TRAIL.Size = VT(0.25,DIST,0.25)
  1107.     end
  1108.     TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1109.     coroutine.resume(coroutine.create(function()
  1110.         for i = 1, 5 do
  1111.             Swait()
  1112.             TRAIL.Transparency = TRAIL.Transparency + 0.1
  1113.         end
  1114.         TRAIL:remove()
  1115.     end))
  1116. end
  1117.  
  1118. Debris = game:GetService("Debris")
  1119.  
  1120. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1121.     local DIRECTION = CF(StartPos,EndPos).lookVector
  1122.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1123. end
  1124.  
  1125. function turnto(position)
  1126.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1127. end
  1128.  
  1129. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1130.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1131. end
  1132.  
  1133. function PositiveAngle(NUMBER)
  1134.     if NUMBER >= 0 then
  1135.         NUMBER = 0
  1136.     end
  1137.     return NUMBER
  1138. end
  1139.  
  1140. function NegativeAngle(NUMBER)
  1141.     if NUMBER <= 0 then
  1142.         NUMBER = 0
  1143.     end
  1144.     return NUMBER
  1145. end
  1146.  
  1147. function Swait(NUMBER)
  1148.     if NUMBER == 0 or NUMBER == nil then
  1149.         ArtificialHB.Event:wait()
  1150.     else
  1151.         for i = 1, NUMBER do
  1152.             ArtificialHB.Event:wait()
  1153.         end
  1154.     end
  1155. end
  1156.  
  1157. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1158.     local NEWMESH = IT(MESH)
  1159.     if MESH == "SpecialMesh" then
  1160.         NEWMESH.MeshType = MESHTYPE
  1161.         if MESHID ~= "nil" and MESHID ~= "" then
  1162.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1163.         end
  1164.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1165.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1166.         end
  1167.     end
  1168.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1169.     NEWMESH.Scale = SCALE
  1170.     NEWMESH.Parent = PARENT
  1171.     return NEWMESH
  1172. end
  1173.  
  1174. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1175.     local NEWPART = IT("Part")
  1176.     NEWPART.formFactor = FORMFACTOR
  1177.     NEWPART.Reflectance = REFLECTANCE
  1178.     NEWPART.Transparency = TRANSPARENCY
  1179.     NEWPART.CanCollide = false
  1180.     NEWPART.Locked = true
  1181.     NEWPART.Anchored = true
  1182.     if ANCHOR == false then
  1183.         NEWPART.Anchored = false
  1184.     end
  1185.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1186.     NEWPART.Name = NAME
  1187.     NEWPART.Size = SIZE
  1188.     NEWPART.Position = Torso.Position
  1189.     NEWPART.Material = MATERIAL
  1190.     NEWPART:BreakJoints()
  1191.     NEWPART.Parent = PARENT
  1192.     return NEWPART
  1193. end
  1194.  
  1195.     local function weldBetween(a, b)
  1196.         local weldd = IT("Weld")
  1197.         weldd.Part0 = a
  1198.         weldd.Part1 = b
  1199.         weldd.C0 = CF()
  1200.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  1201.         weldd.Parent = a
  1202.         return weldd
  1203.     end
  1204.  
  1205.  
  1206. function QuaternionFromCFrame(cf)
  1207.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1208.     local trace = m00 + m11 + m22
  1209.     if trace > 0 then
  1210.         local s = math.sqrt(1 + trace)
  1211.         local recip = 0.5 / s
  1212.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1213.     else
  1214.         local i = 0
  1215.         if m11 > m00 then
  1216.             i = 1
  1217.         end
  1218.         if m22 > (i == 0 and m00 or m11) then
  1219.             i = 2
  1220.         end
  1221.         if i == 0 then
  1222.             local s = math.sqrt(m00 - m11 - m22 + 1)
  1223.             local recip = 0.5 / s
  1224.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1225.         elseif i == 1 then
  1226.             local s = math.sqrt(m11 - m22 - m00 + 1)
  1227.             local recip = 0.5 / s
  1228.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1229.         elseif i == 2 then
  1230.             local s = math.sqrt(m22 - m00 - m11 + 1)
  1231.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1232.         end
  1233.     end
  1234. end
  1235.  
  1236. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1237.     local xs, ys, zs = x + x, y + y, z + z
  1238.     local wx, wy, wz = w * xs, w * ys, w * zs
  1239.     local xx = x * xs
  1240.     local xy = x * ys
  1241.     local xz = x * zs
  1242.     local yy = y * ys
  1243.     local yz = y * zs
  1244.     local zz = z * zs
  1245.     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))
  1246. end
  1247.  
  1248. function QuaternionSlerp(a, b, t)
  1249.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1250.     local startInterp, finishInterp;
  1251.     if cosTheta >= 0.0001 then
  1252.         if (1 - cosTheta) > 0.0001 then
  1253.             local theta = ACOS(cosTheta)
  1254.             local invSinTheta = 1 / SIN(theta)
  1255.             startInterp = SIN((1 - t) * theta) * invSinTheta
  1256.             finishInterp = SIN(t * theta) * invSinTheta
  1257.         else
  1258.             startInterp = 1 - t
  1259.             finishInterp = t
  1260.         end
  1261.     else
  1262.         if (1 + cosTheta) > 0.0001 then
  1263.             local theta = ACOS(-cosTheta)
  1264.             local invSinTheta = 1 / SIN(theta)
  1265.             startInterp = SIN((t - 1) * theta) * invSinTheta
  1266.             finishInterp = SIN(t * theta) * invSinTheta
  1267.         else
  1268.             startInterp = t - 1
  1269.             finishInterp = t
  1270.         end
  1271.     end
  1272.     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
  1273. end
  1274.  
  1275. function Clerp(a, b, t)
  1276.     local qa = {QuaternionFromCFrame(a)}
  1277.     local qb = {QuaternionFromCFrame(b)}
  1278.     local ax, ay, az = a.x, a.y, a.z
  1279.     local bx, by, bz = b.x, b.y, b.z
  1280.     local _t = 1 - t
  1281.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1282. end
  1283.  
  1284. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1285.     local frame = IT("Frame")
  1286.     frame.BackgroundTransparency = TRANSPARENCY
  1287.     frame.BorderSizePixel = BORDERSIZEPIXEL
  1288.     frame.Position = POSITION
  1289.     frame.Size = SIZE
  1290.     frame.BackgroundColor3 = COLOR
  1291.     frame.BorderColor3 = BORDERCOLOR
  1292.     frame.Name = NAME
  1293.     frame.Parent = PARENT
  1294.     return frame
  1295. end
  1296.  
  1297. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1298.     local label = IT("TextLabel")
  1299.     label.BackgroundTransparency = 1
  1300.     label.Size = UD2(1, 0, 1, 0)
  1301.     label.Position = UD2(0, 0, 0, 0)
  1302.     label.TextColor3 = TEXTCOLOR
  1303.     label.TextStrokeTransparency = STROKETRANSPARENCY
  1304.     label.TextTransparency = TRANSPARENCY
  1305.     label.FontSize = TEXTFONTSIZE
  1306.     label.Font = TEXTFONT
  1307.     label.BorderSizePixel = BORDERSIZEPIXEL
  1308.     label.TextScaled = false
  1309.     label.Text = TEXT
  1310.     label.Name = NAME
  1311.     label.Parent = PARENT
  1312.     return label
  1313. end
  1314.  
  1315. function NoOutlines(PART)
  1316.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1317. end
  1318.  
  1319. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1320.     local NEWWELD = IT(TYPE)
  1321.     NEWWELD.Part0 = PART0
  1322.     NEWWELD.Part1 = PART1
  1323.     NEWWELD.C0 = C0
  1324.     NEWWELD.C1 = C1
  1325.     NEWWELD.Parent = PARENT
  1326.     return NEWWELD
  1327. end
  1328.  
  1329. local S = IT("Sound")
  1330. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1331.     local NEWSOUND = nil
  1332.     coroutine.resume(coroutine.create(function()
  1333.         NEWSOUND = S:Clone()
  1334.         NEWSOUND.Parent = PARENT
  1335.         NEWSOUND.Volume = VOLUME
  1336.         NEWSOUND.Pitch = PITCH
  1337.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1338.         NEWSOUND:play()
  1339.         if DOESLOOP == true then
  1340.             NEWSOUND.Looped = true
  1341.         else
  1342.             repeat wait(1) until NEWSOUND.Playing == false
  1343.             NEWSOUND:remove()
  1344.         end
  1345.     end))
  1346.     return NEWSOUND
  1347. end
  1348.  
  1349. function CFrameFromTopBack(at, top, back)
  1350.     local right = top:Cross(back)
  1351.     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)
  1352. end
  1353.  
  1354. --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})
  1355. function WACKYEFFECT(Table)
  1356.     local TYPE = (Table.EffectType or "Sphere")
  1357.     local SIZE = (Table.Size or VT(1,1,1))
  1358.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1359.     local TRANSPARENCY = (Table.Transparency or 0)
  1360.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1361.     local CFRAME = (Table.CFrame or Torso.CFrame)
  1362.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  1363.     local ROTATION1 = (Table.RotationX or 0)
  1364.     local ROTATION2 = (Table.RotationY or 0)
  1365.     local ROTATION3 = (Table.RotationZ or 0)
  1366.     local MATERIAL = (Table.Material or "Neon")
  1367.     local COLOR = (Table.Color or C3(1,1,1))
  1368.     local TIME = (Table.Time or 45)
  1369.     local SOUNDID = (Table.SoundID or nil)
  1370.     local SOUNDPITCH = (Table.SoundPitch or nil)
  1371.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  1372.     coroutine.resume(coroutine.create(function()
  1373.         local PLAYSSOUND = false
  1374.         local SOUND = nil
  1375.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1376.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1377.             PLAYSSOUND = true
  1378.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1379.         end
  1380.         EFFECT.Color = COLOR
  1381.         local MSH = nil
  1382.         if TYPE == "Sphere" then
  1383.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1384.         elseif TYPE == "Block" then
  1385.             MSH = IT("BlockMesh",EFFECT)
  1386.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1387.         elseif TYPE == "Wave" then
  1388.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1389.         elseif TYPE == "Ring" then
  1390.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1391.         elseif TYPE == "Slash" then
  1392.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1393.         elseif TYPE == "Round Slash" then
  1394.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1395.         elseif TYPE == "Swirl" then
  1396.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1397.         elseif TYPE == "Skull" then
  1398.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1399.         elseif TYPE == "Crystal" then
  1400.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1401.         end
  1402.         if MSH ~= nil then
  1403.             local MOVESPEED = nil
  1404.             if MOVEDIRECTION ~= nil then
  1405.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1406.             end
  1407.             local GROWTH = SIZE - ENDSIZE
  1408.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1409.             if TYPE == "Block" then
  1410.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1411.             else
  1412.                 EFFECT.CFrame = CFRAME
  1413.             end
  1414.             for LOOP = 1, TIME+1 do
  1415.                 Swait()
  1416.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  1417.                 if TYPE == "Wave" then
  1418.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1419.                 end
  1420.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1421.                 if TYPE == "Block" then
  1422.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1423.                 else
  1424.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1425.                 end
  1426.                 if MOVEDIRECTION ~= nil then
  1427.                     local ORI = EFFECT.Orientation
  1428.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1429.                     EFFECT.Orientation = ORI
  1430.                 end
  1431.             end
  1432.             if PLAYSSOUND == false then
  1433.                 EFFECT:remove()
  1434.             else
  1435.                 SOUND.Stopped:Connect(function()
  1436.                     EFFECT:remove()
  1437.                 end)
  1438.             end
  1439.         else
  1440.             if PLAYSSOUND == false then
  1441.                 EFFECT:remove()
  1442.             else
  1443.                 repeat Swait() until SOUND.Playing == false
  1444.                 EFFECT:remove()
  1445.             end
  1446.         end
  1447.     end))
  1448. end
  1449.  
  1450. function MakeForm(PART,TYPE)
  1451.     if TYPE == "Cyl" then
  1452.         local MSH = IT("CylinderMesh",PART)
  1453.     elseif TYPE == "Ball" then
  1454.         local MSH = IT("SpecialMesh",PART)
  1455.         MSH.MeshType = "Sphere"
  1456.     elseif TYPE == "Wedge" then
  1457.         local MSH = IT("SpecialMesh",PART)
  1458.         MSH.MeshType = "Wedge"
  1459.     end
  1460. end
  1461.  
  1462. Debris = game:GetService("Debris")
  1463.  
  1464. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1465.     local DIRECTION = CF(StartPos,EndPos).lookVector
  1466.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1467. end
  1468.  
  1469. function turnto(position)
  1470.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1471. end
  1472.  
  1473. function SpawnTrail(FROM,TO,BIG)
  1474.     local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
  1475.     MakeForm(TRAIL,"Cyl")
  1476.     local DIST = (FROM - TO).Magnitude
  1477.     if BIG == true then
  1478.         TRAIL.Size = VT(0.5,DIST,0.5)
  1479.     else
  1480.         TRAIL.Size = VT(0.25,DIST,0.25)
  1481.     end
  1482.     TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1483.     coroutine.resume(coroutine.create(function()
  1484.         for i = 1, 5 do
  1485.             Swait()
  1486.             TRAIL.Transparency = TRAIL.Transparency + 0.1
  1487.         end
  1488.         TRAIL:remove()
  1489.     end))
  1490. end
  1491.  
  1492. local asd = Instance.new("ParticleEmitter")
  1493. asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
  1494. asd.LightEmission = .1
  1495. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  1496. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
  1497. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  1498. asd.Transparency = bbb
  1499. asd.Size = aaa
  1500. asd.ZOffset = .9
  1501. asd.Acceleration = Vector3.new(0, -15, 0)
  1502. asd.LockedToPart = false
  1503. asd.EmissionDirection = "Back"
  1504. asd.Lifetime = NumberRange.new(1, 2)
  1505. asd.Rotation = NumberRange.new(-100, 100)
  1506. asd.RotSpeed = NumberRange.new(-100, 100)
  1507. asd.Speed = NumberRange.new(10)
  1508. asd.Enabled = false
  1509. asd.VelocitySpread = 999
  1510.  
  1511. function getbloody(victim,amount)
  1512.     local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  1513.     PART.CFrame = victim.CFrame
  1514.     local HITPLAYERSOUNDS = {"356551938","264486467"}
  1515.     Debris:AddItem(PART,5)
  1516.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1517.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1518.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  1519.     local prtcl = asd:Clone()
  1520.     prtcl.Parent = PART
  1521.     prtcl:Emit(amount*10)
  1522. end
  1523.  
  1524. local Particle = IT("ParticleEmitter",nil)
  1525. Particle.Enabled = false
  1526. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
  1527. Particle.LightEmission = 0.5
  1528. Particle.Rate = 150
  1529. Particle.ZOffset = 1
  1530. Particle.Rotation = NumberRange.new(-180, 180)
  1531. Particle.RotSpeed = NumberRange.new(-180, 180)
  1532. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  1533. Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
  1534.  
  1535. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  1536. function ParticleEmitter(Table)
  1537.     local PRTCL = Particle:Clone()
  1538.     local Speed = Table.Speed or 5
  1539.     local Drag = Table.Drag or 0
  1540.     local Size1 = Table.Size1 or 1
  1541.     local Size2 = Table.Size2 or 5
  1542.     local Lifetime1 = Table.Lifetime1 or 1
  1543.     local Lifetime2 = Table.Lifetime2 or 1.5
  1544.     local Parent = Table.Parent or Torso
  1545.     local Emit = Table.Emit or 100
  1546.     local Offset = Table.Offset or 360
  1547.     local Acel = Table.Acel or VT(0,0,0)
  1548.     local Enabled = Table.Enabled or false
  1549.     PRTCL.Parent = Parent
  1550.     PRTCL.Size = NumberSequence.new(Size1,Size2)
  1551.     PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  1552.     PRTCL.Speed = NumberRange.new(Speed)
  1553.     PRTCL.VelocitySpread = Offset
  1554.     PRTCL.Drag = Drag
  1555.     PRTCL.Acceleration = Acel
  1556.     if Enabled == false then
  1557.         PRTCL:Emit(Emit)
  1558.         Debris:AddItem(PRTCL,Lifetime2)
  1559.     else
  1560.         PRTCL.Enabled = true
  1561.     end
  1562.     return PRTCL
  1563. end
  1564.  
  1565. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1566.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1567. end
  1568.  
  1569. function PositiveAngle(NUMBER)
  1570.     if NUMBER >= 0 then
  1571.         NUMBER = 0
  1572.     end
  1573.     return NUMBER
  1574. end
  1575.  
  1576. function NegativeAngle(NUMBER)
  1577.     if NUMBER <= 0 then
  1578.         NUMBER = 0
  1579.     end
  1580.     return NUMBER
  1581. end
  1582.  
  1583. function Swait(NUMBER)
  1584.     if NUMBER == 0 or NUMBER == nil then
  1585.         ArtificialHB.Event:wait()
  1586.     else
  1587.         for i = 1, NUMBER do
  1588.             ArtificialHB.Event:wait()
  1589.         end
  1590.     end
  1591. end
  1592.  
  1593. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1594.     local NEWMESH = IT(MESH)
  1595.     if MESH == "SpecialMesh" then
  1596.         NEWMESH.MeshType = MESHTYPE
  1597.         if MESHID ~= "nil" and MESHID ~= "" then
  1598.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1599.         end
  1600.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1601.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1602.         end
  1603.     end
  1604.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1605.     NEWMESH.Scale = SCALE
  1606.     NEWMESH.Parent = PARENT
  1607.     return NEWMESH
  1608. end
  1609.  
  1610. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1611.     local NEWPART = IT("Part")
  1612.     NEWPART.formFactor = FORMFACTOR
  1613.     NEWPART.Reflectance = REFLECTANCE
  1614.     NEWPART.Transparency = TRANSPARENCY
  1615.     NEWPART.CanCollide = false
  1616.     NEWPART.Locked = true
  1617.     NEWPART.Anchored = true
  1618.     if ANCHOR == false then
  1619.         NEWPART.Anchored = false
  1620.     end
  1621.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1622.     NEWPART.Name = NAME
  1623.     NEWPART.Size = SIZE
  1624.     NEWPART.Position = Torso.Position
  1625.     NEWPART.Material = MATERIAL
  1626.     NEWPART:BreakJoints()
  1627.     NEWPART.Parent = PARENT
  1628.     return NEWPART
  1629. end
  1630.  
  1631.     local function weldBetween(a, b)
  1632.         local weldd = Instance.new("ManualWeld")
  1633.         weldd.Part0 = a
  1634.         weldd.Part1 = b
  1635.         weldd.C0 = CFrame.new()
  1636.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  1637.         weldd.Parent = a
  1638.         return weldd
  1639.     end
  1640.  
  1641.  
  1642. function QuaternionFromCFrame(cf)
  1643.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1644.     local trace = m00 + m11 + m22
  1645.     if trace > 0 then
  1646.         local s = math.sqrt(1 + trace)
  1647.         local recip = 0.5 / s
  1648.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1649.     else
  1650.         local i = 0
  1651.         if m11 > m00 then
  1652.             i = 1
  1653.         end
  1654.         if m22 > (i == 0 and m00 or m11) then
  1655.             i = 2
  1656.         end
  1657.         if i == 0 then
  1658.             local s = math.sqrt(m00 - m11 - m22 + 1)
  1659.             local recip = 0.5 / s
  1660.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1661.         elseif i == 1 then
  1662.             local s = math.sqrt(m11 - m22 - m00 + 1)
  1663.             local recip = 0.5 / s
  1664.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1665.         elseif i == 2 then
  1666.             local s = math.sqrt(m22 - m00 - m11 + 1)
  1667.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1668.         end
  1669.     end
  1670. end
  1671.  
  1672. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1673.     local xs, ys, zs = x + x, y + y, z + z
  1674.     local wx, wy, wz = w * xs, w * ys, w * zs
  1675.     local xx = x * xs
  1676.     local xy = x * ys
  1677.     local xz = x * zs
  1678.     local yy = y * ys
  1679.     local yz = y * zs
  1680.     local zz = z * zs
  1681.     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))
  1682. end
  1683.  
  1684. function QuaternionSlerp(a, b, t)
  1685.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1686.     local startInterp, finishInterp;
  1687.     if cosTheta >= 0.0001 then
  1688.         if (1 - cosTheta) > 0.0001 then
  1689.             local theta = ACOS(cosTheta)
  1690.             local invSinTheta = 1 / SIN(theta)
  1691.             startInterp = SIN((1 - t) * theta) * invSinTheta
  1692.             finishInterp = SIN(t * theta) * invSinTheta
  1693.         else
  1694.             startInterp = 1 - t
  1695.             finishInterp = t
  1696.         end
  1697.     else
  1698.         if (1 + cosTheta) > 0.0001 then
  1699.             local theta = ACOS(-cosTheta)
  1700.             local invSinTheta = 1 / SIN(theta)
  1701.             startInterp = SIN((t - 1) * theta) * invSinTheta
  1702.             finishInterp = SIN(t * theta) * invSinTheta
  1703.         else
  1704.             startInterp = t - 1
  1705.             finishInterp = t
  1706.         end
  1707.     end
  1708.     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
  1709. end
  1710.  
  1711. function Clerp(a, b, t)
  1712.     local qa = {QuaternionFromCFrame(a)}
  1713.     local qb = {QuaternionFromCFrame(b)}
  1714.     local ax, ay, az = a.x, a.y, a.z
  1715.     local bx, by, bz = b.x, b.y, b.z
  1716.     local _t = 1 - t
  1717.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1718. end
  1719.  
  1720. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1721.     local frame = IT("Frame")
  1722.     frame.BackgroundTransparency = TRANSPARENCY
  1723.     frame.BorderSizePixel = BORDERSIZEPIXEL
  1724.     frame.Position = POSITION
  1725.     frame.Size = SIZE
  1726.     frame.BackgroundColor3 = COLOR
  1727.     frame.BorderColor3 = BORDERCOLOR
  1728.     frame.Name = NAME
  1729.     frame.Parent = PARENT
  1730.     return frame
  1731. end
  1732.  
  1733. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1734.     local label = IT("TextLabel")
  1735.     label.BackgroundTransparency = 1
  1736.     label.Size = UD2(1, 0, 1, 0)
  1737.     label.Position = UD2(0, 0, 0, 0)
  1738.     label.TextColor3 = TEXTCOLOR
  1739.     label.TextStrokeTransparency = STROKETRANSPARENCY
  1740.     label.TextTransparency = TRANSPARENCY
  1741.     label.FontSize = TEXTFONTSIZE
  1742.     label.Font = TEXTFONT
  1743.     label.BorderSizePixel = BORDERSIZEPIXEL
  1744.     label.TextStrokeColor3 = C3(1,1,1)
  1745.     label.TextScaled = false
  1746.     label.Text = TEXT
  1747.     label.Name = NAME
  1748.     label.Parent = PARENT
  1749.     return label
  1750. end
  1751.  
  1752. function NoOutlines(PART)
  1753.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1754. end
  1755.  
  1756. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1757.     local NEWWELD = IT(TYPE)
  1758.     NEWWELD.Part0 = PART0
  1759.     NEWWELD.Part1 = PART1
  1760.     NEWWELD.C0 = C0
  1761.     NEWWELD.C1 = C1
  1762.     NEWWELD.Parent = PARENT
  1763.     return NEWWELD
  1764. end
  1765.  
  1766. local S = IT("Sound")
  1767. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1768.     local NEWSOUND = nil
  1769.     coroutine.resume(coroutine.create(function()
  1770.         NEWSOUND = S:Clone()
  1771.         NEWSOUND.Parent = PARENT
  1772.         NEWSOUND.Volume = VOLUME
  1773.         NEWSOUND.Pitch = PITCH
  1774.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1775.         NEWSOUND:play()
  1776.         if DOESLOOP == true then
  1777.             NEWSOUND.Looped = true
  1778.         else
  1779.             repeat wait(1) until NEWSOUND.Playing == false
  1780.             NEWSOUND:remove()
  1781.         end
  1782.     end))
  1783.     return NEWSOUND
  1784. end
  1785.  
  1786. function CFrameFromTopBack(at, top, back)
  1787.     local right = top:Cross(back)
  1788.     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)
  1789. end
  1790.  
  1791. --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})
  1792. function WACKYEFFECT(Table)
  1793.     local TYPE = (Table.EffectType or "Sphere")
  1794.     local SIZE = (Table.Size or VT(1,1,1))
  1795.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1796.     local TRANSPARENCY = (Table.Transparency or 0)
  1797.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1798.     local CFRAME = (Table.CFrame or Torso.CFrame)
  1799.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  1800.     local ROTATION1 = (Table.RotationX or 0)
  1801.     local ROTATION2 = (Table.RotationY or 0)
  1802.     local ROTATION3 = (Table.RotationZ or 0)
  1803.     local MATERIAL = (Table.Material or "Neon")
  1804.     local COLOR = (Table.Color or C3(66/255, 0/255, 127/2551))
  1805.     local TIME = (Table.Time or 45)
  1806.     local SOUNDID = (Table.SoundID or nil)
  1807.     local SOUNDPITCH = (Table.SoundPitch or nil)
  1808.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  1809.     coroutine.resume(coroutine.create(function()
  1810.         local PLAYSSOUND = false
  1811.         local SOUND = nil
  1812.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Dark indigo"), "Effect", VT(1,1,1), true)
  1813.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1814.             PLAYSSOUND = true
  1815.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1816.         end
  1817.         EFFECT.Color = COLOR
  1818.         local MSH = nil
  1819.         if TYPE == "Sphere" then
  1820.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1821.         elseif TYPE == "Block" then
  1822.             MSH = IT("BlockMesh",EFFECT)
  1823.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1824.         elseif TYPE == "Wave" then
  1825.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1826.         elseif TYPE == "Ring" then
  1827.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1828.         elseif TYPE == "Slash" then
  1829.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1830.         elseif TYPE == "Round Slash" then
  1831.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1832.         elseif TYPE == "Swirl" then
  1833.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1834.         elseif TYPE == "Skull" then
  1835.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1836.         elseif TYPE == "Crystal" then
  1837.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1838.         end
  1839.         if MSH ~= nil then
  1840.             local MOVESPEED = nil
  1841.             if MOVEDIRECTION ~= nil then
  1842.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1843.             end
  1844.             local GROWTH = SIZE - ENDSIZE
  1845.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1846.             if TYPE == "Block" then
  1847.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1848.             else
  1849.                 EFFECT.CFrame = CFRAME
  1850.             end
  1851.             for LOOP = 1, TIME+1 do
  1852.                 Swait()
  1853.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  1854.                 if TYPE == "Wave" then
  1855.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1856.                 end
  1857.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1858.                 if TYPE == "Block" then
  1859.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1860.                 else
  1861.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1862.                 end
  1863.                 if MOVEDIRECTION ~= nil then
  1864.                     local ORI = EFFECT.Orientation
  1865.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1866.                     EFFECT.Orientation = ORI
  1867.                 end
  1868.             end
  1869.             if PLAYSSOUND == false then
  1870.                 EFFECT:remove()
  1871.             else
  1872.                 repeat Swait() until SOUND.Playing == false
  1873.                 EFFECT:remove()
  1874.             end
  1875.         else
  1876.             if PLAYSSOUND == false then
  1877.                 EFFECT:remove()
  1878.             else
  1879.                 repeat Swait() until SOUND.Playing == false
  1880.                 EFFECT:remove()
  1881.             end
  1882.         end
  1883.     end))
  1884. end
  1885.  
  1886. function MakeForm(PART,TYPE)
  1887.     if TYPE == "Cyl" then
  1888.         local MSH = IT("CylinderMesh",PART)
  1889.     elseif TYPE == "Ball" then
  1890.         local MSH = IT("SpecialMesh",PART)
  1891.         MSH.MeshType = "Sphere"
  1892.     elseif TYPE == "Wedge" then
  1893.         local MSH = IT("SpecialMesh",PART)
  1894.         MSH.MeshType = "Wedge"
  1895.     end
  1896. end
  1897.  
  1898. Debris = game:GetService("Debris")
  1899.  
  1900. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1901.     local DIRECTION = CF(StartPos,EndPos).lookVector
  1902.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1903. end
  1904.  
  1905. function turnto(position)
  1906.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1907. end
  1908.  
  1909. --//=================================\\
  1910. --||         WEAPON CREATION
  1911. --\\=================================//
  1912.  
  1913. Humanoid.Parent = nil
  1914. RootPart.Size = RootPart.Size*SIZE
  1915. Torso.Size = Torso.Size*SIZE
  1916. RightArm.Size = RightArm.Size*SIZE
  1917. RightLeg.Size = RightLeg.Size*SIZE
  1918. LeftArm.Size = LeftArm.Size*SIZE
  1919. LeftLeg.Size = LeftLeg.Size*SIZE
  1920. RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  1921. RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  1922. Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1923. Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1924. RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  1925. LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  1926. RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1927. LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1928. RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1929. LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1930. Head.Size = Head.Size*SIZE
  1931. RootJoint.Parent = RootPart
  1932. Neck.Parent = Torso
  1933. RightShoulder.Parent = Torso
  1934. LeftShoulder.Parent = Torso
  1935. RightHip.Parent = Torso
  1936. LeftHip.Parent = Torso
  1937.  
  1938. Humanoid.DisplayDistanceType = "None"
  1939. local naeeym2 = IT("BillboardGui",Character)
  1940. naeeym2.AlwaysOnTop = true
  1941. naeeym2.Size = UDim2.new(5,35,2,15)
  1942. naeeym2.StudsOffset = Vector3.new(0,2,0)
  1943. naeeym2.MaxDistance = 75
  1944. naeeym2.Adornee = Character.Head
  1945. naeeym2.Name = "Name"
  1946. local tecks2 = IT("TextLabel",naeeym2)
  1947. tecks2.BackgroundTransparency = 1
  1948. tecks2.TextScaled = true
  1949. tecks2.BorderSizePixel = 0
  1950. tecks2.Text = "The Ruler Of Space And Time"
  1951. tecks2.Font = "Fantasy"
  1952. tecks2.TextSize = 30
  1953. tecks2.TextStrokeTransparency = 0
  1954. tecks2.TextColor3 = C3(0,0,0)
  1955. tecks2.TextStrokeColor3 = C3(255/255, 255/255, 0/255)
  1956. tecks2.Size = UDim2.new(1,0,0.5,0)
  1957. tecks2.Parent = naeeym2
  1958. local top = Instance.new("Shirt")
  1959. top.ShirtTemplate = "rbxassetid://36929738"
  1960. top.Parent = Character
  1961. top.Name = "Cloth"
  1962. local bottom = Instance.new("Pants")
  1963. bottom.PantsTemplate = "rbxassetid://36929780"
  1964. bottom.Parent = Character
  1965. bottom.Name = "Cloth"
  1966.  
  1967. local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Really black", "Hat", VT(1,1,1),false)
  1968. PRT.Color = C3(0,0,0)
  1969. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
  1970. CreateMesh("SpecialMesh", PRT, "FileMesh", "", "", VT(1,1,1)*SIZE, VT(0,0,0))
  1971. PRT.Transparency = 1
  1972. local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Detail", VT(1,1,1),false)
  1973. PRT.Color = C3(0,0,0)
  1974. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  1975. CreateMesh("SpecialMesh", PRT, "FileMesh", "636922328", "636922344", VT(0.06,0.06,0.06)*SIZE, VT(0,0.08,1))
  1976. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(1,1.2,0.2),false)
  1977. PRT.Color = C3(255/255, 0/255, 0/255)
  1978. MakeForm(PRT,"Ball")
  1979. PRT.Transparency = 1
  1980. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  1981. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.4,0.5),false)
  1982. PRT.Transparency = 1
  1983. PRT.Color = C3(255/255, 255/255, 0/255)
  1984. MakeForm(PRT,"Ball")
  1985. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
  1986. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  1987. PRT.Transparency = 1
  1988. PRT.Color = C3(255/255, 255/255, 0/255)
  1989. MakeForm(PRT,"Ball")
  1990. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  1991. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  1992. PRT.Color = C3(255/255, 255/255, 0/255)
  1993. MakeForm(PRT,"Ball")
  1994. PRT.Transparency = 1
  1995.  
  1996. local Aura = Instance.new('ParticleEmitter')
  1997. Aura.Name = "Aura"
  1998. Aura.Texture = "rbxassetid://"
  1999. Aura.Parent = PRT
  2000. Aura.LightEmission = 0.3
  2001. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2002. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(255/255, 0/255, 0/255))
  2003. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2004. Aura.LockedToPart = false
  2005. Aura.Lifetime = NumberRange.new(2)
  2006. Aura.Rate = 30
  2007. Aura.Speed = NumberRange.new(1)
  2008. Aura.EmissionDirection = "Top"
  2009. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  2010.  
  2011. local Particle = IT("ParticleEmitter",nil)
  2012. Particle.Enabled = false
  2013. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
  2014. Particle.LightEmission = 0.5
  2015. Particle.Rate = 150
  2016. Particle.ZOffset = 0.2
  2017. Particle.Rotation = NumberRange.new(-180, 180)
  2018. Particle.RotSpeed = NumberRange.new(-180, 180)
  2019. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  2020. Particle.Color = ColorSequence.new(C3(0,0,0),C3(0,0,0))
  2021.  
  2022. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  2023. function ParticleEmitter(Table)
  2024.     local PRTCL = Particle:Clone()
  2025.     local Speed = Table.Speed or 5
  2026.     local Drag = Table.Drag or 0
  2027.     local Size1 = Table.Size1 or 1
  2028.     local Size2 = Table.Size2 or 5
  2029.     local Lifetime1 = Table.Lifetime1 or 1
  2030.     local Lifetime2 = Table.Lifetime2 or 1.5
  2031.     local Parent = Table.Parent or Torso
  2032.     local Emit = Table.Emit or 100
  2033.     local Offset = Table.Offset or 360
  2034.     local Acel = Table.Acel or VT(0,0,0)
  2035.     local Enabled = Table.Enabled or false
  2036.     PRTCL.Parent = Parent
  2037.     PRTCL.Size = NumberSequence.new(Size1,Size2)
  2038.     PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  2039.     PRTCL.Speed = NumberRange.new(Speed)
  2040.     PRTCL.VelocitySpread = Offset
  2041.     PRTCL.Drag = Drag
  2042.     PRTCL.Acceleration = Acel
  2043.     if Enabled == false then
  2044.         PRTCL:Emit(Emit)
  2045.         Debris:AddItem(PRTCL,Lifetime2)
  2046.     else
  2047.         PRTCL.Enabled = true
  2048.     end
  2049.     return PRTCL
  2050. end
  2051.  
  2052.  
  2053. local Handle = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.2,0.6,0.2),false)
  2054. local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
  2055. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.2,0.5,0.2),false)
  2056. MakeForm(Part,"Wedge")
  2057. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
  2058. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.2,0.3,0.2),false)
  2059. MakeForm(Part,"Wedge")
  2060. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
  2061. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.3,0.3,0.3),false)
  2062. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2063. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.3,0.5,0.5),false)
  2064. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2065. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.4,0.4,0.4),false)
  2066. MakeForm(Part,"Cyl")
  2067. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2068. for i = 1, 8 do
  2069.     local Piece = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Eye", VT(0,0.35,0.41),false)
  2070.     CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
  2071. end
  2072. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Eye", VT(0.38,0.41,0.38),false)
  2073. MakeForm(Part,"Cyl")
  2074. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2075. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.37,0.5,0.37),false)
  2076. MakeForm(Part,"Ball")
  2077. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2078. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.2,0.7,0.4),false)
  2079. MakeForm(Part,"Wedge")
  2080. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
  2081. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.3,0.4,0.2),false)
  2082. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2083. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.35,0.35,0.35),false)
  2084. MakeForm(Part,"Cyl")
  2085. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2086. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.5,0.1,0.5),false)
  2087. MakeForm(Part,"Cyl")
  2088. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2089. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.5,0.1,0.45),false)
  2090. MakeForm(Part,"Cyl")
  2091. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2092. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.2,0.5,0.2),false)
  2093. MakeForm(Part,"Wedge")
  2094. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
  2095. local LASTPART = Handle
  2096. for i = 1, 10 do
  2097.     if LASTPART == Handle then
  2098.         local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.1,0.2,0),false)
  2099.         LASTPART = Part
  2100.         CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2101.     else
  2102.         local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.1,0.05,0),false)
  2103.         CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
  2104.         LASTPART = Part
  2105.     end
  2106. end
  2107.  
  2108. local Barrel = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.15,2,0.15),false)
  2109. MakeForm(Barrel,"Cyl")
  2110. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2111. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0.25,1,0.25),false)
  2112. MakeForm(Part,"Cyl")
  2113. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
  2114. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0,0.1,0.2),false)
  2115. MakeForm(Part,"Wedge")
  2116. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  2117. local Hole = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Eye", VT(0.125,0,0.125),false)
  2118. MakeForm(Hole,"Cyl")
  2119. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
  2120. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Light gray", "Part", VT(0,0,0),false)
  2121. local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  2122. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
  2123. local Part = CreatePart(3, Weapon, "SmoothPlastic", 0, 0.5, "Light gray", "Eye", VT(0,0,0),false)
  2124. local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  2125. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
  2126. coroutine.resume(coroutine.create(function()
  2127.     while wait() do
  2128.         GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
  2129.         GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
  2130.     end
  2131. end))
  2132.  
  2133. ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  2134. --ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  2135.  
  2136. for _, c in pairs(Weapon:GetDescendants()) do
  2137.     if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  2138.         c.Material = "Glass"
  2139.         c.Color = C3(0,0,0)
  2140.     elseif c.ClassName == "Part" and c.Name == "Eye" then
  2141.         c.Color = C3(0,0,0)
  2142.         c.Material = "Neon"
  2143.     end
  2144. end
  2145.  
  2146. Weapon.Parent = Character
  2147. for _, c in pairs(Weapon:GetChildren()) do
  2148.     if c.ClassName == "Part" then
  2149.         c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2150.     end
  2151. end
  2152.  
  2153. local BODY = {}
  2154. for _, c in pairs(Character:GetDescendants()) do
  2155.     if c:IsA("BasePart") and c.Name ~= "Handle" then
  2156.         if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  2157.             c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2158.         end
  2159.         table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  2160.     elseif c:IsA("JointInstance") then
  2161.         table.insert(BODY,{c,c.Parent,nil,nil,nil})
  2162.     end
  2163. end
  2164. for e = 1, #BODY do
  2165.     if BODY[e] ~= nil then
  2166.         local STUFF = BODY[e]
  2167.         local PART = STUFF[1]
  2168.         local PARENT = STUFF[2]
  2169.         local MATERIAL = STUFF[3]
  2170.         local COLOR = STUFF[4]
  2171.         local TRANSPARENCY = STUFF[5]
  2172.         if PART.ClassName == "Part" and PART ~= RootPart then
  2173.             PART.Material = MATERIAL
  2174.             PART.Color = COLOR
  2175.             PART.Transparency = TRANSPARENCY
  2176.         end
  2177.         PART.AncestryChanged:Connect(function()
  2178.             PART.Parent = PARENT
  2179.         end)
  2180.     end
  2181. end
  2182.  
  2183. Humanoid.Died:connect(function()
  2184.     Humanoid.Parent = nil
  2185.     Humanoid.MaxHealth = "inf"
  2186.     Humanoid.Health = "inf"
  2187.     refit()
  2188.     Humanoid.Parent = Character
  2189.     CreateSound("907330011", Head, 10, 1.2)
  2190. end)
  2191.  
  2192. local LASTPART = Head
  2193. for i = 1, 24 do
  2194.     local MATH = (1-(i/30))
  2195.     if LASTPART == Head then
  2196.        
  2197.         local Aura = Instance.new('ParticleEmitter')
  2198. Aura.Name = "Aura"
  2199. Aura.Texture = "rbxassetid://"
  2200. Aura.Parent = Horn
  2201. Aura.LightEmission = 0.8
  2202. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2203. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2204. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2205. Aura.LockedToPart = true
  2206. Aura.Lifetime = NumberRange.new(2)
  2207. Aura.Rate = 25
  2208. Aura.Speed = NumberRange.new(0.1)
  2209. Aura.EmissionDirection = "Top"
  2210.     else
  2211.        
  2212.                 local Aura = Instance.new('ParticleEmitter')
  2213. Aura.Name = "Aura"
  2214. Aura.Texture = "rbxassetid://"
  2215. Aura.Parent = Horn
  2216. Aura.LightEmission = 0.8
  2217. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2218. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2219. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2220. Aura.LockedToPart = true
  2221. Aura.Lifetime = NumberRange.new(2)
  2222. Aura.Rate = 25
  2223. Aura.Speed = NumberRange.new(0.1)
  2224. Aura.EmissionDirection = "Top"
  2225.     end
  2226. end
  2227. local LASTPART = Head
  2228. for i = 1, 24 do
  2229.     local MATH = (1-(i/30))
  2230.     if LASTPART == Head then
  2231.        
  2232.                 local Aura = Instance.new('ParticleEmitter')
  2233. Aura.Name = "Aura"
  2234. Aura.Texture = "rbxassetid://"
  2235. Aura.LightEmission = 0.8
  2236. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2237. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2238. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2239. Aura.LockedToPart = true
  2240. Aura.Lifetime = NumberRange.new(2)
  2241. Aura.Rate = 25
  2242. Aura.Speed = NumberRange.new(0.1)
  2243. Aura.EmissionDirection = "Top"
  2244.     else
  2245. Aura.Name = "Aura"
  2246. Aura.Texture = "rbxassetid://"
  2247. Aura.LightEmission = 0.8
  2248. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2249. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2250. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2251. Aura.LockedToPart = true
  2252. Aura.Lifetime = NumberRange.new(2)
  2253. Aura.Rate = 25
  2254. Aura.Speed = NumberRange.new(0.1)
  2255. Aura.EmissionDirection = "Top"
  2256.     end
  2257. end
  2258. local LASTPART = Head
  2259. for i = 1, 8 do
  2260.     local MATH = (1-(i/14))
  2261.     if LASTPART == Head then
  2262.        
  2263.                 local Aura = Instance.new('ParticleEmitter')
  2264. Aura.Name = "Aura"
  2265. Aura.Texture = "rbxassetid://"
  2266. Aura.LightEmission = 0.8
  2267. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2268. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2269. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2270. Aura.LockedToPart = true
  2271. Aura.Lifetime = NumberRange.new(2)
  2272. Aura.Rate = 25
  2273. Aura.Speed = NumberRange.new(0.1)
  2274. Aura.EmissionDirection = "Top"
  2275.     else
  2276.        
  2277.                 local Aura = Instance.new('ParticleEmitter')
  2278. Aura.Name = "Aura"
  2279. Aura.Texture = "rbxassetid://"
  2280. Aura.Parent = Horn
  2281. Aura.LightEmission = 0.8
  2282. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2283. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2284. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2285. Aura.LockedToPart = true
  2286. Aura.Lifetime = NumberRange.new(2)
  2287. Aura.Rate = 25
  2288. Aura.Speed = NumberRange.new(0.1)
  2289. Aura.EmissionDirection = "Top"
  2290.     end
  2291. end
  2292. local LASTPART = Head
  2293. for i = 1, 8 do
  2294.     local MATH = (1-(i/14))
  2295.     if LASTPART == Head then
  2296.                 local Aura = Instance.new('ParticleEmitter')
  2297. Aura.Name = "Aura"
  2298. Aura.Texture = "rbxassetid://"
  2299. Aura.Parent = Horn
  2300. Aura.LightEmission = 0.8
  2301. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2302. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2303. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2304. Aura.LockedToPart = true
  2305. Aura.Lifetime = NumberRange.new(2)
  2306. Aura.Rate = 25
  2307. Aura.Speed = NumberRange.new(0.1)
  2308. Aura.EmissionDirection = "Top"
  2309.     else
  2310.         local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  2311.         CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(10), RAD(-3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
  2312.         LASTPART = Horn
  2313.         Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),0/255)
  2314.                 local Aura = Instance.new('ParticleEmitter')
  2315. Aura.Name = "Aura"
  2316. Aura.Texture = "rbxassetid://"
  2317. Aura.Parent = Horn
  2318. Aura.LightEmission = 0.8
  2319. Aura.Transparency = NumberSequence.new(0,0.6,1)
  2320. Aura.Color = ColorSequence.new(Color3.new(255/255, 255/255, 255/255),Color3.new(0/255, 0/255, 0/255))
  2321. Aura.Size = NumberSequence.new(0.3,0.2,0.1)
  2322. Aura.LockedToPart = true
  2323. Aura.Lifetime = NumberRange.new(2)
  2324. Aura.Rate = 25
  2325. Aura.Speed = NumberRange.new(0.1)
  2326. Aura.EmissionDirection = "Top"
  2327.     end
  2328. end
  2329. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
  2330. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2331. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
  2332. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  2333. MakeForm(PRT,"Cyl")
  2334. local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Mid gray", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
  2335. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  2336. MakeForm(PRT,"Cyl")
  2337. PRT.Color = C3(255/255, 255/255, 0/255)
  2338. local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
  2339. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  2340. MakeForm(RING,"Cyl")
  2341. RING.Color = C3(0,0,0)
  2342. for i = 1, 12 do
  2343.     local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0)*SIZE,false)
  2344.     PRT.Color = C3(0,0,0)
  2345.     local MSH = IT("BlockMesh",PRT)
  2346.     MSH.Scale = VT(0.6,1,1)
  2347.     CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD((360/12)*i), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.2*SIZE))
  2348. end
  2349. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15)*SIZE,false)
  2350. PRT.Color = C3(0,0,0)
  2351. local MSH = IT("BlockMesh",PRT)
  2352. MSH.Scale = VT(0.4,1,1)
  2353. local WATCH1 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.075*SIZE))
  2354. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
  2355. PRT.Color = C3(0,0,0)
  2356. local MSH = IT("BlockMesh",PRT)
  2357. MSH.Scale = VT(0.4,1,1)
  2358. local WATCH2 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -(0.075/1.5)*SIZE))
  2359. coroutine.resume(coroutine.create(function()
  2360.     while true do
  2361.         Swait()
  2362.         CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
  2363.         WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
  2364.         WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
  2365.         if CLOCKLOOP <= -150 then
  2366.             if VALUE1 == false then
  2367.                 CLOCKLOOP = 0
  2368.                 WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = RING.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255, 255, 0), SoundID = 743521450, SoundPitch = 1.2, SoundVolume = 2})
  2369.                 local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
  2370.                 ApplyAoE(HITPOS,10,15,45,75,true)
  2371.                 WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(15,2,15), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255, 255, 0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 4})
  2372.                 WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255, 255, 0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 4})
  2373.                 if CLOCKTARGET ~= nil then
  2374.                     CLOCKTARGET.Health = CLOCKTARGET.Health - 20
  2375.                     if CLOCKTARGET.Torso ~= nil then
  2376.                         CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
  2377.                     end
  2378.                     if CLOCKTARGET.Health == 0 then
  2379.                         CLOCKTARGET = nil
  2380.                     end
  2381.                 end
  2382.             end
  2383.         end
  2384.     end
  2385. end))
  2386.  
  2387. for _, c in pairs(Weapon:GetChildren()) do
  2388.     if c.ClassName == "Part" then
  2389.         c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2390.     end
  2391. end
  2392.  
  2393. Neck.Name = "Weld"
  2394. RootJoint.Name = "Weld"
  2395. RightShoulder.Name = "Weld"
  2396. LeftShoulder.Name = "Weld"
  2397. RightHip.Name = "Weld"
  2398. LeftHip.Name = "Weld"
  2399.  
  2400. local BODY = {}
  2401. for _, c in pairs(Character:GetDescendants()) do
  2402.     if c:IsA("BasePart") and c.Name ~= "Handle" then
  2403.         if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  2404.             c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2405.         end
  2406.         table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  2407.     elseif c:IsA("JointInstance") then
  2408.         table.insert(BODY,{c,c.Parent,nil,nil,nil})
  2409.     end
  2410. end
  2411. for e = 1, #BODY do
  2412.     if BODY[e] ~= nil then
  2413.         local STUFF = BODY[e]
  2414.         local PART = STUFF[1]
  2415.         local PARENT = STUFF[2]
  2416.         local MATERIAL = STUFF[3]
  2417.         local COLOR = STUFF[4]
  2418.         local TRANSPARENCY = STUFF[5]
  2419.         if PART.ClassName == "Part" and PART ~= RootPart then
  2420.             PART.Material = MATERIAL
  2421.             PART.Color = COLOR
  2422.             PART.Transparency = TRANSPARENCY
  2423.         end
  2424.         PART.AncestryChanged:Connect(function()
  2425.             PART.Parent = PARENT
  2426.         end)
  2427.     end
  2428. end
  2429.  
  2430. function refit()
  2431.     Character.Parent = workspace
  2432.     for e = 1, #BODY do
  2433.         if BODY[e] ~= nil then
  2434.             local STUFF = BODY[e]
  2435.             local PART = STUFF[1]
  2436.             local PARENT = STUFF[2]
  2437.             local MATERIAL = STUFF[3]
  2438.             local COLOR = STUFF[4]
  2439.             local TRANSPARENCY = STUFF[5]
  2440.             if PART.ClassName == "Part" and PART ~= RootPart then
  2441.                 PART.Material = MATERIAL
  2442.                 PART.Color = COLOR
  2443.                 PART.Transparency = TRANSPARENCY
  2444.             end
  2445.             if PART.Parent ~= PARENT then
  2446.                 Humanoid:remove()
  2447.                 PART.Parent = PARENT
  2448.                 Humanoid = IT("Humanoid",Character)
  2449.             end
  2450.         end
  2451.     end
  2452. end
  2453. local SKILLTEXTCOLOR = C3(255/255, 255/255, 0/255)
  2454. local SKILLFONT = "Fantasy"
  2455. local SKILLTEXTSIZE = 7
  2456.  
  2457. Weapon.Parent = Character
  2458. Humanoid.Parent = Character
  2459.  
  2460. Humanoid.Died:connect(function()
  2461.     Humanoid.Parent = nil
  2462.     Humanoid.MaxHealth = "inf"
  2463.     Humanoid.Health = "inf"
  2464.     refit()
  2465.     Humanoid.Parent = Character
  2466.     CreateSound("907330011", Head, 10, 1.2)
  2467. end)
  2468.  
  2469. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  2470. local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  2471. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  2472. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  2473. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  2474. local SKILL7FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.85, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 7 Frame")
  2475. local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.100, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
  2476. local SKILL9FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.475, 0, 0.100, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 9 Frame")
  2477. local SKILL10FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.225, 0, 0.100, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 10 Frame")
  2478.  
  2479. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Time Spikes", SKILLTEXTCOLOR, SKILLTEXTSIZE-1, SKILLFONT, 0, 2, 0, "Text 1")
  2480. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Time Stop", SKILLTEXTCOLOR, SKILLTEXTSIZE-1, SKILLFONT, 0, 2, 0, "Text 2")
  2481. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Space's Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
  2482. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Time Shot", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
  2483. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Red Star", SKILLTEXTCOLOR, SKILLTEXTSIZE+1, SKILLFONT, 0, 2, 0, "Text 5")
  2484. local SKILL7TEXT = CreateLabel(SKILL7FRAME, "[R] Time Blast", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 7")
  2485. local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[F] Ultimate Blast", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 6")
  2486. local SKILL9TEXT = CreateLabel(SKILL9FRAME, "[Q] Warp", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 9")
  2487. local SKILL10TEXT = CreateLabel(SKILL10FRAME, "[E] God Mode", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 10")
  2488.  
  2489. function printbye(Name)
  2490.     local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
  2491.     warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
  2492. end
  2493.  
  2494. workspace.ChildAdded:connect(function(instance)
  2495.     for BANISH = 1, #TOBANISH do
  2496.         if TOBANISH[BANISH] ~= nil then
  2497.             if instance.Name == TOBANISH[BANISH] then
  2498.                 coroutine.resume(coroutine.create(function()
  2499.                     printbye(instance.Name)
  2500.                     instance:ClearAllChildren()
  2501.                     Debris:AddItem(instance,0.0005)
  2502.                 end))
  2503.             end
  2504.         end
  2505.     end
  2506. end)
  2507.  
  2508.  
  2509. --//=================================\\
  2510. --||            DAMAGING
  2511. --\\=================================//
  2512.  
  2513. function Kill(Foe)
  2514.     if Foe then
  2515.         coroutine.resume(coroutine.create(function()
  2516.             --if game.Players:FindFirstChild(Foe.Name) then
  2517.                 table.insert(TOBANISH,Foe.Name)
  2518.                 printbye(Foe.Name)
  2519.             --end
  2520.             Foe.Archivable = true
  2521.             local CLONE = Foe:Clone()
  2522.             Foe:Destroy()
  2523.             CLONE.Parent = Effects
  2524.             CLONE:BreakJoints()
  2525.             local MATERIALS = {"Glass","Neon"}
  2526.             for _, c in pairs(CLONE:GetDescendants()) do
  2527.                 if c:IsA("BasePart") then
  2528.                     if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
  2529.                         CreateSound(340722848, c, 10, 1, false)
  2530.                     end
  2531.                     c.Anchored = true
  2532.                     c.Transparency = c.Transparency + 0.2
  2533.                     c.Material = MATERIALS[MRANDOM(1,2)]
  2534.                     c.Color = C3(0,0,0)
  2535.                     if c.ClassName == "MeshPart" then
  2536.                         c.TextureID = ""
  2537.                     end
  2538.                     if c:FindFirstChildOfClass("SpecialMesh") then
  2539.                         c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  2540.                     end
  2541.                     if c:FindFirstChildOfClass("Decal") then
  2542.                         c:FindFirstChildOfClass("Decal"):remove()
  2543.                     end
  2544.                     c.Name = "Banished"
  2545.                     c.CanCollide = false
  2546.                 else
  2547.                     c:remove()
  2548.                 end
  2549.             end
  2550.             local A = false
  2551.             for i = 1, 35 do
  2552.                 if A == false then
  2553.                     A = true
  2554.                 elseif A == true then
  2555.                     A = false
  2556.                 end
  2557.                 for _, c in pairs(CLONE:GetDescendants()) do
  2558.                     if c:IsA("BasePart") then
  2559.                         c.Anchored = true
  2560.                         c.Material = MATERIALS[MRANDOM(1,2)]
  2561.                         c.Transparency = c.Transparency + 0.8/35
  2562.                         if A == false then
  2563.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  2564.                         elseif A == true then
  2565.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)                       
  2566.                         end
  2567.                     end
  2568.                 end
  2569.                 Swait()
  2570.             end
  2571.             CLONE:remove()
  2572.         end))
  2573.     end
  2574. end
  2575.  
  2576. local asd = Instance.new("ParticleEmitter")
  2577. asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
  2578. asd.LightEmission = .1
  2579. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  2580. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
  2581. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  2582. asd.Transparency = bbb
  2583. asd.Size = aaa
  2584. asd.ZOffset = .9
  2585. asd.Acceleration = Vector3.new(0, -15, 0)
  2586. asd.LockedToPart = false
  2587. asd.EmissionDirection = "Back"
  2588. asd.Lifetime = NumberRange.new(1, 2)
  2589. asd.Rotation = NumberRange.new(-100, 100)
  2590. asd.RotSpeed = NumberRange.new(-100, 100)
  2591. asd.Speed = NumberRange.new(10)
  2592. asd.Enabled = false
  2593. asd.VelocitySpread = 999
  2594. function getbloody(victim,amount)
  2595.     local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  2596.     PART.CFrame = victim.CFrame
  2597.     local HITPLAYERSOUNDS = {"356551938","264486467"}
  2598.     Debris:AddItem(PART,5)
  2599.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  2600.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  2601.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  2602.     local prtcl = asd:Clone()
  2603.     prtcl.Parent = PART
  2604.     prtcl:Emit(amount*10)
  2605. end
  2606. function Banish(Char)
  2607.     local NewCharacter = Instance.new("Model",Effects)
  2608.     NewCharacter.Name = "Ow im ded ;-;"
  2609.     for _, c in pairs(Char:GetDescendants()) do
  2610.         if c:IsA("BasePart") and c.Transparency == 0 then
  2611.             if c.Parent == Char then
  2612.                 getbloody(c,5)
  2613.             end
  2614.             c:BreakJoints()
  2615.             c.Material = "Glass"
  2616.             c.Color = C3(0.5,0,0)
  2617.             c.CanCollide = true
  2618.             c.Transparency = 0.3
  2619.             if c:FindFirstChildOfClass("SpecialMesh") then
  2620.                 c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  2621.             end
  2622.             if c.Name == "Head" then
  2623.                 c:ClearAllChildren()
  2624.                 c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  2625.             end
  2626.             if c.ClassName == "MeshPart" then
  2627.                 c.TextureID = ""
  2628.             end
  2629.             if c:FindFirstChildOfClass("BodyPosition") then
  2630.                 c:FindFirstChildOfClass("BodyPosition"):remove()
  2631.             end
  2632.             if c:FindFirstChildOfClass("ParticleEmitter") then
  2633.                 c:FindFirstChildOfClass("ParticleEmitter"):remove()
  2634.             end
  2635.             c.Parent = NewCharacter
  2636.             c.Name = "DeadPart"
  2637.             c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  2638.             c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  2639.         end
  2640.     end
  2641.     Char:remove()
  2642.     Debris:AddItem(NewCharacter,5)
  2643. end
  2644.  
  2645. function ApplyAoE(POSITION,RANGE,ISBANISH)
  2646.     local CHILDREN = workspace:GetDescendants()
  2647.     for index, CHILD in pairs(CHILDREN) do
  2648.         if CHILD.ClassName == "Model" and CHILD ~= Character then
  2649.             local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2650.             if HUM then
  2651.                 local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2652.                 if TORSO then
  2653.                     if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2654.                         if ISBANISH == true then
  2655.                             Banish(CHILD)
  2656.                         else
  2657.                             if ISBANISH == "Gravity" then
  2658.                                 HUM.PlatformStand = true
  2659.                                 if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  2660.                                     local grav = Instance.new("BodyPosition",TORSO)
  2661.                                     grav.D = 15
  2662.                                     grav.P = 20000
  2663.                                     grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  2664.                                     grav.position = TORSO.Position
  2665.                                     grav.Name = "V3BanishForce"..Player.Name
  2666.                                 else
  2667.                                     TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
  2668.                                     TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
  2669.                                 end
  2670.                             else
  2671.                                 HUM.PlatformStand = false
  2672.                             end
  2673.                         end
  2674.                     elseif ISBANISH == "Gravity" then
  2675.                         if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  2676.                             TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
  2677.                             HUM.PlatformStand = false
  2678.                         end
  2679.                     end
  2680.                 end
  2681.             end
  2682.         end
  2683.     end
  2684. end
  2685. function ApplyKill(POSITION,RANGE,BRUTAL)
  2686.     local CHILDREN = workspace:GetDescendants()
  2687.     for index, CHILD in pairs(CHILDREN) do
  2688.         if CHILD.ClassName == "Model" and CHILD ~= Character then
  2689.             local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2690.             if HUM then
  2691.                 local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2692.                 if TORSO then
  2693.                     if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2694.                         if BRUTAL == true then
  2695.                             Banish(CHILD)
  2696.                         else
  2697.                             CHILD:BreakJoints()
  2698.                         end
  2699.                     end
  2700.                 end
  2701.             end
  2702.         end
  2703.     end
  2704. end
  2705.  
  2706. function ApplyDamage(Humanoid,Damage)
  2707.     Damage = Damage * DAMAGEMULTIPLIER
  2708.     if Humanoid.Health ~= 0 then
  2709.         Humanoid.Health = Humanoid.Health - Damage
  2710.     end
  2711. end
  2712.  
  2713. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL,OPTION)
  2714.     local CHILDREN = workspace:GetDescendants()
  2715.     for index, CHILD in pairs(CHILDREN) do
  2716.         if CHILD.ClassName == "Model" and CHILD ~= Character then
  2717.             local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2718.             if HUM then
  2719.                 local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2720.                 if TORSO then
  2721.                     if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2722.                         if INSTAKILL == true then
  2723.                             CHILD:BreakJoints()
  2724.                             if OPTION ~= nil then
  2725.                                 Kill(CHILD,OPTION)
  2726.                             end
  2727.                         else
  2728.                             local DMG = MRANDOM(MINDMG,MAXDMG)
  2729.                             ApplyDamage(HUM,DMG)
  2730.                         end
  2731.                         if FLING ~= 0 then
  2732.                             for _, c in pairs(CHILD:GetChildren()) do
  2733.                                 if c:IsA("BasePart") then
  2734.                                     local bv = Instance.new("BodyVelocity")
  2735.                                     bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2736.                                     bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  2737.                                     bv.Parent = c
  2738.                                     Debris:AddItem(bv,0.05)
  2739.                                 end
  2740.                             end
  2741.                         end
  2742.                     end
  2743.                 end
  2744.             end
  2745.         end
  2746.     end
  2747. end
  2748.  
  2749. function Kill(Victim,Fire)
  2750.     coroutine.resume(coroutine.create(function()
  2751.         local NIL = script.TotalNil:Clone()
  2752.         NIL.Parent = Victim
  2753.         NIL.Disabled = false
  2754.         if Fire ~= true then
  2755.             Victim:BreakJoints()
  2756.             for _, c in pairs(Victim:GetChildren()) do
  2757.                 if c:IsA("BasePart") then
  2758.                     c.Anchored = true
  2759.                 end
  2760.             end
  2761.             for _, c in pairs(Victim:GetChildren()) do
  2762.                 if c:IsA("BasePart") then
  2763.                     Shatter(c)
  2764.                 end
  2765.             end
  2766.         else
  2767.             Victim:BreakJoints()
  2768.             local FIRES = {}
  2769.             for _, e in pairs(Victim:GetDescendants()) do
  2770.                 if e:IsA("BasePart") and e.Name ~= "HumanoidRootPart" and e.Parent.ClassName ~= "Folder" then
  2771.                     e.Transparency = 1
  2772.                     e:ClearAllChildren()
  2773.                     local FIRE = script.HellFire:Clone()
  2774.                     FIRE.Parent = e
  2775.                     FIRE.Enabled = true
  2776.                     table.insert(FIRES,FIRE)
  2777.                 elseif e.ClassName == "Decal" then
  2778.                     e:remove()
  2779.                 end
  2780.             end
  2781.             for i = 1, 50 do
  2782.                 Victim:BreakJoints()
  2783.                 wait()
  2784.             end
  2785.             for i = 1, #FIRES do
  2786.                 FIRES[i].Enabled = false
  2787.             end
  2788.             wait(1.1)
  2789.             Victim:remove()
  2790.         end
  2791.     end))
  2792. end
  2793.  
  2794. --//=================================\\
  2795. --||    ATTACK FUNCTIONS AND STUFF
  2796. --\\=================================//
  2797.  
  2798. function Kill(Foe)
  2799.     if Foe then
  2800.         coroutine.resume(coroutine.create(function()
  2801.             --if game.Players:FindFirstChild(Foe.Name) then
  2802.                 table.insert(TOBANISH,Foe.Name)
  2803.                 printbye(Foe.Name)
  2804.             --end
  2805.             Foe.Archivable = true
  2806.             local CLONE = Foe:Clone()
  2807.             Foe:Destroy()
  2808.             CLONE.Parent = Effects
  2809.             CLONE:BreakJoints()
  2810.             local MATERIALS = {"Glass","Neon"}
  2811.             for _, c in pairs(CLONE:GetDescendants()) do
  2812.                 if c:IsA("BasePart") then
  2813.                     if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
  2814.                         CreateSound(340722848, c, 10, 1, false)
  2815.                     end
  2816.                     c.Anchored = true
  2817.                     c.Transparency = c.Transparency + 0.2
  2818.                     c.Material = MATERIALS[MRANDOM(1,2)]
  2819.                     c.Color = C3(0,0,0)
  2820.                     if c.ClassName == "MeshPart" then
  2821.                         c.TextureID = ""
  2822.                     end
  2823.                     if c:FindFirstChildOfClass("SpecialMesh") then
  2824.                         c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  2825.                     end
  2826.                     if c:FindFirstChildOfClass("Decal") then
  2827.                         c:FindFirstChildOfClass("Decal"):remove()
  2828.                     end
  2829.                     c.Name = "Banished"
  2830.                     c.CanCollide = false
  2831.                 else
  2832.                     c:remove()
  2833.                 end
  2834.             end
  2835.             local A = false
  2836.             for i = 1, 35 do
  2837.                 if A == false then
  2838.                     A = true
  2839.                 elseif A == true then
  2840.                     A = false
  2841.                 end
  2842.                 for _, c in pairs(CLONE:GetDescendants()) do
  2843.                     if c:IsA("BasePart") then
  2844.                         c.Anchored = true
  2845.                         c.Material = MATERIALS[MRANDOM(1,2)]
  2846.                         c.Transparency = c.Transparency + 0.8/35
  2847.                         if A == false then
  2848.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  2849.                         elseif A == true then
  2850.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)                       
  2851.                         end
  2852.                     end
  2853.                 end
  2854.                 Swait()
  2855.             end
  2856.             CLONE:remove()
  2857.         end))
  2858.     end
  2859. end
  2860.  
  2861. function Madness()
  2862.     ATTACK = true
  2863.     Rooted = false
  2864.     local GYRO = IT("BodyGyro",RootPart)
  2865.     GYRO.D = 750
  2866.     GYRO.P = 20000
  2867.     GYRO.MaxTorque = VT(0,40000000,0)
  2868.     local LOCKED = true
  2869.     local SHOT = false
  2870.     coroutine.resume(coroutine.create(function()
  2871.         for i=0, 1, 0.1 / Animation_Speed do
  2872.             GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  2873.             Swait()
  2874.             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 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2875.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2876.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2877.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2878.         end
  2879.         LOCKED = false
  2880.         SHOT = true
  2881.         repeat
  2882.             GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  2883.             Swait()
  2884.             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 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2885.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2886.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2887.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2888.         until HOLD == false and SHOT == false
  2889.         for i=0, 0.3, 0.1 / Animation_Speed do
  2890.             Swait()
  2891.             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 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2892.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2893.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2894.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2895.         end
  2896.         GYRO:remove()
  2897.         ATTACK = false
  2898.         Rooted = false
  2899.     end))
  2900.     repeat wait() until LOCKED == false
  2901.     repeat
  2902.         SHOT = true
  2903.         wait(0.2)
  2904.         SHOT = false
  2905.         local BULLET = Lightning({Material = "Glass", FadeIn = true, Color = C3(0,0,0), Start = Hole.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  2906.         local HIT = BULLET.Hit
  2907.         local HITPOS = BULLET.End
  2908.         if HIT then
  2909.             if HIT.Parent:FindFirstChildOfClass("Humanoid") then
  2910.                 Kill(HIT.Parent)
  2911.             end
  2912.         end
  2913.         WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = C3(1,0,0), SoundID = 304999618, SoundPitch = 2, SoundVolume = 1})
  2914.         WACKYEFFECT({Time = 15, EffectType = "Skull", Size = VT(0,0,0), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 2})
  2915.         WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(1,1.2,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1, SoundVolume = 2})
  2916.         WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(2,1,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame*CF(0, 1, 0.045) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 145080998, SoundPitch = 1, SoundVolume = 2})
  2917.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  2918.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  2919.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  2920.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  2921.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  2922.     until HOLD == false
  2923. end
  2924.  
  2925. function Banisher_Bullet()
  2926.     ATTACK = true
  2927.     Rooted = false
  2928.     for i=0, 0.4, 0.1 / Animation_Speed do
  2929.         Swait()
  2930.         turnto(Mouse.Hit.p)
  2931.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2932.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
  2933.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2934.     end
  2935.     repeat
  2936.         for i=0, 0.2, 0.1 / Animation_Speed do
  2937.             Swait()
  2938.             turnto(Mouse.Hit.p)
  2939.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2940.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
  2941.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2942.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2943.         end
  2944.         local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
  2945.         SpawnTrail(Hole.Position,POS)
  2946.         if HIT ~= nil then
  2947.             if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  2948.                 Banish(HIT.Parent)
  2949.             end
  2950.         end
  2951.         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(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2952.         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(0,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2953.         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(0,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2954.         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(0,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2955.         for i=0, 0.3, 0.1 / Animation_Speed do
  2956.             Swait()
  2957.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2958.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
  2959.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2960.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2961.         end
  2962.     until KEYHOLD == false
  2963.     ATTACK = false
  2964.     Rooted = false
  2965. end
  2966.  
  2967. function AttackTemplate()
  2968.     ATTACK = true
  2969.     Rooted = false
  2970.     for i=0, 1, 0.1 / Animation_Speed do
  2971.         Swait()
  2972.         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)
  2973.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2974.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2975.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2976.         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)
  2977.         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)
  2978.     end
  2979.     ATTACK = false
  2980.     Rooted = false
  2981. end
  2982.  
  2983. function HI()
  2984.     ATTACK = true
  2985.     Rooted = false
  2986.     local LOOP = 0
  2987.     for i=0, 0.1, 0.1 / Animation_Speed do
  2988.         Swait()
  2989.         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)
  2990.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  2991.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2992.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(5-3 * COS(SINE / 6)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2993.     end
  2994.     for i=0, 3, 0.1 / Animation_Speed do
  2995.         Swait()
  2996.         LOOP = LOOP + 1
  2997.         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)
  2998.         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)
  2999.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3000.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.8, 0.4) * ANGLES(RAD(170), RAD(0), RAD(-25 - 25 * SIN(LOOP / 5))) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3001.     end
  3002.     for i=0, 0.1, 0.1 / Animation_Speed do
  3003.         Swait()
  3004.         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(25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3005.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3006.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3007.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(5-3 * COS(SINE / 6)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3008.     end
  3009.     ATTACK = false
  3010.     Rooted = false
  3011. end
  3012.  
  3013. function Mercy()
  3014.     ATTACK = true
  3015.     Rooted = true
  3016.     local SPOTS = {}
  3017.         for i = 1, 15 do
  3018.             Swait()
  3019.             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(25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3020.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25 - 2.5 * SIN(SINE / 12))), 0.1 / Animation_Speed)
  3021.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.75, 0) * ANGLES(RAD(170), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
  3022.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3023.         end
  3024.         WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.6, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Maroon".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3025.         for i=0, 0.5, 0.1 / Animation_Speed do
  3026.             Swait()
  3027.             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(65 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3028.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-65 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3029.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.75, 0) * ANGLES(RAD(170), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3030.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3031.         end
  3032.         local HITFLOOR,HITPOS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 150, Character)
  3033.         table.insert(SPOTS,HITPOS)
  3034.         CreateSound(145080998, Hole, 2, 1, false)
  3035.         Lightning({Material = "Neon", FadeIn = false, Color = C3(1,0,0), Start = Hole.CFrame*CF(0, 1, 0.045).p, End = Hole.CFrame*CF(0, 1000, 0.045).p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  3036.     coroutine.resume(coroutine.create(function()
  3037.         local POS = Mouse.Hit.p
  3038.         local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Really black", "Strike", VT(0,0,0))
  3039.         MakeForm(RAY,"Cyl")
  3040.         local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Really black", "Strike", VT(0,0,0))
  3041.         MakeForm(SPHERE,"Ball")
  3042.         local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Strike", VT(0,0,0))
  3043.         MakeForm(SHIELD,"Ball")
  3044.         SHIELD.CFrame = CF(POS)
  3045.         RAY.CFrame = CF(POS)
  3046.         SPHERE.CFrame = CF(POS)
  3047.         CreateSound(440145570, SPHERE, 10, 0.8, false)
  3048.         CreateSound(415700134, SPHERE, 10, 0.8, false)
  3049.         for i = 1, 200 do
  3050.             Swait()
  3051.             WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3052.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,25,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  3053.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*2,5+(i),SPHERE.Size.X*2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  3054.             RAY.Size = RAY.Size + VT(0.05,0,0.05)
  3055.             SPHERE.Size = SPHERE.Size + VT(0.4,0.4,0.4)
  3056.             SHIELD.Size = SPHERE.Size + VT(0.5,0.5,0.5)
  3057.             ApplyKill(SPHERE.Position,SPHERE.Size.X/2,true)
  3058.         end
  3059.         for i = 1, 45 do
  3060.             Swait()
  3061.             RAY.Transparency = RAY.Transparency + 1/45
  3062.             SPHERE.Transparency = RAY.Transparency
  3063.             SHIELD.Transparency = SPHERE.Transparency + 1/45
  3064.         end
  3065.         RAY:remove()
  3066.         SHIELD:remove()
  3067.         SPHERE:remove()
  3068.     end))
  3069.     ATTACK = false
  3070.     Rooted = false
  3071. end
  3072. function Warp()
  3073.     for e = 1, #BODY do
  3074.         if BODY[e] ~= nil then
  3075.             local STUFF = BODY[e]
  3076.             local PART = STUFF[1]
  3077.             if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
  3078.                 local PRT = PART:Clone()
  3079.                 PRT.Anchored = true
  3080.                 PRT.CanCollide = false
  3081.                 PRT.Material = "Neon"
  3082.                 PRT.Color = C3(0,0,0)
  3083.                 PRT.Name = "WarpEffect"
  3084.                 PRT.Parent = Effects
  3085.                 PRT.CFrame = PART.CFrame
  3086.                 PRT:BreakJoints()
  3087.                 if PRT:FindFirstChildOfClass("Sound") then
  3088.                     PRT:FindFirstChildOfClass("Sound"):remove()
  3089.                 end
  3090.                 if PRT:FindFirstChildOfClass("Decal") then
  3091.                     PRT:FindFirstChildOfClass("Decal"):remove()
  3092.                 end
  3093.                 coroutine.resume(coroutine.create(function()
  3094.                     for i = 1, 100 do
  3095.                         Swait()
  3096.                         PRT.Transparency = PRT.Transparency + 1/100
  3097.                     end
  3098.                     PRT:remove()
  3099.                 end))
  3100.             end
  3101.         end
  3102.     end
  3103.     CreateSound(217767125, Torso, 10, 1)
  3104.     local POS = RootPart.Orientation
  3105.     RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
  3106.     RootPart.Orientation = POS
  3107.     RootJoint.Parent = RootPart
  3108.             WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Eyes.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  3109.     ATTACK = false
  3110.     Rooted = false
  3111. end
  3112. function killnearest(position,range,maxstrength,BRUTAL,RANGE)
  3113.     for i,v in ipairs(workspace:GetChildren()) do
  3114.     local body = v:GetChildren()
  3115.         for part = 1, #body do
  3116.             if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  3117.                 if(body[part].Position - position).Magnitude < range then
  3118.                     if v.ClassName == "Model" then
  3119.                         v:BreakJoints()
  3120.                     end
  3121.                     --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
  3122.                     local bv = Instance.new("BodyVelocity")
  3123.                     bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  3124.                     bv.velocity = CF(position,body[part].Position).lookVector*maxstrength
  3125.                     bv.Parent = body[part]
  3126.                     Debris:AddItem(bv,0.2)
  3127.                 end
  3128.             end
  3129.         end
  3130.         if v.ClassName == "Part" then
  3131.             if v.Anchored == false and (v.Position - position).Magnitude < range then
  3132.                 --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
  3133.                 v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  3134.             end
  3135.         end
  3136.     end
  3137. end
  3138. function Darkness()
  3139.         ATTACK = true
  3140.         Rooted = true
  3141.         local GYRO = IT("BodyGyro",RootPart)
  3142.         GYRO.D = 100
  3143.         GYRO.P = 2000
  3144.         GYRO.MaxTorque = VT(0,4000000,0)
  3145.         GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3146.         CreateSound("429459101", RightArm, 10, 0.8)
  3147.         for i=0, 3.5, 0.1 / Animation_Speed do
  3148.             Swait()
  3149.             GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3150.                     WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,10,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  3151.                 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(-25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3152.                 Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3153.                 RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.75 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3154.                 LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3155.         end
  3156.         GYRO:remove()
  3157.         for i=0, 0.15, 0.1 / Animation_Speed do
  3158.             Swait()
  3159.             GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  3160.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.3,0.3,0.3), Size2 = VT(0,10,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hole.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  3161.                 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(-25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3162.                 Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3163.                 RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.75 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3164.                 LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3165.         end
  3166.         local BOMBSPOTS = {}
  3167.         for i = 1, 25 do
  3168.             local SPOT = CreatePart(3, Effects, "Neon", 0, 0, "Relly black", "Blade", VT(8,1,8))
  3169.             SPOT.Color = SKILLTEXTCOLOR
  3170.             SPOT.CFrame = RootPart.CFrame*CF((MRANDOM(-15,15)/40)*i,-5,-i*5)
  3171.             table.insert(BOMBSPOTS,SPOT)
  3172.             MakeForm(SPOT,"Cyl2")
  3173.         end
  3174.         for i=0, 0.2, 0.1 / Animation_Speed do
  3175.             Swait()
  3176.         WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.6, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3177.                 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(-25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3178.                 Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3179.                 RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.75 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3180.                 LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3181.         end
  3182.         ATTACK = false
  3183.         Rooted = false
  3184.         coroutine.resume(coroutine.create(function()
  3185.             Swait(3)
  3186.             for i = 1, #BOMBSPOTS do
  3187.                 if BOMBSPOTS[i] ~= nil then
  3188.                     local E = BOMBSPOTS[i]
  3189.                     coroutine.resume(coroutine.create(function()
  3190.                         local BLADE = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Relly black", "Blade", VT(0,0,0))
  3191.                         BLADE.Color = SKILLTEXTCOLOR
  3192.                         CreateMesh("SpecialMesh", BLADE, "FileMesh", "93108071", "", VT(0.6,1,0.4)*3, VT(0,0,0))
  3193.                         CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], BLADE, 4, 0.6)
  3194.                         BLADE.CFrame = E.CFrame*CF(0,-3,0)*ANGLES(RAD(MRANDOM(-15,15)),RAD(90),RAD(MRANDOM(-15,15)))
  3195.                         for i = 1, 10 do
  3196.                             Swait()
  3197.                         WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.5,0.5,0.5), Size2 = VT(0,50,0), Transparency = 0, Transparency2 = 1, CFrame = CF(BLADE.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Glass", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  3198.                             killnearest(BLADE.Position,6,80)
  3199.                             BLADE.CFrame = BLADE.CFrame*CF(0,0.3,0)
  3200.                             BLADE.Transparency = BLADE.Transparency - 0.1
  3201.                         end
  3202.                         Swait(45)
  3203.                         for i = 1, 100 do
  3204.                             Swait()
  3205.                             BLADE.Transparency = BLADE.Transparency + 0.01
  3206.                             E.Transparency = E.Transparency + 0.01
  3207.                         end
  3208.                         BLADE:remove()
  3209.                         E:remove()
  3210.                     end))
  3211.                 end
  3212.             end
  3213.         end))
  3214. end
  3215. function Death()
  3216.     if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  3217.         local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
  3218.         local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  3219.         if TORSO and HUM.Health > 0 then
  3220.             ATTACK = true
  3221.             Rooted = true
  3222.             local GYRO = IT("BodyGyro",RootPart)
  3223.             GYRO.D = 175
  3224.             GYRO.P = 20000
  3225.             GYRO.MaxTorque = VT(0,40000,0)
  3226.                 for i=0, 1, 0.1 / Animation_Speed do
  3227.                     Swait()
  3228.                     GYRO.cframe = CF(RootPart.Position,TORSO.Position)
  3229.                     RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
  3230.                     Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
  3231.                     RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3232.                 end
  3233.         WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.6, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3234.         WACKYEFFECT({Time = 15, EffectType = "Block", Size = VT(15,15,15), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.6, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really black".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3235.             local MAGIC = ParticleEmitter({Speed = 5, Drag = 3, Size1 = 1.7, Size2 = 0, Lifetime1 = 1, Lifetime2 = 3, Parent = TORSO, Emit = 100, Offset = 360, Enabled = true})
  3236.             MAGIC.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(1,0)})
  3237.             local grav = Instance.new("BodyPosition",TORSO)
  3238.             grav.D = 1500
  3239.             grav.P = 20000
  3240.             grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  3241.             grav.position = TORSO.Position+VT(0,15,0)
  3242.             Debris:AddItem(grav,10)
  3243.             Debris:AddItem(MAGIC,10)
  3244.             CreateSound(429459101, Torso, 7, 1, false)
  3245.             CreateSound(429459101, TORSO, 7, 1, false)
  3246.             GYRO:remove()
  3247.             ATTACK = false
  3248.             Rooted = false
  3249.         end
  3250.     end
  3251. end
  3252.  
  3253. function TakeOnMe()
  3254.     Speed = 5
  3255.     local MEME = CreateSound(288703954, Effects, 2, 1, false)
  3256.     ATTACK = true
  3257.     Rooted = false
  3258.     local DANCE = true
  3259.     local KEY = Mouse.KeyDown:connect(function(NEWKEY)
  3260.         if NEWKEY == "p" then
  3261.             DANCE = false
  3262.         end
  3263.     end)
  3264.     while true do
  3265.         for i = 1, 15 do
  3266.             Swait()
  3267.             MEME.Parent = Effects
  3268.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.4+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3269.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3270.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3271.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3272.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3273.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, 0, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3274.         end
  3275.         if DANCE == false then
  3276.             break
  3277.         end
  3278.         for i = 1, 15 do
  3279.             Swait()
  3280.             MEME.Parent = Effects
  3281.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.4+((15-i)/45)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3282.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3283.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3284.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.55, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(10)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3285.             RightHip.C0 = Clerp(RightHip.C0, CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3286.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3287.         end
  3288.     end
  3289.     KEY:Disconnect()
  3290.     MEME:remove()
  3291.     Speed = 25
  3292.     ATTACK = false
  3293.     Rooted = false
  3294. end
  3295.  
  3296. function TimeStop ()
  3297.     local HITFLOOR,HITPOS = Raycast(RootPart.CFrame*CF(0,0,-6.5).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
  3298.     CHOICE = 6
  3299.     CreateSound(1193182658, Character, 5, 1, false)
  3300.      back = CreateSound(1841228386, Character, 9999, 1, false)
  3301.     local killsky = Instance.new('Sky', game:GetService'Lighting')
  3302. killsky.SkyboxBk = "rbxassetid://1013852"
  3303. killsky.SkyboxDn = "rbxassetid://1013853"
  3304. killsky.SkyboxFt = "rbxassetid://1013850"
  3305. killsky.SkyboxLf = "rbxassetid://1013851"
  3306. killsky.SkyboxRt = "rbxassetid://1013849"
  3307. killsky.SkyboxUp = "rbxassetid://1013854"
  3308. killsky.StarCount = 0
  3309. killsky.SunAngularSize = 0
  3310. killsky.MoonAngularSize = 0
  3311. killsky.MoonTextureId = ""
  3312. killsky.CelestialBodiesShown = false
  3313. game.Lighting.FogColor = Color3.new(1,1,0)
  3314. game.Lighting.FogEnd = 1400
  3315.     if HITFLOOR ~= nil then
  3316.         ATTACK = false
  3317.         Rooted = false
  3318.         local RINGSPIN = true
  3319.         local CONSTRUCTING = true
  3320.         local RING = CreatePart(3, Effects, "Neon", 0, 1, "New Yeller", "Ring", VT(0,0,0))
  3321.         RING.Color = C3(0,0,0)
  3322.         MakeForm(RING,"Cyl")
  3323.         RING.CFrame = CF(HITPOS)
  3324.         coroutine.resume(coroutine.create(function()
  3325.             repeat
  3326.                 Swait()
  3327.                 RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3328.             until CONSTRUCTING == false
  3329.             repeat
  3330.                 Swait()
  3331.                 RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3332.             until RINGSPIN == false
  3333.             for i = 1, 25 do
  3334.                 Swait()
  3335.                 RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3336.                 RING.Size = RING.Size - VT(0.15,0,0.15)
  3337.                 --DECAL.Transparency = DECAL.Transparency + 1/25
  3338.                 RING.Transparency = RING.Transparency + 1/25
  3339.             end
  3340.             RING:remove()
  3341.         end))
  3342.         for i = 1, 15 do
  3343.             Swait()
  3344.             RING.Size = RING.Size + VT(0,0,0)
  3345.             RING.Transparency = RING.Transparency - 1/15
  3346.         end
  3347.         end
  3348.     local RANDOMEFFECT = MRANDOM(1)
  3349.     local BASE = CreatePart(3, Character, "Neon", 0, 0, "New Yeller", "Black", VT(2,1.8,2))
  3350.             BASE.Color = C3(0,0,0)
  3351.             BASE.Transparency = 1
  3352.             BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
  3353.     if RANDOMEFFECT == 1 then
  3354.                 local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "New Yeller", "Field", VT(0.3,0.3,0.3))
  3355.                 FIELD.CFrame = BASE.CFrame
  3356.                 MakeForm(FIELD,"Ball")
  3357.                 for i = 1, 50 do
  3358.                     Swait()
  3359.                     FIELD.Size = VT(0,0,0)
  3360.                     FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
  3361.                 end
  3362.                 end
  3363.                 wait(0.2)
  3364.                 local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "New Yeller", "Field", VT(0.3,0.3,0.3))
  3365.                 FIELD.CFrame = BASE.CFrame
  3366.                 local LOOP = CreateSound(1393698948, Character, 0, 1, true)
  3367.                 coroutine.resume(coroutine.create(function()
  3368.                     for i = 1, 75 do
  3369.                         Swait()
  3370.                         LOOP.Volume = LOOP.Volume + 10/75
  3371.                         LOOP.Parent = FIELD
  3372.                         local CHILDREN = workspace:GetDescendants()
  3373.                         for index, CHILD in pairs(CHILDREN) do
  3374.                             if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3375.                                 local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3376.                                 if HUM then
  3377.                                     local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3378.                                     if TORSO then
  3379.                                         if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
  3380.                                             HUM.Health = HUM.Health - 0
  3381.                                             TORSO.Velocity = VT(0,5,0)
  3382.                                             HUM.PlatformStand = true
  3383.                                             if TORSO.RotVelocity.Magnitude < 15 then
  3384.                                                 TORSO.Anchored = true
  3385.                                             end
  3386.                                         end
  3387.                                     end
  3388.                                 end
  3389.                             end
  3390.                         end
  3391.                         FIELD.Size = FIELD.Size + VT(90,90,90)
  3392.                         FIELD.Transparency = FIELD.Transparency + 0.8/75
  3393.                     end
  3394.                 for i = 1, 500 do
  3395.                         Swait()
  3396.                         LOOP.Parent = FIELD
  3397.                         local CHILDREN = workspace:GetDescendants()
  3398.                         for index, CHILD in pairs(CHILDREN) do
  3399.                             if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3400.                                 local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3401.                                 if HUM then
  3402.                                     local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3403.                                     if TORSO then
  3404.                                         if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
  3405.                                             TORSO.Velocity = VT(0,5,0)
  3406.                                             HUM.Health = HUM.Health - 0
  3407.                                             HUM.PlatformStand = true
  3408.                                             if TORSO.RotVelocity.Magnitude < 15 then
  3409.                                                 TORSO.Anchored = true
  3410.                                             end
  3411.                                         end
  3412.                                     end
  3413.                                 end
  3414.                             end
  3415.                         end
  3416.                     end
  3417.  wait (20)
  3418. back:Remove()
  3419.         CreateSound(1538466750, Character, 99999, 1, false)
  3420.         killsky:Remove()
  3421.         game.Lighting.FogEnd = 90000000
  3422.         wait (5)
  3423.         CHOICE = MRANDOM (1,5)
  3424.                     for i = 1, 25 do
  3425.                         Swait()
  3426.                         LOOP.Volume = LOOP.Volume + 10/25
  3427.                         LOOP.Parent = FIELD
  3428.                         local CHILDREN = workspace:GetDescendants()
  3429.                         for index, CHILD in pairs(CHILDREN) do
  3430.                             if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3431.                                 local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3432.                                 if HUM then
  3433.                                     local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3434.                                     if TORSO then
  3435.                                         if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
  3436.                                             TORSO.Velocity = VT(0,5,0)
  3437.                                             HUM.Health = HUM.Health - 0
  3438.                                             HUM.PlatformStand = false
  3439.                                             if TORSO.RotVelocity.Magnitude < 15 then
  3440.                                                 TORSO.Anchored = false
  3441.                                         end
  3442.                                     end
  3443.                                 end
  3444.                             end
  3445.                         end
  3446.                         FIELD.Size = FIELD.Size - VT(3,3,3)
  3447.                         FIELD.Transparency = FIELD.Transparency + 0.2/25
  3448.                              end
  3449.                         end
  3450.                 end))  
  3451.                 FIELD:Remove()
  3452.            ATTACK = false
  3453.         Rooted = false
  3454.     end
  3455.  
  3456. function FingerMagic()
  3457.     ATTACK = true
  3458.     Rooted = false
  3459.     for i=0, 0.1, 0.1 / Animation_Speed do
  3460.         Swait()
  3461.         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(25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3462.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3463.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3464.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(5-3 * COS(SINE / 6)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3465.     end
  3466.     for i=0, 1, 0.1 / Animation_Speed do
  3467.         Swait()
  3468.         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(0 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3469.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3470.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 7.5 * SIN(SINE / 12))) * ANGLES(RAD(0), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3471.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.15 + 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(160), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3472.     end
  3473.     WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 304999618, SoundPitch = 1, SoundVolume = 1})
  3474.     for i = 1, 5 do
  3475.         WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(1,1,1), Size2 = VT(0,7,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 2, SoundVolume = 1})
  3476.     end
  3477.     CreateSound(217767125, LeftArm, 10, 1, false)
  3478.     coroutine.resume(coroutine.create(function()
  3479.         local EXPLODED = false
  3480.         for i = 1, 3 do
  3481.             coroutine.resume(coroutine.create(function()
  3482.                 local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
  3483.                 if HITFLOOR then
  3484.                     local CFRAME = CF(HITPOS) * ANGLES(RAD(0), RAD((360/3)*i), RAD(0))
  3485.                     for i = 1, 35 do
  3486.                         wait()
  3487.                         for _, c in pairs(workspace:GetChildren()) do
  3488.                             if EXPLODED == false and c.ClassName == "Model" and c:FindFirstChildOfClass("Humanoid") and c ~= Character then
  3489.                                 local HUM = c:FindFirstChildOfClass("Humanoid")
  3490.                                 local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
  3491.                                 if TORSO and HUM.Health > 0 then
  3492.                                     if (TORSO.Position - CFRAME.p).Magnitude < 10 then
  3493.                                         EXPLODED = true
  3494.                                         coroutine.resume(coroutine.create(function()
  3495.                                             for i = 1, 15 do
  3496.                                                 Kill(CFRAME*CF(0,10,0).p,30+(i*4),0,0,-35,false)
  3497.                                                 wait(0.2)
  3498.                                                 WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(15+(i*2),5,15+(i*2)), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3499.                                                 WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(15,15,15)+VT(i*2,i*2,i*2), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0, CFrame = CFRAME*CF(0,10,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 304999618, SoundPitch = 1, SoundVolume = 1})
  3500.                                                 WACKYEFFECT({Time = 25, EffectType = "Block", Size = VT(12,12,12)+VT(i*2,i*2,i*2), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0, CFrame = CFRAME*CF(0,10,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0.7,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 1})
  3501.                                             end
  3502.                                             WACKYEFFECT({Time = 50, EffectType = "Block", Size = VT(15,15,15)+VT(i*2,i*2,i*2), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0, CFrame = CFRAME*CF(0,10,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 304999618, SoundPitch = 1, SoundVolume = 1})
  3503.                                             wait(1)
  3504.                                             WACKYEFFECT({Time = 60, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(100,100,100)*5, Transparency = 0.4, Transparency2 = 1, CFrame = CFRAME*CF(0,10,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0.3,0,0), SoundID = 461105534, SoundPitch = 1, SoundVolume = 10})
  3505.                                             local PART = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  3506.                                             PART.CFrame = CFRAME*CF(0,10,0)
  3507.                                             Debris:AddItem(PART,10)
  3508.                                             local PARTICLES = script.Explode:Clone()
  3509.                                             PARTICLES.Parent = PART
  3510.                                             PARTICLES:Emit(500)
  3511.                                             Kill(CFRAME*CF(0,10,0).p,45*2,0,0,350,true)
  3512.                                             WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(90,90,90)*2, Transparency = 0.8, Transparency2 = 1, CFrame = CFRAME*CF(0,10,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 3})
  3513.                                             WACKYEFFECT({EffectType = "Ring", Size = VT(00,0.01)/20, Size2 = VT(35,35,0.01), Transparency = 0.7, Transparency2 = 1, CFrame = CFRAME*CF(0,10,0)*ANGLES(RAD(0), RAD(90), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3514.                                             WACKYEFFECT({EffectType = "Ring", Size = VT(00,0.01)/20, Size2 = VT(35,35,0.01), Transparency = 0.7, Transparency2 = 1, CFrame = CFRAME*CF(0,10,0)*ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3515.                                         end))
  3516.                                     end
  3517.                                 end
  3518.                             end
  3519.                         end
  3520.                         if EXPLODED == true then
  3521.                             break
  3522.                         end
  3523.                         CFRAME = CFRAME * ANGLES(RAD(0), RAD(10), RAD(0)) * CF(0,0,-3)
  3524.                         WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(10,15,10), Size2 = VT(0,35,0), Transparency = 1, Transparency2 = 0.9, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3525.                         WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(15,15,15), Size2 = VT(0,25,0), Transparency = 1, Transparency2 = 0.6, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Maroon".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3526.                     end
  3527.                 end
  3528.             end))
  3529.         end
  3530.     end))
  3531.     for i=0, 1, 0.1 / Animation_Speed do
  3532.         Swait()
  3533.         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(0 + 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(0 - 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(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 7.5 * SIN(SINE / 12))) * ANGLES(RAD(0), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3536.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15 + 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(170), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3537.     end
  3538.     ATTACK = false
  3539.     Rooted = false
  3540. end
  3541.  
  3542. function PainlessRain()
  3543.     ATTACK = true
  3544.     Rooted = true
  3545.     local SPOTS = {}
  3546.     local BULLETS = 0
  3547.     repeat
  3548.         BULLETS = BULLETS + 1
  3549.         for i = 1, 15 do
  3550.             Swait()
  3551.             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(25 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3552.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25 - 2.5 * SIN(SINE / 12))), 0.1 / Animation_Speed)
  3553.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.75, 0) * ANGLES(RAD(170), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
  3554.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3555.         end
  3556.     until KEYHOLD == false
  3557.     for i = 1, BULLETS do
  3558.         for i=0, 0.5, 0.1 / Animation_Speed do
  3559.             Swait()
  3560.             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(65 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3561.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-65 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3562.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.75, 0) * ANGLES(RAD(170), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3563.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3564.         end
  3565.         local HITFLOOR,HITPOS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 150, Character)
  3566.         table.insert(SPOTS,HITPOS)
  3567.        
  3568.         for i=0, 0.35, 0.1 / Animation_Speed do
  3569.             Swait()
  3570.        
  3571.             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(65 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3572.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-65 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  3573.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.75, 0) * ANGLES(RAD(170), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3574.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0.4) * ANGLES(RAD(-5), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3575.         end
  3576.     end
  3577.     coroutine.resume(coroutine.create(function()
  3578.         for i = 1, #SPOTS do
  3579.             wait(0.1)
  3580.             coroutine.resume(coroutine.create(function()
  3581.                 local SPOT = SPOTS[i]
  3582.                 local BOLT = Lightning({Material = "Neon", FadeIn = true, Color = C3(1,0,0), Start = SPOT+VT(0,150,0), End = SPOT, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 125, Thicken = true})
  3583.                 local POSITION = BOLT.Pos
  3584.                 ApplyAoE(POSITION,75/2,0,0,350,true)
  3585.                 WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(50,150,50), Transparency = 0.3, Transparency2 = 1, CFrame = CF(POSITION), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 3})
  3586.                 WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(15,0,15), Size2 = VT(75,5,75), Transparency = 0, Transparency2 = 1, CFrame = CF(POSITION), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 165970126, SoundPitch = 1, SoundVolume = 4})
  3587.                 WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(15,0,15), Size2 = VT(35,15,35), Transparency = 0, Transparency2 = 1, CFrame = CF(POSITION), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = 1, SoundVolume = 7})
  3588.             end))
  3589.         end
  3590.     end))
  3591.     ATTACK = false
  3592.     Rooted = false
  3593. end
  3594.  
  3595. function Noclip()
  3596.     ATTACK = true
  3597.     Rooted = true
  3598.     UNANCHOR = false
  3599.     RootPart.Anchored = true
  3600.     local CLIPPING = true
  3601.     local MOVEMENT = nil
  3602.     CreateSound(96098241, Torso, 3, MRANDOM(9,12)/10, false)
  3603.     for i = 1, 50 do
  3604.         Swait()
  3605.         EXTRATRANS = EXTRATRANS + 0.5/50
  3606.         RootPart.CFrame = RootPart.CFrame * CF(0,(1-(i/50))/4.3,0)
  3607.         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)
  3608.         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)
  3609.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3610.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3611.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  3612.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  3613.     end
  3614.     local AURA = CreateSound(1393698948, Torso, 3, 1, true)
  3615.     local KEY = Mouse.KeyDown:connect(function(NEWKEY)
  3616.         if NEWKEY == "w" then
  3617.             MOVEMENT = "Forward"
  3618.             repeat
  3619.                 Swait()
  3620.                 RootPart.CFrame = RootPart.CFrame * CF(0,0,-0.2)
  3621.             until KEYHOLD == false
  3622.         elseif NEWKEY == "s" then
  3623.             MOVEMENT = "Backwards"
  3624.             repeat
  3625.                 Swait()
  3626.                 RootPart.CFrame = RootPart.CFrame * CF(0,0,0.2)
  3627.             until KEYHOLD == false
  3628.         elseif NEWKEY == "a" then
  3629.             MOVEMENT = "Strafe"
  3630.             repeat
  3631.                 Swait()
  3632.                 RootPart.CFrame = RootPart.CFrame * CF(0.2,0,0)
  3633.             until KEYHOLD == false
  3634.         elseif NEWKEY == "d" then
  3635.             MOVEMENT = "Strafe"
  3636.             repeat
  3637.                 Swait()
  3638.                 RootPart.CFrame = RootPart.CFrame * CF(-0.2,0,0)
  3639.             until KEYHOLD == false
  3640.         elseif NEWKEY == "e" then
  3641.             CLIPPING = false
  3642.         end
  3643.         MOVEMENT = nil
  3644.     end)
  3645.     local LOOP = 0
  3646.     repeat
  3647.         Swait()
  3648.         AURA.Parent = Torso
  3649.         LOOP = LOOP + 1
  3650.         if LOOP >= 15 then
  3651.             LOOP = 0
  3652.             WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(5,0,5), Size2 = VT(15,1,15), Transparency = 0.7, Transparency2 = 1, CFrame = CF(RootPart.CFrame*CF(0,-3.5,0).p), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-2,2)*15, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  3653.         end
  3654.         if MOVEMENT == nil then
  3655.             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)
  3656.             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)
  3657.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3658.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3659.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3660.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3661.         elseif MOVEMENT == "Forward" then
  3662.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  3663.             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)
  3664.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3665.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3666.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3667.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3668.         elseif MOVEMENT == "Backwards" then
  3669.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  3670.             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)
  3671.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3672.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3673.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3674.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3675.         elseif MOVEMENT == "Strafe" then
  3676.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(2), RAD(0), RAD(0)), 1 / Animation_Speed)
  3677.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3678.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3679.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3680.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3681.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  3682.         end
  3683.     until CLIPPING == false
  3684.     KEY:Disconnect()
  3685.     coroutine.resume(coroutine.create(function()
  3686.         for i = 1, 20 do
  3687.             Swait()
  3688.             AURA.Volume = AURA.Volume - 3/20
  3689.         end
  3690.         AURA:remove()
  3691.     end))
  3692.     CreateSound(814168787, Torso, 1, MRANDOM(9,12)/10, false)
  3693.     for i = 1, 50 do
  3694.         Swait()
  3695.         EXTRATRANS = EXTRATRANS - 0.5/50
  3696.         RootPart.CFrame = RootPart.CFrame * CF(0,-(1-(i/50))/4.3,0)
  3697.         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)
  3698.         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)
  3699.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3700.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3701.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  3702.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  3703.     end
  3704.     EXTRATRANS = 0
  3705.     UNANCHOR = true
  3706.     ATTACK = false
  3707.     Rooted = false
  3708. end
  3709.  
  3710. --//=================================\\
  3711. --||      ASSIGN THINGS TO KEYS
  3712. --\\=================================//
  3713.  
  3714. function MouseDown(Mouse)
  3715.     HOLD = true
  3716.     if ATTACK == false then
  3717.     end
  3718. end
  3719.  
  3720. function MouseUp(Mouse)
  3721. HOLD = false
  3722. end
  3723.  
  3724. function KeyDown(Key)
  3725.     KEYHOLD = true
  3726.     if Key == "q" and ATTACK == false then
  3727.         Warp()
  3728.     end
  3729.  
  3730.     if Key == "b" and ATTACK == false then
  3731.         TimeStop()
  3732.     end
  3733.  
  3734.     if Key == "v" and ATTACK == false then
  3735.         Madness()
  3736.     end
  3737.  
  3738.     if Key == "x" and ATTACK == false then
  3739.         Mercy()
  3740.     end
  3741.  
  3742.     if Key == "t" and ATTACK == false then
  3743.         HI()
  3744.     end
  3745.    
  3746.     if Key == "f" and ATTACK == false then
  3747.         FingerMagic()
  3748.     end
  3749.  
  3750.     if Key == "r" and ATTACK == false then
  3751.         PainlessRain()
  3752.     end
  3753.    
  3754.     if Key == "z" and ATTACK == false then
  3755.         Darkness()
  3756.     end
  3757.    
  3758.     if Key == "c" and ATTACK == false then
  3759.         Banisher_Bullet()
  3760.     end
  3761.    
  3762.     if Key == "e" and ATTACK == false then
  3763.         Noclip()
  3764.     end
  3765.    
  3766.     if Key == "p" and ATTACK == false then
  3767.         TakeOnMe()
  3768.     end
  3769. end
  3770.  
  3771. function KeyUp(Key)
  3772.     KEYHOLD = false
  3773. end
  3774.  
  3775.     Mouse.Button1Down:connect(function(NEWKEY)
  3776.         MouseDown(NEWKEY)
  3777.     end)
  3778.     Mouse.Button1Up:connect(function(NEWKEY)
  3779.         MouseUp(NEWKEY)
  3780.     end)
  3781.     Mouse.KeyDown:connect(function(NEWKEY)
  3782.         KeyDown(NEWKEY)
  3783.     end)
  3784.     Mouse.KeyUp:connect(function(NEWKEY)
  3785.         KeyUp(NEWKEY)
  3786.     end)
  3787.  
  3788. --//=================================\\
  3789. --\\=================================//
  3790.  
  3791.  
  3792. function unanchor()
  3793.     if UNANCHOR == true then
  3794.         RootPart.Anchored = false
  3795.     end
  3796.     g = Character:GetChildren()
  3797.     for i = 1, #g do
  3798.         if g[i].ClassName == "Part" and g[i] ~= RootPart then
  3799.             g[i].Anchored = false
  3800.         end
  3801.     end
  3802.     g = Weapon:GetChildren()
  3803.     for i = 1, #g do
  3804.         if g[i].ClassName == "Part" then
  3805.             g[i].Anchored = false
  3806.         end
  3807.     end
  3808. end
  3809.  
  3810.  
  3811. --//=================================\\
  3812. --||    WRAP THE WHOLE SCRIPT UP
  3813. --\\=================================//
  3814.  
  3815. Humanoid.Changed:connect(function(Jump)
  3816.     if Jump == "Jump" and (Disable_Jump == true) then
  3817.         Humanoid.Jump = false
  3818.     end
  3819. end)
  3820.  
  3821. while true do
  3822.     Swait()
  3823.            refit()
  3824.     script.Parent = WEAPONGUI
  3825.     for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  3826.         v:Stop();
  3827.     end
  3828.     ANIMATE.Parent = nil
  3829.     SINE = SINE + CHANGE*1.5
  3830.     local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  3831.     local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  3832.     local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
  3833.     local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
  3834.     if ANIM == "Walk" and TORSOVELOCITY > 1 then
  3835.         RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0 * COS(SINE / (WALKSPEEDVALUE / 2)) * SIZE) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3836.         Neck.C1 = Clerp(Neck.C1, CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3837.     elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  3838.         RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3839.         Neck.C1 = Clerp(Neck.C1, CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3840.     end
  3841.     if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  3842.         ANIM = "Jump"
  3843.         if ATTACK == false then
  3844.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3845.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
  3846.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3847.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3848.             RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
  3849.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
  3850.         end
  3851.     elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  3852.         ANIM = "Fall"
  3853.         if ATTACK == false then
  3854.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3855.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  3856.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3857.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3858.             RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
  3859.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
  3860.         end
  3861.     elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  3862.         ANIM = "Idle"
  3863.         if ATTACK == false then
  3864.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.5 * COS(SINE / 12)) * ANGLES(RAD(0 - 3 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3865.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3866.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75*SIZE, 0.5*SIZE, -1*SIZE) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  3867.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1*SIZE, 0.2*SIZE, -0.5*SIZE) * ANGLES(RAD(25), RAD(0), RAD(85)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  3868.             RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE - 0.05*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3869.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.8*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3870.             end
  3871.     elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  3872.         ANIM = "Walk"
  3873.         if ATTACK == false then
  3874.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.5 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  3875.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3876.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3877.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3878.             RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE - 0.05*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3879.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.8*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  3880.         end
  3881.     end
  3882.     unanchor()
  3883.     Humanoid.MaxHealth = "inf"
  3884.     Humanoid.Health = "inf"
  3885.     if Rooted == false then
  3886.         Disable_Jump = false
  3887.         Humanoid.WalkSpeed = Speed
  3888.     elseif Rooted == true then
  3889.         Disable_Jump = true
  3890.         Humanoid.WalkSpeed = 0
  3891.     end
  3892.     for _, c in pairs(Character:GetChildren()) do
  3893.         if c.ClassName == "Part" and c.Name ~= "Detail" then
  3894.             c.Material = "Fabric"
  3895.             if c:FindFirstChildOfClass("ParticleEmitter") then
  3896.                 c:FindFirstChildOfClass("ParticleEmitter"):remove()
  3897.             end
  3898.             if c ~= Head then
  3899.                 c.Color = C3(0,0,0)
  3900.             else
  3901.                 c.Color = C3(0,0,0)
  3902.             end
  3903.             if c == Head then
  3904.                 if c:FindFirstChild("face") then
  3905.                     c.face:remove()
  3906.                 end
  3907.             end
  3908.         elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
  3909.             c:remove()
  3910.         elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
  3911.             c:remove()
  3912.         end
  3913.     end
  3914.     sick.SoundId = "rbxassetid://"..bored[CHOICE]
  3915.     sick.Looped = true
  3916.     sick.Pitch = 1
  3917.     sick.Volume = 999999
  3918.     sick.Parent = Character
  3919.     sick:Resume()
  3920.     --sick.Playing = false
  3921.     Humanoid.Name = "Master of Time = "..Player.Name
  3922. end
  3923.  
  3924. --//=================================\\
  3925. --\\=================================//
  3926.  
  3927.  
  3928.  
  3929.  
  3930.  
  3931. --//====================================================\\--
  3932. --||                     END OF SCRIPT
  3933. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement