SHARE
TWEET

awdadwadwadwad

enzoflo1 Feb 16th, 2020 95 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --//====================================================\\--
  2. --||               CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4. wait(2)
  5. local Player = game.Players:FindFirstChild("IwasVivedVenom2")
  6. local FakeMouse = script.FakeMouse:Clone();
  7. FakeMouse.Parent = Player.Character;
  8. --script.FakeMouse:Destroy()
  9. do
  10.     local GUID = {}
  11.     do
  12.         GUID.IDs = {};
  13.         function GUID:new(len)
  14.             local id;
  15.             if(not len)then
  16.                 id = (tostring(function() end))
  17.                 id = id:gsub("function: ","")
  18.             else
  19.                 local function genID(len)
  20.                     local newID = ""
  21.                     for i = 1,len do
  22.                         newID = newID..string.char(math.random(48,90))
  23.                     end
  24.                     return newID
  25.                 end
  26.                 repeat id = genID(len) until not GUID.IDs[id]
  27.                 local oid = id;
  28.                 id = {Trash=function() GUID.IDs[oid]=nil; end;Get=function() return oid; end}
  29.                 GUID.IDs[oid]=true;
  30.             end
  31.             return id
  32.         end
  33.     end
  34.  
  35.     local AHB = Instance.new("BindableEvent")
  36.    
  37.     local FPS = 30
  38.    
  39.     local TimeFrame = 0
  40.    
  41.     local LastFrame = tick()
  42.     local Frame = 1/FPS
  43.    
  44.     game:service'RunService'.Heartbeat:connect(function(s,p)
  45.         TimeFrame = TimeFrame + s
  46.         if(TimeFrame >= Frame)then
  47.             for i = 1,math.floor(TimeFrame/Frame) do
  48.                 AHB:Fire()
  49.             end
  50.             LastFrame=tick()
  51.             TimeFrame=TimeFrame-Frame*math.floor(TimeFrame/Frame)
  52.         end
  53.     end)
  54.  
  55.  
  56.     function swait(dur)
  57.         if(dur == 0 or typeof(dur) ~= 'number')then
  58.             AHB.Event:wait()
  59.         else
  60.             for i = 1, dur*FPS do
  61.                 AHB.Event:wait()
  62.             end
  63.         end
  64.     end
  65.    
  66.     local oPlayer = Player
  67.     local Player = oPlayer
  68.    
  69.     local loudnesses={}
  70.     script.Parent = Player.Character
  71.     local CoAS = {Actions={}}
  72.     local Event = Instance.new("RemoteEvent")
  73.     Event.Name = "UserInputEvent"
  74.     Event.Parent = Player.Character
  75.     local Func = Instance.new("RemoteFunction")
  76.     Func.Name = "GetClientProperty"
  77.     Func.Parent = Player.Character
  78.     local fakeEvent = function()
  79.         local t = {_fakeEvent=true,Waited={},Connected={}}
  80.         t.Connect = function(self,f)
  81.             local ft={}
  82.             ft={Disconnected=false;disconnect=function(s) if(self.Function==ft)then self.Function=nil end s.Disconnected=true end}
  83.             ft.Disconnect=ft.disconnect
  84.                
  85.             ft.Func=function(...)
  86.                 for id,_ in next, t.Waited do
  87.                     t.Waited[id] = true
  88.                 end
  89.                 return f(...)
  90.             end;
  91.            
  92.             table.insert(self.Connected,ft)
  93.             return ft;
  94.         end
  95.         t.connect = t.Connect
  96.         t.Wait = function()
  97.             local guid = GUID:new(25)
  98.             local waitingId = guid:Get()
  99.             t.Waited[waitingId]=false
  100.             repeat swait() until t.Waited[waitingId]==true  
  101.             t.Waited[waitingId]=nil;
  102.             guid:Trash()
  103.         end
  104.         t.wait = t.Wait
  105.         return t
  106.     end
  107.     local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  108.     local UsIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  109.     local Run = {RenderStepped=fakeEvent()}
  110.    
  111.     function CoAS:BindAction(name,fun,touch,...)
  112.         CoAS.Actions[name] = {Name=name,Function=fun,Keys={...}}
  113.     end
  114.     function CoAS:UnbindAction(name)
  115.         CoAS.Actions[name] = nil
  116.     end
  117.     local function te(self,ev,...)
  118.         local t = self[ev]
  119.         if t and t._fakeEvent and t.Connected then
  120.             for i,v in next, t.Connected do
  121.                 if(v.Func and not v.Disconnected)then
  122.                     v.Func(...)
  123.                 else
  124.                     t.Connected[i]=nil
  125.                 end
  126.             end
  127.         end
  128.     end
  129.     m.TrigEvent = te
  130.     UsIS.TrigEvent = te
  131.     Run.TrigEvent = te
  132.     Event.OnServerEvent:Connect(function(plr,io)
  133.         if plr~=Player then return end
  134.         --[[table.foreach(io,print)
  135.         print'---']]
  136.         if io.Mouse then
  137.             m.Target = io.Target
  138.             m.Hit = io.Hit
  139.         elseif io.KeyEvent then
  140.             m:TrigEvent('Key'..io.KeyEvent,io.Key)
  141.         elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
  142.             if io.UserInputState == Enum.UserInputState.Begin then
  143.                 m:TrigEvent("Button1Down")
  144.             else
  145.                 m:TrigEvent("Button1Up")
  146.             end
  147.         end
  148.         if(not io.KeyEvent and not io.Mouse)then
  149.            
  150.             for n,t in pairs(CoAS.Actions) do
  151.                 for _,k in pairs(t.Keys) do
  152.                     if k==io.KeyCode then
  153.                         t.Function(t.Name,io.UserInputState,io)
  154.                     end
  155.                 end
  156.             end
  157.             if io.UserInputState == Enum.UserInputState.Begin then
  158.                 UsIS:TrigEvent("InputBegan",io,false)
  159.             else
  160.                 UsIS:TrigEvent("InputEnded",io,false)
  161.             end
  162.         end
  163.     end)
  164.        
  165.     Func.OnServerInvoke = function(plr,inst,play)
  166.         if plr~=Player then return end
  167.         if(inst and typeof(inst) == 'Instance' and inst:IsA'Sound')then
  168.             loudnesses[inst]=play  
  169.         end
  170.     end
  171.    
  172.     function GetClientProperty(inst,prop)
  173.         if(prop == 'PlaybackLoudness' and loudnesses[inst])then
  174.             return loudnesses[inst]
  175.         elseif(prop == 'PlaybackLoudness')then
  176.             return Func:InvokeClient(Player,'RegSound',inst)
  177.         end
  178.         return Func:InvokeClient(Player,inst,prop)
  179.     end
  180.     local oldGame = game;
  181.     function GetFakePlayer()
  182.                             local oldPlayer = Player;
  183.     local fakePlayer = newproxy(true)
  184.     getmetatable(fakePlayer).__index = function(s,i)
  185.         if(i == 'GetMouse')then
  186.             return function() return m; end
  187.         end
  188.         return Player[i]
  189.     end
  190.     getmetatable(fakePlayer).__newindex = function(s,i,v)
  191.         Player[i]=v
  192.     end
  193.     getmetatable(fakePlayer).__call=function(self,...)
  194.         if(self == fakePlayer)then self = Player end
  195.         local wh = {...}
  196.         local name = table.remove(wh,1)
  197.         for i,v in next, wh do
  198.             wh[i]=v
  199.         end
  200.         if(name == 'GetMouse')then
  201.             return m;
  202.         end
  203.         return self(name,unpack(wh))
  204.     end
  205.     getmetatable(fakePlayer).__namecall=function(self,...)
  206.         if(self == fakePlayer)then self = Player end
  207.         local tuple={...}
  208.         local name = table.remove(tuple,#tuple)
  209.    
  210.         if(name == 'GetMouse')then
  211.             return m;
  212.         else
  213.             return self[name](self,unpack(tuple))
  214.         end
  215.     end
  216.    
  217.     return fakePlayer
  218.     end
  219.     local oll = LoadLibrary;
  220.     function LoadLibrary(libtard)
  221.         local libtarddestroyed=oll(libtard)
  222.         if(libtard=='RbxUtility')then
  223.             local library={Create=function(obj)
  224.                 local inst = Instance.new(obj)
  225.                 return function(props)
  226.                     for prop,valu in next, props do
  227.                         inst[prop]=valu
  228.                     end
  229.                     return inst
  230.                 end
  231.             end}
  232.             setmetatable(library,{__index=libtarddestroyed,__newindex=function(s,i,v) libtarddestroyed[i]=v end})
  233.            
  234.             return library
  235.         else
  236.             return libtarddestroyed
  237.         end
  238.     end
  239.      fakePlayer = GetFakePlayer()
  240.     local function GetService(s,i)
  241.         local service = s:GetService(i)
  242.         if(i == 'Players')then
  243.             local oldService = service;
  244.             local fakeService = newproxy(true)
  245.             getmetatable(fakeService).__index = function(s,i)
  246.                 if(s == fakeService)then s=oldService end
  247.                 if(i == 'IwasVivedVenom2' or i == 'IwasVivedVenom2')then
  248.                     return fakePlayer
  249.                 elseif(i == 'oPlayer')then
  250.                     return oPlayer
  251.                 else
  252.                     return s[i]
  253.                 end
  254.             end
  255.             getmetatable(fakeService).__newindex = function(s,i,v)
  256.                 if(s == fakeService)then s=oldService end              
  257.                 s[i]=v
  258.             end
  259.             getmetatable(fakeService).__call=function(self,...)
  260.                 if(self == fakeService)then self = oldService end
  261.                 local wh = {...}
  262.                 local name = table.remove(wh,1)
  263.                 for i,v in next, wh do
  264.                     wh[i]=v
  265.                 end
  266.                 return self(name,unpack(wh))
  267.             end
  268.             getmetatable(fakeService).__namecall=function(self,...)
  269.                 if(self == fakeService)then self = oldService end
  270.                 local tuple={...}
  271.                 local name = table.remove(tuple,#tuple)
  272.  
  273.                 return self[name](self,unpack(tuple))
  274.                 end
  275.             getmetatable(fakeService).__metatable = 'gay'
  276.             return fakeService
  277.         elseif(i == 'RunService')then
  278.             local oldService = service;
  279.             local fakeService = newproxy(true)
  280.             getmetatable(fakeService).__index = function(s,i)
  281.                 if(s == fakeService)then s=oldService end
  282.                 return Run[i] or s[i]  
  283.             end
  284.             getmetatable(fakeService).__newindex = function(s,i,v)
  285.                 if(s == fakeService)then s=oldService end              
  286.                 s[i]=v
  287.             end
  288.             getmetatable(fakeService).__call=function(self,...)
  289.                 if(self == fakeService)then self = oldService end
  290.                 local wh = {...}
  291.                 local name = table.remove(wh,1)
  292.                 for i,v in next, wh do
  293.                     wh[i]=v
  294.                 end
  295.                 return self(name,unpack(wh))
  296.             end
  297.             getmetatable(fakeService).__namecall=function(self,...)
  298.                 if(self == fakeService)then self = oldService end
  299.                 local tuple={...}
  300.                 local name = table.remove(tuple,#tuple)
  301.  
  302.                 return self[name](self,unpack(tuple))
  303.                 end
  304.             getmetatable(fakeService).__metatable = 'gay'
  305.             return fakeService 
  306.         elseif(i == 'UserInputService')then
  307.             return UsIS
  308.         elseif(i == 'ContextActionService')then
  309.             return CoAS;
  310.         else
  311.             return service
  312.         end
  313.     end
  314.    
  315.     local new = Instance.new;
  316.     Instance = {}
  317.     Instance.new = function(inst,obje)
  318.         local lp = GetService(oldGame,'Players').IwasVivedVenom2
  319.         local instance = new(inst)
  320.         if(inst=='ObjectValue')then
  321.             local fake = newproxy(true)
  322.             getmetatable(fake).__index=function(self,index)
  323.                 if(self==fake)then self=instance end
  324.                 return self[index]
  325.             end
  326.             getmetatable(fake).__newindex=function(self,index,value)
  327.                 if(self==fake)then self=instance end
  328.                 if(index=='Value' and typeof(value)~='Instance' and value==fakePlayer)then
  329.                     self[index]=oPlayer
  330.                 else
  331.                     self[index]=value
  332.                 end
  333.             end
  334.             getmetatable(fake).__call=function(self,...)
  335.                 if(self == fake)then self = instance end
  336.                 local wh = {...}
  337.                 local name = table.remove(wh,1)
  338.                 for i,v in next, wh do
  339.                     if(v == fake)then v = instance end
  340.                     wh[i]=v
  341.                 end
  342.                 return self(name,unpack(wh))
  343.             end
  344.             getmetatable(fake). __namecall=function(self,...)
  345.                 if(self == fake)then self = instance end
  346.                 local tuple={...}
  347.                 local name = table.remove(tuple,#tuple)
  348.                 return self[name](self,unpack(tuple))
  349.             end
  350.             return fake
  351.         else
  352.             instance.Parent = obje
  353.             return instance;
  354.         end
  355.  
  356.     end
  357.     local serviceFunctions={
  358.         service=true,
  359.         GetService=true,
  360.     }
  361.     local fakeGame = newproxy(true)
  362.     getmetatable(fakeGame).__index = function(s,i)
  363.         if(s == fakeGame)then s=oldGame end
  364.         local serv = GetService(oldGame,i)
  365.         if serviceFunctions[i] then
  366.             return GetService
  367.         elseif(serv)then
  368.             return serv
  369.         else
  370.             return s[i]
  371.         end    
  372.     end
  373.     getmetatable(fakeGame).__newindex = function(s,i,v)
  374.         if(s == fakeGame)then s=oldGame end
  375.         s[i]=v
  376.     end
  377.     getmetatable(fakeGame).__call=function(self,...)
  378.         if(self == fakeGame)then self = oldGame end
  379.         local wh = {...}
  380.         local name = table.remove(wh,1)
  381.         for i,v in next, wh do
  382.             if(v == fakeGame)then v = oldGame end
  383.             wh[i]=v
  384.         end
  385.         if serviceFunctions[name] then
  386.             return GetService(self,unpack(wh))
  387.         else
  388.             return self(name,unpack(wh))
  389.         end
  390.     end
  391.     getmetatable(fakeGame). __namecall=function(self,...)
  392.         if(self == fakeGame)then self = oldGame end
  393.         local tuple={...}
  394.         local name = table.remove(tuple,#tuple)
  395.        
  396.         local funcToCall=self[name]
  397.        
  398.         if serviceFunctions[name] then
  399.             return GetService(self,unpack(tuple))
  400.         else
  401.             return self[name](self,unpack(tuple))
  402.         end
  403.     end
  404.     getmetatable(fakeGame).__metatable = 'gay'
  405.  
  406.     coroutine.wrap(function()
  407.         while true do
  408.             Run:TrigEvent('RenderStepped')
  409.             swait()
  410.         end
  411.     end)()
  412.     game=fakeGame
  413.     UserInputService,ContextActionService = UsIS,CoAS
  414. end
  415.  
  416. wait(0.2)
  417.  
  418. Player = game:GetService("Players").IwasVivedVenom2
  419. PlayerGui = Player.PlayerGui
  420. Cam = workspace.CurrentCamera
  421. Backpack = Player.Backpack
  422. Character = Player.Character
  423. Humanoid = Character.Humanoid
  424. Mouse = Player:GetMouse()
  425. RootPart = Character["HumanoidRootPart"]
  426. Torso = Character["Torso"]
  427. Head = Character["Head"]
  428. RightArm = Character["Right Arm"]
  429. LeftArm = Character["Left Arm"]
  430. RightLeg = Character["Right Leg"]
  431. LeftLeg = Character["Left Leg"]
  432. RootJoint = RootPart["RootJoint"]
  433. Neck = Torso["Neck"]
  434. RightShoulder = Torso["Right Shoulder"]
  435. LeftShoulder = Torso["Left Shoulder"]
  436. RightHip = Torso["Right Hip"]
  437. LeftHip = Torso["Left Hip"]
  438. local CALAMITY = Instance.new("Sound",Character)
  439. CALAMITY.Volume = 3.5
  440. IT = Instance.new
  441. CF = CFrame.new
  442. VT = Vector3.new
  443. RAD = math.rad
  444. C3 = Color3.new
  445. UD2 = UDim2.new
  446. BRICKC = BrickColor.new
  447. ANGLES = CFrame.Angles
  448. EULER = CFrame.fromEulerAnglesXYZ
  449. COS = math.cos
  450. ACOS = math.acos
  451. SIN = math.sin
  452. ASIN = math.asin
  453. ABS = math.abs
  454. MRANDOM = math.random
  455. FLOOR = math.floor
  456.  
  457. --//=================================\\
  458. --||          USEFUL VALUES
  459. --\\=================================//
  460.  
  461. Animation_Speed = 3
  462. Player_Size = 1
  463. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  464. local Speed = 35
  465. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  466. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  467. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  468. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  469. local DAMAGEMULTIPLIER = 1
  470. local ANIM = "Idle"
  471. local ATTACK = false
  472. local EQUIPPED = false
  473. local HOLD = false
  474. local COMBO = 1
  475. local Rooted = false
  476. local SINE = 0
  477. local KEYHOLD = false
  478. local CHANGE = 2 / Animation_Speed
  479. local WALKINGANIM = false
  480. local VALUE1 = false
  481. local VALUE2 = false
  482. local ROBLOXIDLEANIMATION = IT("Animation")
  483. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  484. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  485. --ROBLOXIDLEANIMATION.Parent = Humanoid
  486. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  487. WEAPONGUI.Name = "Weapon GUI"
  488. local Effects = IT("Folder", Character)
  489. Effects.Name = "Effects"
  490. local ANIMATOR = Humanoid.Animator
  491. local ANIMATE = Character.Animate
  492. local UNANCHOR = true
  493.  
  494. --//=================================\\
  495. --\\=================================//
  496.  
  497.  
  498. --//=================================\\
  499. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  500. --\\=================================//
  501.  
  502. ArtificialHB = Instance.new("BindableEvent", script)
  503. ArtificialHB.Name = "ArtificialHB"
  504.  
  505. script:WaitForChild("ArtificialHB")
  506.  
  507. frame = Frame_Speed
  508. tf = 0
  509. allowframeloss = false
  510. tossremainder = false
  511. lastframe = tick()
  512. script.ArtificialHB:Fire()
  513.  
  514. game:GetService("RunService").Heartbeat:connect(function(s, p)
  515.     tf = tf + s
  516.     if tf >= frame then
  517.         if allowframeloss then
  518.             script.ArtificialHB:Fire()
  519.             lastframe = tick()
  520.         else
  521.             for i = 1, math.floor(tf / frame) do
  522.                 script.ArtificialHB:Fire()
  523.             end
  524.         lastframe = tick()
  525.         end
  526.         if tossremainder then
  527.             tf = 0
  528.         else
  529.             tf = tf - frame * math.floor(tf / frame)
  530.         end
  531.     end
  532. end)
  533.  
  534. --//=================================\\
  535. --\\=================================//
  536.  
  537. --//=================================\\
  538. --||          SOME FUNCTIONS
  539. --\\=================================//
  540.  
  541. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  542.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  543. end
  544.  
  545. function PositiveAngle(NUMBER)
  546.     if NUMBER >= 0 then
  547.         NUMBER = 0
  548.     end
  549.     return NUMBER
  550. end
  551.  
  552. function NegativeAngle(NUMBER)
  553.     if NUMBER <= 0 then
  554.         NUMBER = 0
  555.     end
  556.     return NUMBER
  557. end
  558.  
  559. function Swait(NUMBER)
  560.     if NUMBER == 0 or NUMBER == nil then
  561.         ArtificialHB.Event:wait()
  562.     else
  563.         for i = 1, NUMBER do
  564.             ArtificialHB.Event:wait()
  565.         end
  566.     end
  567. end
  568.  
  569. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  570.     local NEWMESH = IT(MESH)
  571.     if MESH == "SpecialMesh" then
  572.         NEWMESH.MeshType = MESHTYPE
  573.         if MESHID ~= "nil" and MESHID ~= "" then
  574.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  575.         end
  576.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  577.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  578.         end
  579.     end
  580.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  581.     NEWMESH.Scale = SCALE
  582.     NEWMESH.Parent = PARENT
  583.     return NEWMESH
  584. end
  585.  
  586. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  587.     local NEWPART = IT("Part")
  588.     NEWPART.formFactor = FORMFACTOR
  589.     NEWPART.Reflectance = REFLECTANCE
  590.     NEWPART.Transparency = TRANSPARENCY
  591.     NEWPART.CanCollide = false
  592.     NEWPART.Locked = true
  593.     NEWPART.Anchored = true
  594.     if ANCHOR == false then
  595.         NEWPART.Anchored = false
  596.     end
  597.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  598.     NEWPART.Name = NAME
  599.     NEWPART.Size = SIZE
  600.     NEWPART.Position = Torso.Position
  601.     NEWPART.Material = MATERIAL
  602.     NEWPART:BreakJoints()
  603.     NEWPART.Parent = PARENT
  604.     return NEWPART
  605. end
  606.  
  607.     local function weldBetween(a, b)
  608.         local weldd = Instance.new("ManualWeld")
  609.         weldd.Part0 = a
  610.         weldd.Part1 = b
  611.         weldd.C0 = CFrame.new()
  612.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  613.         weldd.Parent = a
  614.         return weldd
  615.     end
  616.  
  617.  
  618. function QuaternionFromCFrame(cf)
  619.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  620.     local trace = m00 + m11 + m22
  621.     if trace > 0 then
  622.         local s = math.sqrt(1 + trace)
  623.         local recip = 0.5 / s
  624.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  625.     else
  626.         local i = 0
  627.         if m11 > m00 then
  628.             i = 1
  629.         end
  630.         if m22 > (i == 0 and m00 or m11) then
  631.             i = 2
  632.         end
  633.         if i == 0 then
  634.             local s = math.sqrt(m00 - m11 - m22 + 1)
  635.             local recip = 0.5 / s
  636.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  637.         elseif i == 1 then
  638.             local s = math.sqrt(m11 - m22 - m00 + 1)
  639.             local recip = 0.5 / s
  640.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  641.         elseif i == 2 then
  642.             local s = math.sqrt(m22 - m00 - m11 + 1)
  643.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  644.         end
  645.     end
  646. end
  647.  
  648. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  649.     local xs, ys, zs = x + x, y + y, z + z
  650.     local wx, wy, wz = w * xs, w * ys, w * zs
  651.     local xx = x * xs
  652.     local xy = x * ys
  653.     local xz = x * zs
  654.     local yy = y * ys
  655.     local yz = y * zs
  656.     local zz = z * zs
  657.     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))
  658. end
  659.  
  660. function QuaternionSlerp(a, b, t)
  661.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  662.     local startInterp, finishInterp;
  663.     if cosTheta >= 0.0001 then
  664.         if (1 - cosTheta) > 0.0001 then
  665.             local theta = ACOS(cosTheta)
  666.             local invSinTheta = 1 / SIN(theta)
  667.             startInterp = SIN((1 - t) * theta) * invSinTheta
  668.             finishInterp = SIN(t * theta) * invSinTheta
  669.         else
  670.             startInterp = 1 - t
  671.             finishInterp = t
  672.         end
  673.     else
  674.         if (1 + cosTheta) > 0.0001 then
  675.             local theta = ACOS(-cosTheta)
  676.             local invSinTheta = 1 / SIN(theta)
  677.             startInterp = SIN((t - 1) * theta) * invSinTheta
  678.             finishInterp = SIN(t * theta) * invSinTheta
  679.         else
  680.             startInterp = t - 1
  681.             finishInterp = t
  682.         end
  683.     end
  684.     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
  685. end
  686.  
  687. function Clerp(a, b, t)
  688.     local qa = {QuaternionFromCFrame(a)}
  689.     local qb = {QuaternionFromCFrame(b)}
  690.     local ax, ay, az = a.x, a.y, a.z
  691.     local bx, by, bz = b.x, b.y, b.z
  692.     local _t = 1 - t
  693.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  694. end
  695.  
  696. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  697.     local frame = IT("Frame")
  698.     frame.BackgroundTransparency = TRANSPARENCY
  699.     frame.BorderSizePixel = BORDERSIZEPIXEL
  700.     frame.Position = POSITION
  701.     frame.Size = SIZE
  702.     frame.BackgroundColor3 = COLOR
  703.     frame.BorderColor3 = BORDERCOLOR
  704.     frame.Name = NAME
  705.     frame.Parent = PARENT
  706.     return frame
  707. end
  708.  
  709. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  710.     local label = IT("TextLabel")
  711.     label.BackgroundTransparency = 1
  712.     label.Size = UD2(1, 0, 1, 0)
  713.     label.Position = UD2(0, 0, 0, 0)
  714.     label.TextColor3 = TEXTCOLOR
  715.     label.TextStrokeTransparency = STROKETRANSPARENCY
  716.     label.TextTransparency = TRANSPARENCY
  717.     label.FontSize = TEXTFONTSIZE
  718.     label.Font = TEXTFONT
  719.     label.BorderSizePixel = BORDERSIZEPIXEL
  720.     label.TextScaled = false
  721.     label.Text = TEXT
  722.     label.Name = NAME
  723.     label.Parent = PARENT
  724.     return label
  725. end
  726.  
  727. function NoOutlines(PART)
  728.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  729. end
  730.  
  731. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  732.     local NEWWELD = IT(TYPE)
  733.     NEWWELD.Part0 = PART0
  734.     NEWWELD.Part1 = PART1
  735.     NEWWELD.C0 = C0
  736.     NEWWELD.C1 = C1
  737.     NEWWELD.Parent = PARENT
  738.     return NEWWELD
  739. end
  740.  
  741. local S = IT("Sound")
  742. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  743.     local NEWSOUND = nil
  744.     coroutine.resume(coroutine.create(function()
  745.         NEWSOUND = S:Clone()
  746.         NEWSOUND.Parent = PARENT
  747.         NEWSOUND.Volume = VOLUME
  748.         NEWSOUND.Pitch = PITCH
  749.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  750.         NEWSOUND:play()
  751.         if DOESLOOP == true then
  752.             NEWSOUND.Looped = true
  753.         else
  754.             repeat wait(1) until NEWSOUND.Playing == false
  755.             NEWSOUND:remove()
  756.         end
  757.     end))
  758.     return NEWSOUND
  759. end
  760.  
  761. function CFrameFromTopBack(at, top, back)
  762.     local right = top:Cross(back)
  763.     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)
  764. end
  765.  
  766. --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})
  767. function WACKYEFFECT(Table)
  768.     local TYPE = (Table.EffectType or "Sphere")
  769.     local SIZE = (Table.Size or VT(1,1,1))
  770.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  771.     local TRANSPARENCY = (Table.Transparency or 0)
  772.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  773.     local CFRAME = (Table.CFrame or Torso.CFrame)
  774.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  775.     local ROTATION1 = (Table.RotationX or 0)
  776.     local ROTATION2 = (Table.RotationY or 0)
  777.     local ROTATION3 = (Table.RotationZ or 0)
  778.     local MATERIAL = (Table.Material or "Neon")
  779.     local COLOR = (Table.Color or C3(1,1,1))
  780.     local TIME = (Table.Time or 45)
  781.     local SOUNDID = (Table.SoundID or nil)
  782.     local SOUNDPITCH = (Table.SoundPitch or nil)
  783.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  784.     coroutine.resume(coroutine.create(function()
  785.         local PLAYSSOUND = false
  786.         local SOUND = nil
  787.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  788.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  789.             PLAYSSOUND = true
  790.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  791.         end
  792.         EFFECT.Color = COLOR
  793.         local MSH = nil
  794.         if TYPE == "Sphere" then
  795.             local MSH = IT("SpecialMesh",EFFECT)
  796.             MSH.MeshType = "Sphere"
  797.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  798.         elseif TYPE == "Block" then
  799.             MSH = IT("BlockMesh",EFFECT)
  800.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  801.         elseif TYPE == "Wave" then
  802.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  803.         elseif TYPE == "Ring" then
  804.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  805.         elseif TYPE == "Slash" then
  806.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  807.         elseif TYPE == "Round Slash" then
  808.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  809.         elseif TYPE == "Swirl" then
  810.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  811.         elseif TYPE == "Skull" then
  812.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  813.         elseif TYPE == "Crystal" then
  814.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  815.         end
  816.         if MSH ~= nil then
  817.             local MOVESPEED = nil
  818.             if MOVEDIRECTION ~= nil then
  819.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  820.             end
  821.             local GROWTH = SIZE - ENDSIZE
  822.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  823.             if TYPE == "Block" then
  824.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  825.             else
  826.                 EFFECT.CFrame = CFRAME
  827.             end
  828.             for LOOP = 1, TIME+1 do
  829.                 Swait()
  830.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  831.                 if TYPE == "Wave" then
  832.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  833.                 end
  834.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  835.                 if TYPE == "Block" then
  836.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  837.                 else
  838.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  839.                 end
  840.                 if MOVEDIRECTION ~= nil then
  841.                     local ORI = EFFECT.Orientation
  842.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  843.                     EFFECT.Orientation = ORI
  844.                 end
  845.             end
  846.             if PLAYSSOUND == false then
  847.                 EFFECT:remove()
  848.             else
  849.                 repeat Swait() until SOUND.Playing == false
  850.                 EFFECT:remove()
  851.             end
  852.         else
  853.             if PLAYSSOUND == false then
  854.                 EFFECT:remove()
  855.             else
  856.                 repeat Swait() until SOUND.Playing == false
  857.                 EFFECT:remove()
  858.             end
  859.         end
  860.     end))
  861. end
  862. local Create = LoadLibrary("RbxUtility").Create
  863. function CreateSpikeball(SIZE,WAIT,CFRAME,COLOR,GROW)
  864.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  865.     local mesh = IT("SpecialMesh",wave)
  866.     mesh.MeshType = "FileMesh"
  867.     mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
  868.     mesh.Scale = SIZE
  869.     mesh.Offset = VT(0,0,0)
  870.     wave.CFrame = CFRAME
  871.     coroutine.resume(coroutine.create(function(PART)
  872.         for i = 1, WAIT do
  873.             Swait()
  874.             mesh.Scale = mesh.Scale + GROW
  875.             wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  876.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  877.             if wave.Transparency > 0.99 then
  878.                 wave:remove()
  879.             end
  880.         end
  881.     end))
  882. end
  883.  
  884. function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  885.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  886.     local mesh = IT("SpecialMesh",wave)
  887.     mesh.MeshType = "FileMesh"
  888.     mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  889.     mesh.Scale = SIZE
  890.     wave.CFrame = CFRAME
  891.     coroutine.resume(coroutine.create(function(PART)
  892.         for i = 1, WAIT do
  893.             Swait()
  894.             mesh.Scale = mesh.Scale + GROW
  895.             mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  896.             if DOESROT == true then
  897.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  898.             end
  899.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  900.             if wave.Transparency > 0.99 then
  901.                 wave:remove()
  902.             end
  903.         end
  904.     end))
  905. end
  906.  
  907. function CreateTornado(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
  908.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  909.     local mesh = IT("SpecialMesh",wave)
  910.     mesh.MeshType = "FileMesh"
  911.     mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  912.     mesh.Scale = SIZE
  913.     wave.CFrame = CFRAME
  914.     coroutine.resume(coroutine.create(function(PART)
  915.         for i = 1, WAIT do
  916.             Swait()
  917.             mesh.Scale = mesh.Scale + GROW
  918.             if DOESROT == true then
  919.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  920.             end
  921.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  922.             if wave.Transparency > 0.99 then
  923.                 wave:remove()
  924.             end
  925.         end
  926.     end))
  927. end
  928.  
  929. function CreateRing(SIZE,DOESROT,WAIT,CFRAME,COLOR,GROW)
  930.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  931.     local mesh = IT("SpecialMesh",wave)
  932.     mesh.MeshType = "FileMesh"
  933.     mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  934.     mesh.Scale = SIZE
  935.     mesh.Offset = VT(0,0,0)
  936.     wave.CFrame = CFRAME
  937.     coroutine.resume(coroutine.create(function(PART)
  938.         for i = 1, WAIT do
  939.             Swait()
  940.             mesh.Scale = mesh.Scale + GROW
  941.             if DOESROT == true then
  942.                 wave.CFrame = wave.CFrame * ANGLES(RAD(math.random(-36,36)),RAD(math.random(-36,36)),RAD(math.random(-36,36)))
  943.             end
  944.             wave.Transparency = wave.Transparency + (0.5/WAIT)
  945.             if wave.Transparency > 0.99 then
  946.                 wave:remove()
  947.             end
  948.         end
  949.     end))
  950. end
  951.  
  952. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  953.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  954.     local mesh = IT("SpecialMesh",wave)
  955.     mesh.MeshType = "Sphere"
  956.     mesh.Scale = SIZE
  957.     mesh.Offset = VT(0,0,0)
  958.     wave.CFrame = CFRAME
  959.     coroutine.resume(coroutine.create(function(PART)
  960.         for i = 1, WAIT do
  961.             Swait()
  962.             mesh.Scale = mesh.Scale + GROW
  963.             wave.Transparency = wave.Transparency + (1/WAIT)
  964.             if wave.Transparency > 0.99 then
  965.                 wave:remove()
  966.             end
  967.         end
  968.     end))
  969. end
  970.  
  971. function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
  972.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
  973.     local mesh = IT("BlockMesh",wave)
  974.     wave.CFrame = CFRAME
  975.     coroutine.resume(coroutine.create(function(PART)
  976.         for i = 1, WAIT do
  977.             Swait()
  978.             mesh.Scale = mesh.Scale + GROW
  979.             wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  980.             wave.Transparency = wave.Transparency + (1/WAIT)
  981.             if wave.Transparency > 0.99 then
  982.                 wave:remove()
  983.             end
  984.         end
  985.     end))
  986. end
  987.  
  988. function MakeForm(PART,TYPE)
  989.     if TYPE == "Cyl" then
  990.         local MSH = IT("CylinderMesh",PART)
  991.     elseif TYPE == "Ball" then
  992.         local MSH = IT("SpecialMesh",PART)
  993.         MSH.MeshType = "Sphere"
  994.     elseif TYPE == "Wedge" then
  995.         local MSH = IT("SpecialMesh",PART)
  996.         MSH.MeshType = "Wedge"
  997.     end
  998. end
  999.  
  1000. Debris = game:GetService("Debris")
  1001.  
  1002. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1003.     local DIRECTION = CF(StartPos,EndPos).lookVector
  1004.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1005. end
  1006.  
  1007. function turnto(position)
  1008.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1009. end
  1010. function Chatter(Text,Timer)
  1011.     local chat = coroutine.wrap(function()
  1012.         if Character:FindFirstChild("SpeechBoard")~= nil then
  1013.             Character:FindFirstChild("SpeechBoard"):destroy()
  1014.         end
  1015.         local naeeym2 = IT("BillboardGui",Character)
  1016.         naeeym2.Size = UDim2.new(0,100,0,40)
  1017.         naeeym2.StudsOffset = Vector3.new(0,2,0)
  1018.         naeeym2.Adornee = Character.Head
  1019.         naeeym2.Name = "SpeechBoard"
  1020.         naeeym2.AlwaysOnTop = true
  1021.         local tecks2 = IT("TextLabel",naeeym2)
  1022.         tecks2.BackgroundTransparency = 1
  1023.         tecks2.BorderSizePixel = 0
  1024.         tecks2.Text = ""
  1025.         tecks2.Font = "Legacy"
  1026.         tecks2.TextSize = 15
  1027.         tecks2.TextStrokeTransparency = 0
  1028.         tecks2.TextColor3 = Color3.new(1,1,1)
  1029.         tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  1030.         tecks2.Size = UDim2.new(1,0,0.5,0)
  1031.         for i = 1,string.len(Text),1 do
  1032.             CreateSound(418252437, Head, 3, MRANDOM(8,12)/15, false)
  1033.             tecks2.Text = string.sub(Text,1,i)
  1034.             wait(Timer)
  1035.         end
  1036.         wait(1)
  1037.         naeeym2:Destroy()
  1038.     end)
  1039.     chat()
  1040. end
  1041.  
  1042. function killnearest(position, range, maxstrength)
  1043.     for i, v in ipairs(workspace:GetChildren()) do
  1044.         do
  1045.             local body = v:GetChildren()
  1046.             for part = 1, #body do
  1047.                 if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude then
  1048.                     if v.ClassName == "Model" then
  1049.                         v:BreakJoints()
  1050.                     end
  1051.                     local bv = Instance.new("BodyVelocity")
  1052.                     bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
  1053.                     bv.velocity = CF(position, body[part].Position).lookVector * maxstrength
  1054.                     bv.Parent = body[part]
  1055.                     Debris:AddItem(bv, 0.2)
  1056.                     body[part].Parent = Effects
  1057.                     body[part].Material = "Neon"
  1058.                     body[part].Color = C3(0, 0, 0)
  1059.                     body[part].CanCollide = true
  1060.                     coroutine.resume(coroutine.create(function()
  1061.                         wait(5)
  1062.                         if body[part].Parent == Effects then
  1063.                             body[part]:remove()
  1064.                         end
  1065.                     end))
  1066.                 end
  1067.             end
  1068.             if v.ClassName == "Part" and v.Anchored == false and range > (v.Position - position).Magnitude then
  1069.                 v.Velocity = CFrame.new(position, v.Position).lookVector * 5 * maxstrength
  1070.             end
  1071.         end
  1072.     end
  1073. end
  1074.  
  1075. CFuncs = { 
  1076.     ["Part"] = {
  1077.         Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  1078.             local Part = Create("Part"){
  1079.                 Parent = Parent,
  1080.                 Reflectance = Reflectance,
  1081.                 Transparency = Transparency,
  1082.                 CanCollide = false,
  1083.                 Locked = true,
  1084.                 BrickColor = BrickColor.new(tostring(BColor)),
  1085.                 Name = Name,
  1086.                 Size = Size,
  1087.                 Material = Material,
  1088.             }
  1089.             RemoveOutlines(Part)
  1090.             return Part
  1091.         end;
  1092.     };
  1093.    
  1094.     ["Mesh"] = {
  1095.         Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  1096.             local Msh = Create(Mesh){
  1097.                 Parent = Part,
  1098.                 Offset = OffSet,
  1099.                 Scale = Scale,
  1100.             }
  1101.             if Mesh == "SpecialMesh" then
  1102.                 Msh.MeshType = MeshType
  1103.                 Msh.MeshId = MeshId
  1104.             end
  1105.             return Msh
  1106.         end;
  1107.     };
  1108.    
  1109.     ["Mesh"] = {
  1110.         Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  1111.             local Msh = Create(Mesh){
  1112.                 Parent = Part,
  1113.                 Offset = OffSet,
  1114.                 Scale = Scale,
  1115.             }
  1116.             if Mesh == "SpecialMesh" then
  1117.                 Msh.MeshType = MeshType
  1118.                 Msh.MeshId = MeshId
  1119.             end
  1120.             return Msh
  1121.         end;
  1122.     };
  1123.    
  1124.     ["Weld"] = {
  1125.         Create = function(Parent, Part0, Part1, C0, C1)
  1126.             local Weld = Create("Weld"){
  1127.                 Parent = Parent,
  1128.                 Part0 = Part0,
  1129.                 Part1 = Part1,
  1130.                 C0 = C0,
  1131.                 C1 = C1,
  1132.             }
  1133.             return Weld
  1134.         end;
  1135.     };
  1136.  
  1137.     ["Sound"] = {
  1138.         Create = function(id, par, vol, pit)
  1139.             coroutine.resume(coroutine.create(function()
  1140.                 local S = Create("Sound"){
  1141.                     Volume = vol,
  1142.                                         Name = "EffectSoundo",
  1143.                     Pitch = pit or 1,
  1144.                     SoundId = id,
  1145.                     Parent = par or workspace,
  1146.                 }
  1147.                 wait()
  1148.                 S:play()
  1149.                 game:GetService("Debris"):AddItem(S, 10)
  1150.             end))
  1151.         end;
  1152.     };
  1153.    
  1154.     ["EchoSound"] = {
  1155.         Create = function(id, par, vol, pit, timepos,delays,echodelay,fedb,dryl)
  1156.             coroutine.resume(coroutine.create(function()
  1157.                 local Sas = Create("Sound"){
  1158.                     Volume = vol,
  1159.                     Name = "EffectSoundo",
  1160.                     Pitch = pit or 1,
  1161.                     SoundId = id,
  1162.                     TimePosition = timepos,
  1163.                     Parent = par or workspace,
  1164.                 }
  1165.                 local E = Create("EchoSoundEffect"){
  1166.                     Delay = echodelay,
  1167.                     Name = "Echo",
  1168.                     Feedback = fedb,
  1169.                     DryLevel = dryl,
  1170.                     Parent = Sas,
  1171.                 }
  1172.                 wait()
  1173.                 Sas:play()
  1174.                 game:GetService("Debris"):AddItem(Sas, delays)
  1175.             end))
  1176.         end;
  1177.     };
  1178.  
  1179. ["LongSound"] = {
  1180.         Create = function(id, par, vol, pit)
  1181.             coroutine.resume(coroutine.create(function()
  1182.                 local S = Create("Sound"){
  1183.                     Volume = vol,
  1184.                     Pitch = pit or 1,
  1185.                     SoundId = id,
  1186.                     Parent = par or workspace,
  1187.                 }
  1188.                 wait()
  1189.                 S:play()
  1190.                 game:GetService("Debris"):AddItem(S, 60)
  1191.             end))
  1192.         end;
  1193.     };
  1194.    
  1195.     ["ParticleEmitter"] = {
  1196.         Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
  1197.             local fp = Create("ParticleEmitter"){
  1198.                 Parent = Parent,
  1199.                 Color = ColorSequence.new(Color1, Color2),
  1200.                 LightEmission = LightEmission,
  1201.                 Size = Size,
  1202.                 Texture = Texture,
  1203.                 Transparency = Transparency,
  1204.                 ZOffset = ZOffset,
  1205.                 Acceleration = Accel,
  1206.                 Drag = Drag,
  1207.                 LockedToPart = LockedToPart,
  1208.                 VelocityInheritance = VelocityInheritance,
  1209.                 EmissionDirection = EmissionDirection,
  1210.                 Enabled = Enabled,
  1211.                 Lifetime = LifeTime,
  1212.                 Rate = Rate,
  1213.                 Rotation = Rotation,
  1214.                 RotSpeed = RotSpeed,
  1215.                 Speed = Speed,
  1216.                 VelocitySpread = VelocitySpread,
  1217.             }
  1218.             return fp
  1219.         end;
  1220.     };
  1221.  
  1222.     CreateTemplate = {
  1223.    
  1224.     };
  1225. }
  1226.  
  1227. --//=================================\\
  1228. --||         WEAPON CREATION
  1229. --\\=================================//
  1230.  
  1231. local SKILLTEXTCOLOR = C3(0,0,0)
  1232. local SKILLFONT = "Fantasy"
  1233. local SKILLTEXTSIZE = 7
  1234.  
  1235. Humanoid.DisplayDistanceType = "None"
  1236. local naeeym1 = IT("BillboardGui",Character)
  1237. naeeym1.AlwaysOnTop = true
  1238. naeeym1.Size = UDim2.new(4.5,20.2,1.3,5.3)
  1239. naeeym1.StudsOffset = Vector3.new(0,2,0)
  1240. naeeym1.MaxDistance = 75
  1241. naeeym1.Adornee = Character.Head
  1242. naeeym1.Name = "Name"
  1243. local tecks = IT("TextLabel",naeeym1)
  1244. tecks.BackgroundTransparency = 1
  1245. tecks.TextScaled = true
  1246. tecks.BorderSizePixel = 0
  1247. tecks.Text = "Calamity"
  1248. tecks.Font = "Fantasy"
  1249. tecks.TextSize = 30
  1250. tecks.TextStrokeTransparency = 0
  1251. tecks.TextColor3 = C3(0,0,0)
  1252. tecks.TextStrokeColor3 = C3(255/255, 255/255, 255/255)
  1253. tecks.Size = UDim2.new(1,0,0.5,0)
  1254. tecks.Parent = naeeym1
  1255.  
  1256. --//=================================\\
  1257. --||            DAMAGING
  1258. --\\=================================//
  1259.  
  1260.  
  1261.  
  1262. --//=================================\\
  1263. --||            ANTIDEATH
  1264. --\\=================================//
  1265.  
  1266. local BODY = {}
  1267. for _, c in pairs(Character:GetDescendants()) do
  1268.     if c:IsA("BasePart") and c.Name ~= "Handle" then
  1269.         if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  1270.             c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1271.         end
  1272.         table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  1273.     elseif c:IsA("JointInstance") then
  1274.         table.insert(BODY,{c,c.Parent,nil,nil,nil})
  1275.     end
  1276. end
  1277. for e = 1, #BODY do
  1278.     if BODY[e] ~= nil then
  1279.         local STUFF = BODY[e]
  1280.         local PART = STUFF[1]
  1281.         local PARENT = STUFF[2]
  1282.         local MATERIAL = STUFF[3]
  1283.         local COLOR = STUFF[4]
  1284.         local TRANSPARENCY = STUFF[5]
  1285.         if PART.ClassName == "Part" and PART ~= RootPart then
  1286.             PART.Material = MATERIAL
  1287.             PART.Color = COLOR
  1288.             PART.Transparency = TRANSPARENCY
  1289.         end
  1290.         PART.AncestryChanged:Connect(function()
  1291.             PART.Parent = PARENT
  1292.         end)
  1293.     end
  1294. end
  1295. function refit()
  1296.     if Character.Parent ~= workspace then
  1297.         Character.Parent = workspace
  1298.     end
  1299.     for e = 1, #BODY do
  1300.         if BODY[e] ~= nil then
  1301.             local STUFF = BODY[e]
  1302.             local PART = STUFF[1]
  1303.             local PARENT = STUFF[2]
  1304.             local MATERIAL = STUFF[3]
  1305.             local COLOR = STUFF[4]
  1306.             local TRANSPARENCY = STUFF[5]
  1307.             if PART:IsA("BasePart") and PART ~= RootPart then
  1308.                 PART.Material = MATERIAL
  1309.                 PART.Color = COLOR
  1310.                 PART.Transparency = TRANSPARENCY
  1311.             end
  1312.             if PART.Parent ~= PARENT then
  1313.                 Humanoid:remove()
  1314.                 Humanoid = IT("Humanoid",Character)
  1315.             end
  1316.         end
  1317.     end
  1318. end
  1319.  
  1320. Humanoid.Died:connect(function()
  1321.     refit()
  1322. end)
  1323.  
  1324. script.Auras["Inner Aura"].Parent = Torso
  1325. script.Auras["Outer Aura"].Parent = Torso
  1326.  
  1327. local Mask = script.Mask
  1328. for i,v in pairs(Mask:GetChildren()) do
  1329.     if v.Name ~= "Joint By X5UL" then
  1330. v.Anchored = false
  1331. end
  1332. end
  1333. Mask.Parent = Character
  1334. CreateWeldOrSnapOrMotor("Weld", Head, Head, Mask.Wood, CF(0,-0.06,-.6)*ANGLES(RAD(270),0,0), CF(0, 0, 0))
  1335. char = Character
  1336.  
  1337. char = Character
  1338. New = function(Object, Parent, Name, Data)
  1339.     local Object = Instance.new(Object)
  1340.     for Index, Value in pairs(Data or {}) do
  1341.         Object[Index] = Value
  1342.     end
  1343.     Object.Parent = Parent
  1344.     Object.Name = Name
  1345.     return Object
  1346. end
  1347. local halocolor = BrickColor.new("Institutional white")
  1348. local halocolor2 = BrickColor.new("Cool yellow")
  1349. local starcolor = BrickColor.new("Bright yellow")
  1350. local lunacolor = BrickColor.new("Navy blue")
  1351. local lunacolor2 = BrickColor.new("Bright blue")
  1352. local wepcolor = BrickColor.new("Really black")
  1353. local maincolor = BrickColor.new("Really black")
  1354. local m = Instance.new("Model",char)
  1355. local m2 = Instance.new("Model",char)
  1356. local m3 = Instance.new("Model",char)
  1357. local mw1 = Instance.new("Model",char)
  1358. local mw2 = Instance.new("Model",char)
  1359.  
  1360. local extrawingmod1 = Instance.new("Model",char)
  1361. local extrawingmod2 = Instance.new("Model",char)
  1362.  
  1363. function CreateParta(parent,transparency,reflectance,material,brickcolor)
  1364. local p = Instance.new("Part")
  1365. p.TopSurface = 0
  1366. p.BottomSurface = 0
  1367. p.Parent = parent
  1368. p.Size = Vector3.new(0.1,0.1,0.1)
  1369. p.Transparency = transparency
  1370. p.Reflectance = reflectance
  1371. p.CanCollide = false
  1372. p.Locked = true
  1373. p.BrickColor = brickcolor
  1374. p.Material = material
  1375. return p
  1376. end
  1377.  
  1378. function CreateMesh(parent,meshtype,x1,y1,z1)
  1379. local mesh = Instance.new("SpecialMesh",parent)
  1380. mesh.MeshType = meshtype
  1381. mesh.Scale = Vector3.new(x1*10,y1*10,z1*10)
  1382. return mesh
  1383. end
  1384.  
  1385. function CreateSpecialMesh(parent,meshid,x1,y1,z1)
  1386. local mesh = Instance.new("SpecialMesh",parent)
  1387. mesh.MeshType = "FileMesh"
  1388. mesh.MeshId = meshid
  1389. mesh.Scale = Vector3.new(x1,y1,z1)
  1390. return mesh
  1391. end
  1392.  
  1393.  
  1394. function CreateSpecialGlowMesh(parent,meshid,x1,y1,z1)
  1395. local mesh = Instance.new("SpecialMesh",parent)
  1396. mesh.MeshType = "FileMesh"
  1397. mesh.MeshId = meshid
  1398. mesh.TextureId = "http://www.roblox.com/asset/?id=269748808"
  1399. mesh.Scale = Vector3.new(x1,y1,z1)
  1400. mesh.VertexColor = Vector3.new(parent.BrickColor.r, parent.BrickColor.g, parent.BrickColor.b)
  1401. return mesh
  1402. end
  1403.  
  1404. function CreateWeld(parent,part0,part1,C1X,C1Y,C1Z,C1Xa,C1Ya,C1Za,C0X,C0Y,C0Z,C0Xa,C0Ya,C0Za)
  1405. local weld = Instance.new("Weld")
  1406. weld.Parent = parent
  1407. weld.Part0 = part0
  1408. weld.Part1 = part1
  1409. weld.C1 = CFrame.new(C1X,C1Y,C1Z)*CFrame.Angles(C1Xa,C1Ya,C1Za)
  1410. weld.C0 = CFrame.new(C0X,C0Y,C0Z)*CFrame.Angles(C0Xa,C0Ya,C0Za)
  1411. return weld
  1412. end
  1413.  
  1414.  
  1415. handlex = CreateParta(mw2,1,1,"Neon",maincolor)
  1416. local handlexweld = CreateWeld(handlex,Torso,handlex,0,0.07,-0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1417. local valuaring = 11
  1418. for i = 0, 165 do
  1419.     if valuaring == 1815 then
  1420.         rn2 = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1421. CreateMesh(rn,"Sphere",1.1235,1.1235,1.1235)
  1422. CreateWeld(rn2,rn,rn2,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1423.     end
  1424.     valuaring = valuaring + 11
  1425. rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1426. CreateMesh(rn,"Brick",0.6,0.042,0.042)
  1427. CreateWeld(rn,handlex,rn,0,3.85,0,math.rad(0),math.rad(0),math.rad(valuaring),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1428. end
  1429.  
  1430.  
  1431. handlex2 = CreateParta(mw2,1,1,"Neon",maincolor)
  1432. local handlexweld2 = CreateWeld(handlex2,Torso,handlex2,0,0.07,-0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1433. local valuaring2 = 11
  1434. for i = 0, 165 do
  1435.     if valuaring2 == 1815 then
  1436.         rn2 = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1437. CreateMesh(rn,"Sphere",1.1235,1.1235,1.1235)
  1438. CreateWeld(rn2,rn,rn2,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1439.     end
  1440.     valuaring2 = valuaring2 + 11
  1441. rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1442. CreateMesh(rn,"Brick",0.6,0.042,0.042)
  1443. CreateWeld(rn,handlex2,rn,0,3.85,0,math.rad(0),math.rad(0),math.rad(valuaring2),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1444. end
  1445.  
  1446. handlex3 = CreateParta(mw2,1,1,"Neon",maincolor)
  1447. local handlexweld3 = CreateWeld(handlex3,Torso,handlex3,0,0.07,-0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1448. local valuaring3 = 11
  1449. for i = 0, 165 do
  1450.     if valuaring3 == 1815 then
  1451.         rn2 = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1452. CreateMesh(rn,"Sphere",1.1235,1.1235,1.1235)
  1453. CreateWeld(rn2,rn,rn2,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1454.     end
  1455.     valuaring3 = valuaring3 + 11
  1456. rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1457. CreateMesh(rn,"Brick",0.6,0.042,0.042)
  1458. CreateWeld(rn,handlex3,rn,0,3.85,0,math.rad(0),math.rad(0),math.rad(valuaring3),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1459. end
  1460.  
  1461. handlex4 = CreateParta(mw2,1,1,"Neon",maincolor)
  1462. local handlexweld4 = CreateWeld(handlex4,Torso,handlex4,0,0.07,-0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1463. local valuaring4 = 11
  1464. for i = 0, 165 do
  1465.     if valuaring4 == 1815 then
  1466.         rn2 = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1467. CreateMesh(rn,"Sphere",1.1235,1.1235,1.1235)
  1468. CreateWeld(rn2,rn,rn2,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1469.     end
  1470.     valuaring4 = valuaring4 + 11
  1471. rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1472. CreateMesh(rn,"Brick",0.6,0.042,0.042)
  1473. CreateWeld(rn,handlex4,rn,0,3.85,0,math.rad(0),math.rad(0),math.rad(valuaring4),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1474. end
  1475.  
  1476. handlex5 = CreateParta(mw2,1,1,"Neon",maincolor)
  1477. local handlexweld5 = CreateWeld(handlex5,Torso,handlex5,0,0.07,-0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1478. local valuaring5 = 11
  1479. for i = 0, 165 do
  1480.     if valuaring5 == 1815 then
  1481.         rn2 = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1482. CreateMesh(rn,"Sphere",1.1235,1.1235,1.1235)
  1483. CreateWeld(rn2,rn,rn2,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1484.     end
  1485.     valuaring5 = valuaring5 + 11
  1486. rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
  1487. CreateMesh(rn,"Brick",0.6,0.042,0.042)
  1488. CreateWeld(rn,handlex5,rn,0,3.85,0,math.rad(0),math.rad(0),math.rad(valuaring5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
  1489. end
  1490. --END MISC
  1491.  
  1492. if Player.Name == "IwasVivedVenom2" then
  1493.         for i,v in pairs(Character:GetChildren()) do
  1494.         if v:IsA("Accessory") then            
  1495.             if v:FindFirstChildOfClass("YellowROBLOXVisor") then
  1496.                 v:Destroy()
  1497.             end
  1498.         end
  1499.     end
  1500. end
  1501.  
  1502. --//=================================\\
  1503. --||    ATTACK FUNCTIONS AND STUFF
  1504. --\\=================================//
  1505.  
  1506. function HAHA()
  1507.     ATTACK = true
  1508.     Rooted = true
  1509.     CALAMITY.Volume = 0.5
  1510.     local LAUGH = CreateSound(1359796082,Head,5,1,false)
  1511.     for i = 0, 14, 0.1 / Animation_Speed do
  1512.         Swait()
  1513.         pl = GetClientProperty(LAUGH,'PlaybackLoudness')
  1514.         Mask.Neon.Color = C3(1,1,1)
  1515.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
  1516.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1517.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.2) * ANGLES(RAD(160), RAD(5), RAD(-20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1518.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(30), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1519.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  1520.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.05) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(5 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  1521.     end
  1522.     for i = 0, 3.5, 0.1 / Animation_Speed do
  1523.         Swait()
  1524.         pl = GetClientProperty(LAUGH,'PlaybackLoudness')
  1525.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1526.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1527.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(20 + 5 * COS(SINE / 20))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1528.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(25), RAD(-20 - 5 * COS(SINE / 20))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1529.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  1530.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.05) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(5 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  1531.     end
  1532.     for i = 0, 21, 0.1 / Animation_Speed do
  1533.         Swait()
  1534.         pl = GetClientProperty(LAUGH,'PlaybackLoudness')
  1535.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(-20 - (pl/50)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1536.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1537.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(10), RAD(-15), RAD(50 + (pl/20))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1538.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(10), RAD(15), RAD(-50 - (pl/20))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1539.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-25 + 2.5 * COS(SINE / 20) - (pl/50))), 1 / Animation_Speed)
  1540.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.05) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(25.5 - 5 * COS(SINE / 20) + (pl/50))), 1 / Animation_Speed)
  1541.     end
  1542.     for i = 0, 3, 0.1 / Animation_Speed do
  1543.         Swait()
  1544.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1545.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + 2.5 * COS(SINE / 20)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1546.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 20), 0) * ANGLES(RAD(0), RAD(-15), RAD(30 + 3.5 * COS(SINE / 20))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1547.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 20), 0) * ANGLES(RAD(0), RAD(15), RAD(-30 - 3.5 * COS(SINE / 20))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1548.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  1549.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.1) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(5 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  1550.  
  1551.     end
  1552.     CALAMITY.Volume = 2.5
  1553.     ATTACK = false
  1554.     Rooted = false
  1555. end
  1556.  
  1557. function Taunt()
  1558.     ATTACK = true
  1559.     Rooted = true
  1560.     for i = 0, 8, 0.1 / Animation_Speed do
  1561.         Swait()
  1562.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1563.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 3.5 * COS(SINE / 20)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1564.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.1 * COS(SINE / 20), -0.6) * ANGLES(RAD(90), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1565.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.1 * COS(SINE / 20), -0.6) * ANGLES(RAD(90), RAD(-10), RAD(75)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1566.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  1567.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.1) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(5 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  1568.     end
  1569.     ATTACK = false
  1570.     Rooted = false
  1571. end
  1572.  
  1573. function DarkTurn(Foe)
  1574.     local ModelX = IT("Model", Effects)
  1575.     local CHILDREN = Foe:GetDescendants()
  1576.     for index, CHILD in pairs(CHILDREN) do
  1577.         if CHILD:IsA("BasePart") and CHILD.Parent.ClassName ~= "Folder" then
  1578.             CHILD.Parent = ModelX
  1579.             CHILD.Material = "Neon"
  1580.             CHILD.Color = C3(0, 0, 0)
  1581.             CHILD.Transparency = 0.7
  1582.             if CHILD:FindFirstChildOfClass("SpecialMesh") then
  1583.                 local mesh = CHILD:FindFirstChildOfClass("SpecialMesh")
  1584.                 mesh.TextureId = ""
  1585.             end
  1586.             if CHILD:FindFirstChildOfClass("Decal") then
  1587.                 local mesh = CHILD:FindFirstChildOfClass("Decal")
  1588.                 mesh:remove()
  1589.             end
  1590.             if CHILD.ClassName == "MeshPart" then
  1591.                 CHILD.TextureID = ""
  1592.             end
  1593.             if CHILD.ClassName == "UnionOperation" then
  1594.                 CHILD.UsePartColor = true
  1595.             end
  1596.             CHILD.CanCollide = false
  1597.         end
  1598.     end
  1599.     Debris:AddItem(ModelX, 5)
  1600. end
  1601.  
  1602. function AOEhit(POSITION,RANGE,OW)
  1603.     local CHILDREN = workspace:GetDescendants()
  1604.     for index, CHILD in pairs(CHILDREN) do
  1605.         if CHILD.ClassName == "Model" and CHILD ~= Character then
  1606.             local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1607.             if HUM then
  1608.                 local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1609.                 if TORSO then
  1610.                     if (TORSO.Position - POSITION).Magnitude <= RANGE then
  1611.                         if OW == true then
  1612.                             DarkTurn(CHILD)
  1613.                         else
  1614.                             if OW == "Gravity" then
  1615.                                 HUM.PlatformStand = true
  1616.                                 if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  1617.                                     local grav = Instance.new("BodyPosition",TORSO)
  1618.                                     grav.D = 15
  1619.                                     grav.P = 20000
  1620.                                     grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  1621.                                     grav.position = TORSO.Position
  1622.                                     grav.Name = "V3BanishForce"..Player.Name
  1623.                                 else
  1624.                                     TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
  1625.                                     TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
  1626.                                 end
  1627.                             else
  1628.                                 HUM.PlatformStand = false
  1629.                             end
  1630.                         end
  1631.                     elseif OW == "Gravity" then
  1632.                         if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  1633.                             TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
  1634.                             HUM.PlatformStand = false
  1635.                         end
  1636.                     end
  1637.                 end
  1638.             end
  1639.         end
  1640.     end
  1641. end
  1642.  
  1643.  
  1644. function AttackTemplate()
  1645.     attacking = true
  1646.     Rooted = false
  1647.     for i=0, 1, 0.1 / Animation_Speed do
  1648.         Swait()
  1649.         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)
  1650.         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)
  1651.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1652.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1653.         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)
  1654.         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)
  1655.     end
  1656.     attacking = false
  1657.     Rooted = false
  1658. end
  1659.  
  1660. function FullPowerBlast()
  1661.     attacking = true
  1662.     Humanoid.WalkSpeed = Speed
  1663.     for i=0, 1.5, 0.1 / Animation_Speed do
  1664.         Swait()
  1665.         turnto(Mouse.Hit.p)
  1666.         WACKYEFFECT({Time = math.random(30,120), EffectType = "Wave", Size = VT(1,1.5,1), Size2 = VT(0.3,0,0.3), Transparency = 1, Transparency2 = 0, CFrame = RightArm.CFrame*CF(0,0.5,0), MoveToPos = RightArm.CFrame*CF(0,-0.5,0).p, RotationX = 0, RotationY = math.random(-10,10), RotationZ = 0, Material = "Neon", Color = Color3.new(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1667.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
  1668.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
  1669.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1670.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1671.         RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1672.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1673.     end
  1674.     for i = 1, 50 do
  1675.         Swait()
  1676.     end
  1677.     local LOOP = 0
  1678.     local BEAM1 = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Really black"), "Beamo", VT(0,0,0))
  1679.     MakeForm(BEAM1, "Ball")
  1680.     local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Really black"), "Beam", VT(0, 0, 0), true)
  1681.     MakeForm(BEAM, "Cyl")
  1682.     repeat
  1683.         local DISTANCE = (RightArm.Position - Mouse.Hit.p).Magnitude
  1684.         if DISTANCE < 2000 then
  1685.             BEAM1.Size = VT(2.5 + 0.5 * COS(SINE / 8),  2.5 + 0.5 * COS(SINE / 8), 2.5 + 0.5 * COS(SINE / 8))
  1686.             BEAM1.CFrame = CF(RightArm.Position)
  1687.             BEAM.Size = VT(2 + 0.25 * COS(SINE / 8), DISTANCE, 2 + 0.25 * COS(SINE / 8))
  1688.             BEAM.CFrame = CF(RightArm.Position, Mouse.Hit.p) * CF(0, 0, -DISTANCE / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
  1689.             AOEhit(Mouse.Hit.p, 14,true,false)
  1690.             Swait()
  1691.             LOOP = LOOP + 1
  1692.         end
  1693.     until KEYHOLD == false
  1694.     coroutine.resume(coroutine.create(function()
  1695.         for i = 1, 15 do
  1696.             Swait()
  1697.             BEAM.Size = BEAM.Size - VT(0.1, 0, 0.1)
  1698.             BEAM1.Size = BEAM1.Size - VT(0.1, 0.1, 0.1)
  1699.             BEAM.Transparency = BEAM.Transparency + 0.06666666666666667
  1700.             BEAM1.Transparency = BEAM1.Transparency + 0.06666666666666667
  1701. end
  1702.         BEAM:remove()
  1703.         BEAM1:remove()
  1704.     end))
  1705.     attacking = false
  1706. end
  1707. function CreateMeshy(parent,meshtype,x1,y1,z1)
  1708. local mesh = Instance.new("SpecialMesh",parent)
  1709. mesh.MeshType = meshtype
  1710. mesh.Scale = Vector3.new(x1*10,y1*10,z1*10)
  1711. return mesh
  1712. end
  1713.  
  1714. function killnearest(position,range,maxstrength)
  1715.     for i, v in ipairs(workspace:GetChildren()) do
  1716.         do
  1717.             local body = v:GetChildren()
  1718.             for part = 1, #body do
  1719.                 if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude then
  1720.                     if v.ClassName == "Model" then
  1721.                         v:BreakJoints()
  1722.                     end
  1723.                     local bv = Instance.new("BodyVelocity")
  1724.                     bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
  1725.                     bv.velocity = CF(position, body[part].Position).lookVector * maxstrength
  1726.                     bv.Parent = body[part]
  1727.                     Debris:AddItem(bv, 0.2)
  1728.                     body[part].Parent = Effects
  1729.                     body[part].Material = "Neon"
  1730.                     body[part].BrickColor = BRICKC("Really black")
  1731.                     body[part].Transparency = 0.5
  1732.                     coroutine.resume(coroutine.create(function()
  1733.                         wait(5)
  1734.                         if body[part].Parent == Effects then
  1735.                             body[part]:remove()
  1736.                         end
  1737.                     end))
  1738.                 end
  1739.             end
  1740.             if v.ClassName == "Part" and v.Anchored == false and range > (v.Position - position).Magnitude then
  1741.                 v.Velocity = CFrame.new(position, v.Position).lookVector * 5 * maxstrength
  1742.             end
  1743.         end
  1744.     end
  1745. end
  1746.  
  1747. function CalamityJavelin()
  1748.     attacking = true
  1749.     Rooted = false
  1750.     for i=0, 1.5, 0.1 / Animation_Speed do
  1751.         Swait()
  1752.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.15 / Animation_Speed)
  1753.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
  1754.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1755.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1756.         if VALUE1 == false then
  1757.             RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1758.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1759.         elseif VALUE1 == true then
  1760.             --MagicSphere(VT(1.2,1.2,1.2),10,RightLeg.CFrame*CF(0,-1.25,0),"White",VT(-0.1,-0.1,-0.1))
  1761.             --MagicSphere(VT(1.2,1.2,1.2),10,LeftLeg.CFrame*CF(0,-1.25,0),"White",VT(-0.1,-0.1,-0.1))
  1762.             RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.5 * Player_Size, -0.6 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1763.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1764.         end
  1765.     end
  1766.     CreateSound("469345336", Effects, 3, MRANDOM(14,18)/10)
  1767.     local C = CF(Mouse.Hit.p) * CF(0,500,0)
  1768.     local BOMB = IT("Part",Effects)
  1769.     BOMB.Size = VT(15,175,15)
  1770.     BOMB.Material = "Neon"
  1771.     BOMB.Anchored = true
  1772.     BOMB.CanCollide = false
  1773.     MakeForm(BOMB,"Ball")
  1774.     BOMB.Color = C3(0,0,0)
  1775.     BOMB.CFrame = C * CF(0,-20,0)
  1776.     coroutine.resume(coroutine.create(function()
  1777.         for i = 1, 48/2 do
  1778.             Swait()
  1779.             BOMB.CFrame = BOMB.CFrame * CF(0,-20,0)
  1780.         end
  1781.         CreateRing(VT(5,5,5),true,125,BOMB.CFrame,"Pearl",VT(35,35,35))
  1782.         CreateRing(VT(5,5,5),true,125,BOMB.CFrame,"Pearl",VT(17.5,17.5,17.5))
  1783.         CreateSpikeball(VT(1,1,1),75,BOMB.CFrame,"Really black",VT(2.5,2.5,2.5))
  1784.         CreateSpikeball(VT(2,2,2),75,BOMB.CFrame,"White",VT(5,5,5))
  1785.         CreateSwirl(VT(2,2,2),75,CF(BOMB.Position),true,-0.2,"White",VT(15,15,15))
  1786.         CreateSwirl(VT(2,2,2),75,CF(BOMB.Position),true,0.2,"Really black",VT(20,20,20))
  1787.         CreateSwirl(VT(2,2,2),75,CF(BOMB.Position),true,-0.2,"White",VT(25,25,25))
  1788.         CreateSwirl(VT(2,2,2),75,CF(BOMB.Position),true,0.2,"White",VT(30,30,30))
  1789.         killnearest(BOMB.Position,BOMB.Size.Y*1.4,100)
  1790.         MagicSphere(BOMB.Size,45,BOMB.CFrame,"White",VT(10,5,10))
  1791.         BOMB:Destroy()
  1792.         CreateSound("185722889", Effects, 3, MRANDOM(10,12)/10)
  1793.     end))
  1794.     attacking = false
  1795.     Rooted = false
  1796. end
  1797.  
  1798. function CrystalSphere2()
  1799.     attacking = true
  1800.     Rooted = true
  1801.     local GYRO = IT("BodyGyro", RootPart)
  1802.     GYRO.D = 750
  1803.     GYRO.P = 2000
  1804.     GYRO.MaxTorque = VT(0, 40000, 0)
  1805.     for i = 0, 0.2, 0.1 / Animation_Speed do
  1806.         Swait()
  1807. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(1)), 0.4 / Animation_Speed)
  1808.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(-1)), 0.2 / Animation_Speed)
  1809.                     RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, 0) * ANGLES(RAD(165), RAD(5), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1810.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1811.     end
  1812.     local Sphero = CreatePart(3, Effects, "Neon", 0, 0, "White", "Sphere", VT(0.5, 0.5, 0.5), false)
  1813.     MakeForm(Sphero, "Ball")
  1814.     Sphero.Mesh.Scale = VT(15.5, 15.5, 15.5)
  1815.         Sphero.Color = C3(0,0,0)
  1816.     local WELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Sphero, CF(0, -10, 0), CF(0, 0, 0))
  1817. local CFRAME = Sphero.CFrame * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
  1818.         local SIZE = 1
  1819.     for i = 0, 20, 0.1 / Animation_Speed do
  1820.         Swait()
  1821.         WELD.C0 = WELD.C0*CF(0,-i/4.5,0)
  1822.         SIZE = SIZE + 1
  1823.         CFRAME = Sphero.CFrame * ANGLES(RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)))
  1824.         MagicSphere(VT(SIZE / 30, SIZE / 30, SIZE * 3), 65, CF(CFRAME * CF(MRANDOM(-5, 5), MRANDOM(-5, 5), MRANDOM(-5, 5)).p, CFRAME.p), "Institutional white", VT(0.001, 0.001, 0), 0.5)
  1825.         Sphero.Mesh.Scale = Sphero.Mesh.Scale + VT(2.82, 2.82, 2.82)
  1826.         GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
  1827.     end
  1828.     Sphero.Anchored = true
  1829.     WELD:remove()
  1830.     GYRO:remove()
  1831.     coroutine.resume(coroutine.create(function()
  1832.         Sphero.CFrame = CF(Sphero.Position, Mouse.Hit.p)
  1833.         for i = 1, 500 do
  1834.             Swait()
  1835.             Sphero.CFrame = Sphero.CFrame * CF(0, 0, -2)
  1836.             local HITFLOOR, HITPOS = Raycast(Sphero.Position, Sphero.CFrame.lookVector, 2.2, Character)
  1837.             if HITFLOOR ~= nil then
  1838.                 break
  1839.             end
  1840.         end
  1841.     Sphero.Touched:connect(function(hit)
  1842.     local hitted = false
  1843.     if hitted == false and hit.Parent ~= char then
  1844.     hitted = true
  1845.     DarkTurn(hit.Parent)
  1846.     end          
  1847.     end)
  1848. CFuncs["Sound"].Create("rbxassetid://847061203", Sphero, 2.5,1)
  1849.         coroutine.resume(coroutine.create(function()
  1850. for i = 0, 9 do
  1851.     yinyang = {"Really black","Institutional white"}
  1852.     random = yinyang[MRANDOM(1,2)]
  1853. end
  1854. end))
  1855.         Sphero.Transparency = 1
  1856.         Sphero:remove()
  1857.     end))
  1858.     attacking = false
  1859.     Rooted = false
  1860. end
  1861.  
  1862. function CrystalSphere()
  1863.     attacking = true
  1864.     Rooted = false
  1865.     local GYRO = IT("BodyGyro", RootPart)
  1866.     GYRO.D = 750
  1867.     GYRO.P = 2000
  1868.     GYRO.MaxTorque = VT(0, 40000, 0)
  1869.     for i = 0, 0.2, 0.1 / Animation_Speed do
  1870.         Swait()
  1871. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
  1872.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
  1873.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(110), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1874.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1875.     end
  1876.     CFuncs["Sound"].Create("rbxassetid://174580476", RightArm, 1,.7)
  1877.     local Sphero = CreatePart(3, Effects, "Neon", 0, 0, "White", "Sphere", VT(2.5, 2.5, 2.5), false)
  1878.     MakeForm(Sphero, "Ball")
  1879.     Sphero.Mesh.Scale = VT(1.5, 1.5, 1.5)
  1880.     Sphero.Color = C3(1,1,1)
  1881.     if math.random(1,3) == 1 then
  1882.         Sphero.Color = C3(0,0,0)
  1883.     end
  1884.     local WELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Sphero, CF(0, -2, 0), CF(0, 0, 0))
  1885.     local eff = Instance.new("ParticleEmitter",Sphero)
  1886. eff.Texture = "rbxassetid://695499847"
  1887. eff.LightEmission = 1
  1888. eff.Color = ColorSequence.new(Sphero.Color)
  1889. eff.Rate = 5
  1890. eff.Lifetime = NumberRange.new(0.5,2)
  1891. eff.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.2,2,0),NumberSequenceKeypoint.new(0.8,2,0),NumberSequenceKeypoint.new(1,0,0)})
  1892. eff.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(0.1,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
  1893. eff.Speed = NumberRange.new(20,150)
  1894. eff.Drag = 5
  1895. eff.Rotation = NumberRange.new(-500,500)
  1896. eff.VelocitySpread = 9000
  1897. eff.RotSpeed = NumberRange.new(-150,150)
  1898.     for i = 0, 0.25, 0.1 / Animation_Speed do
  1899.         Swait()
  1900.         Sphero.Mesh.Scale = Sphero.Mesh.Scale + VT(0.01, 0.01, 0.01)
  1901.         GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
  1902.     end
  1903.     Sphero.Anchored = true
  1904.     WELD:remove()
  1905.     GYRO:remove()
  1906.     coroutine.resume(coroutine.create(function()
  1907.         Sphero.CFrame = CF(Sphero.Position, Mouse.Hit.p)
  1908.         for i = 1, 500 do
  1909.             Swait()
  1910.             Sphero.CFrame = Sphero.CFrame * CF(0, 0, -2)
  1911.             local HITFLOOR, HITPOS = Raycast(Sphero.Position, Sphero.CFrame.lookVector, 2.2, Character)
  1912.             if HITFLOOR ~= nil then
  1913.                 break
  1914.             end
  1915.         end
  1916.         eff:Remove()
  1917. CFuncs["Sound"].Create("rbxassetid://847061203", Sphero, 2.5,1)
  1918. Sphero.Touched:connect(function(hit)
  1919.     local hitted = false
  1920.     if hitted == false and hit.Parent ~= char then
  1921.     hitted = true
  1922.     DarkTurn(hit.Parent)
  1923.     end          
  1924.     end)  
  1925.         coroutine.resume(coroutine.create(function()
  1926. for i = 0, 9 do
  1927.     yinyang = {"Really black","Institutional white"}
  1928.     random = yinyang[MRANDOM(1,2)]
  1929. local dis = CreateParta(char,0.5,1,"Neon",BrickColor.new(random))
  1930. dis.BrickColor = BrickColor.new(random)
  1931. dis.Anchored = true
  1932. dis.Velocity = Vector3.new(math.random(-50,50),math.random(50,150),math.random(-50,50))
  1933. CFuncs["Sound"].Create("rbxassetid://199145967", dis, 0.1,1)
  1934. dis.CFrame = Sphero.CFrame*CFrame.new(math.random(-10,10),math.random(5,25),math.random(-10,10))*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
  1935. CreateMeshy(dis,"Sphere",0.5,0.5,4)
  1936. dis.Anchored = false
  1937. local at1 = Instance.new("Attachment",dis)
  1938. at1.Position = Vector3.new(-0.25,0,0)
  1939. local at2 = Instance.new("Attachment",dis)
  1940. at2.Position = Vector3.new(0.25,0,0)
  1941. local trl = Instance.new('Trail',dis)
  1942. trl.Attachment0 = at1
  1943. trl.FaceCamera = true
  1944. trl.Attachment1 = at2
  1945. trl.Texture = "rbxassetid://1049219073"
  1946. trl.LightEmission = 1
  1947. trl.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
  1948. trl.Color = ColorSequence.new(dis.Color)
  1949. trl.Lifetime = 0.6
  1950. game:GetService("Debris"):AddItem(dis, 5)
  1951. local hitted = false
  1952. coroutine.resume(coroutine.create(function()
  1953. dis.Touched:connect(function(hit)
  1954.     if hitted == false and hit.Parent ~= char then
  1955.     hitted = true
  1956.     CFuncs["Sound"].Create("rbxassetid://199146035", dis, 1.5,1)
  1957.     DarkTurn(hit.Parent)
  1958.     coroutine.resume(coroutine.create(function()
  1959. local eff = Instance.new("ParticleEmitter",dis)
  1960. eff.Texture = "rbxassetid://2344870656"
  1961. eff.LightEmission = 1
  1962. eff.Color = ColorSequence.new(dis.Color)
  1963. eff.Rate = 10000000
  1964. eff.Enabled = true
  1965. --eff.EmissionDirection = "Front"
  1966. eff.Lifetime = NumberRange.new(0.5)
  1967. eff.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,75,0),NumberSequenceKeypoint.new(0.1,10,0),NumberSequenceKeypoint.new(0.8,20,0),NumberSequenceKeypoint.new(1,30,0)})
  1968. eff.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.8,0),NumberSequenceKeypoint.new(0.5,0,0),NumberSequenceKeypoint.new(1,1,0)})
  1969. eff.Speed = NumberRange.new(100)
  1970. eff.Drag = 5
  1971. eff.Rotation = NumberRange.new(-500,500)
  1972. eff.SpreadAngle = Vector2.new(0,900)
  1973. eff.RotSpeed = NumberRange.new(-500,500)
  1974. wait(0.1)
  1975. eff.Enabled = false
  1976.     end))
  1977. coroutine.resume(coroutine.create(function()
  1978. local eff = Instance.new("ParticleEmitter",dis)
  1979. eff.Texture = "rbxassetid://695499847"
  1980. eff.LightEmission = 1
  1981. eff.Color = ColorSequence.new(dis.Color)
  1982. eff.Rate = 500000
  1983. eff.Lifetime = NumberRange.new(0.5,2)
  1984. eff.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.2,2,0),NumberSequenceKeypoint.new(0.8,2,0),NumberSequenceKeypoint.new(1,0,0)})
  1985. eff.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(0.1,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
  1986. eff.Speed = NumberRange.new(20,150)
  1987. eff.Drag = 5
  1988. eff.Rotation = NumberRange.new(-500,500)
  1989. eff.VelocitySpread = 9000
  1990. eff.RotSpeed = NumberRange.new(-150,150)
  1991. wait(0.5)
  1992. eff.Enabled = false
  1993. end))
  1994. dis.Anchored = true
  1995. dis.Transparency = 1
  1996. wait(8)
  1997. dis:Destroy()
  1998. end
  1999. end)
  2000. end))
  2001. end
  2002. end))
  2003.         Sphero.Transparency = 1
  2004.         Sphero:remove()
  2005.     end))
  2006.     attacking = false
  2007.     Rooted = false
  2008. end
  2009.  
  2010. --//=================================\\
  2011. --||      ASSIGN THINGS TO KEYS
  2012. --\\=================================//
  2013.  
  2014. function MouseDown(Mouse)
  2015.     if ATTACK == false then
  2016.     end
  2017. end
  2018.  
  2019. function MouseUp(Mouse)
  2020. HOLD = false
  2021. end
  2022.  
  2023. function KeyDown(Key)
  2024.     if Key ~= "w" and Key ~= "a" and Key ~= "s" and Key ~= "d" then
  2025.     KEYHOLD = true
  2026.     if Key == "t" and ATTACK == false then
  2027.         HAHA()
  2028.     end
  2029.  
  2030.     if Key == "r" and ATTACK == false then
  2031.         Taunt()
  2032.     end
  2033.  
  2034.     if Key == "c" and ATTACK == false then
  2035.     end
  2036.  
  2037.     if Key == "v" and ATTACK == false then
  2038.     end
  2039.  
  2040.     if Key == "x" and ATTACK == false then
  2041.     end
  2042.    
  2043.     if Key == "z" and ATTACK == false then
  2044.         FullPowerBlast()
  2045.     end
  2046.     if Key == "x" and ATTACK == false then
  2047.         CrystalSphere()
  2048.     end
  2049.     if Key == "c" and ATTACK == false then
  2050.         CrystalSphere2()
  2051.     end
  2052.     if Key == "v" and ATTACK == false then
  2053.         CalamityJavelin()
  2054.     end
  2055.    
  2056.     if Key == "space" then
  2057.         Humanoid.Jump = true
  2058.     end
  2059.     end
  2060. end
  2061.  
  2062. function KeyUp(Key)
  2063.     KEYHOLD = false
  2064. end
  2065.  
  2066.     Mouse.Button1Down:connect(function(NEWKEY)
  2067.         MouseDown(NEWKEY)
  2068.     end)
  2069.     Mouse.Button1Up:connect(function(NEWKEY)
  2070.         MouseUp(NEWKEY)
  2071.     end)
  2072.     Mouse.KeyDown:connect(function(NEWKEY)
  2073.         KeyDown(NEWKEY)
  2074.     end)
  2075.     Mouse.KeyUp:connect(function(NEWKEY)
  2076.         KeyUp(NEWKEY)
  2077.     end)
  2078.  
  2079. --//=================================\\
  2080. --\\=================================//
  2081.  
  2082. function unanchor()
  2083.     for _, c in pairs(Character:GetChildren()) do
  2084.         if c:IsA("BasePart") and c ~= RootPart then
  2085.             c.Anchored = false
  2086.         end
  2087.     end
  2088.     if UNANCHOR == true then
  2089.         RootPart.Anchored = false
  2090.     else
  2091.         RootPart.Anchored = true
  2092.     end
  2093. end
  2094.  
  2095. --//=================================\\
  2096. --||    WRAP THE WHOLE SCRIPT UP
  2097. --\\=================================//
  2098.  
  2099. Humanoid.Changed:connect(function(Jump)
  2100.     if Jump == "Jump" and (Disable_Jump == true) then
  2101.         Humanoid.Jump = false
  2102.     end
  2103. end)
  2104.  
  2105. local BLINKLOOP = 0
  2106.  
  2107. while true do
  2108.     Swait()
  2109.     refit()
  2110.     handlexweld.C0 = Clerp(handlexweld.C0, handlexweld.C0 * ANGLES(RAD(SINE), RAD(SINE), RAD(SINE)), 0.2 / Animation_Speed)
  2111.     handlexweld2.C0 = Clerp(handlexweld2.C0, handlexweld2.C0 * ANGLES(RAD(SINE), RAD(-SINE), RAD(-SINE)), 0.2 / Animation_Speed)
  2112.     handlexweld3.C0 = Clerp(handlexweld3.C0, handlexweld3.C0 * ANGLES(RAD(SINE), RAD(SINE), RAD(-SINE)), 0.2 / Animation_Speed)
  2113.     handlexweld4.C0 = Clerp(handlexweld4.C0, handlexweld4.C0 * ANGLES(RAD(-SINE), RAD(SINE), RAD(SINE)), 0.2 / Animation_Speed)
  2114.     handlexweld5.C0 = Clerp(handlexweld5.C0, handlexweld5.C0 * ANGLES(RAD(-SINE), RAD(-SINE), RAD(-SINE)), 0.2 / Animation_Speed)
  2115.     if Character.Parent == nil then
  2116.         Character.Parent = workspace
  2117.     end
  2118.     script.Parent = Character
  2119.     if script.Parent ~= Character then
  2120.         wow = script.Parent:Clone()
  2121.         wow.Parent = Character
  2122.     end
  2123.     if Player.Parent == nil then
  2124.         Player.Parent = game.Players
  2125.         refit()
  2126.     end
  2127.     if Humanoid.Parent == nil then
  2128.         Humanoid = Instance.new("Humanoid",Character)
  2129.     end
  2130.     for _, c in pairs(Character:GetChildren()) do
  2131.         if c:IsA("BasePart") then
  2132.             c.Parent = Character
  2133.             if c.Parent == nil then
  2134.                 c.Parent = Character
  2135.             end
  2136.         end
  2137.     end
  2138.     ANIMATE.Parent = nil
  2139.     ANIMATOR.Parent = nil
  2140.     Humanoid.HipHeight = 1.5
  2141.     for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  2142.         v:Stop();
  2143.     end
  2144.     SINE = SINE + CHANGE
  2145.     local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2146.     local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2147.     local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  2148.     if TORSOVERTICALVELOCITY > 40 then
  2149.         TORSOVERTICALVELOCITY = 40
  2150.     elseif TORSOVERTICALVELOCITY < -20 then
  2151.         TORSOVERTICALVELOCITY = -20
  2152.     end
  2153.     if ATTACK == false then
  2154.         if TORSOVELOCITY < 1 then
  2155.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2156.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 3.5 * COS(SINE / 20)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2157.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.1 * COS(SINE / 20), 0) * ANGLES(RAD(0), RAD(-15), RAD(35 + 5 * COS(SINE / 20))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2158.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.1 * COS(SINE / 20), 0) * ANGLES(RAD(0), RAD(15), RAD(-35 - 5 * COS(SINE / 20))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2159.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  2160.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.1) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(5 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  2161.         elseif TORSOVELOCITY > 1 then
  2162.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 20)) * ANGLES(RAD(10 + 2.5 * COS(SINE / 20)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2163.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 1.5 * COS(SINE / 20)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2164.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, 0.5) * ANGLES(RAD(-30), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2165.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.5, 0.5) * ANGLES(RAD(-30), RAD(0), RAD(25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2166.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -.8 - 0.1 * COS(SINE / 20), -0.3) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(-15 + 2.5 * COS(SINE / 20))), 1 / Animation_Speed)
  2167.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 20), -0.1) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-3.5 - 2 * COS(SINE / 20)), RAD(0), RAD(9 - 5 * COS(SINE / 20))), 1 / Animation_Speed)
  2168.         end
  2169.     end
  2170.     unanchor()
  2171.     Humanoid.MaxHealth = 2e6
  2172.     Humanoid.Health = 2e6
  2173.     if Rooted == false then
  2174.         Disable_Jump = false
  2175.         Humanoid.WalkSpeed = Speed
  2176.     elseif Rooted == true then
  2177.         Disable_Jump = true
  2178.         Humanoid.WalkSpeed = 0
  2179.     end
  2180.     for _, c in pairs(Character:GetChildren()) do
  2181.         if c.Name == "HipsterGlasses" then
  2182.             --c:Destroy()
  2183.         end
  2184.     end
  2185.     CALAMITY.SoundId = "rbxassetid://608726256"
  2186.     CALAMITY.Looped = true
  2187.     --CALAMITY.Volume = 2.5
  2188.     kk = CALAMITY.TimePosition
  2189.     if CALAMITY.Parent ~= Character then
  2190.         CALAMITY = Instance.new("Sound",Character)
  2191.         CALAMITY.TimePosition = kk
  2192.     end
  2193.     CALAMITY.Playing = true
  2194.     CALAMITY.Name = "CALAMITY"
  2195.     CALAMITY.Pitch = 1.1
  2196.     Humanoid.DisplayDistanceType = "None"
  2197.     Humanoid.Name = "Calamity"
  2198. end
  2199.  
  2200. --//=================================\\
  2201. --\\=================================//
  2202.  
  2203.  
  2204.  
  2205.  
  2206.  
  2207. --//====================================================\\--
  2208. --||                     END OF SCRIPT
  2209. --\\====================================================//--
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top