derp345321

a

Sep 26th, 2021
1,066
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. wait(0.016666666666667)
  2. Anim = nil
  3. cf = CFrame.new
  4. function c3(cz, cx, cc)
  5.   return Color3.new(cz / 255, cx / 255, cc / 255)
  6. end
  7. angles = CFrame.Angles
  8. Player = game.Players.LocalPlayer
  9. Character = Player.Character
  10. Humanoid = Character.Humanoid
  11. mouse = Player:GetMouse()
  12. local LeftArm = Character["Left Arm"]
  13. RightArm = Character["Right Arm"]
  14. LeftLeg = Character["Left Leg"]
  15. RightLeg = Character["Right Leg"]
  16. Head = Character.Head
  17. Torso = Character.Torso
  18. RootPart = Character.HumanoidRootPart
  19. RootJoint = RootPart.RootJoint
  20. Humanoid.Animator:Destroy()
  21. Character.Animate:Destroy()
  22. NeckCF = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  23. RootCF = angles(-1.57, 0, 3.14)
  24. LHC0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  25. LHC1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  26. RHC0 = cf(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  27. RHC1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  28. RW = Instance.new("Weld")
  29. LW = Instance.new("Weld")
  30. RH = Torso["Right Hip"]
  31. LH = Torso["Left Hip"]
  32. Neck = Torso.Neck
  33. RSH = Torso["Right Shoulder"]
  34. LSH = Torso["Left Shoulder"]
  35. RSH.Parent = nil
  36. LSH.Parent = nil
  37. RW.Name = "Right Shoulder"
  38. RW.Part0 = Torso
  39. RW.C0 = cf(1.5, 0.5, 0)
  40. RW.C1 = cf(0, 0.5, 0)
  41. RW.Part1 = RightArm
  42. RW.Parent = Torso
  43. LW.Name = "Left Shoulder"
  44. LW.Part0 = Torso
  45. LW.C0 = cf(-1.5, 0.5, 0)
  46. LW.C1 = cf(0, 0.5, 0)
  47. LW.Part1 = LeftArm
  48. LW.Parent = Torso
  49. Effects = Instance.new("Model", Character)
  50. Effects.Name = "Effects"
  51. Humanoid.WalkSpeed = 16
  52. partEffects, AttackHas, AttackNeeded, AttackCan = {}, {}, {}, {}
  53. AttackHas[1], AttackHas[2], AttackHas[3], AttackHas[4] = 1, 1, 1, 1
  54. AttackNeeded[1], AttackNeeded[2], AttackNeeded[3], AttackNeeded[4] = 1, 1, 1, 1
  55. AttackCan[1], AttackCan[2], AttackCan[3], AttackCan[4] = true, true, true, true
  56. sine = 0
  57. attackcounter = 1
  58. torvel = nil
  59. attacking = false
  60. hitfloor, posfloor = nil, nil
  61. tool = nil
  62. if script.Parent.ClassName == "HopperBin" then
  63.   tool = script.Parent
  64.   tool.Parent = Player.Backpack
  65. else
  66.   tool = Instance.new("HopperBin", Player.Backpack)
  67.   tool.Name = ""
  68. end
  69. meshes = {
  70.   3270017,
  71.   20329976,
  72.   448386996,
  73.   1095708,
  74.   1033714,
  75.   9756362
  76. }
  77. sounds = {
  78.   {
  79.     320557413,
  80.     320557453,
  81.     320557487,
  82.     320557518,
  83.     320557537,
  84.     320557563,
  85.     233856146,
  86.     233856140
  87.   },
  88.   {
  89.     234365549,
  90.     234365573,
  91.     231917961,
  92.     231917950,
  93.     231917856,
  94.     231917863,
  95.     231917871
  96.   },
  97.   {
  98.     262562442,
  99.     231917806,
  100.     231917784
  101.   },
  102.   {
  103.     262562442,
  104.     233856048,
  105.     306247739
  106.   }
  107. }
  108. ArtificialHB = Instance.new("BindableEvent", script)
  109. ArtificialHB.Name = "Heartbeat"
  110. script:WaitForChild("Heartbeat")
  111. frame = 0.025
  112. tf = 0
  113. allowframeloss = true
  114. tossremainder = false
  115. lastframe = tick()
  116. script.Heartbeat:Fire()
  117. game:GetService("RunService").Heartbeat:connect(function(s, p)
  118.   tf = tf + s
  119.   if tf >= frame then
  120.     if allowframeloss then
  121.       script.Heartbeat:Fire()
  122.       lastframe = tick()
  123.     else
  124.       for i = 1, math.floor(tf / frame) do
  125.         script.Heartbeat:Fire()
  126.       end
  127.       lastframe = tick()
  128.     end
  129.     if tossremainder then
  130.       tf = 0
  131.     else
  132.       tf = tf - frame * math.floor(tf / frame)
  133.     end
  134.   end
  135. end)
  136. function swait(num)
  137.   if num == 0 or num == nil then
  138.     ArtificialHB.Event:wait()
  139.   else
  140.     for i = 0, num do
  141.       ArtificialHB.Event:wait()
  142.     end
  143.   end
  144. end
  145. function thread(f)
  146.   coroutine.resume(coroutine.create(f))
  147. end
  148. function clerp(a, b, t)
  149.   local qa = {
  150.     QuaternionFromCFrame(a)
  151.   }
  152.   local qb = {
  153.     QuaternionFromCFrame(b)
  154.   }
  155.   local ax, ay, az = a.x, a.y, a.z
  156.   local bx, by, bz = b.x, b.y, b.z
  157.   local _t = 1 - t
  158.   return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  159. end
  160. function QuaternionFromCFrame(cf)
  161.   local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  162.   local trace = m00 + m11 + m22
  163.   if trace > 0 then
  164.     local s = math.sqrt(1 + trace)
  165.     local recip = 0.5 / s
  166.     return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  167.   else
  168.     local i = 0
  169.     if m00 < m11 then
  170.       i = 1
  171.     end
  172.     if m22 > (i == 0 and m00 or m11) then
  173.       i = 2
  174.     end
  175.     if i == 0 then
  176.       local s = math.sqrt(m00 - m11 - m22 + 1)
  177.       local recip = 0.5 / s
  178.       return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  179.     elseif i == 1 then
  180.       local s = math.sqrt(m11 - m22 - m00 + 1)
  181.       local recip = 0.5 / s
  182.       return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  183.     elseif i == 2 then
  184.       local s = math.sqrt(m22 - m00 - m11 + 1)
  185.       local recip = 0.5 / s
  186.       return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  187.     end
  188.   end
  189. end
  190. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  191.   local xs, ys, zs = x + x, y + y, z + z
  192.   local wx, wy, wz = w * xs, w * ys, w * zs
  193.   local xx = x * xs
  194.   local xy = x * ys
  195.   local xz = x * zs
  196.   local yy = y * ys
  197.   local yz = y * zs
  198.   local zz = z * zs
  199.   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))
  200. end
  201. function QuaternionSlerp(a, b, t)
  202.   local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  203.   local startInterp, finishInterp
  204.   if cosTheta >= 1.0E-4 then
  205.     if 1 - cosTheta > 1.0E-4 then
  206.       local theta = math.acos(cosTheta)
  207.       local invSinTheta = 1 / math.sin(theta)
  208.       startInterp = math.sin((1 - t) * theta) * invSinTheta
  209.       finishInterp = math.sin(t * theta) * invSinTheta
  210.     else
  211.       startInterp = 1 - t
  212.       finishInterp = t
  213.     end
  214.   elseif 1 + cosTheta > 1.0E-4 then
  215.     local theta = math.acos(-cosTheta)
  216.     local invSinTheta = 1 / math.sin(theta)
  217.     startInterp = math.sin((t - 1) * theta) * invSinTheta
  218.     finishInterp = math.sin(t * theta) * invSinTheta
  219.   else
  220.     startInterp = t - 1
  221.     finishInterp = t
  222.   end
  223.   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
  224. end
  225. function rayCast(Pos, Dir, Max, Ignore)
  226.   return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  227. end
  228. function newPart(par, brick, transp, anch, canc, size, name, mat, cfra)
  229.   local p = Instance.new("Part")
  230.   p.BrickColor = brick
  231.   p.Transparency = transp
  232.   p.Material = mat and mat or "SmoothPlastic"
  233.   p.Anchored = anch
  234.   p.CanCollide = canc
  235.   p.Size = size
  236.   p.TopSurface, p.BottomSurface, p.LeftSurface, p.RightSurface, p.FrontSurface, p.BackSurface = 10, 10, 10, 10, 10, 10
  237.   p.Name = name
  238.   p.CFrame = cfra or RootPart.CFrame
  239.   p.Parent = par
  240.   return p
  241. end
  242. function mesh(Mesh, part, meshtype, meshid, offset, scale)
  243.   local mesh = Instance.new(Mesh)
  244.   mesh.Parent = part
  245.   if Mesh == "SpecialMesh" then
  246.     mesh.MeshType = meshtype
  247.     if meshid then
  248.       mesh.MeshId = "http://www.roblox.com/asset/?id=" .. meshid
  249.     end
  250.   end
  251.   if offset then
  252.     mesh.Offset = offset
  253.   end
  254.   mesh.Scale = scale
  255.   return mesh
  256. end
  257. function weld(parent, part0, part1, c0, c1)
  258.   local weld = Instance.new("Weld")
  259.   weld.Parent = parent
  260.   weld.Part0 = part0
  261.   weld.Part1 = part1
  262.   weld.C0 = c0
  263.   if c1 then
  264.     weld.C1 = c1
  265.   end
  266.   return weld
  267. end
  268. function sound(id, par, vol, dur, pit)
  269.   coroutine.resume(coroutine.create(function()
  270.     local sou = Instance.new("Sound", par or workspace)
  271.     sou.Volume = vol
  272.     sou.Pitch = pit or 1
  273.     sou.SoundId = "http://www.roblox.com/asset/?id=" .. id
  274.     swait()
  275.     sou:play()
  276.     wait(dur)
  277.     sou:Destroy()
  278.   end))
  279. end
  280. function round(num)
  281.   local a, b = math.modf(num)
  282.   if num % 1 ~= 0 then
  283.     return math.floor(num) + math.floor(b * 10 + 0.5) / 10
  284.   else
  285.     return math.floor(num)
  286.   end
  287. end
  288. function findCloseHumanoid(centre, distance)
  289.   local tab = {}
  290.   for _, child in pairs(game.Workspace:GetChildren()) do
  291.     if child:findFirstChild("Humanoid") and child:findFirstChild("Humanoid") ~= Humanoid and child:findFirstChild("Torso") then
  292.       local vtors = child.Torso
  293.       local mag = math.abs((vtors.Position - centre).magnitude)
  294.       if distance >= mag then
  295.         table.insert(tab, child.Humanoid)
  296.       end
  297.     end
  298.   end
  299.   return tab
  300. end
  301. function basicDamage(vhum, damage, colour)
  302.   if not vhum or not vhum.Parent:findFirstChild("Humanoid") or vhum.Health <= 0 then
  303.     return
  304.   end
  305.   vhum.Health = vhum.Health - damage
  306.   local damagepart = Instance.new("Part", Effects)
  307.   damagepart.Transparency = 1
  308.   damagepart.Anchored = true
  309.   damagepart.CanCollide = false
  310.   damagepart.Size = Vector3.new(1, 1, 1)
  311.   damagepart.Name = "DamagePart"
  312.   damagepart.CFrame = vhum.Parent.Head.CFrame * CFrame.new(0, 1, 0)
  313.   local g = Instance.new("BillboardGui", damagepart)
  314.   g.Enabled = true
  315.   g.Adornee = damagepart
  316.   g.Size = UDim2.new(5, 0, 5, 0)
  317.   g.ExtentsOffset = Vector3.new(0, 0, 0)
  318.   g.StudsOffset = Vector3.new(0, 0, 0)
  319.   local t = Instance.new("TextLabel", g)
  320.   t.BackgroundTransparency = 1
  321.   t.Font = "ArialBold"
  322.   t.TextSize = 24
  323.   t.Text = "-" .. round(damage)
  324.   if round(damage) % 1 == 0 then
  325.     t.Text = "-" .. round(damage) .. ".0"
  326.   end
  327.   t.Size = UDim2.new(1, 0, 1, 0)
  328.   t.TextStrokeTransparency = 0
  329.   t.TextTransparency = 0
  330.   t.TextScaled = true
  331.   t.TextWrapped = true
  332.   t.TextXAlignment = "Center"
  333.   t.TextYAlignment = "Center"
  334.   t.TextColor3 = colour
  335.   coroutine.resume(coroutine.create(function()
  336.     for i = 1, 50 do
  337.       game:GetService("RunService").Heartbeat:wait()
  338.       local sinewave = math.sin(i / 500) * 4
  339.       damagepart.CFrame = damagepart.CFrame * CFrame.new(Vector3.new(0, 0.3 - sinewave, 0))
  340.       t.TextTransparency = t.TextTransparency + 0.02
  341.       t.TextStrokeTransparency = t.TextTransparency + 0.02
  342.     end
  343.     damagepart:Destroy()
  344.   end), t)
  345. end
  346. function createBodyTrail()
  347.   local nPart = function(parent, brickcolor, transparency, anchored, cancollide, size, name)
  348.     local fp = Instance.new("Part")
  349.     fp.Parent = parent
  350.     fp.Transparency = transparency
  351.     fp.Anchored = anchored
  352.     fp.CanCollide = cancollide
  353.     fp.Locked = true
  354.     fp.BrickColor = BrickColor.new(brickcolor)
  355.     fp.Name = name
  356.     fp.Size = size
  357.     fp.Position = RootPart.Position
  358.     fp.TopSurface, fp.BottomSurface, fp.LeftSurface, fp.RightSurface, fp.FrontSurface, fp.BackSurface = 10, 10, 10, 10, 10, 10
  359.     fp.Material = "SmoothPlastic"
  360.     fp:BreakJoints()
  361.     return fp
  362.   end
  363.   local faketab = {}
  364.   local fakel = nPart(Effects, Character["Right Arm"].BrickColor.Color, 0, true, false, Character["Right Arm"].Size, "")
  365.   local faker = nPart(Effects, Character["Left Arm"].BrickColor.Color, 0, true, false, Character["Left Arm"].Size, "")
  366.   local fakell = nPart(Effects, Character["Left Leg"].BrickColor.Color, 0, true, false, Character["Left Leg"].Size, "")
  367.   local fakerl = nPart(Effects, Character["Right Leg"].BrickColor.Color, 0, true, false, Character["Right Leg"].Size, "")
  368.   local faketors = nPart(Effects, Character.Torso.BrickColor.Color, 0, true, false, Character.Torso.Size, "")
  369.   local fakehead = nPart(Effects, Character.Head.BrickColor.Color, 0, true, false, Character.Head.Size, "")
  370.   fakel.BrickColor = BrickColor.new("Fog")
  371.   faker.BrickColor = BrickColor.new("Fog")
  372.   fakell.BrickColor = BrickColor.new("Fog")
  373.   fakerl.BrickColor = BrickColor.new("Fog")
  374.   faketors.BrickColor = BrickColor.new("Fog")
  375.   fakehead.BrickColor = BrickColor.new("Fog")
  376.   if Character.Head:findFirstChild("Mesh") then
  377.     Character.Head.Mesh:Clone().Parent = fakehead
  378.   end
  379.   fakel.Name = "FakeLeft"
  380.   faker.Name = "FakeRight"
  381.   fakell.Name = "FakeLeftL"
  382.   fakerl.Name = "FakeRightL"
  383.   faketors.Name = "FakeTorso"
  384.   fakehead.Name = "FakeHead"
  385.   table.insert(faketab, fakel)
  386.   table.insert(faketab, faker)
  387.   table.insert(faketab, fakell)
  388.   table.insert(faketab, fakerl)
  389.   table.insert(faketab, faketors)
  390.   table.insert(faketab, fakehead)
  391.   for _, v in pairs(faketab) do
  392.     v.Archivable = true
  393.     v.CanCollide = false
  394.     v.Anchored = true
  395.     v.Material = "SmoothPlastic"
  396.     v.Transparency = 0.2
  397.     v.Locked = true
  398.     game.Debris:AddItem(v, 3)
  399.   end
  400.   fakel.CFrame = Character["Left Arm"].CFrame
  401.   faker.CFrame = Character["Right Arm"].CFrame
  402.   fakell.CFrame = Character["Left Leg"].CFrame
  403.   fakerl.CFrame = Character["Right Leg"].CFrame
  404.   faketors.CFrame = Character.Torso.CFrame
  405.   fakehead.CFrame = Character.Head.CFrame
  406.   local hats = {}
  407.   for _, v in pairs(hats) do
  408.     if v:findFirstChild("Handle") then
  409.       do
  410.         local vc = v.Handle:Clone()
  411.         vc.Parent = Effects
  412.         vc.CFrame = v.Handle.CFrame
  413.         vc.Anchored = true
  414.         vc.CanCollide = false
  415.         thread(function()
  416.           for i = 1, 15 do
  417.             swait()
  418.             vc.Transparency = vc.Transparency + 0.06666666666666667
  419.           end
  420.           vc:Destroy()
  421.         end)
  422.       end
  423.     end
  424.   end
  425.   return faketors, fakehead, faker, fakel, fakerl, fakell
  426. end
  427. function magic(type, thing)
  428.   local magicBlock = function(par, brick, cframe, x1, y1, z1, x3, y3, z3, delay, t)
  429.     local prt = newPart(par, brick, 0, true, false, Vector3.new(), "Part", "SmoothPlastic", cframe)
  430.     prt.CFrame = cframe
  431.     local msh = mesh("BlockMesh", prt, nil, nil, Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  432.     game:GetService("Debris"):AddItem(prt, 8)
  433.     if t == 1 or t == nil then
  434.       table.insert(partEffects, {
  435.         prt,
  436.         "Block1",
  437.         delay,
  438.         x3,
  439.         y3,
  440.         z3,
  441.         msh
  442.       })
  443.     elseif t == 2 then
  444.       table.insert(partEffects, {
  445.         prt,
  446.         "Block2",
  447.         delay,
  448.         x3,
  449.         y3,
  450.         z3,
  451.         msh
  452.       })
  453.     end
  454.   end
  455.   local magicCylinder = function(par, brick, cframe, x1, y1, z1, x3, y3, z3, delay)
  456.     local prt = newPart(par, brick, 0, true, false, Vector3.new(), "Part", "SmoothPlastic", cframe)
  457.     local msh = mesh("CylinderMesh", prt, nil, nil, Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  458.     game:GetService("Debris"):AddItem(prt, 8)
  459.     table.insert(partEffects, {
  460.       prt,
  461.       "Cylinder",
  462.       delay,
  463.       x3,
  464.       y3,
  465.       z3,
  466.       msh
  467.     })
  468.   end
  469.   local magicSphere = function(par, brick, cframe, x1, y1, z1, x3, y3, z3, delay)
  470.     local prt = newPart(par, brick, 0, true, false, Vector3.new(), "Part", "SmoothPlastic", cframe)
  471.     local msh = mesh("SpecialMesh", prt, "Sphere", nil, Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  472.     game:GetService("Debris"):AddItem(prt, 8)
  473.     table.insert(partEffects, {
  474.       prt,
  475.       "Cylinder",
  476.       delay,
  477.       x3,
  478.       y3,
  479.       z3,
  480.       msh
  481.     })
  482.   end
  483.   local magicRing = function(par, brick, cframe, x1, y1, z1, x3, y3, z3, delay)
  484.     local prt = newPart(par, brick, 0, true, false, Vector3.new(), "Part", "SmoothPlastic", cframe)
  485.     prt.Anchored = true
  486.     prt.CFrame = cframe
  487.     local msh = mesh("SpecialMesh", prt, "FileMesh", 3270017, Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  488.     game:GetService("Debris"):AddItem(prt, 2)
  489.     coroutine.resume(coroutine.create(function(Part, Mesh, num)
  490.       for i = 0, 1, delay do
  491.         swait()
  492.         Part.Transparency = i
  493.         Mesh.Scale = Mesh.Scale + Vector3.new(x3, y3, z3)
  494.       end
  495.       Part:Destroy()
  496.     end), prt, msh, (math.random(0, 1) + math.random()) / 5)
  497.   end
  498.   local magicSlash = function(par, brick, cframe, x1, y1, z1, x3, y3, z3, delay)
  499.     local prt = newPart(par, brick, 0, true, false, Vector3.new(), "Part", cframe)
  500.     prt.Anchored = true
  501.     prt.CFrame = cframe
  502.     local msh = mesh("SpecialMesh", prt, "FileMesh", 20329976, Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  503.     game:GetService("Debris"):AddItem(prt, 2)
  504.     coroutine.resume(coroutine.create(function(Part, Mesh, num)
  505.       for i = 0, 1, delay do
  506.         swait()
  507.         Part.Transparency = i
  508.         Mesh.Scale = Mesh.Scale + Vector3.new(x3, y3, z3)
  509.       end
  510.       Part:Destroy()
  511.     end), prt, msh, (math.random(0, 1) + math.random()) / 5)
  512.   end
  513.   local par = thing[1]
  514.   local brick = thing[2]
  515.   local cframe = thing[3]
  516.   local x1 = thing[4]
  517.   local y1 = thing[5]
  518.   local z1 = thing[6]
  519.   local x3 = thing[7]
  520.   local y3 = thing[8]
  521.   local z3 = thing[9]
  522.   local delay = thing[10]
  523.   local t = thing[11]
  524.   if type == "Block" or type == 1 then
  525.     magicBlock(thing[1], thing[2], thing[3], thing[4], thing[5], thing[6], thing[7], thing[8], thing[9], thing[10], thing[11])
  526.   elseif type == "Cylinder" or type == 2 then
  527.     magicCylinder(thing[1], thing[2], thing[3], thing[4], thing[5], thing[6], thing[7], thing[8], thing[9], thing[10], thing[11])
  528.   elseif type == "Sphere" or type == 3 then
  529.     magicSphere(thing[1], thing[2], thing[3], thing[4], thing[5], thing[6], thing[7], thing[8], thing[9], thing[10], thing[11])
  530.   elseif type == "Ring" or type == 4 then
  531.     magicRing(thing[1], thing[2], thing[3], thing[4], thing[5], thing[6], thing[7], thing[8], thing[9], thing[10], thing[11])
  532.   elseif type == "Slash" or type == 5 then
  533.     magicSlash(thing[1], thing[2], thing[3], thing[4], thing[5], thing[6], thing[7], thing[8], thing[9], thing[10], thing[11])
  534.   end
  535. end
  536. function newFrame(par, bg, transp, size, pos, name)
  537.   local f = Instance.new("Frame", nil)
  538.   f.BackgroundColor3 = bg
  539.   f.BackgroundTransparency = transp
  540.   f.BorderSizePixel = 0
  541.   f.Position = pos
  542.   f.Size = size
  543.   f.Name = name
  544.   f.Parent = par
  545.   return f
  546. end
  547. function newLabel(par, size, pos, text, textsize, text3, textstroke3, scaled, name)
  548.   local l = Instance.new("TextLabel", nil)
  549.   l.BackgroundTransparency = 1
  550.   l.Size = size
  551.   l.Position = pos
  552.   l.Text = text
  553.   l.TextSize = textsize
  554.   l.TextColor3 = text3
  555.   l.TextStrokeColor3 = textstroke3
  556.   if scaled then
  557.     l.TextScaled = scaled
  558.   else
  559.     l.TextScaled = true
  560.   end
  561.   l.TextStrokeTransparency = 0
  562.   l.Name = name
  563.   l.Parent = par
  564.   return l
  565. end
  566. a1t = "Misdirection"
  567. a2t = "Marionette"
  568. a3t = "Luna Clock"
  569. a4t = "Clock Corpse"
  570. backc3 = c3(210, 210, 255)
  571. reloc3 = c3(107, 107, 210)
  572. g = Instance.new("ScreenGui")
  573. f1 = newFrame(g, backc3, 0.5, UDim2.new(0.18, 0, 0.08, 0), UDim2.new(0.8, 0, 0.85, 0), "")
  574. f2 = newFrame(g, backc3, 0.5, UDim2.new(0.18, 0, 0.08, 0), UDim2.new(0.8, 0, 0.76, 0), "")
  575. f3 = newFrame(g, backc3, 0.5, UDim2.new(0.18, 0, 0.08, 0), UDim2.new(0.8, 0, 0.67, 0), "")
  576. f4 = newFrame(g, backc3, 0.5, UDim2.new(0.18, 0, 0.08, 0), UDim2.new(0.8, 0, 0.58, 0), "")
  577. newFrame(f1, reloc3, 0, UDim2.new(1.002, 0, 1.002, 0), UDim2.new(0, 0, 0, 0), "Reload")
  578. newFrame(f2, reloc3, 0, UDim2.new(1.002, 0, 1.002, 0), UDim2.new(0, 0, 0, 0), "Reload")
  579. newFrame(f3, reloc3, 0, UDim2.new(1.002, 0, 1.002, 0), UDim2.new(0, 0, 0, 0), "Reload")
  580. newFrame(f4, reloc3, 0, UDim2.new(1.002, 0, 1.002, 0), UDim2.new(0, 0, 0, 0), "Reload")
  581. newLabel(f1, UDim2.new(1, 0, 0.4, 0), UDim2.new(0, 0, 0, 0), "(Z)", 18, c3(243, 242, 242), c3(0, 0, 0), true, "Key")
  582. newLabel(f2, UDim2.new(1, 0, 0.4, 0), UDim2.new(0, 0, 0, 0), "(X)", 18, c3(243, 242, 242), c3(0, 0, 0), true, "Key")
  583. newLabel(f3, UDim2.new(1, 0, 0.4, 0), UDim2.new(0, 0, 0, 0), "(C)", 18, c3(243, 242, 242), c3(0, 0, 0), true, "Key")
  584. newLabel(f4, UDim2.new(1, 0, 0.4, 0), UDim2.new(0, 0, 0, 0), "(V)", 18, c3(243, 242, 242), c3(0, 0, 0), true, "Key")
  585. newLabel(f1, UDim2.new(1, 0, 0.6, 0), UDim2.new(0, 0, 0.4, 0), a1t, 18, c3(243, 242, 242), c3(0, 0, 0), true, "Label")
  586. newLabel(f2, UDim2.new(1, 0, 0.6, 0), UDim2.new(0, 0, 0.4, 0), a2t, 18, c3(243, 242, 242), c3(0, 0, 0), true, "Label")
  587. newLabel(f3, UDim2.new(1, 0, 0.6, 0), UDim2.new(0, 0, 0.4, 0), a3t, 18, c3(243, 242, 242), c3(0, 0, 0), true, "Label")
  588. newLabel(f4, UDim2.new(1, 0, 0.6, 0), UDim2.new(0, 0, 0.4, 0), a4t, 18, c3(243, 242, 242), c3(0, 0, 0), true, "Label")
  589. g.Parent = Player.PlayerGui
  590. Reload = {}
  591. Reload[1] = f1.Reload
  592. Reload[2] = f2.Reload
  593. Reload[3] = f3.Reload
  594. Reload[4] = f4.Reload
  595. function newKnife()
  596.   local weapon = Instance.new("Model", Character)
  597.   weapon.Name = "Izayoi"
  598.   local p0 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Wedge")
  599.   mesh("SpecialMesh", p0, Enum.MeshType.Wedge, nil, Vector3.new(0, 0, 0), Vector3.new(0.400000036, 0.550000012, 1.29999995))
  600.   local p1 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Block")
  601.   mesh("BlockMesh", p1, nil, nil, Vector3.new(0, 0, 0), Vector3.new(0.400000095, 0.749999881, 0.699999988))
  602.   local p2 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Block")
  603.   mesh("BlockMesh", p2, nil, nil, Vector3.new(0, 0, 0), Vector3.new(0.400000095, 0.749999881, 0.699999869))
  604.   local p3 = newPart(weapon, BrickColor.new("Lily white"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Blade")
  605.   mesh("BlockMesh", p3, nil, nil, Vector3.new(0, 0, 0), Vector3.new(0.349999994, 5.45000029, 0.999999881))
  606.   local p4 = newPart(weapon, BrickColor.new("Lily white"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Wedge")
  607.   mesh("SpecialMesh", p4, Enum.MeshType.Wedge, nil, Vector3.new(0, 0, 0), Vector3.new(0.350000024, 3.9000001, 1.05000007))
  608.   local p5 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Wedge")
  609.   mesh("SpecialMesh", p5, Enum.MeshType.Wedge, nil, Vector3.new(0, 0, 0), Vector3.new(0.400000066, 0.550000012, 1.29999995))
  610.   local p6 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Handle")
  611.   mesh("BlockMesh", p6, nil, nil, Vector3.new(0, 0, 0), Vector3.new(0.400000036, 3.5999999, 0.699999928))
  612.   local p7 = newPart(weapon, BrickColor.new("Black"), 0, false, false, Vector3.new(0.200000003, 0.200000003, 0.200000003), "Block")
  613.   mesh("BlockMesh", p7, nil, nil, Vector3.new(0, 0, 0), Vector3.new(0.449999988, 0.349999994, 2.29999971))
  614.   weld(p0, p0, p1, CFrame.new(-30.2999763, 2.48997641, 28.180027, 1, 0, 0, 0, 1, -4.37113883E-8, 0, 4.37113883E-8, 1), CFrame.new(30.2999763, 16.1993866, -23.0049038, -1, 0, 0, 0, 0.866025388, 0.49999997, 0, 0.49999997, -0.866025388))
  615.   weld(p1, p1, p2, CFrame.new(30.2999763, 16.1993866, -23.0049038, -1, 0, 0, 0, 0.866025388, 0.49999997, 0, 0.49999997, -0.866025388), CFrame.new(30.2999763, 11.7913561, 25.5498791, -1, 0, 0, 0, -0.866025269, 0.49999997, 0, 0.49999997, 0.866025269))
  616.   weld(p2, p2, p3, CFrame.new(30.2999763, 11.7913561, 25.5498791, -1, 0, 0, 0, -0.866025269, 0.49999997, 0, 0.49999997, 0.866025269), CFrame.new(30.2999763, 26.6550255, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0))
  617.   weld(p3, p3, p4, CFrame.new(30.2999763, 26.6550255, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0), CFrame.new(30.2999763, 25.7200241, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0))
  618.   weld(p4, p4, p5, CFrame.new(30.2999763, 25.7200241, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0), CFrame.new(30.2999763, -2.59997678, 28.180027, -1, 8.74227766E-8, 0, -8.74227766E-8, -1, -4.37113883E-8, -3.82137093E-15, -4.37113883E-8, 1))
  619.   weld(p5, p5, p6, CFrame.new(30.2999763, -2.59997678, 28.180027, -1, 8.74227766E-8, 0, -8.74227766E-8, -1, -4.37113883E-8, -3.82137093E-15, -4.37113883E-8, 1), CFrame.new(30.2999763, 27.6200256, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0))
  620.   weld(p6, p6, p7, CFrame.new(30.2999763, 27.6200256, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0), CFrame.new(30.2999763, 27.2300262, 2.5449779, -1, 0, 0, 0, 0, 1, 0, 1, 0))
  621.   return weapon, p6, p3
  622. end
  623. knife1, blade1, handle1 = newKnife()
  624. handleweld1 = Instance.new("Weld", RightArm)
  625. handleweld1.Part1 = RightArm
  626. handleweld1.Part0 = handle1
  627. handle1c0 = CFrame.new(0.2, 0.95, 0) * CFrame.Angles(math.rad(85), math.rad(180), 0)
  628. handle1c1 = CFrame.new(0, -0.95, 0)
  629. handleweld1.C0 = handle1c0
  630. handleweld1.C1 = handle1c1
  631. knife2, blade2, handle2 = newKnife()
  632. handleweld2 = Instance.new("Weld", RightArm)
  633. handleweld2.Part1 = RightArm
  634. handleweld2.Part0 = handle2
  635. handle2c0 = CFrame.new(0, 0.9, 0.15) * CFrame.Angles(math.rad(55), math.rad(180), 0)
  636. handle2c1 = CFrame.new(0, -0.9, 0)
  637. handleweld2.C0 = handle2c0
  638. handleweld2.C1 = handle2c1
  639. knife3, blade3, handle3 = newKnife()
  640. handleweld3 = Instance.new("Weld", RightArm)
  641. handleweld3.Part1 = RightArm
  642. handleweld3.Part0 = handle3
  643. handle3c0 = CFrame.new(-0.2, 0.9, 0.3) * CFrame.Angles(math.rad(25), math.rad(180), 0)
  644. handle3c1 = CFrame.new(0, -0.9, 0)
  645. handleweld3.C0 = handle3c0
  646. handleweld3.C1 = handle3c1
  647. function teleport(k)
  648.   local a, b, c, d, e, f = createBodyTrail()
  649.   table.insert(partEffects, {
  650.     a,
  651.     "Disappear",
  652.     0.05
  653.   })
  654.   table.insert(partEffects, {
  655.     b,
  656.     "Disappear",
  657.     0.05
  658.   })
  659.   table.insert(partEffects, {
  660.     c,
  661.     "Disappear",
  662.     0.05
  663.   })
  664.   table.insert(partEffects, {
  665.     d,
  666.     "Disappear",
  667.     0.05
  668.   })
  669.   table.insert(partEffects, {
  670.     e,
  671.     "Disappear",
  672.     0.05
  673.   })
  674.   table.insert(partEffects, {
  675.     f,
  676.     "Disappear",
  677.     0.05
  678.   })
  679.   local unit = (RootPart.Velocity * Vector3.new(1, 0, 1)).unit
  680.   if k == "e" then
  681.   elseif k == "q" then
  682.     unit = -unit
  683.   end
  684.   local velocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  685.   local hit, pos = rayCast(RootPart.Position, unit, 15, Character)
  686.   if velocity <= 2 then
  687.     unit = RootPart.CFrame.lookVector
  688.     if k == "q" then
  689.       unit = RootPart.CFrame.lookVector * -1
  690.     end
  691.   end
  692.   if pos then
  693.     if hit then
  694.       if hit.Parent:findFirstChild("Humanoid") then
  695.         RootPart.CFrame = CFrame.new(RootPart.CFrame.p + unit * 20)
  696.       else
  697.         if hit.Parent:IsA("Model") and hit.Parent.Parent:findFirstChild("Humanoid") then
  698.           RootPart.CFrame = CFrame.new(RootPart.CFrame.p + unit * 20)
  699.         end
  700.         RootPart.CFrame = CFrame.new(pos)
  701.       end
  702.     else
  703.       RootPart.CFrame = CFrame.new(RootPart.CFrame.p + unit * 20)
  704.     end
  705.   end
  706. end
  707. function attackone()
  708.   attacking = true
  709.   cloak("Uncloak")
  710.   for i = 0, 1, 0.1 do
  711.     swait()
  712.     Neck.C0 = clerp(Neck.C0, NeckCF * CFrame.Angles(math.rad(8), 0, math.rad(-70)), 0.3)
  713.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * CFrame.new(0, 0, 0.1 * math.cos(sine / 25)) * CFrame.Angles(0, 0, math.rad(70)), 0.3)
  714.     RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.3 - 0.1 * math.cos(sine / 15), -0.6) * CFrame.Angles(math.rad(80), 0, math.rad(-50)), 0.3)
  715.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5 - 0.1 * math.cos(sine / 15), 0.2) * CFrame.Angles(math.rad(15), math.rad(10), math.rad(-10)), 0.3)
  716.     RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.3)
  717.     LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.3)
  718.     RH.C0 = clerp(RH.C0, CFrame.new(1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(math.rad(0), math.rad(90) - math.rad(10), math.rad(5)), 0.3)
  719.     LH.C0 = clerp(LH.C0, CFrame.new(-1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(math.rad(0), -math.rad(90) - math.rad(10), math.rad(5)), 0.3)
  720.     handleweld1.C0 = clerp(handleweld1.C0, handle1c0, 0.3)
  721.     handleweld2.C0 = clerp(handleweld2.C0, handle2c0, 0.3)
  722.     handleweld3.C0 = clerp(handleweld3.C0, handle3c0, 0.3)
  723.   end
  724.   local dir1 = (RootPart.CFrame.lookVector + Vector3.new(math.cos(math.rad(45)), 0, math.sin(math.rad(45)))).unit
  725.   local dir2 = RootPart.CFrame.lookVector
  726.   local dir3 = (RootPart.CFrame.lookVector + Vector3.new(math.cos(math.rad(-45)), 0, math.sin(math.rad(-45)))).unit
  727.   local throwknife1 = newKnife()
  728.   throwknife1.Handle.CFrame = CFrame.new(RootPart.CFrame.p, RootPart.CFrame.p + dir1) * CFrame.Angles(math.rad(-90), 0, 0)
  729.   local bv1 = Instance.new("BodyVelocity", throwknife1.Handle)
  730.   bv1.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
  731.   bv1.Velocity = dir1 * 30
  732.   local throwknife2 = newKnife()
  733.   throwknife2.Handle.CFrame = CFrame.new(RootPart.CFrame.p, RootPart.CFrame.p + dir2) * CFrame.Angles(math.rad(-90), 0, 0)
  734.   local bv2 = Instance.new("BodyVelocity", throwknife2.Handle)
  735.   bv2.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
  736.   bv2.Velocity = dir2 * 30
  737.   local throwknife3 = newKnife()
  738.   throwknife3.Handle.CFrame = CFrame.new(RootPart.CFrame.p, RootPart.CFrame.p + dir3) * CFrame.Angles(math.rad(-90), 0, 0)
  739.   local bv3 = Instance.new("BodyVelocity", throwknife3.Handle)
  740.   bv3.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
  741.   bv3.Velocity = dir3 * 30
  742.   thread(function()
  743.     while throwknife1.Parent ~= Effects do
  744.       swait()
  745.       local hit1, pos1
  746.       if throwknife1:findFirstChild("Blade") then
  747.         hit1, pos1 = rayCast(throwknife1.Blade.Position, dir1, 1, Character)
  748.       end
  749.       if hit1 and pos1 then
  750.         local w = weld(hit1, throwknife1.Blade, hit1, throwknife1.Blade.CFrame:toObjectSpace(hit1.CFrame))
  751.         bv1:Destroy()
  752.         if hit1.Parent:findFirstChild("Humanoid") then
  753.           basicDamage(hit1.Parent.Humanoid, 5, BrickColor.new("Fog").Color)
  754.         end
  755.         break
  756.       end
  757.     end
  758.   end)
  759.   thread(function()
  760.     while throwknife2.Parent ~= Effects do
  761.       swait()
  762.       local hit1, pos1
  763.       if throwknife2:findFirstChild("Blade") then
  764.         hit1, pos1 = rayCast(throwknife2.Blade.Position, dir2, 1, Character)
  765.       end
  766.       if hit1 and pos1 then
  767.         local w = weld(hit1, throwknife2.Blade, hit1, throwknife2.Blade.CFrame:toObjectSpace(hit1.CFrame))
  768.         bv2:Destroy()
  769.         if hit1.Parent:findFirstChild("Humanoid") then
  770.           basicDamage(hit1.Parent.Humanoid, 5, BrickColor.new("Fog").Color)
  771.         end
  772.         break
  773.       end
  774.     end
  775.   end)
  776.   thread(function()
  777.     while throwknife3.Parent ~= Effects do
  778.       swait()
  779.       local hit1, pos1
  780.       if throwknife3:findFirstChild("Blade") then
  781.         hit1, pos1 = rayCast(throwknife3.Blade.Position, dir3, 1, Character)
  782.       end
  783.       if hit1 and pos1 then
  784.         local w = weld(hit1, throwknife3.Blade, hit1, throwknife3.Blade.CFrame:toObjectSpace(hit1.CFrame))
  785.         bv3:Destroy()
  786.         if hit1.Parent:findFirstChild("Humanoid") then
  787.           basicDamage(hit1.Parent.Humanoid, 5, BrickColor.new("Fog").Color)
  788.         end
  789.         break
  790.       end
  791.     end
  792.   end)
  793.   delay(10, function()
  794.     if throwknife1 then
  795.       throwknife1:Destroy()
  796.     end
  797.     if throwknife2 then
  798.       throwknife2:Destroy()
  799.     end
  800.     if throwknife3 then
  801.       throwknife3:Destroy()
  802.     end
  803.   end)
  804.   cloak("Cloak")
  805.   for i = 0, 1, 0.1 do
  806.     swait()
  807.     Neck.C0 = clerp(Neck.C0, NeckCF * angles(math.rad(8), math.rad(0), math.rad(0)), 0.3)
  808.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(0.2, math.rad(0), math.rad(0)), 0.3)
  809.     RW.C0 = clerp(RW.C0, CFrame.new(1.4, 0.5, 0) * angles(math.rad(0), math.rad(-40), math.rad(90)), 0.3)
  810.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(45), 0, math.rad(-25)), 0.3)
  811.     RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.3)
  812.     LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.3)
  813.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)), 0.3)
  814.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)), 0.3)
  815.   end
  816.   attacking = false
  817. end
  818. function attacktwo()
  819.   attackone()
  820. end
  821. function attackthree()
  822.   attackone()
  823. end
  824. function mouse1d()
  825.   if tool.Active == false then
  826.     return
  827.   end
  828.   if attacking == false and attackcounter == 1 then
  829.     attackcounter = 2
  830.     attackone()
  831.   elseif attacking == false and attackcounter == 2 then
  832.     attackcounter = 3
  833.     attacktwo()
  834.   elseif attacking == false and attackcounter == 3 then
  835.     attackcounter = 1
  836.     attackthree()
  837.   end
  838. end
  839. function key(k)
  840.   if tool.Active == false then
  841.     return
  842.   end
  843.   k = k:lower()
  844.   if attacking == false and k == "z" and AttackHas[1] >= AttackNeeded[1] then
  845.   elseif attacking == false and k == "x" and AttackHas[2] >= AttackNeeded[2] then
  846.   elseif attacking == false and k == "c" and AttackHas[3] >= AttackNeeded[3] then
  847.   elseif attacking == false and k == "v" and AttackHas[4] >= AttackNeeded[4] then
  848.   elseif k == "e" then
  849.     teleport("e")
  850.   elseif k == "q" then
  851.     teleport("q")
  852.   end
  853. end
  854. mouse.Button1Down:connect(mouse1d)
  855. mouse.KeyDown:connect(key)
  856. cloaked = false
  857. function cloak(t)
  858.   if t == "Cloak" then
  859.     if cloaked == true then
  860.       return
  861.     end
  862.     cloaked = true
  863.     magic("Sphere", {
  864.       Effects,
  865.       BrickColor.new("Fog"),
  866.       handle1.CFrame,
  867.       0.5,
  868.       0.5,
  869.       0.5,
  870.       1,
  871.       2,
  872.       1,
  873.       0.1
  874.     })
  875.     magic("Sphere", {
  876.       Effects,
  877.       BrickColor.new("Fog"),
  878.       handle2.CFrame,
  879.       0.5,
  880.       0.5,
  881.       0.5,
  882.       1,
  883.       2,
  884.       1,
  885.       0.1
  886.     })
  887.     magic("Sphere", {
  888.       Effects,
  889.       BrickColor.new("Fog"),
  890.       handle3.CFrame,
  891.       0.5,
  892.       0.5,
  893.       0.5,
  894.       1,
  895.       2,
  896.       1,
  897.       0.1
  898.     })
  899.     for i, v in pairs(knife1:GetChildren()) do
  900.       v.Transparency = 1
  901.     end
  902.     for i, v in pairs(knife2:GetChildren()) do
  903.       v.Transparency = 1
  904.     end
  905.     for i, v in pairs(knife3:GetChildren()) do
  906.       v.Transparency = 1
  907.     end
  908.     handleweld1.C0 = CFrame.new(0, -0.9, 0)
  909.     handleweld2.C0 = CFrame.new(0, -0.9, 0)
  910.     handleweld3.C0 = CFrame.new(0, -0.9, 0)
  911.   elseif t == "Uncloak" then
  912.     if cloaked == false then
  913.       return
  914.     end
  915.     cloaked = false
  916.     for i, v in pairs(knife1:GetChildren()) do
  917.       v.Transparency = 0
  918.     end
  919.     for i, v in pairs(knife2:GetChildren()) do
  920.       v.Transparency = 0
  921.     end
  922.     for i, v in pairs(knife3:GetChildren()) do
  923.       v.Transparency = 0
  924.     end
  925.   end
  926. end
  927. thread(function()
  928.   while true do
  929.     swait()
  930.     torvel = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  931.     hitfloor, posfloor = rayCast(RootPart.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
  932.     sine = sine + 1
  933.     if AttackHas[1] < AttackNeeded[1] and AttackCan[1] == true then
  934.       AttackHas[1] = AttackHas[1] + 0.03
  935.     end
  936.     if AttackHas[2] < AttackNeeded[2] and AttackCan[2] == true then
  937.       AttackHas[2] = AttackHas[2] + 0.03
  938.     end
  939.     if AttackHas[3] < AttackNeeded[3] and AttackCan[3] == true then
  940.       AttackHas[3] = AttackHas[3] + 0.03
  941.     end
  942.     if AttackHas[4] < AttackNeeded[4] and AttackCan[4] == true then
  943.       AttackHas[4] = AttackHas[4] + 0.03
  944.     end
  945.     Reload[1]:TweenSize(UDim2.new(AttackHas[1] / AttackNeeded[1], 0, 1, 0), nil, 1, 0.4)
  946.     Reload[2]:TweenSize(UDim2.new(AttackHas[2] / AttackNeeded[2], 0, 1, 0), nil, 1, 0.4)
  947.     Reload[3]:TweenSize(UDim2.new(AttackHas[3] / AttackNeeded[3], 0, 1, 0), nil, 1, 0.4)
  948.     Reload[4]:TweenSize(UDim2.new(AttackHas[4] / AttackNeeded[4], 0, 1, 0), nil, 1, 0.4)
  949.     if 1 < RootPart.Velocity.y and hitfloor == nil then
  950.       if attacking == false then
  951.         Anim = "Jump"
  952.         Neck.C0 = clerp(Neck.C0, NeckCF * CFrame.Angles(math.rad(-15), 0, math.rad(0)), 0.1)
  953.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(-math.rad(17), 0, math.rad(12)), 0.2)
  954.         LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.2)
  955.         RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(-math.rad(17), 0, -math.rad(12)), 0.2)
  956.         RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.2)
  957.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * CFrame.Angles(0, 0, 0), 0.2)
  958.         RH.C0 = clerp(RH.C0, CFrame.new(1, -1, 0) * CFrame.Angles(math.rad(-12), math.rad(90), 0), 0.2)
  959.         LH.C0 = clerp(LH.C0, CFrame.new(-1, -1, 0) * CFrame.Angles(math.rad(12), -math.rad(90), 0), 0.2)
  960.         cloak("Cloak")
  961.       end
  962.     elseif RootPart.Velocity.y < -1 and hitfloor == nil then
  963.       if attacking == false then
  964.         Anim = "Fall"
  965.         Neck.C0 = clerp(Neck.C0, NeckCF * CFrame.Angles(math.rad(23), 0, 0), 0.2)
  966.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * CFrame.Angles(0, 0, 0), 0.2)
  967.         RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(-math.rad(17), 0, math.rad(12)), 0.2)
  968.         RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.2)
  969.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(-math.rad(17), 0, -math.rad(12)), 0.2)
  970.         LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0), 0.2)
  971.         RH.C0 = clerp(RH.C0, CFrame.new(1, -1, 0) * CFrame.Angles(math.rad(24), math.rad(90), 0), 0.2)
  972.         LH.C0 = clerp(LH.C0, CFrame.new(-1, -1, 0) * CFrame.Angles(math.rad(-12), -math.rad(90), 0), 0.2)
  973.       end
  974.     elseif torvel < 1 and hitfloor ~= nil then
  975.       if attacking == false then
  976.         Anim = "Idle"
  977.         Neck.C0 = clerp(Neck.C0, NeckCF * CFrame.Angles(math.rad(8), 0, math.rad(-25)), 0.1)
  978.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * CFrame.new(0, 0, 0.1 * math.cos(sine / 25)) * CFrame.Angles(0, 0, math.rad(25)), 0.1)
  979.         RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.3 - 0.1 * math.cos(sine / 15), -0.6) * CFrame.Angles(math.rad(70), 0, math.rad(-45)), 0.2)
  980.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5 - 0.1 * math.cos(sine / 15), 0.2) * CFrame.Angles(math.rad(15), math.rad(10), math.rad(-10)), 0.2)
  981.         RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.2)
  982.         LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.2)
  983.         RH.C0 = clerp(RH.C0, CFrame.new(1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(math.rad(0), math.rad(90) - math.rad(10), math.rad(5)), 0.2)
  984.         LH.C0 = clerp(LH.C0, CFrame.new(-1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(math.rad(0), -math.rad(90) - math.rad(10), math.rad(5)), 0.2)
  985.         cloak("Uncloak")
  986.         handleweld1.C0 = clerp(handleweld1.C0, handle1c0, 0.2)
  987.         handleweld2.C0 = clerp(handleweld2.C0, handle2c0, 0.2)
  988.         handleweld3.C0 = clerp(handleweld3.C0, handle3c0, 0.2)
  989.       end
  990.     elseif torvel > 2 and hitfloor ~= nil and attacking == false then
  991.       Anim = "Walk"
  992.       Neck.C0 = clerp(Neck.C0, NeckCF * CFrame.Angles(math.rad(8), 0, math.rad(-25)), 0.1)
  993.       RootJoint.C0 = clerp(RootJoint.C0, RootCF * CFrame.new(0, 0, 0.1 * math.cos(sine / 25)) * CFrame.Angles(0.1, 0, math.rad(25)), 0.1)
  994.       RW.C0 = clerp(RW.C0, CFrame.new(1.1, 0.3 - 0.1 * math.cos(sine / 15), -0.6) * CFrame.Angles(math.rad(90), 0, math.rad(-50)), 0.2)
  995.       LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5 - 0.1 * math.cos(sine / 15), 0.2) * CFrame.Angles(math.rad(15), math.rad(10), math.rad(-10)), 0.2)
  996.       RW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.2)
  997.       LW.C1 = clerp(LW.C1, CFrame.new(0, 0.5, 0), 0.2)
  998.       RH.C0 = clerp(RH.C0, CFrame.new(1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(math.cos(sine * 1.2 / 8), math.rad(90) - math.rad(10), math.rad(5)), 0.2)
  999.       LH.C0 = clerp(LH.C0, CFrame.new(-1, -1 - 0.1 * math.cos(sine / 25), 0) * CFrame.Angles(-math.cos(sine * 1.2 / 8), -math.rad(90) - math.rad(10), math.rad(5)), 0.2)
  1000.       cloak("Uncloak")
  1001.       handleweld1.C0 = clerp(handleweld1.C0, CFrame.new(0.2, 0.95, 0) * CFrame.Angles(math.rad(80), math.rad(180), 0), 0.2)
  1002.       handleweld2.C0 = clerp(handleweld2.C0, CFrame.new(0, 0.95, 0.15) * CFrame.Angles(math.rad(50), math.rad(180), 0), 0.2)
  1003.       handleweld3.C0 = clerp(handleweld3.C0, CFrame.new(-0.2, 0.9, 0.3) * CFrame.Angles(math.rad(20), math.rad(180), 0), 0.2)
  1004.     end
  1005.     if 0 < #partEffects then
  1006.       for e = 1, #partEffects do
  1007.         if partEffects[e] ~= nil then
  1008.           local Thing = partEffects[e]
  1009.           if Thing ~= nil then
  1010.             local Part = Thing[1]
  1011.             local Mode = Thing[2]
  1012.             local Delay = Thing[3]
  1013.             local IncX = Thing[4]
  1014.             local IncY = Thing[5]
  1015.             local IncZ = Thing[6]
  1016.             if 1 >= Thing[1].Transparency then
  1017.               if Thing[2] == "Block1" then
  1018.                 Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1019.                 local Mesh = Thing[1].Mesh
  1020.                 Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1021.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1022.               elseif Thing[2] == "Block2" then
  1023.                 Thing[1].CFrame = Thing[1].CFrame
  1024.                 local Mesh = Thing[7]
  1025.                 Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1026.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1027.               elseif Thing[2] == "Cylinder" then
  1028.                 local Mesh = Thing[1].Mesh
  1029.                 Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1030.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1031.               elseif Thing[2] == "Blood" then
  1032.                 local Mesh = Thing[7]
  1033.                 Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
  1034.                 Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1035.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1036.               elseif Thing[2] == "Elec" then
  1037.                 local Mesh = Thing[1].Mesh
  1038.                 Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
  1039.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1040.               elseif Thing[2] == "Disappear" then
  1041.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1042.               elseif Thing[2] == "Shatter" then
  1043.                 Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1044.                 Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
  1045.                 Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
  1046.                 Thing[6] = Thing[6] + Thing[5]
  1047.               end
  1048.             else
  1049.               Part:Destroy()
  1050.               table.remove(partEffects, e)
  1051.             end
  1052.           end
  1053.         end
  1054.       end
  1055.     end
  1056.   end
  1057. end)
RAW Paste Data