Advertisement
FloweyTheFlower

Roblox Scripts #66 Falling Bow Scripts (Rare)

Nov 25th, 2017
2,457
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 79.75 KB | None | 0 0
  1. -- Fix By BonniekunG1s
  2.   wait(0.016666666666666666)
  3.   Effects = {}
  4.  
  5. local acos = math.acos
  6. local sqrt = math.sqrt
  7. local Vec3 = Vector3.new
  8. local fromAxisAngle = CFrame.fromAxisAngle
  9.  
  10. local function toAxisAngle(CFr)
  11.         local X,Y,Z,R00,R01,R02,R10,R11,R12,R20,R21,R22 = CFr:components()
  12.         local Angle = math.acos((R00+R11+R22-1)/2)
  13.         local A = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
  14.         A = A == 0 and 0.00001 or A
  15.         local B = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
  16.         B = B == 0 and 0.00001 or B
  17.         local C = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
  18.         C = C == 0 and 0.00001 or C
  19.         local x = (R21-R12)/sqrt(A)
  20.         local y = (R02-R20)/sqrt(B)
  21.         local z = (R10-R01)/sqrt(C)
  22.         return Vec3(x,y,z),Angle
  23. end
  24.  
  25. function ApplyTrig(Num,Func)
  26.         local Min,Max = Func(0),Func(1)
  27.         local i = Func(Num)
  28.         return (i-Min)/(Max-Min)
  29.         --[[if Func == "sin" then
  30.                 return (math.sin((1-Num)*math.pi)+1)/2
  31.         elseif Func == "cos" then
  32.                 return (math.cos((1-Num)*math.pi)+1)/2
  33.         end]]
  34. end
  35.  
  36. function LerpCFrame(CFrame1,CFrame2,Num)
  37.         local Vec,Ang = toAxisAngle(CFrame1:inverse()*CFrame2)
  38.         return CFrame1*fromAxisAngle(Vec,Ang*Num) + (CFrame2.p-CFrame1.p)*Num
  39. end
  40.  
  41. function Crater(Torso,Radius)
  42.         Spawn(function()
  43.         local Ray = Ray.new(Torso.Position,Vector3.new(0,-1,0)*10)
  44.         local Ignore = {}
  45.         for i,v in pairs(game:GetService("Players"):GetPlayers()) do
  46.                 if v.Character ~= nil then
  47.                         Ignore[#Ignore+1] = v.Character
  48.                 end
  49.         end
  50.         local Hit,Pos,SurfaceNorm = Workspace:FindPartOnRayWithIgnoreList(Ray,Ignore)
  51.         if Hit == nil then return end
  52.         local Parts = {}
  53.         for i = 1,360,10 do
  54.                 local P = Instance.new("Part",Torso.Parent)
  55.                 P.Anchored = true
  56.                 P.FormFactor = "Custom"
  57.                 P.BrickColor = BrickColor.new("Really black")
  58.                 P.Material = "Neon"
  59.                 P.TopSurface = "Smooth"
  60.                 P.BottomSurface = "Smooth"
  61.                 P.CanCollide = false
  62.                 P.Size = Vector3.new(5,10,10)*(math.random(80,100)/100)
  63.                 P.CFrame = ((CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))-Vector3.new(0,7,0))*CFrame.Angles(math.rad(math.random(-50,50)),math.rad(math.random(-50,50)),math.rad(math.random(-50,50)))
  64.                 Parts[#Parts+1] = {P,P.CFrame,((CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))-Vector3.new(0,1,0))*CFrame.Angles(0,math.rad(i),0)*CFrame.new(0,0,-Radius)*CFrame.Angles(math.rad(math.random(-50,-20)),math.rad(math.random(-15,15)),math.rad(math.random(-15,15))),P.Size}
  65.                 if math.random(0,5) == 0 then -- rubble
  66.                         local P = Instance.new("Part",Torso.Parent)
  67.                         P.Anchored = true
  68.                         P.FormFactor = "Custom"
  69.                         P.BrickColor = BrickColor.new("Really black")
  70.                         P.Material = "Neon"
  71.                         P.TopSurface = "Smooth"
  72.                         P.BottomSurface = "Smooth"
  73.                         P.CanCollide = false
  74.                         P.Size = Vector3.new(2,2,2)*(math.random(80,100)/100)
  75.                         P.CFrame = ((CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))-Vector3.new(0,2.5,0))*CFrame.Angles(math.rad(math.random(-50,50)),math.rad(math.random(-50,50)),math.rad(math.random(-50,50)))
  76.                         Parts[#Parts+1] = {P,P.CFrame,(CFrame.new(Pos,Pos+SurfaceNorm)*CFrame.Angles(math.rad(90),0,0))*CFrame.Angles(0,math.rad(i),0)*CFrame.new(0,0,-Radius-8)*CFrame.Angles(math.rad(math.random(-90,90)),math.rad(math.random(-90,90)),math.rad(math.random(-90,90))),P.Size}
  77.                 end
  78.         end
  79.         for i = 0,1,0.05 do
  80.                 for i2,v in pairs(Parts) do
  81.                         v[1].CFrame = LerpCFrame(v[2],v[3],ApplyTrig(i,math.cos))
  82.                 end
  83.                 wait(0.02)
  84.         end
  85.         for i,v in pairs(Parts) do
  86.                 if v[1].Size.X > 2.1 then
  87.                         v[1].CFrame = v[1].CFrame+Vector3.new(0,2,0)
  88.                 end
  89.                 v[1].Anchored = false
  90.         end
  91.         for i = 0,1,0.05 do
  92.                 for i2,v in pairs(Parts) do
  93.                         v[1].Transparency = i
  94.                         if i == 1 then
  95.                                 v[1]:Destroy()
  96.                         elseif i >= 0.25 then
  97.                                 v[1].CanCollide = false
  98.                         end
  99.                 end
  100.                 wait(0.02)
  101.         end
  102.         Parts = nil
  103.         end)
  104. end
  105.   local Player = game.Players.localPlayer
  106. script.Parent = Player.PlayerGui
  107.   local Character = Player.Character
  108.   local Humanoid = Character.Humanoid
  109.   local Mouse = Player:GetMouse()
  110.   local LeftArm = Character["Left Arm"]
  111.   local RightArm = Character["Right Arm"]
  112.   local LeftLeg = Character["Left Leg"]
  113.   local RightLeg = Character["Right Leg"]
  114.   local Head = Character.Head
  115.   local Torso = Character.Torso
  116.   local Camera = game.Workspace.CurrentCamera
  117.   local RootPart = Character.HumanoidRootPart
  118.   local RootJoint = RootPart.RootJoint
  119.   local attack = false
  120.   local Anim = "Idle"
  121.   local attacktype = 1
  122.   local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  123.   local velocity = RootPart.Velocity.y
  124.   local sine = 0
  125.   local change = 1
  126.   local Create = LoadLibrary("RbxUtility").Create
  127.   Head.face:Destroy()
  128.   Head.Transparency = 1
  129.   local FakeHead = Head:Clone()
  130.   FakeHead.Transparency = 0
  131.   FakeHead.Size = Vector3.new(0.8,0.8,0.8)
  132. local txt = Instance.new("BillboardGui", Character)
  133. txt.Adornee = Character.Head
  134. txt.Name = "Status"
  135. txt.Size = UDim2.new(2, 0, 1.2, 0)
  136. txt.StudsOffset = Vector3.new(-9, 8, 0)
  137. local text = Instance.new("TextLabel", txt)
  138. text.Size = UDim2.new(10, 0, 7, 0)
  139. text.FontSize = "Size24"
  140. text.TextScaled = true
  141. text.TextTransparency = 0
  142. text.BackgroundTransparency = 1
  143. text.TextTransparency = 0
  144. text.TextStrokeTransparency = 0
  145. text.Font = "Cartoon"
  146. text.TextStrokeColor3 = BrickColor.new("White").Color
  147.  
  148. CV = "Maroon"
  149.  
  150. spawn(function()
  151.     while wait() do
  152.         for i,v in pairs(Character:GetChildren()) do
  153.             if v:IsA'Part' then
  154.                 v.BrickColor = BrickColor.new("Really black")
  155.             end
  156.         end
  157.     end
  158. end)
  159.  
  160. local s = Instance.new("Sound",Character)
  161. s.SoundId = "rbxassetid://145570864"
  162. s.Looped = true
  163. s.Volume = 0.5
  164. s:Play()
  165.  
  166. eye2 = Instance.new("Part", Character)
  167. eye2m = Instance.new("SpecialMesh", eye2)
  168. ogsize = eye2m.Scale
  169.  
  170. v=Instance.new("Part")
  171. v.Name = "ColorBrick"
  172. v.Parent=Character
  173. v.FormFactor="Symmetric"
  174. v.Anchored=true
  175. v.CanCollide=false
  176. v.BottomSurface="Smooth"
  177. v.TopSurface="Smooth"
  178. v.Size=Vector3.new(10,5,3)
  179. v.Transparency=1
  180. v.CFrame=Character.Torso.CFrame
  181. v.BrickColor=BrickColor.new(CV)
  182. v.Transparency=1
  183. text.TextColor3 = BrickColor.White().Color
  184. v.Shape="Block"
  185. text.Text = "Nomm"
  186.   Humanoid.MaxHealth = 999e999
  187.   local m = Create("Model")({
  188.     Parent = Character,
  189.     Name = "WeaponModel"
  190.   })
  191.   Humanoid.Animator.Parent = nil
  192.   Character.Animate.Parent = nil
  193.   local function newMotor(part0, part1, c0, c1)
  194.     local w = Create("Motor")({
  195.       Parent = part0,
  196.       Part0 = part0,
  197.       Part1 = part1,
  198.       C0 = c0,
  199.       C1 = c1
  200.     })
  201.     return w
  202.   end
  203.   function clerp(a, b, t)
  204.     return a:lerp(b, t)
  205.   end
  206.   RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
  207.   NeckCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  208.   local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
  209.   local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
  210.   local RH = newMotor(Torso, RightLeg, CFrame.new(0.5, -2, 0), CFrame.new(0, 0, 0))
  211.   local LH = newMotor(Torso, LeftLeg, CFrame.new(-0.5, -2, 0), CFrame.new(0, 0, 0))
  212.   RootJoint.C1 = CFrame.new(0, 0, 0)
  213.   RootJoint.C0 = CFrame.new(0, 0, 0)
  214.   Torso.Neck.C1 = CFrame.new(0, 0, 0)
  215.   Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
  216.   local rarmc1 = RW.C1
  217.   local larmc1 = LW.C1
  218.   local rlegc1 = RH.C1
  219.   local llegc1 = LH.C1
  220.   local resetc1 = false
  221.   function PlayAnimationFromTable(table, speed, bool)
  222.     RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
  223.     Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
  224.     RW.C0 = clerp(RW.C0, table[3], speed)
  225.     LW.C0 = clerp(LW.C0, table[4], speed)
  226.     RH.C0 = clerp(RH.C0, table[5], speed)
  227.     LH.C0 = clerp(LH.C0, table[6], speed)
  228.     if bool == true and resetc1 == false then
  229.       resetc1 = true
  230.       RootJoint.C1 = RootJoint.C1
  231.       Torso.Neck.C1 = Torso.Neck.C1
  232.       RW.C1 = rarmc1
  233.       LW.C1 = larmc1
  234.       RH.C1 = rlegc1
  235.       LH.C1 = llegc1
  236.     end
  237.   end
  238.   ArtificialHB = Create("BindableEvent", script)({Parent = script, Name = "Heartbeat"})
  239.   script:WaitForChild("Heartbeat")
  240.   frame = 0.03333333333333333
  241.   tf = 0
  242.   allowframeloss = false
  243.   tossremainder = false
  244.   lastframe = tick()
  245.   script.Heartbeat:Fire()
  246.   game:GetService("RunService").Heartbeat:connect(function(s, p)
  247.     tf = tf + s
  248.     if tf >= frame then
  249.       if allowframeloss then
  250.         script.Heartbeat:Fire()
  251.         lastframe = tick()
  252.       else
  253.         for i = 1, math.floor(tf / frame) do
  254.           script.Heartbeat:Fire()
  255.         end
  256.         lastframe = tick()
  257.       end
  258.       if tossremainder then
  259.         tf = 0
  260.       else
  261.         tf = tf - frame * math.floor(tf / frame)
  262.       end
  263.     end
  264.   end)
  265.   function swait(num)
  266.     if num == 0 or num == nil then
  267.       ArtificialHB.Event:wait()
  268.     else
  269.       for i = 0, num do
  270.         ArtificialHB.Event:wait()
  271.       end
  272.     end
  273.   end
  274.   function RemoveOutlines(part)
  275.     part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  276.   end
  277.   CFuncs = {
  278.     Part = {
  279.       Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  280.         local Part = Create("Part")({
  281.           Parent = Parent,
  282.           Reflectance = Reflectance,
  283.           Transparency = Transparency,
  284.           CanCollide = false,
  285.           Locked = true,
  286.           BrickColor = BrickColor.new(tostring(BColor)),
  287.           Name = Name,
  288.           Size = Size,
  289.           Material = Material
  290.         })
  291.         RemoveOutlines(Part)
  292.         return Part
  293.       end
  294.     },
  295.     Mesh = {
  296.       Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  297.         local Msh = Create(Mesh)({
  298.           Parent = Part,
  299.           Offset = OffSet,
  300.           Scale = Scale
  301.         })
  302.         if Mesh == "SpecialMesh" then
  303.           Msh.MeshType = MeshType
  304.           Msh.MeshId = MeshId
  305.         end
  306.         return Msh
  307.       end
  308.     },
  309.     Weld = {
  310.       Create = function(Parent, Part0, Part1, C0, C1)
  311.         local Weld = Create("Weld")({
  312.           Parent = Parent,
  313.           Part0 = Part0,
  314.           Part1 = Part1,
  315.           C0 = C0,
  316.           C1 = C1
  317.         })
  318.         return Weld
  319.       end
  320.     },
  321.     Sound = {
  322.       Create = function(id, par, vol, pit)
  323.         coroutine.resume(coroutine.create(function()
  324.           local Sound = Create("Sound")({
  325.             Volume = vol,
  326.             Pitch = pit or 1,
  327.             SoundId = "rbxassetid://" .. id,
  328.             Parent = par or workspace
  329.           })
  330.           Sound:play()
  331.           game:GetService("Debris"):AddItem(Sound, 10)
  332.         end))
  333.       end
  334.     },
  335.     Decal = {
  336.       Create = function(Color, Texture, Transparency, Name, Parent)
  337.         local Decal = Create("Decal")({
  338.           Color3 = Color,
  339.           Texture = "rbxassetid://" .. Texture,
  340.           Transparency = Transparency,
  341.           Name = Name,
  342.           Parent = Parent
  343.         })
  344.         return Decal
  345.       end
  346.     },
  347.     BillboardGui = {
  348.       Create = function(Parent, Image, Position, Size)
  349.         local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
  350.         BillPar.CFrame = CFrame.new(Position)
  351.         local Bill = Create("BillboardGui")({
  352.           Parent = BillPar,
  353.           Adornee = BillPar,
  354.           Size = UDim2.new(1, 0, 1, 0),
  355.           SizeOffset = Vector2.new(Size, Size)
  356.         })
  357.         local d = Create("ImageLabel", Bill)({
  358.           Parent = Bill,
  359.           BackgroundTransparency = 1,
  360.           Size = UDim2.new(1, 0, 1, 0),
  361.           Image = "rbxassetid://" .. Image
  362.         })
  363.         return BillPar
  364.       end
  365.     },
  366.     ParticleEmitter = {
  367.       Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
  368.         local Particle = Create("ParticleEmitter")({
  369.           Parent = Parent,
  370.           Color = ColorSequence.new(Color1, Color2),
  371.           LightEmission = LightEmission,
  372.           Size = Size,
  373.           Texture = Texture,
  374.           Transparency = Transparency,
  375.           ZOffset = ZOffset,
  376.           Acceleration = Accel,
  377.           Drag = Drag,
  378.           LockedToPart = LockedToPart,
  379.           VelocityInheritance = VelocityInheritance,
  380.           EmissionDirection = EmissionDirection,
  381.           Enabled = Enabled,
  382.           Lifetime = LifeTime,
  383.           Rate = Rate,
  384.           Rotation = Rotation,
  385.           RotSpeed = RotSpeed,
  386.           Speed = Speed,
  387.           VelocitySpread = VelocitySpread
  388.         })
  389.         return Particle
  390.       end
  391.     },
  392.     CreateTemplate = {}
  393.   }
  394.   function rayCast(Position, Direction, Range, Ignore)
  395.     return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
  396.   end
  397.   function findNearestTorso(pos)
  398.     local list = game.Workspace:children()
  399.     local torso
  400.     local dist = 1000
  401.     local temp, human, temp2
  402.     for x = 1, #list do
  403.       temp2 = list[x]
  404.       if temp2.className == "Model" and temp2.Name ~= Character.Name then
  405.         temp = temp2:findFirstChild("Torso")
  406.         human = temp2:findFirstChild("Humanoid")
  407.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
  408.           torso = temp
  409.           dist = (temp.Position - pos).magnitude
  410.         end
  411.       end
  412.     end
  413.     return torso, dist
  414.   end
  415.   function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  416.     if hit.Parent == nil then
  417.       return
  418.     end
  419.     local h = hit.Parent:FindFirstChild("Humanoid")
  420.     for _, v in pairs(hit.Parent:children()) do
  421.       if v:IsA("Humanoid") then
  422.         h = v
  423.       end
  424.     end
  425.     if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  426.       if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  427.         return
  428.       end
  429.       local c = Create("ObjectValue")({
  430.         Name = "creator",
  431.         Value = game:service("Players").LocalPlayer,
  432.         Parent = h
  433.       })
  434.       game:GetService("Debris"):AddItem(c, 0.5)
  435.       if HitSound ~= nil and HitPitch ~= nil then
  436.         CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
  437.       end
  438.       local blocked = false
  439.       local block = hit.Parent:findFirstChild("Block")
  440.       if block ~= nil and block.className == "IntValue" and block.Value > 0 then
  441.         blocked = true
  442.         block.Value = block.Value - 1
  443.         print(block.Value)
  444.       end
  445.       if blocked == false then
  446.         h.Health = 0
  447.       else
  448.         h.Health = h.Health - Damage / 2
  449.       end
  450.       if Type == "Knockdown" then
  451.         local hum = hit.Parent.Humanoid
  452.         hum.PlatformStand = true
  453.         coroutine.resume(coroutine.create(function(HHumanoid)
  454.           swait(1)
  455.           HHumanoid.PlatformStand = false
  456.         end), hum)
  457.         local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  458.         local bodvol = Create("BodyVelocity")({
  459.           velocity = angle * knockback,
  460.           P = 5000,
  461.           maxForce = Vector3.new(8000, 8000, 8000),
  462.           Parent = hit
  463.         })
  464.         local rl = Create("BodyAngularVelocity")({
  465.           P = 3000,
  466.           maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  467.           angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  468.           Parent = hit
  469.         })
  470.         game:GetService("Debris"):AddItem(bodvol, 0.5)
  471.         game:GetService("Debris"):AddItem(rl, 0.5)
  472.       elseif Type == "Normal" then
  473.         local vp = Create("BodyVelocity")({
  474.           P = 500,
  475.           maxForce = Vector3.new(math.huge, 0, math.huge),
  476.           velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  477.         })
  478.         game:GetService("Debris"):AddItem(vp, 0.5)
  479.       elseif Type == "Up" then
  480.         local bodyVelocity = Create("BodyVelocity")({
  481.           velocity = Vector3.new(0, 20, 0),
  482.           P = 5000,
  483.           maxForce = Vector3.new(8000, 8000, 8000),
  484.           Parent = hit
  485.         })
  486.         game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  487.       elseif Type == "DarkUp" then
  488.         coroutine.resume(coroutine.create(function()
  489.           for i = 0, 1, 0.1 do
  490.             swait()
  491.             Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
  492.           end
  493.         end))
  494.         local bodyVelocity = Create("BodyVelocity")({
  495.           velocity = Vector3.new(0, 20, 0),
  496.           P = 5000,
  497.           maxForce = Vector3.new(8000, 8000, 8000),
  498.           Parent = hit
  499.         })
  500.         game:GetService("Debris"):AddItem(bodyVelocity, 1)
  501.       elseif Type == "Snare" then
  502.         local bp = Create("BodyPosition")({
  503.           P = 2000,
  504.           D = 100,
  505.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  506.           position = hit.Parent.Torso.Position,
  507.           Parent = hit.Parent.Torso
  508.         })
  509.         game:GetService("Debris"):AddItem(bp, 1)
  510.       elseif Type == "Freeze" then
  511.         local BodPos = Create("BodyPosition")({
  512.           P = 50000,
  513.           D = 1000,
  514.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  515.           position = hit.Parent.Torso.Position,
  516.           Parent = hit.Parent.Torso
  517.         })
  518.         local BodGy = Create("BodyGyro")({
  519.           maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
  520.           P = 20000,
  521.           Parent = hit.Parent.Torso,
  522.           cframe = hit.Parent.Torso.CFrame
  523.         })
  524.         hit.Parent.Torso.Anchored = true
  525.         coroutine.resume(coroutine.create(function(Part)
  526.           swait(1.5)
  527.           Part.Anchored = false
  528.         end), hit.Parent.Torso)
  529.         game:GetService("Debris"):AddItem(BodPos, 3)
  530.         game:GetService("Debris"):AddItem(BodGy, 3)
  531.       end
  532.       local debounce = Create("BoolValue")({
  533.         Name = "DebounceHit",
  534.         Parent = hit.Parent,
  535.         Value = true
  536.       })
  537.       game:GetService("Debris"):AddItem(debounce, Delay)
  538.       c = Create("ObjectValue")({
  539.         Name = "creator",
  540.         Value = Player,
  541.         Parent = h
  542.       })
  543.       game:GetService("Debris"):AddItem(c, 0.5)
  544.     end
  545.   end
  546.   function ShowDamage(Pos, Text, Time, Color)
  547.     local Rate = 0.03333333333333333
  548.     local Pos = Pos or Vector3.new(0, 0, 0)
  549.     local Text = Text or ""
  550.     local Time = Time or 2
  551.     local Color = Color or Color3.new(1, 0, 1)
  552.     local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
  553.     EffectPart.Anchored = true
  554.     local BillboardGui = Create("BillboardGui")({
  555.       Size = UDim2.new(3, 0, 3, 0),
  556.       Adornee = EffectPart,
  557.       Parent = EffectPart
  558.     })
  559.     local TextLabel = Create("TextLabel")({
  560.       BackgroundTransparency = 1,
  561.       Size = UDim2.new(1, 0, 1, 0),
  562.       Text = Text,
  563.       Font = "SciFi",
  564.       TextColor3 = Color,
  565.       TextScaled = true,
  566.       BorderColor3 = Color3.new(0,0,0),
  567.       Parent = BillboardGui
  568.     })
  569.     game.Debris:AddItem(EffectPart, Time)
  570.     EffectPart.Parent = game:GetService("Workspace")
  571.     delay(0, function()
  572.       local Frames = Time / Rate
  573.       for Frame = 1, Frames do
  574.         wait(Rate)
  575.         local Percent = Frame / Frames
  576.         EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  577.         TextLabel.TextTransparency = Percent
  578.       end
  579.       if EffectPart and EffectPart.Parent then
  580.         EffectPart:Destroy()
  581.       end
  582.     end)
  583.   end
  584.   function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
  585.     for _, c in pairs(workspace:children()) do
  586.       local hum = c:findFirstChild("Humanoid")
  587.       if hum ~= nil then
  588.         local head = c:findFirstChild("Torso")
  589.         if head ~= nil then
  590.           local targ = head.Position - Part.Position
  591.           local mag = targ.magnitude
  592.           if Magnitude >= mag and c.Name ~= Player.Name then
  593.             Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0, HitSound, HitPitch)
  594.           end
  595.         end
  596.       end
  597.     end
  598.   end
  599.   --//New Damage\\--
  600. function Damage2(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  601.     if hit.Parent == nil then
  602.       return
  603.     end
  604.     local h = hit.Parent:FindFirstChild("Humanoid")
  605.     for _, v in pairs(hit.Parent:children()) do
  606.       if v:IsA("Humanoid") then
  607.         h = v
  608.       end
  609.     end
  610.     if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  611.       if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  612.         return
  613.       end
  614.       local c = Create("ObjectValue")({
  615.         Name = "creator",
  616.         Value = game:service("Players").LocalPlayer,
  617.         Parent = h
  618.       })
  619.       game:GetService("Debris"):AddItem(c, 0.5)
  620.       if HitSound ~= nil and HitPitch ~= nil then
  621.         CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
  622.       end
  623.       local Damage = math.random(minim, maxim)
  624.       local blocked = false
  625.       local block = hit.Parent:findFirstChild("Block")
  626.       if block ~= nil and block.className == "IntValue" and block.Value > 0 then
  627.         blocked = true
  628.         block.Value = block.Value - 1
  629.         print(block.Value)
  630.       end
  631.       if blocked == false then
  632.         h.Health = h.Health - Damage
  633.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Really black").Color)
  634.       else
  635.         h.Health = h.Health - Damage / 2
  636.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Really black").Color)
  637.       end
  638.       if Type == "Knockdown" then
  639.         local hum = hit.Parent.Humanoid
  640.         hum.PlatformStand = true
  641.         coroutine.resume(coroutine.create(function(HHumanoid)
  642.           swait(1)
  643.           HHumanoid.PlatformStand = false
  644.         end), hum)
  645.         local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  646.         local bodvol = Create("BodyVelocity")({
  647.           velocity = angle * knockback,
  648.           P = 5000,
  649.           maxForce = Vector3.new(8000, 8000, 8000),
  650.           Parent = hit
  651.         })
  652.         local rl = Create("BodyAngularVelocity")({
  653.           P = 3000,
  654.           maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  655.           angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  656.           Parent = hit
  657.         })
  658.         game:GetService("Debris"):AddItem(bodvol, 0.5)
  659.         game:GetService("Debris"):AddItem(rl, 0.5)
  660.       elseif Type == "Normal" then
  661.         local vp = Create("BodyVelocity")({
  662.           P = 500,
  663.           maxForce = Vector3.new(math.huge, 0, math.huge),
  664.           velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  665.         })
  666.         if knockback > 0 then
  667.           vp.Parent = hit.Parent.Torso
  668.         end
  669.         game:GetService("Debris"):AddItem(vp, 0.5)
  670.       elseif Type == "Up" then
  671.         local bodyVelocity = Create("BodyVelocity")({
  672.           velocity = Vector3.new(0, 20, 0),
  673.           P = 5000,
  674.           maxForce = Vector3.new(8000, 8000, 8000),
  675.           Parent = hit
  676.         })
  677.         game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  678.       elseif Type == "DarkUp" then
  679.         coroutine.resume(coroutine.create(function()
  680.           for i = 0, 1, 0.1 do
  681.             swait()
  682.             Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
  683.           end
  684.         end))
  685.         local bodyVelocity = Create("BodyVelocity")({
  686.           velocity = Vector3.new(0, 20, 0),
  687.           P = 5000,
  688.           maxForce = Vector3.new(8000, 8000, 8000),
  689.           Parent = hit
  690.         })
  691.         game:GetService("Debris"):AddItem(bodyVelocity, 1)
  692.       elseif Type == "Snare" then
  693.         local bp = Create("BodyPosition")({
  694.           P = 2000,
  695.           D = 100,
  696.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  697.           position = hit.Parent.Torso.Position,
  698.           Parent = hit.Parent.Torso
  699.         })
  700.         game:GetService("Debris"):AddItem(bp, 1)
  701.       elseif Type == "Freeze" then
  702.         local BodPos = Create("BodyPosition")({
  703.           P = 50000,
  704.           D = 1000,
  705.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  706.           position = hit.Parent.Torso.Position,
  707.           Parent = hit.Parent.Torso
  708.         })
  709.         local BodGy = Create("BodyGyro")({
  710.           maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
  711.           P = 20000,
  712.           Parent = hit.Parent.Torso,
  713.           cframe = hit.Parent.Torso.CFrame
  714.         })
  715.         hit.Parent.Torso.Anchored = true
  716.         coroutine.resume(coroutine.create(function(Part)
  717.           swait(1.5)
  718.           Part.Anchored = false
  719.         end), hit.Parent.Torso)
  720.         game:GetService("Debris"):AddItem(BodPos, 3)
  721.         game:GetService("Debris"):AddItem(BodGy, 3)
  722.       end
  723.       local debounce = Create("BoolValue")({
  724.         Name = "DebounceHit",
  725.         Parent = hit.Parent,
  726.         Value = true
  727.       })
  728.       game:GetService("Debris"):AddItem(debounce, Delay)
  729.       c = Create("ObjectValue")({
  730.         Name = "creator",
  731.         Value = Player,
  732.         Parent = h
  733.       })
  734.       game:GetService("Debris"):AddItem(c, 0.5)
  735.     end
  736.   end
  737.   function ShowDamage2(Pos, Text, Time, Color)
  738.     local Rate = 0.03333333333333333
  739.     local Pos = Pos or Vector3.new(0, 0, 0)
  740.     local Text = Text or ""
  741.     local Time = Time or 2
  742.     local Color = Color or Color3.new(1, 0, 1)
  743.     local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
  744.     EffectPart.Anchored = true
  745.     local BillboardGui = Create("BillboardGui")({
  746.       Size = UDim2.new(3, 0, 3, 0),
  747.       Adornee = EffectPart,
  748.       Parent = EffectPart
  749.     })
  750.     local TextLabel = Create("TextLabel")({
  751.       BackgroundTransparency = 1,
  752.       Size = UDim2.new(1, 0, 1, 0),
  753.       Text = Text,
  754.       Font = "SciFi",
  755.       TextColor3 = Color,
  756.       TextScaled = true,
  757.       Parent = BillboardGui
  758.     })
  759.     game.Debris:AddItem(EffectPart, Time)
  760.     EffectPart.Parent = game:GetService("Workspace")
  761.     delay(0, function()
  762.       local Frames = Time / Rate
  763.       for Frame = 1, Frames do
  764.         wait(Rate)
  765.         local Percent = Frame / Frames
  766.         EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  767.         TextLabel.TextTransparency = Percent
  768.       end
  769.       if EffectPart and EffectPart.Parent then
  770.         EffectPart:Destroy()
  771.       end
  772.     end)
  773.   end
  774.   function MagnitudeDamage2(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
  775.     for _, c in pairs(workspace:children()) do
  776.       local hum = c:findFirstChild("Humanoid")
  777.       if hum ~= nil then
  778.         local head = c:findFirstChild("Torso")
  779.         if head ~= nil then
  780.           local targ = head.Position - Part.Position
  781.           local mag = targ.magnitude
  782.           if Magnitude >= mag and c.Name ~= Player.Name then
  783.             Damage2(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0, HitSound, HitPitch)
  784.           end
  785.         end
  786.       end
  787.     end
  788.   end
  789.   ----------------------
  790.   Handle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Handle", Vector3.new(0.400000036, 0.400000006, 1.20000005))
  791.   HandleWeld = CFuncs.Weld.Create(m, Character["Right Arm"], Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0921096802, -1.06268024, -0.143123627, 1, 0, 0, 0, -1, 0, 0, 0, -1))
  792.   Barrel = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 0, "Really black", "Barrel", Vector3.new(0.250000003, 0.250000003, 0.250000024))
  793.   Mesh = Instance.new("SpecialMesh",Barrel)
  794.   Mesh.MeshId = "rbxassetid://442405779"
  795.   Mesh.TextureId = "rbxassetid://442405780"
  796.   Mesh.Scale = Vector3.new(0.06,0.06,0.06)
  797.   BarrelWeld = CFuncs.Weld.Create(m, Handle, Barrel, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00579071045, -1.59999704, 0.500003815, 1, 0, 0, 0, 1, 0, 0, 0, 1))
  798.   JetpackHandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "JetpackHandle", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  799.   JetpackHandleWeld = CFuncs.Weld.Create(m, Character.Torso, JetpackHandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(7.62939453E-6, -0.400000662, -2.30000019, 0.999999821, -3.64178788E-7, -8.94072372E-8, 3.63716538E-7, 1, 7.422572E-10, 2.98025853E-8, -1.13686838E-13, 0.999999881))
  800.   EffectPartR1 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartR1", Vector3.new(0.5, 0.5, 0.300000012))
  801.   EffectPartR1Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartR1, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.09364891, -0.187623501, -0.0701560974, 0.906307757, 3.29325474E-7, -0.422617853, -0.144542456, 0.939694047, -0.309971899, 0.397131324, 0.34201628, 0.851652086))
  802.   EffectPartL1 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartL1", Vector3.new(0.5, 0.5, 0.300000012))
  803.   EffectPartL1Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartL1, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.02251816, -0.220495224, 0.120153427, 0.965927601, 1.32644391E-6, 0.258812487, 0.0885165557, 0.939698577, -0.330363601, -0.243205622, 0.342014492, 0.907681763))
  804.   EffectPartR2 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartR2", Vector3.new(0.5, 0.5, 0.300000012))
  805.   EffectPartR2Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartR2, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.093647, 0.123265266, 0.0195560455, 0.906307757, 3.29325474E-7, -0.422617853, -0.109380148, 0.965926826, -0.234566003, 0.408217847, 0.25881511, 0.875427186))
  806.   EffectPartL2 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartL2", Vector3.new(0.5, 0.5, 0.300000012))
  807.   EffectPartL2Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartL2, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.02252197, 0.0983912945, 0.212385654, 0.96592772, 1.15327362E-6, 0.258813411, 0.0669838786, 0.965926588, -0.249997437, -0.249995068, 0.258815855, 0.933015227))
  808.   EffectPartL3 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartL3", Vector3.new(0.400000006, 0.5, 0.300000012))
  809.   EffectPartL3Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartL3, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.86114502, 1.02306592, -0.343766928, 0.981060922, -0.0278283078, 0.19168894, -0.0858270004, 0.824720919, 0.558989346, -0.173645675, -0.56485492, 0.806713104))
  810.   EffectPartR3 = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "EffectPartR3", Vector3.new(0.400000006, 0.5, 0.300000012))
  811.   EffectPartR3Weld = CFuncs.Weld.Create(m, JetpackHandle, EffectPartR3, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.83058548, 1.0264864, -0.312187195, 0.981061339, 0.0278254021, -0.191695988, 0.0858334452, 0.824721098, 0.558989942, 0.173649624, -0.564855158, 0.806710064))
  812.   CFuncs.Mesh.Create("SpecialMesh", JetpackHandle, Enum.MeshType.FileMesh, "rbxassetid://0", Vector3.new(0, 0, 0), Vector3.new(1.29999995, 1.29999995, 1.29999995))
  813.   EffectModel = Create("Model")({Parent = Character, Name = "Effects"})
  814.   Effects = {
  815.     Block = {
  816.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
  817.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  818.         prt.Anchored = true
  819.         prt.CFrame = cframe
  820.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  821.         game:GetService("Debris"):AddItem(prt, 10)
  822.         if Type == 1 or Type == nil then
  823.           table.insert(Effects, {
  824.             prt,
  825.             "Block1",
  826.             delay,
  827.             x3,
  828.             y3,
  829.             z3,
  830.             msh
  831.           })
  832.         elseif Type == 2 then
  833.           table.insert(Effects, {
  834.             prt,
  835.             "Block2",
  836.             delay,
  837.             x3,
  838.             y3,
  839.             z3,
  840.             msh
  841.           })
  842.         end
  843.       end
  844.     },
  845.     Cylinder = {
  846.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  847.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
  848.         prt.Anchored = true
  849.         prt.CFrame = cframe
  850.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  851.         game:GetService("Debris"):AddItem(prt, 2)
  852.         Effects[#Effects + 1] = {
  853.           prt,
  854.           "Cylinder",
  855.           delay,
  856.           x3,
  857.           y3,
  858.           z3,
  859.           msh
  860.         }
  861.       end
  862.     },
  863.     Head = {
  864.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  865.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  866.         prt.Anchored = true
  867.         prt.CFrame = cframe
  868.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "nil", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  869.         game:GetService("Debris"):AddItem(prt, 10)
  870.         table.insert(Effects, {
  871.           prt,
  872.           "Cylinder",
  873.           delay,
  874.           x3,
  875.           y3,
  876.           z3,
  877.           msh
  878.         })
  879.       end
  880.     },
  881.     Sphere = {
  882.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  883.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  884.         prt.Anchored = true
  885.         prt.CFrame = cframe
  886.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  887.         game:GetService("Debris"):AddItem(prt, 10)
  888.         table.insert(Effects, {
  889.           prt,
  890.           "Cylinder",
  891.           delay,
  892.           x3,
  893.           y3,
  894.           z3,
  895.           msh
  896.         })
  897.       end
  898.     },
  899.     Elect = {
  900.       Create = function(cff, x, y, z)
  901.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("Lime green"), "Part", Vector3.new(1, 1, 1))
  902.         prt.Anchored = true
  903.         prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
  904.         prt.CFrame = CFrame.new(prt.Position)
  905.         game:GetService("Debris"):AddItem(prt, 2)
  906.         local xval = math.random() / 2
  907.         local yval = math.random() / 2
  908.         local zval = math.random() / 2
  909.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
  910.         table.insert(Effects, {
  911.           prt,
  912.           "Elec",
  913.           0.1,
  914.           x,
  915.           y,
  916.           z,
  917.           xval,
  918.           yval,
  919.           zval
  920.         })
  921.       end
  922.     },
  923.     Ring = {
  924.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  925.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  926.         prt.Anchored = true
  927.         prt.CFrame = cframe
  928.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  929.         game:GetService("Debris"):AddItem(prt, 10)
  930.         table.insert(Effects, {
  931.           prt,
  932.           "Cylinder",
  933.           delay,
  934.           x3,
  935.           y3,
  936.           z3,
  937.           msh
  938.         })
  939.       end
  940.     },
  941.     Wave = {
  942.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  943.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  944.         prt.Anchored = true
  945.         prt.CFrame = cframe
  946.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  947.         game:GetService("Debris"):AddItem(prt, 10)
  948.         table.insert(Effects, {
  949.           prt,
  950.           "Cylinder",
  951.           delay,
  952.           x3,
  953.           y3,
  954.           z3,
  955.           msh
  956.         })
  957.       end
  958.     },
  959.     Break = {
  960.       Create = function(brickcolor, cframe, x1, y1, z1)
  961.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
  962.         prt.Anchored = true
  963.         prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  964.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  965.         local num = math.random(10, 50) / 1000
  966.         game:GetService("Debris"):AddItem(prt, 10)
  967.         table.insert(Effects, {
  968.           prt,
  969.           "Shatter",
  970.           num,
  971.           prt.CFrame,
  972.           math.random() - math.random(),
  973.           0,
  974.           math.random(50, 100) / 100
  975.         })
  976.       end
  977.     },
  978.     Fire = {
  979.       Create = function(brickcolor, cframe, x1, y1, z1, delay)
  980.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  981.         prt.Anchored = true
  982.         prt.CFrame = cframe
  983.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  984.         game:GetService("Debris"):AddItem(prt, 10)
  985.         table.insert(Effects, {
  986.           prt,
  987.           "Fire",
  988.           delay,
  989.           1,
  990.           1,
  991.           1,
  992.           msh
  993.         })
  994.       end
  995.     },
  996.     FireWave = {
  997.       Create = function(brickcolor, cframe, x1, y1, z1)
  998.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
  999.         prt.Anchored = true
  1000.         prt.CFrame = cframe
  1001.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1002.         local d = Create("Decal")({
  1003.           Parent = prt,
  1004.           Texture = "rbxassetid://26356434",
  1005.           Face = "Top"
  1006.         })
  1007.         local d = Create("Decal")({
  1008.           Parent = prt,
  1009.           Texture = "rbxassetid://26356434",
  1010.           Face = "Bottom"
  1011.         })
  1012.         game:GetService("Debris"):AddItem(prt, 10)
  1013.         table.insert(Effects, {
  1014.           prt,
  1015.           "FireWave",
  1016.           1,
  1017.           30,
  1018.           math.random(400, 600) / 100,
  1019.           msh
  1020.         })
  1021.       end
  1022.     },
  1023.     Lightning = {
  1024.       Create = function(p0, p1, tym, ofs, col, th, tra, last)
  1025.         local magz = (p0 - p1).magnitude
  1026.         local curpos = p0
  1027.         local trz = {
  1028.           -ofs,
  1029.           ofs
  1030.         }
  1031.         for i = 1, tym do
  1032.           local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
  1033.           local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
  1034.           local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
  1035.           li.Material = "Neon"
  1036.           if tym == i then
  1037.             local magz2 = (curpos - p1).magnitude
  1038.             li.Size = Vector3.new(th, th, magz2)
  1039.             li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
  1040.             table.insert(Effects, {
  1041.               li,
  1042.               "Disappear",
  1043.               last
  1044.             })
  1045.           else
  1046.             li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
  1047.             curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
  1048.             game.Debris:AddItem(li, 10)
  1049.             table.insert(Effects, {
  1050.               li,
  1051.               "Disappear",
  1052.               last
  1053.             })
  1054.           end
  1055.         end
  1056.       end
  1057.     },
  1058.     EffectTemplate = {}
  1059.   }
  1060.   function Shootcombo()
  1061.     local MouseLook = CFrame.new((Barrel.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
  1062.     CFuncs.Sound.Create("173979241", Handle, 1, 1)
  1063.     Effects.Sphere.Create(BrickColor.new("Really black"), Barrel.CFrame, 0.5, 0.5, 0.5, 1,1,1, 0.09)
  1064.     Effects.Sphere.Create(BrickColor.new("Really black"), Barrel.CFrame, 1, 1, 1, 1,1,1, 0.09)
  1065.     Effects.Block.Create(BrickColor.new("Really black"), Barrel.CFrame, 1, 1, 1, 1,1,1, 0.09, 1)
  1066.     table.insert(Effects, {
  1067.       MouseLook.lookVector,
  1068.       "Shoot",
  1069.       30,
  1070.       Barrel.Position,
  1071.       6,
  1072.       8,
  1073.       0,
  1074.       1
  1075.     })
  1076.   end
  1077.   function Bolt()
  1078.     CFuncs.Sound.Create("173979241", Handle, 1, 1)
  1079.   end
  1080.   function SpinShot()
  1081.     attack = true
  1082.     for i = 0, 1, 0.12 do
  1083.       swait()
  1084.       PlayAnimationFromTable({
  1085.         CFrame.new(-0.33084622, -0.304918617, -0.52869457, 0.342018992, 2.44630968E-7, -0.939693093, 0.163176, 0.98480773, 0.0593912415, 0.925417006, -0.173648283, 0.336822927) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1086.         CFrame.new(0.0322597921, 1.48268783, -0.0930604339, 0.322602183, 0.14004983, 0.936116517, -0.172989488, 0.981059611, -0.0871584788, -0.930592477, -0.133820817, 0.340719253) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1087.         CFrame.new(0.506988645, 0.377255857, -0.803069711, 0.259420365, 0.955582082, -0.139867067, 0.0992426202, -0.170435682, -0.980358601, -0.960651875, 0.240444362, -0.139049053) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1088.         CFrame.new(-1.72998452, 0.495006025, -0.392647803, 0.542880952, 0.410539567, 0.732626021, 0.737672389, 0.183852568, -0.649647713, -0.4013969, 0.893121183, -0.203034982) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1089.         CFrame.new(0.502950907, -1.9151485, 0.231621087, 0.864151537, 0.0236141682, -0.502677977, 0.0515102148, 0.989501238, 0.135033786, 0.50058949, -0.142582476, 0.853862286) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1090.         CFrame.new(-0.865711927, -1.63087702, -0.282848835, 0.925415218, 0.173649043, 0.336827427, -0.163176641, 0.98480773, -0.0593916178, -0.342023462, -4.54019755E-7, 0.939691782) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1091.       }, 0.35, false)
  1092.     end
  1093.     Shootcombo()
  1094.     for i = 0, 1, 0.3 do
  1095.       swait()
  1096.       RootPart.Velocity = RootPart.CFrame.lookVector * -10
  1097.       PlayAnimationFromTable({
  1098.         CFrame.new(-0.330845773, -0.378038257, 0.581278205, 0.342019081, 5.60612747E-8, -0.939693093, -0.0819000229, 0.996194661, -0.0298090074, 0.936117232, 0.0871561244, 0.340717614) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1099.         CFrame.new(0.0322549939, 1.48268545, -0.0930609033, 0.239786834, -0.113366202, 0.964181364, -0.164735377, 0.974004149, 0.155488253, -0.95675236, -0.196119189, 0.214875787) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1100.         CFrame.new(0.806416035, 0.470317304, -0.694097638, 0.244436547, 0.969400585, 0.0226592347, 0.0830115676, 0.00236219168, -0.996545851, -0.9661057, 0.245473176, -0.079894051) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1101.         CFrame.new(-1.57694697, 0.512434185, -0.230538517, 0.760710716, 0.410538197, 0.502765059, 0.470990688, 0.1838523, -0.862764716, -0.44662869, 0.893119931, -0.0535021573) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1102.         CFrame.new(0.865904212, -1.71960115, 0.0648829341, 0.881422341, -0.173719466, -0.439225137, 0.290622324, 0.932511985, 0.214389697, 0.372338951, -0.316616565, 0.872420609) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1103.         CFrame.new(-0.679471731, -1.82845092, -0.362076759, 0.770665169, -0.0483331755, 0.635404408, -0.0295864344, 0.993330181, 0.111444041, -0.63655293, -0.104685426, 0.764095306) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1104.       }, 0.5, false)
  1105.     end
  1106.     for i = 0, 1, 0.12 do
  1107.       swait()
  1108.       PlayAnimationFromTable({
  1109.         CFrame.new(-0.33084622, -0.304918617, -0.52869457, 0.342018992, 2.44630968E-7, -0.939693093, 0.163176, 0.98480773, 0.0593912415, 0.925417006, -0.173648283, 0.336822927) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1110.         CFrame.new(0.0322597921, 1.48268783, -0.0930604339, 0.322602183, 0.14004983, 0.936116517, -0.172989488, 0.981059611, -0.0871584788, -0.930592477, -0.133820817, 0.340719253) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1111.         CFrame.new(0.506988645, 0.377255857, -0.803069711, 0.259420365, 0.955582082, -0.139867067, 0.0992426202, -0.170435682, -0.980358601, -0.960651875, 0.240444362, -0.139049053) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1112.         CFrame.new(-1.72998452, 0.495006025, -0.392647803, 0.542880952, 0.410539567, 0.732626021, 0.737672389, 0.183852568, -0.649647713, -0.4013969, 0.893121183, -0.203034982) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1113.         CFrame.new(0.502950907, -1.9151485, 0.231621087, 0.864151537, 0.0236141682, -0.502677977, 0.0515102148, 0.989501238, 0.135033786, 0.50058949, -0.142582476, 0.853862286) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1114.         CFrame.new(-0.865711927, -1.63087702, -0.282848835, 0.925415218, 0.173649043, 0.336827427, -0.163176641, 0.98480773, -0.0593916178, -0.342023462, -4.54019755E-7, 0.939691782) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1115.       }, 0.4, false)
  1116.     end
  1117.     Bolt()
  1118.     attack = false
  1119.   end
  1120.   function LungeShot(Mode)
  1121.     attack = true
  1122.     Humanoid.Jump = true
  1123.     CFuncs.Sound.Create("158149887", Torso, 1, 0.9)
  1124.     if Mode == "Forward" then
  1125.       RootPart.Velocity = RootPart.CFrame.lookVector * 80
  1126.       for i = 0, 1, 0.1 do
  1127.         swait()
  1128.         PlayAnimationFromTable({
  1129.           CFrame.new(-3.81469727E-6, 0.0628450513, 0.146824121, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20), 0, 0),
  1130.           CFrame.new(0, 1.49998665, -2.20537186E-6, 1, 0, 0, 0, 0.984807312, 0.173648536, 0, -0.173648536, 0.984807312) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(20), 0, 0),
  1131.           CFrame.new(0.523067951, 0.10826005, -0.698177814, 0.296512067, 0.787702143, 0.540005624, 0.206982568, 0.498990804, -0.84152633, -0.932329774, 0.361294419, -0.0150838122) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1132.           CFrame.new(-1.42747557, -0.117001235, -0.482704312, 0.268235743, 0.0413863063, 0.962466657, 0.56728673, 0.800693691, -0.192532867, -0.778610408, 0.597635567, 0.191299409) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1133.           CFrame.new(0.499998361, -1.51702964, -0.129410475, 0.984807849, 0, -0.173648044, 0.0449435376, 0.965925634, 0.25488764, 0.167731121, -0.258819699, 0.951251149) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1134.           CFrame.new(-0.500004053, -1.35084605, -0.555529714, 0.981060445, 0.0871543288, 0.172987863, -0.140045926, 0.936115682, 0.322606146, -0.133820146, -0.340722382, 0.930591524) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1135.         }, 0.3, false)
  1136.       end
  1137.     elseif Mode == "Backward" then
  1138.       RootPart.Velocity = RootPart.CFrame.lookVector * -80
  1139.       for i = 0, 1, 0.1 do
  1140.         swait()
  1141.         PlayAnimationFromTable({
  1142.           CFrame.new(-3.81469727E-6, 0.0628450513, 0.146824121, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(10), 0, 0),
  1143.           CFrame.new(0, 1.49998665, -2.20537186E-6, 1, 0, 0, 0, 0.984807312, 0.173648536, 0, -0.173648536, 0.984807312) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-10), 0, 0),
  1144.           CFrame.new(0.523067951, 0.10826005, -0.698177814, 0.296512067, 0.787702143, 0.540005624, 0.206982568, 0.498990804, -0.84152633, -0.932329774, 0.361294419, -0.0150838122) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1145.           CFrame.new(-1.42747557, -0.117001235, -0.482704312, 0.268235743, 0.0413863063, 0.962466657, 0.56728673, 0.800693691, -0.192532867, -0.778610408, 0.597635567, 0.191299409) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1146.           CFrame.new(0.499998361, -1.51702964, -0.129410475, 0.984807849, 0, -0.173648044, 0.0449435376, 0.965925634, 0.25488764, 0.167731121, -0.258819699, 0.951251149) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1147.           CFrame.new(-0.500004053, -1.35084605, -0.555529714, 0.981060445, 0.0871543288, 0.172987863, -0.140045926, 0.936115682, 0.322606146, -0.133820146, -0.340722382, 0.930591524) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1148.         }, 0.3, false)
  1149.       end
  1150.     end
  1151.     local hitfloor
  1152.     while hitfloor == nil do
  1153.       swait()
  1154.       hitfloor, posfloor = rayCast(RootPart.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 6, Character)
  1155.     end
  1156.     for i = 0, 1, 0.2 do
  1157.       swait()
  1158.       PlayAnimationFromTable({
  1159.         CFrame.new(-0.330837339, -0.699999928, -0.231655031, 0.342019022, 0, -0.939693093, 0, 1, 0, 0.939693093, 0, 0.342018992) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1160.         CFrame.new(0.120368131, 1.44721556, -0.255113155, 0.418385565, -0.00512788072, 0.908255041, -0.141075298, 0.987487316, 0.0705598369, -0.897252142, -0.157652482, 0.412421852) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1161.         CFrame.new(0.285862863, 0.389394581, -0.81719619, 0.340717524, 0.939693093, 0.0298089981, 0.087155968, 0, -0.996194661, -0.936117232, 0.342018992, -0.081899859) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1162.         CFrame.new(-1.69020307, 0.41307798, -0.514919221, 0.800103247, 0.517377436, 0.303571403, 0.255382031, 0.16412276, -0.95280838, -0.542784572, 0.839871705, -8.13782215E-4) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1163.         CFrame.new(0.897276342, -1.54715633, 0.463865459, 0.951250672, -0.229007483, -0.206587687, 0.304395527, 0.589249432, 0.748417377, -0.0496615469, -0.774816513, 0.630232751) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1164.         CFrame.new(-0.632248044, -1.39177239, -0.405484438, 0.817636669, -0.123517469, 0.562330127, 0.0563425981, 0.989193141, 0.13535662, -0.572972655, -0.0789892152, 0.815760136) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1165.       }, 0.4, false)
  1166.     end
  1167.     Shootcombo()
  1168.     for i = 0, 1, 0.3 do
  1169.       swait()
  1170.       RootPart.Velocity = RootPart.CFrame.lookVector * -40
  1171.       PlayAnimationFromTable({
  1172.         CFrame.new(-0.330840945, -1.00127292, -0.261750877, 0.342018962, -1.4270141E-7, -0.939693034, -0.243209973, 0.965925992, -0.0885209814, 0.907673895, 0.258818597, 0.330364913) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1173.         CFrame.new(0.120366111, 1.44719875, -0.255110145, 0.418383747, -0.0842670798, 0.904353142, -0.141075209, 0.977573991, 0.156355858, -0.897247374, -0.192998484, 0.397113085) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1174.         CFrame.new(0.632638395, 0.661208212, -0.690981925, 0.326495707, 0.925417125, 0.192363232, 0.0858313814, 0.173647493, -0.981060386, -0.941293538, 0.336822778, -0.0227346662) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1175.         CFrame.new(-1.51982272, 0.476396978, -0.384689331, 0.81248939, 0.445674956, 0.37581408, 0.350734472, 0.141240373, -0.925762773, -0.46566987, 0.88398242, -0.0415571854) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1176.         CFrame.new(0.783671975, -1.17622542, 0.561357141, 0.831630051, -0.23809275, -0.501700282, 0.550981283, 0.240921408, 0.798984766, -0.0693621933, -0.940887034, 0.331542104) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1177.         CFrame.new(-0.632252574, -1.39177251, -0.40547961, 0.73177588, -0.317396253, 0.603132486, 0.21459803, 0.947232425, 0.238111958, -0.646885633, -0.0448122993, 0.761271358) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1178.       }, 0.6, false)
  1179.     end
  1180.     Bolt()
  1181.     attack = false
  1182.   end
  1183.   function AutoShot()
  1184.     attack = true
  1185.     Humanoid.WalkSpeed = 45
  1186.     Bolt()
  1187.     for i = 0, 1, 0.3 do
  1188.       swait()
  1189.       PlayAnimationFromTable({
  1190.         CFrame.new(-0.330837339, -0.699999928, -0.231655031, 0.342019022, 0, -0.939693093, 0, 1, 0, 0.939693093, 0, 0.342018992) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1191.         CFrame.new(0.120368131, 1.44721556, -0.255113155, 0.418385565, -0.00512788072, 0.908255041, -0.141075298, 0.987487316, 0.0705598369, -0.897252142, -0.157652482, 0.412421852) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1192.         CFrame.new(0.285862863, 0.389394581, -0.81719619, 0.340717524, 0.939693093, 0.0298089981, 0.087155968, 0, -0.996194661, -0.936117232, 0.342018992, -0.081899859) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1193.         CFrame.new(-1.69020307, 0.41307798, -0.514919221, 0.800103247, 0.517377436, 0.303571403, 0.255382031, 0.16412276, -0.95280838, -0.542784572, 0.839871705, -8.13782215E-4) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1194.         CFrame.new(0.897276342, -1.54715633, 0.463865459, 0.951250672, -0.229007483, -0.206587687, 0.304395527, 0.589249432, 0.748417377, -0.0496615469, -0.774816513, 0.630232751) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1195.         CFrame.new(-0.632248044, -1.39177239, -0.405484438, 0.817636669, -0.123517469, 0.562330127, 0.0563425981, 0.989193141, 0.13535662, -0.572972655, -0.0789892152, 0.815760136) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1196.       }, 0.4, false)
  1197.     end
  1198.     Humanoid.WalkSpeed = 45
  1199.     for i = 1, 10 do
  1200.       for i = 0, 1, 0.8 do
  1201.         swait()
  1202.         PlayAnimationFromTable({
  1203.           CFrame.new(-0.330837339, -0.699999928, -0.231655031, 0.342019022, 0, -0.939693093, 0, 1, 0, 0.939693093, 0, 0.342018992) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1204.           CFrame.new(0.120368131, 1.44721556, -0.255113155, 0.418385565, -0.00512788072, 0.908255041, -0.141075298, 0.987487316, 0.0705598369, -0.897252142, -0.157652482, 0.412421852) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1205.           CFrame.new(0.285862863, 0.389394581, -0.81719619, 0.340717524, 0.939693093, 0.0298089981, 0.087155968, 0, -0.996194661, -0.936117232, 0.342018992, -0.081899859) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1206.           CFrame.new(-1.69020307, 0.41307798, -0.514919221, 0.800103247, 0.517377436, 0.303571403, 0.255382031, 0.16412276, -0.95280838, -0.542784572, 0.839871705, -8.13782215E-4) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1207.           CFrame.new(0.897276342, -1.54715633, 0.463865459, 0.951250672, -0.229007483, -0.206587687, 0.304395527, 0.589249432, 0.748417377, -0.0496615469, -0.774816513, 0.630232751) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1208.           CFrame.new(-0.632248044, -1.39177239, -0.405484438, 0.817636669, -0.123517469, 0.562330127, 0.0563425981, 0.989193141, 0.13535662, -0.572972655, -0.0789892152, 0.815760136) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1209.         }, 0.7, false)
  1210.       end
  1211.       Shootcombo()
  1212.       for i = 0, 1, 0.9 do
  1213.         swait()
  1214.         PlayAnimationFromTable({
  1215.           CFrame.new(-0.330840945, -1.00127292, -0.261750877, 0.342018962, -1.4270141E-7, -0.939693034, -0.243209973, 0.965925992, -0.0885209814, 0.907673895, 0.258818597, 0.330364913) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1216.           CFrame.new(0.120366111, 1.44719875, -0.255110145, 0.418383747, -0.0842670798, 0.904353142, -0.141075209, 0.977573991, 0.156355858, -0.897247374, -0.192998484, 0.397113085) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1217.           CFrame.new(0.632638395, 0.661208212, -0.690981925, 0.326495707, 0.925417125, 0.192363232, 0.0858313814, 0.173647493, -0.981060386, -0.941293538, 0.336822778, -0.0227346662) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1218.           CFrame.new(-1.51982272, 0.476396978, -0.384689331, 0.81248939, 0.445674956, 0.37581408, 0.350734472, 0.141240373, -0.925762773, -0.46566987, 0.88398242, -0.0415571854) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1219.           CFrame.new(0.783671975, -1.17622542, 0.561357141, 0.831630051, -0.23809275, -0.501700282, 0.550981283, 0.240921408, 0.798984766, -0.0693621933, -0.940887034, 0.331542104) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1220.           CFrame.new(-0.632252574, -1.39177251, -0.40547961, 0.73177588, -0.317396253, 0.603132486, 0.21459803, 0.947232425, 0.238111958, -0.646885633, -0.0448122993, 0.761271358) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1221.         }, 0.8, false)
  1222.       end
  1223.     end
  1224.     Humanoid.WalkSpeed = 45
  1225.     attack = false
  1226.   end
  1227.   function MortarShot()
  1228.     attack = true
  1229.     Humanoid.WalkSpeed = 45
  1230.     Bolt()
  1231.     for i = 0, 1, 0.3 do
  1232.       swait()
  1233.       PlayAnimationFromTable({
  1234.         CFrame.new(-0.062730819, -1.35083091, -0.0234885216, 0.819151819, 0.368687779, -0.439385623, -0.573576868, 0.52654016, -0.627507091, 0, 0.766044974, 0.642787039) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1235.         CFrame.new(-0.0485280529, 1.45187008, 0.123812944, 0.90630585, -0.0368346125, 0.421014428, 0.178608507, 0.936241627, -0.302573681, -0.383025914, 0.349420995, 0.855100214) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1236.         CFrame.new(1.37136579, -0.011062175, -0.241436988, 0.866025329, 0.500000238, 0, 0.321393698, -0.556669831, -0.766044974, -0.383022636, 0.663414299, -0.642787039) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1237.         CFrame.new(-0.554796219, 0.778117955, -1.30101132, 0.814972818, -0.183016568, 0.549840331, 0.413680822, -0.480712891, -0.773164511, 0.40581724, 0.857566416, -0.316057503) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1238.         CFrame.new(0.745755255, -0.594750226, 0.689795136, 0.707485676, 0.0499878898, -0.704957783, 0.604335666, -0.559927046, 0.566798568, -0.366391778, -0.827032924, -0.426349699) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1239.         CFrame.new(-0.45294404, -1.60859108, 0.283076108, 0.724484801, -0.4477458, 0.524066269, -0.110680997, 0.674867868, 0.729592919, -0.680348873, -0.586582422, 0.439373374) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1240.       }, 0.4, false)
  1241.     end
  1242.     CFuncs.Sound.Create("173979241", Barrel, 1, 1)
  1243.     Effects.Sphere.Create(BrickColor.new("Really black"), Barrel.CFrame, 6, 6, 6, 3, 3, 3, 0.1, m)
  1244.     for i = 1, 20 do
  1245.       local hit, pos = rayCast(Barrel.Position, Barrel.CFrame * CFrame.fromEulerAnglesXYZ(0, 5, 0).lookVector, 220, Character)
  1246.       local mag = (Barrel.Position - pos).magnitude
  1247.       Effects.Cylinder.Create(BrickColor.new("Really black"), Barrel.CFrame, 6, 99999, 6, -0.5, 1, -0.5, 0.1)
  1248.       local cf2 = Mouse.Hit.p + Vector3.new(math.random(-30,30), 100, math.random(-30,30))
  1249.       local hit2, pos2 = rayCast(cf2, CFrame.new(cf2, cf2 - Vector3.new(0, 1, 0)).lookVector, 999, Character)
  1250.       if hit2 ~= nil then
  1251.         local d1 = CFuncs.Part.Create(workspace, "Neon", 0, 0.5, BrickColor.new("Really black"), "Effect", Vector3.new())
  1252.         d1.Anchored = true
  1253.         d1.CFrame = CFrame.new(pos2)
  1254.         game:GetService("Debris"):AddItem(d1, 5)
  1255.         local msh = CFuncs.Mesh.Create("CylinderMesh", d1, "nil", "nil", Vector3.new(0, 0, 0), Vector3.new(30, 5, 30))
  1256.         local d2 = d1:Clone()
  1257.         d2.Parent = d1
  1258.         d2.CFrame = CFrame.new(d1.Position)
  1259.         d2.BrickColor = BrickColor.new("White")
  1260.         d2.Mesh.Scale = Vector3.new(0, 5, 0)
  1261.         table.insert(Effects, {
  1262.           d1,
  1263.           "QuadShot",
  1264.           d2,
  1265.           d2.Mesh,
  1266.           0
  1267.         })
  1268.       end
  1269.     end
  1270.     for i = 0, 1, 0.2 do
  1271.       swait()
  1272.       PlayAnimationFromTable({
  1273.         CFrame.new(-0.00381875038, -1.20960522, -0.0234894156, 0.906307876, 0.271653324, -0.323744416, -0.422617942, 0.582562923, -0.694272697, 0, 0.766045094, 0.64278698) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1274.         CFrame.new(-0.0485313386, 1.45186937, 0.12381205, 0.906306446, -0.036834389, 0.421012908, 0.178607732, 0.936241806, -0.302573651, -0.383024782, 0.349420667, 0.855100751) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1275.         CFrame.new(1.2566489, 0.0942437202, -0.366937846, 0.866025388, 0.499999881, 0, 0.32139343, -0.556669831, -0.766045094, -0.383022457, 0.663414538, -0.64278698) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1276.         CFrame.new(-0.669512153, 0.883427501, -1.42651618, 0.814972997, -0.183017969, 0.54984045, 0.413680524, -0.480712831, -0.773165226, 0.405818164, 0.85756737, -0.316057026) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1277.         CFrame.new(0.663835824, -0.644426942, 0.718474984, 0.819152117, -0.0996050313, -0.564861536, 0.496729434, -0.369217664, 0.785454273, -0.28679204, -0.923989952, -0.252968639) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1278.         CFrame.new(-0.597848773, -1.58645034, 0.419145882, 0.845831037, -0.0996147096, 0.524067461, -0.385522783, 0.564860702, 0.729592204, -0.368703246, -0.819151759, 0.439372897) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1279.       }, 0.4, false)
  1280.     end
  1281.     Humanoid.WalkSpeed = 45
  1282.     attack = false
  1283.   end
  1284.   function DisappearJetOnly()
  1285.     for _, i in pairs(m:children()) do
  1286.       if i == JetpackHandle then
  1287.         coroutine.resume(coroutine.create(function(Part)
  1288.           for i = 0, 1, 0.3 do
  1289.             swait()
  1290.             Part.Transparency = i
  1291.           end
  1292.           Part.Transparency = 1
  1293.         end), i)
  1294.       end
  1295.     end
  1296.   end
  1297.   function ReappearJetOnly()
  1298.     for _, i in pairs(m:children()) do
  1299.       if i == JetpackHandle then
  1300.         coroutine.resume(coroutine.create(function(Part)
  1301.           for i = 0, 1, 0.3 do
  1302.             swait()
  1303.             Part.Transparency = i
  1304.           end
  1305.           Part.Transparency = 0
  1306.         end), i)
  1307.       end
  1308.     end
  1309.   end
  1310.   local floornum = 0
  1311.   function JetDash()
  1312.     attack = true
  1313.     ReappearJetOnly()
  1314.     Humanoid.WalkSpeed = 45
  1315.     for i = 0, 1, 0.05 do
  1316.       swait()
  1317.         Effects.Wave.Create(BrickColor.new("Really black"), Torso.CFrame * CFrame.Angles(2.4, 0, 0), 1, 1, 1, 2,2,2,0.4)
  1318.         Effects.Break.Create(BrickColor.new("Really black"), Torso.CFrame, 0.2, 0.2, 0.2)
  1319.         Effects.Break.Create(BrickColor.new("Really black"), Torso.CFrame, 0.2, 0.2, 0.2)
  1320.         Effects.Block.Create(BrickColor.new("Really black"), Torso.CFrame, 1, 1, 1, 15,15,15, 0.3, 1)
  1321.         Effects.Block.Create(BrickColor.new("Really black"), Torso.CFrame, 1, 1, 1, 15,15,15,0.3, 1)
  1322.         Effects.Block.Create(BrickColor.new("Really black"), Torso.CFrame, 1, 1, 1, 10,10,10, 0.2, 1)
  1323.         Effects.Block.Create(BrickColor.new("Really black"), Torso.CFrame, 1, 1, 1, 10,10,10, 0.2, 1)
  1324.       RootPart.Velocity = RootPart.CFrame.lookVector * 400
  1325.       PlayAnimationFromTable({
  1326.         CFrame.new(0, -0.436519086, -1.54268694, 1, 0, 0, 0, 0.573575079, 0.81915313, 0, -0.81915313, 0.573575079) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1327.         CFrame.new(0, 1.383762, 0.294095755, 1, 0, 0, 0, 0.766045392, -0.642790735, 0, 0.642790735, 0.766045392) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1328.         CFrame.new(0.639911652, 0.428372383, -0.839826643, 0.262888074, 0.933915675, 0.242263183, 0.536961675, 0.0669959337, -0.840942383, -0.80159986, 0.351159722, -0.483864516) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1329.         CFrame.new(-1.42905915, 0.103630304, -0.677020133, 0.509720683, 0.0942112952, 0.855166197, 0.742046118, 0.45486632, -0.492406994, -0.435376555, 0.885562658, 0.161945611) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1330.         CFrame.new(0.598487258, -1.49273849, 0.0829842687, 0.984807909, 7.31955607E-10, -0.173648015, 0.122787923, 0.707105517, 0.696365893, 0.122787446, -0.707108378, 0.696363151) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1331.         CFrame.new(-0.599626899, -1.7493062, -0.188390553, 0.996194661, 0, 0.087156795, -0.0298094582, 0.939692497, 0.340719461, -0.0819005892, -0.342020988, 0.936116517) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1332.       }, 0.6, false)
  1333.     end
  1334.     for i = 0, 1, 0.05 do
  1335.       swait()
  1336.       Effects.Fire.Create(BrickColor.new("Really black"), EffectPartL3.CFrame, 3, 3, 3, 0.3)
  1337.       Effects.Fire.Create(BrickColor.new("Really black"), EffectPartR3.CFrame, 3, 3, 3, 0.3)
  1338.       RootPart.Velocity = RootPart.CFrame.lookVector * 60
  1339.       PlayAnimationFromTable({
  1340.         CFrame.new(-0.313091278, -0.629250288, 0.409977496, 0.422617137, -0.383021861, -0.821394563, 0, 0.906308115, -0.422617614, 0.906308293, 0.178605452, 0.383021355) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1341.         CFrame.new(-2.89082527E-6, 1.56999886, -0.169927716, 0.499998629, -0.0754772127, 0.862731218, -0.224145666, 0.950971425, 0.213101521, -0.836516559, -0.29992786, 0.458566666) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1342.         CFrame.new(0.639911413, 0.428367913, -0.839831948, 0.262887627, 0.933916271, 0.242261022, 0.536960125, 0.0669948608, -0.840943277, -0.801600933, 0.351158082, -0.483863741) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1343.         CFrame.new(-1.42906761, 0.103628337, -0.677013278, 0.509718478, 0.0942142606, 0.85516715, 0.742045939, 0.454867214, -0.4924061, -0.435379177, 0.885561645, 0.161942929) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1344.         CFrame.new(0.255052269, -1.74161863, 0.0939150751, 0.973724782, 0.171020329, -0.150378793, -0.13000688, 0.959606647, 0.249509975, 0.186975896, -0.223403811, 0.956624985) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1345.         CFrame.new(-0.966920853, -1.65688598, 0.10182327, 0.929320216, 0.24122712, 0.279595017, -0.312094092, 0.917783141, 0.245502412, -0.197385877, -0.315410316, 0.928199947) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1346.       }, 0.36, false)
  1347.       CFuncs.Sound.Create("596046130", JetpackHandle, 1, 1)
  1348.     end
  1349.     DisappearJetOnly()
  1350.     Humanoid.WalkSpeed = 45
  1351.     attack = false
  1352.   end
  1353.   function findRandomTorso(pos)
  1354.     local list = game.Workspace:children()
  1355.     local torso
  1356.     local dist = 10000
  1357.     local temp, human, temp2
  1358.     local list2 = {}
  1359.     for x = 1, #list do
  1360.       temp2 = list[x]
  1361.       if temp2.className == "Model" and temp2.Name ~= Character.Name and temp2.Name ~= "Crystal" then
  1362.         temp = temp2:findFirstChild("Torso")
  1363.         human = temp2:findFirstChild("Humanoid")
  1364.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > pos.magnitude then
  1365.           local dohit = true
  1366.           if dohit == true then
  1367.             torso = temp
  1368.             table.insert(list2, temp)
  1369.           end
  1370.         end
  1371.       end
  1372.     end
  1373.     if #list2 > 0 then
  1374.       rand = math.random(1, #list2)
  1375.       return list2[rand], dist
  1376.     else
  1377.       return nil, dist
  1378.     end
  1379.   end
  1380.   Mouse.Button1Down:connect(function()
  1381.     if attack ~= false or attacktype == 1 then
  1382.     end
  1383.   end)
  1384.   Mouse.KeyDown:connect(function(k)
  1385.     k = k:lower()
  1386.     if attack == false and k == "z" then
  1387.       SpinShot()
  1388.     elseif attack == false and k == "x" then
  1389.       AutoShot()
  1390.     elseif attack == false and k == "c" then
  1391.       MortarShot()
  1392.     elseif attack == false and k == "v" then
  1393.       Crater(Torso,30)
  1394.       JetDash()
  1395.     end
  1396.   end)
  1397.   while true do
  1398.     swait()
  1399.     local aim = CFrame.new(RootPart.Position, Mouse.Hit.p)
  1400.     local direction = aim.lookVector
  1401.     local headingA = math.atan2(direction.x, direction.z)
  1402.     headingA = math.deg(headingA)
  1403.     Humanoid.AutoRotate = false
  1404.     RootPart.CFrame = CFrame.new(RootPart.Position) * CFrame.Angles(math.rad(0), math.rad(headingA - 180), math.rad(0))
  1405.     Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  1406.     velocity = RootPart.Velocity.y
  1407.     sine = sine + change
  1408.     local hit, pos = rayCast(RootPart.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
  1409.     if RootPart.Velocity.y > 1 and hit == nil then
  1410.       Anim = "Jump"
  1411.       if attack == false then
  1412.         PlayAnimationFromTable({
  1413.           CFrame.new(0.127259433, -0.0596159771, 0.189378753, 0.965925872, 0.0225571971, 0.257834047, 0.0225579981, 0.985066533, -0.17069003, -0.257833958, 0.170690134, 0.950992465) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1414.           CFrame.new(0.0244209729, 1.56254399, -0.173544556, 0.96592474, 0.0225591958, -0.257838368, 0.0449432544, 0.966441274, 0.252925694, 0.254891455, -0.255895257, 0.932495654) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1415.           CFrame.new(0.658500612, 0.398768902, -0.862450778, 0.343670964, 0.900792718, 0.265448391, 0.2137326, 0.20021911, -0.956154108, -0.914444566, 0.385337412, -0.123719275) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1416.           CFrame.new(-1.43523574, 0.121549249, -0.687813759, 0.410701752, 0.118069187, 0.904092729, 0.739943445, 0.536207557, -0.406159192, -0.532736301, 0.835787892, 0.132856861) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1417.           CFrame.new(0.641040266, -1.90806067, 0.227101922, 0.962249994, -0.0841864049, -0.258819878, 0.170085624, 0.928400099, 0.330369651, 0.212475777, -0.361919671, 0.907671988) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1418.           CFrame.new(-0.500004053, -1.35084605, -0.555529714, 0.981060445, 0.0871543288, 0.172987863, -0.140045926, 0.936115682, 0.322606146, -0.133820146, -0.340722382, 0.930591524) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1419.         }, 0.3, false)
  1420.       end
  1421.     elseif RootPart.Velocity.y < -1 and hit == nil then
  1422.       Anim = "Fall"
  1423.       if attack == false then
  1424.         PlayAnimationFromTable({
  1425.           CFrame.new(0.163334131, -0.0871596038, -0.16742219, 0.867043138, 0.0880189762, 0.490396827, 0.0449440032, 0.966441453, -0.252924889, -0.496202052, 0.24133715, 0.833990455) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1426.           CFrame.new(0.0244172066, 1.5625447, -0.17354542, 0.866278768, 0.108875886, -0.487552434, 0.108873315, 0.911355376, 0.396961033, 0.487552851, -0.396960288, 0.777634263) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1427.           CFrame.new(0.689669132, 0.354625255, -0.940430343, 0.229587287, 0.87174952, 0.432831228, 0.436280668, 0.305352151, -0.846415639, -0.870028138, 0.383162051, -0.310222536) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1428.           CFrame.new(-1.47630322, 0.0475490689, -0.634548545, 0.410701722, 0.118068904, 0.904093027, 0.739943504, 0.536207497, -0.406158984, -0.532736182, 0.835787833, 0.132856965) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1429.           CFrame.new(0.720636785, -1.87088692, -0.163134515, 0.96225059, -0.185678095, -0.198991448, 0.170083165, 0.98103714, -0.0929410458, 0.212475047, 0.0555875003, 0.975584149) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1430.           CFrame.new(-0.500012517, -1.35084641, -0.555533409, 0.981287122, -0.0532096401, 0.185053408, 0.0246368051, 0.987856567, 0.153402999, -0.190968931, -0.14597322, 0.970681846) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1431.         }, 0.3, false)
  1432.       end
  1433.     elseif Torsovelocity < 1 and hit ~= nil then
  1434.       Anim = "Idle"
  1435.       if attack == false then
  1436.         change = 1
  1437.         PlayAnimationFromTable({
  1438.           CFrame.new(-0.2541008, -0.180074736, -0.241802737, 0.76604414, -1.48394264E-7, -0.642788053, 0.0560230091, 0.996194661, 0.0667653158, 0.640342057, -0.0871560946, 0.763129115) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1439.           CFrame.new(1.35600567E-6, 1.49999166, -5.73694706E-7, 0.766043305, -0.0560226552, 0.64034313, -9.31413126E-7, 0.996194601, 0.0871566758, -0.642789006, -0.0667664111, 0.76312834) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1440.           CFrame.new(0.965944111, 0.410506815, -0.758076906, 0.409578711, 0.866023779, 0.286785841, 0.370432287, 0.129400983, -0.919802964, -0.833687246, 0.482963026, -0.267803341) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1441.           CFrame.new(-1.37906599, 0.100769401, -0.915000141, 0.633367777, 0.168905735, 0.755190313, 0.68845278, 0.322659701, -0.649560332, -0.353385001, 0.931322694, 0.0880800188) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1442.           CFrame.new(0.59794265, -2.0041101, -0.0749895424, 0.981711328, -0.0754808784, -0.174771756, 0.0819018856, 0.996202469, 0.0298143364, 0.171854109, -0.04358197, 0.984157085) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1443.           CFrame.new(-0.786915421, -1.82557595, -0.30038017, 0.813531935, 0.108696118, 0.57126832, -0.062976934, 0.993065894, -0.0992677882, -0.578093946, 0.0447808057, 0.814740956) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1444.         }, 0.3, false)
  1445.       end
  1446.     elseif Torsovelocity > 2 and hit ~= nil then
  1447.       Anim = "Walk"
  1448.       if attack == false then
  1449.         change = 3
  1450.         PlayAnimationFromTable({
  1451.           CFrame.new(0, -0.234493911, -0.148225456, 1, 0, 0, 0, 0.972469866, 0.233028963, 0, -0.233028963, 0.972469866) * CFrame.new(0, 0, 0) * CFrame.Angles(-0.2, math.rad(-10 * math.cos(sine / 10)), 0),
  1452.           CFrame.new(0, 1.49999082, 3.57627869E-6, 1, 0, 0, 0, 0.991436481, -0.130595058, 0, 0.130595058, 0.991436481) * CFrame.new(0, 0, 0) * CFrame.Angles(0.15, math.rad(10 * math.cos(sine / 10)), math.rad(-3 * math.cos(sine / 10))),
  1453.           CFrame.new(0.678833663, 0.365906566, -0.753261089, 0.337660074, 0.901719749, 0.269976407, 0.271790266, 0.181202337, -0.945143342, -0.901174843, 0.39251405, -0.183893844) * CFrame.new(math.rad(5 * math.cos(sine / 10)), math.rad(-5 * math.cos(sine / 5)), 0) * CFrame.Angles(0, 0, 0),
  1454.           CFrame.new(-1.42503321, 0.101834446, -0.631737471, 0.459770948, 0.0983300805, 0.882576883, 0.674444914, 0.607868612, -0.419070512, -0.577697933, 0.787925959, 0.213162094) * CFrame.new(math.rad(5 * math.cos(sine / 10)), math.rad(5 * math.cos(sine / 5)), 0) * CFrame.Angles(0, 0, 0),
  1455.           CFrame.new(0.5, -1.85 - 0.5 * math.cos(sine / 8) / 2, 0 + 1.8 * math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(-50 * math.sin(sine / 8)), math.rad(0), math.rad(0)),
  1456.           CFrame.new(-0.5, -1.85 + 0.5 * math.cos(sine / 8) / 2, 0 - 1.8 * math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(50 * math.sin(sine / 8)), math.rad(0), math.rad(0))
  1457.         }, 0.3, false)
  1458.       end
  1459.     end
  1460.     if 0 < #Effects then
  1461.       for e = 1, #Effects do
  1462.         if Effects[e] ~= nil then
  1463.           local Thing = Effects[e]
  1464.           if Thing ~= nil then
  1465.             local Part = Thing[1]
  1466.             local Mode = Thing[2]
  1467.             local Delay = Thing[3]
  1468.             local IncX = Thing[4]
  1469.             local IncY = Thing[5]
  1470.             local IncZ = Thing[6]
  1471.             if Thing[2] == "Shoot" then
  1472.               local Look = Thing[1]
  1473.               local move = 30
  1474.               if Thing[8] == 3 then
  1475.                 move = 10
  1476.               end
  1477.               local hit, pos = rayCast(Thing[4], Look, move, Character)
  1478.               local mag = (Thing[4] - pos).magnitude
  1479.               Effects.Cylinder.Create(BrickColor.new("Really black"), CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0), 1, mag * 5, 1, 0.5, 0, 0.5, 0.2)
  1480.               Thing[4] = Thing[4] + Look * move
  1481.               Thing[3] = Thing[3] - 1
  1482.               if hit ~= nil then
  1483.                 Thing[3] = 0
  1484.                 local target, distance = findNearestTorso(pos)
  1485.                 if hit.Parent:findFirstChild("Humanoid") == nil and target ~= nil and Thing[5] > 0 then
  1486.                   Thing[3] = 50
  1487.                   Thing[5] = Thing[5] - 1
  1488.                   Thing[6] = Thing[6] - 1
  1489.                   spread = Vector3.new((math.random(-1, 0) + math.random()) * 2, (math.random(-1, 0) + math.random()) * 2, (math.random(-1, 0) + math.random()) * 0) * (pos + target.Position).magnitude / 100
  1490.                   local MouseLook = CFrame.new((pos + target.Position) / 0, target.Position)
  1491.                   Thing[1] = MouseLook.lookVector
  1492.                 end
  1493.                 if Thing[8] == 1 or Thing[8] == 3 then
  1494.                   MagnitudeDamage2(hit, 5, 30, 80, math.random(5, 10), "Normal", "", 1)
  1495.                 end
  1496.                 ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
  1497.                 ref.Anchored = true
  1498.                 ref.CFrame = CFrame.new(pos)
  1499.                 Effects.Sphere.Create(BrickColor.new("Really black"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
  1500.                 game:GetService("Debris"):AddItem(ref, 1)
  1501.               end
  1502.               if Thing[3] <= 0 then
  1503.                 table.remove(Effects, e)
  1504.               end
  1505.             end
  1506.             if Thing[2] == "FireWave" then
  1507.               if Thing[3] <= Thing[4] then
  1508.                 Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
  1509.                 Thing[3] = Thing[3] + 1
  1510.                 Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
  1511.               else
  1512.                 Part.Parent = nil
  1513.                 table.remove(Effects, e)
  1514.               end
  1515.             end
  1516.             if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
  1517.               if Thing[1].Transparency <= 1 then
  1518.                 if Thing[2] == "Block1" then
  1519.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1520.                   Mesh = Thing[7]
  1521.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1522.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1523.                 elseif Thing[2] == "Block2" then
  1524.                   Thing[1].CFrame = Thing[1].CFrame
  1525.                   Mesh = Thing[7]
  1526.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1527.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1528.                 elseif Thing[2] == "Fire" then
  1529.                   Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
  1530.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1531.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1532.                 elseif Thing[2] == "Cylinder" then
  1533.                   Mesh = Thing[7]
  1534.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1535.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1536.                 elseif Thing[2] == "Blood" then
  1537.                   Mesh = Thing[7]
  1538.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
  1539.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1540.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1541.                 elseif Thing[2] == "Elec" then
  1542.                   Mesh = Thing[10]
  1543.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
  1544.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1545.                 elseif Thing[2] == "QuadShot" then
  1546.                   if Thing[5] < 30 then
  1547.                     Thing[5] = Thing[5] + 2
  1548.                     Thing[4].Scale = Vector3.new(Thing[5], 5, Thing[5])
  1549.                   else
  1550.                     refda = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Black"), "Reference", Vector3.new())
  1551.                     refda.Anchored = true
  1552.                     refda.CFrame = CFrame.new(Thing[1].Position)
  1553.                     game:GetService("Debris"):AddItem(refda, 1)
  1554.                     CFuncs.Sound.Create("633129760", refda, 1, 1)
  1555.                     MagnitudeDamage(refda, 20, 10, 40, math.random(99, 99), "Normal", "315748999", 1)
  1556.                     Effects.Cylinder.Create(BrickColor.new("Really black"), CFrame.new(refda.Position), 3, 9999, 3, 1, 1, 1, 0.1)
  1557.                     for i = 1, 5 do
  1558.                       Effects.Sphere.Create(BrickColor.new("Really black"), CFrame.new(refda.Position), 10, 10, 10, 4 * i, 4 * i, 4 * i, 0.08)
  1559.                     end
  1560.                     Thing[1].Parent = nil
  1561.                     table.remove(Effects, e)
  1562.                   end
  1563.                 elseif Thing[2] == "Disappear" then
  1564.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1565.                 elseif Thing[2] == "Shatter" then
  1566.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1567.                   Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
  1568.                   Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
  1569.                   Thing[6] = Thing[6] + Thing[5]
  1570.                 end
  1571.               else
  1572.                 Part.Parent = nil
  1573.                 table.remove(Effects, e)
  1574.               end
  1575.             end
  1576.           end
  1577.         end
  1578.       end
  1579.     end
  1580.   end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement