iiJosephCats205

nn

Apr 20th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. Player = game.Players.LocalPlayer
  3. Character = Player.Character
  4. PlayerGui = Player.PlayerGui
  5. Backpack = Player.Backpack
  6. Torso = Character.Torso
  7. Head = Character.Head
  8. Humanoid = Character.Humanoid
  9. LeftArm = Character["Left Arm"]
  10. LeftLeg = Character["Left Leg"]
  11. RightArm = Character["Right Arm"]
  12. RightLeg = Character["Right Leg"]
  13. PlayerGui = Player.PlayerGui
  14. Backpack = Player.Backpack
  15. Torso = Character.Torso
  16. Head = Character.Head
  17. Humanoid = Character.Humanoid
  18. LeftArm = Character["Left Arm"]
  19. LeftLeg = Character["Left Leg"]
  20. RightArm = Character["Right Arm"]
  21. RightLeg = Character["Right Leg"]
  22. LS = Torso["Left Shoulder"]
  23. RS = Torso["Right Shoulder"]
  24. Neck = Torso.Neck
  25. attacktype = 1
  26. vt = Vector3.new
  27. cf = CFrame.new
  28. euler = CFrame.fromEulerAnglesXYZ
  29. angles = CFrame.Angles
  30. necko = cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  31. necko2 = cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  32. LHC0 = cf(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  33. LHC1 = cf(-0.5, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  34. RHC0 = cf(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  35. RHC1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  36. RootPart = Character.HumanoidRootPart
  37. RootJoint = RootPart.RootJoint
  38. RootCF = euler(-1.57, 0, 3.14)
  39. attack = false
  40. equipped = false
  41. local Anim = "Idle"
  42. local Effects = {}
  43. cam = workspace.CurrentCamera
  44. ZTarget = nil
  45. RocketTarget = nil
  46. local RbxUtility = LoadLibrary("RbxUtility")
  47. local Create = RbxUtility.Create
  48. local m = Create("Model"){
  49.     Parent = Character,
  50.     Name = "WeaponModel",
  51. }
  52. mouse = Player:GetMouse()
  53. RSH = Torso["Right Shoulder"]
  54. LSH = Torso["Left Shoulder"]
  55. RHP = Character.Torso["Right Hip"]
  56. LHP = Character.Torso["Left Hip"]  
  57.  
  58. function NoOutline(Part)
  59.     Part.TopSurface, Part.BottomSurface, Part.LeftSurface, Part.RightSurface, Part.FrontSurface, Part.BackSurface = 10, 10, 10, 10, 10, 10
  60. end
  61. function swait(num)
  62.     if num == 0 or num == nil then
  63.         game:service'RunService'.Heartbeat:wait()
  64.     else
  65.         for i = 0, num do
  66.             game:service'RunService'.Heartbeat:wait()
  67.         end
  68.     end
  69. end
  70.    
  71. function nooutline(part)
  72.     part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  73. end
  74.    
  75. function part(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
  76.     local fp = Create("Part"){
  77.         formFactor = formfactor,
  78.         Parent = parent,
  79.         Reflectance = reflectance,
  80.         Transparency = transparency,
  81.         CanCollide = false,
  82.         Locked = true,
  83.         BrickColor = BrickColor.new(tostring(brickcolor)),
  84.         Name = name,
  85.         Size = size,
  86.         Position = Character.Torso.Position,
  87.         Material = material,
  88.     }
  89.     nooutline(fp)
  90.     return fp
  91. end
  92.    
  93. function mesh(Mesh, part, meshtype, meshid, offset, scale)
  94.     local Msh = Create(Mesh){
  95.         Parent = part,
  96.         Offset = offset,
  97.         Scale = scale,
  98.     }
  99.     if Mesh == "SpecialMesh" then
  100.         Msh.MeshType = meshtype
  101.         Msh.MeshId = meshid
  102.     end
  103.     return Msh
  104. end
  105.    
  106. function weld(parent, part0, part1, c0, c1)
  107.     local Weld = Create("Weld"){
  108.         Parent = parent,
  109.         Part0 = part0,
  110.         Part1 = part1,
  111.         C0 = c0,
  112.         C1 = c1,
  113.     }
  114.     return Weld
  115. end
  116.    
  117.    
  118. local function CFrameFromTopBack(at, top, back)
  119.     local right = top:Cross(back)
  120.     return CFrame.new(at.x, at.y, at.z,
  121. right.x, top.x, back.x,
  122. right.y, top.y, back.y,
  123. right.z, top.z, back.z)
  124. end
  125.  
  126. function Triangle(a, b, c)
  127.     local edg1 = (c - a):Dot((b - a).unit)
  128.     local edg2 = (a - b):Dot((c - b).unit)
  129.     local edg3 = (b - c):Dot((a - c).unit)
  130.     if edg1 <= (b - a).magnitude and edg1 >= 0 then
  131.         a, b, c = a, b, c
  132.     elseif edg2 <= (c - b).magnitude and edg2 >= 0 then
  133.         a, b, c = b, c, a
  134.     elseif edg3 <= (a - c).magnitude and edg3 >= 0 then
  135.         a, b, c = c, a, b
  136.     else
  137.         assert(false, "unreachable")
  138.     end
  139.  
  140.     local len1 = (c - a):Dot((b - a).unit)
  141.     local len2 = (b - a).magnitude - len1
  142.     local width = (a + (b - a).unit * len1 - c).magnitude
  143.  
  144.     local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, -(b - a).unit)
  145.  
  146.     local list = {}
  147.  
  148.     local Color = BrickColor.new("Dark stone grey")
  149.  
  150.     if len1 > 0.01 then
  151.         local w1 = Create('WedgePart', m){
  152.             Material = "SmoothPlastic",
  153.             FormFactor = 'Custom',
  154.             BrickColor = Color,
  155.             Transparency = 0,
  156.             Reflectance = 0,
  157.             Material = "SmoothPlastic",
  158.             CanCollide = false,
  159.             Anchored = true,
  160.             Parent = workspace,
  161.             Transparency = 0.3,
  162.         }
  163.         game:GetService("Debris"):AddItem(w1, 5)
  164.         NoOutline(w1)
  165.         local sz = Vector3.new(0.2, width, len1)
  166.         w1.Size = sz
  167.         local sp = Create("SpecialMesh"){
  168.             Parent = w1,
  169.             MeshType = "Wedge",
  170.             Scale = Vector3.new(0, 1, 1) * sz / w1.Size,
  171.         }
  172.         w1:BreakJoints()
  173.         table.insert(Effects, {
  174.             w1,
  175.             "Disappear",
  176.             .03
  177.         })
  178.         w1.CFrame = maincf * CFrame.Angles(math.pi, 0, math.pi / 2) * CFrame.new(0, width / 2, len1 / 2)
  179.         table.insert(list, w1)
  180.     end
  181.     if len2 > 0.01 then
  182.         local w2 = Create('WedgePart', m){
  183.             Material = "SmoothPlastic",
  184.             FormFactor = 'Custom',
  185.             BrickColor = Color,
  186.             Transparency = 0,
  187.             Reflectance = 0,
  188.             Material = "SmoothPlastic",
  189.             CanCollide = false,
  190.             Anchored = true,
  191.             Parent = workspace,
  192.             Transparency = 0.3,
  193.         }
  194.         game:GetService("Debris"):AddItem(w2, 5)
  195.         NoOutline(w2)
  196.         local sz = Vector3.new(0.2, width, len2)
  197.         w2.Size = sz
  198.         local sp = Create("SpecialMesh"){
  199.             Parent = w2,
  200.             MeshType = "Wedge",
  201.             Scale = Vector3.new(0, 1, 1) * sz / w2.Size,
  202.         }
  203.         w2:BreakJoints()
  204.         table.insert(Effects, {
  205.             w2,
  206.             "Disappear",
  207.             .03
  208.         })
  209.         w2.CFrame = maincf * CFrame.Angles(math.pi, math.pi, -math.pi / 2) * CFrame.new(0, width / 2, -len1 - len2 / 2)
  210.         table.insert(list, w2)
  211.     end
  212.     return unpack(list)
  213. end
  214.    
  215. function so(id, par, vol, pit)
  216.     coroutine.resume(coroutine.create(function()
  217.         local sou = Instance.new("Sound", par or workspace)
  218.         sou.Volume = vol
  219.         sou.Pitch = pit or 1
  220.         sou.SoundId = id
  221.         swait()
  222.         sou:play()
  223.         swait(6)
  224.         sou:Remove()
  225.     end))
  226. end
  227.  
  228. function clerp(a, b, t)
  229.  
  230.     local function QuaternionFromCFrame(cf)
  231.         local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  232.         local trace = m00 + m11 + m22
  233.         if trace > 0 then
  234.             local s = math.sqrt(1 + trace)
  235.             local recip = 0.5 / s
  236.             return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  237.         else
  238.             local i = 0
  239.             if m11 > m00 then
  240.                 i = 1
  241.             end
  242.             if m22 > (i == 0 and m00 or m11) then
  243.                 i = 2
  244.             end
  245.             if i == 0 then
  246.                 local s = math.sqrt(m00 - m11 - m22 + 1)
  247.                 local recip = 0.5 / s
  248.                 return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  249.             elseif i == 1 then
  250.                 local s = math.sqrt(m11 - m22 - m00 + 1)
  251.                 local recip = 0.5 / s
  252.                 return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  253.             elseif i == 2 then
  254.                 local s = math.sqrt(m22 - m00 - m11 + 1)
  255.                 local recip = 0.5 / s
  256.                 return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  257.             end
  258.         end
  259.     end
  260.          
  261.     local function QuaternionToCFrame(px, py, pz, x, y, z, w)
  262.         local xs, ys, zs = x + x, y + y, z + z
  263.         local wx, wy, wz = w * xs, w * ys, w * zs
  264.         local xx = x * xs
  265.         local xy = x * ys
  266.         local xz = x * zs
  267.         local yy = y * ys
  268.         local yz = y * zs
  269.         local zz = z * zs
  270.         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))
  271.     end
  272.          
  273.     local function QuaternionSlerp(a, b, t)
  274.         local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  275.         local startInterp, finishInterp;
  276.         if cosTheta >= 0.0001 then
  277.             if (1 - cosTheta) > 0.0001 then
  278.                 local theta = math.acos(cosTheta)
  279.                 local invSinTheta = 1 / math.sin(theta)
  280.                 startInterp = math.sin((1 - t) * theta) * invSinTheta
  281.                 finishInterp = math.sin(t * theta) * invSinTheta
  282.             else
  283.                 startInterp = 1 - t
  284.                 finishInterp = t
  285.             end
  286.         else
  287.             if (1 + cosTheta) > 0.0001 then
  288.                 local theta = math.acos(-cosTheta)
  289.                 local invSinTheta = 1 / math.sin(theta)
  290.                 startInterp = math.sin((t - 1) * theta) * invSinTheta
  291.                 finishInterp = math.sin(t * theta) * invSinTheta
  292.             else
  293.                 startInterp = t - 1
  294.                 finishInterp = t
  295.             end
  296.         end
  297.         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
  298.     end
  299.  
  300.     local qa = {
  301.         QuaternionFromCFrame(a)
  302.     }
  303.     local qb = {
  304.         QuaternionFromCFrame(b)
  305.     }
  306.     local ax, ay, az = a.x, a.y, a.z
  307.     local bx, by, bz = b.x, b.y, b.z
  308.  
  309.     local _t = 1 - t
  310.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  311. end
  312.  
  313. function rayCast(Pos, Dir, Max, Ignore)
  314.     return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  315. end
  316.  
  317. Damagefunc = function(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  318.     if hit.Parent == nil then
  319.         return
  320.     end
  321.     local h = hit.Parent:FindFirstChild("Humanoid")
  322.     for _, v in pairs(hit.Parent:children()) do
  323.         if v:IsA("Humanoid") then
  324.             h = v
  325.         end
  326.     end
  327.     if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  328.         if hit.Parent:findFirstChild("DebounceHit") ~= nil then
  329.             if hit.Parent.DebounceHit.Value == true then
  330.                 return
  331.             end
  332.         end
  333.         if h.MaxHealth >= math.huge then
  334.             hit:BreakJoints()
  335.         end
  336.         local c = Create("ObjectValue"){
  337.             Name = "creator",
  338.             Value = game:service("Players").LocalPlayer,
  339.             Parent = h,
  340.         }
  341.         game:GetService("Debris"):AddItem(c, .5)
  342.         if HitSound ~= nil and HitPitch ~= nil then
  343.             so(HitSound, hit, 1, HitPitch)
  344.         end
  345.         local Damage = math.random(minim, maxim)
  346.         local blocked = false
  347.         local block = hit.Parent:findFirstChild("Block")
  348.         if block ~= nil then
  349.             if block.className == "IntValue" then
  350.                 if block.Value > 0 then
  351.                     blocked = true
  352.                     block.Value = block.Value - 1
  353.                     print(block.Value)
  354.                 end
  355.             end
  356.         end
  357.         if blocked == false then
  358.             h.Health = h.Health - Damage
  359.             ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color, Handle.BrickColor.Color)
  360.         else
  361.             h.Health = h.Health - (Damage / 2)
  362.             ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color, Handle.BrickColor.Color)
  363.         end
  364.         if Type == "Knockdown" then
  365.             local hum = hit.Parent.Humanoid
  366.             hum.PlatformStand = true
  367.             coroutine.resume(coroutine.create(function(HHumanoid)
  368.                 swait(1)
  369.                 HHumanoid.PlatformStand = false
  370.             end), hum)
  371.             local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
  372.             local bodvol = Create("BodyVelocity"){
  373.                 velocity = angle * knockback,
  374.                 P = 5000,
  375.                 maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  376.                 Parent = hit,
  377.             }
  378.             local rl = Create("BodyAngularVelocity"){
  379.                 P = 3000,
  380.                 maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  381.                 angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  382.                 Parent = hit,
  383.             }
  384.             game:GetService("Debris"):AddItem(bodvol, .5)
  385.             game:GetService("Debris"):AddItem(rl, .5)
  386.         elseif Type == "Normal" then
  387.             local vp = Create("BodyVelocity"){
  388.                 P = 500,
  389.                 maxForce = Vector3.new(math.huge, 0, math.huge),
  390.                 velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
  391.             }
  392.             if knockback > 0 then
  393.                 vp.Parent = hit.Parent.Torso
  394.             end
  395.             game:GetService("Debris"):AddItem(vp, .5)
  396.         elseif Type == "Up" then
  397.             local bodyVelocity = Create("BodyVelocity"){
  398.                 velocity = vt(0, 20, 0),
  399.                 P = 5000,
  400.                 maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  401.                 Parent = hit,
  402.             }
  403.             game:GetService("Debris"):AddItem(bodyVelocity, .5)
  404.         elseif Type == "Snare" then
  405.             local bp = Create("BodyPosition"){
  406.                 P = 2000,
  407.                 D = 100,
  408.                 maxForce = Vector3.new(math.huge, math.huge, math.huge),
  409.                 position = hit.Parent.Torso.Position,
  410.                 Parent = hit.Parent.Torso,
  411.             }
  412.             game:GetService("Debris"):AddItem(bp, 1)
  413.         elseif Type == "Freeze" then
  414.             local BodPos = Create("BodyPosition"){
  415.                 P = 50000,
  416.                 D = 1000,
  417.                 maxForce = Vector3.new(math.huge, math.huge, math.huge),
  418.                 position = hit.Parent.Torso.Position,
  419.                 Parent = hit.Parent.Torso,
  420.             }
  421.             local BodGy = Create("BodyGyro") {
  422.                 maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
  423.                 P = 20e+003,
  424.                 Parent = hit.Parent.Torso,
  425.                 cframe = hit.Parent.Torso.CFrame,
  426.             }
  427.             hit.Parent.Torso.Anchored = true
  428.             coroutine.resume(coroutine.create(function(Part)
  429.                 swait(1.5)
  430.                 Part.Anchored = false
  431.             end), hit.Parent.Torso)
  432.             game:GetService("Debris"):AddItem(BodPos, 3)
  433.             game:GetService("Debris"):AddItem(BodGy, 3)
  434.         end
  435.         local debounce = Create("BoolValue"){
  436.             Name = "DebounceHit",
  437.             Parent = hit.Parent,
  438.             Value = true,
  439.         }
  440.         game:GetService("Debris"):AddItem(debounce, Delay)
  441.         c = Instance.new("ObjectValue")
  442.         c.Name = "creator"
  443.         c.Value = Player
  444.         c.Parent = h
  445.         game:GetService("Debris"):AddItem(c, .5)
  446.     end
  447. end
  448.  
  449. function ShowDamage(Pos, Text, Time, Color, Color2)
  450.     local Rate = (1 / 30)
  451.     local Pos = (Pos or Vector3.new(0, 0, 0))
  452.     local Text = (Text or "")
  453.     local Time = (Time or 2)
  454.     local Color = (Color or Color3.new(1, 0, 0))
  455.     local EffectPart = part("Custom", workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", vt(0, 0, 0))
  456.     EffectPart.Anchored = true
  457.     local BillboardGui = Create("BillboardGui"){
  458.         Size = UDim2.new(3, 0, 3, 0),
  459.         Adornee = EffectPart,
  460.         Parent = EffectPart,
  461.     }
  462.     local TextLabel = Create("TextLabel"){
  463.         BackgroundTransparency = 1,
  464.         Size = UDim2.new(1, 0, 1, 0),
  465.         Text = Text,
  466.         TextColor3 = Color,
  467.         TextScaled = true,
  468.         Font = Enum.Font.ArialBold,
  469.         FontSize = Enum.FontSize.Size10,
  470.         TextStrokeColor3 = Color2,
  471.         TextStrokeTransparency = 0.8,
  472.         Parent = BillboardGui,
  473.     }
  474.     game.Debris:AddItem(EffectPart, (Time + 0.1))
  475.     EffectPart.Parent = game:GetService("Workspace")
  476.     delay(0, function()
  477.         local Frames = (Time / Rate)
  478.         for Frame = 1, Frames do
  479.             wait(Rate)
  480.             local Percent = (Frame / Frames)
  481.             EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  482.             TextLabel.TextTransparency = Percent
  483.         end
  484.         if EffectPart and EffectPart.Parent then
  485.             EffectPart:Destroy()
  486.         end
  487.     end)
  488. end
  489.  
  490. Handle=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Handle",Vector3.new(0.280000031, 0.699999988, 0.280000001))
  491. Handleweld=weld(m,Character["Right Arm"],Handle,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0860519409, -0.159469604, 1.00696373, 1, -1.72803976e-011, 1.90765604e-006, 1.90764786e-006, 4.44081707e-006, -1, 9.09494702e-012, 0.999999881, 4.44081707e-006))
  492. FakeHandle=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","FakeHandle",Vector3.new(0.280000031, 0.699999988, 0.280000001))
  493. FakeHandleweld=weld(m,Handle,FakeHandle,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.90734863e-006, 0.0707168579, 0.0574593544, 1, -8.18545232e-012, 2.86099269e-013, -8.18545232e-012, 1, 4.54747351e-013, 2.86099269e-013, 4.54747351e-013, 1))
  494. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  495. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000375747681, -1.18781972, 0.839702606, -1, -1.02313925e-006, -2.56240446e-006, 2.56240173e-006, 1.79690323e-006, -1, 1.02317256e-006, -1, -1.79690414e-006))
  496. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  497. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.200000003, 0.420000017, 0.200000003))
  498. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.889633477, -0.979663849, 0.0548973083, -0.258811921, -5.54403186e-006, -0.96592772, -3.15453076e-006, 1, -4.89435752e-006, 0.96592778, 1.78029984e-006, -0.258811951))
  499. mesh("SpecialMesh",Part,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=111896510",Vector3.new(0, 0, 0),Vector3.new(0.349999994, 0.349999994, 0.349999994))
  500. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.200000003, 0.200000003, 0.280000001))
  501. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.279872894, 0.209986687, -1.33514404e-005, -3.935309e-006, 1, -2.90573007e-006, 1.08481819e-008, 2.90573598e-006, 1, 1, 3.93527625e-006, -1.08583693e-008))
  502. mesh("SpecialMesh",Part,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=3270017",Vector3.new(0, 0, 0),Vector3.new(0.519399941, 0.557200074, 1.74439991))
  503. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.200000003, 0.420000017, 0.200000003))
  504. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.889616966, -0.979663849, -0.0549716949, 0.258811742, -5.84206009e-006, -0.96592778, -1.50227504e-006, 1, -6.45063938e-006, 0.965927839, 3.12056136e-006, 0.258811772))
  505. mesh("SpecialMesh",Part,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=111896510",Vector3.new(0, 0, 0),Vector3.new(0.349999994, 0.349999994, 0.349999994))
  506. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000046, 0.280000061, 0.560000002))
  507. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.419868469, 7.62939453e-006, 2.7179718e-005, 3.83001225e-006, -1, 2.54809993e-006, 1, 3.82997496e-006, 3.03872399e-010, -3.12454534e-010, 2.54810584e-006, 1))
  508. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  509. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.700000048, 0.280000001))
  510. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.14440918e-005, 0.552843094, 0.296955109, 1, -2.22826202e-011, 1.80189787e-011, -7.95807864e-013, 0.707115233, -0.707098365, -1.73940862e-011, 0.707098365, 0.707115233))
  511. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000046, 0.28700006, 0.280000031))
  512. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.41986084, 0.00234603882, 2.14576721e-005, 3.74060505e-006, -1, 2.30967612e-006, 1, 3.74057413e-006, -7.42010826e-008, 7.41938067e-008, 2.30968203e-006, 1))
  513. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  514. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.287, 0.560000062, 0.200000003))
  515. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00273132324, 0.622810364, 0.296985626, 1, -2.22826202e-011, 1.80189787e-011, -7.95807864e-013, 0.707115233, -0.707098365, -1.73940862e-011, 0.707098365, 0.707115233))
  516. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  517. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000046, 0.280000061, 0.420000017))
  518. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.839817047, -1.90734863e-005, -0.489821672, 3.8300077e-006, -1, 2.53319945e-006, 1, 3.82997496e-006, 3.04327147e-010, -3.12426113e-010, 2.53320582e-006, 1))
  519. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  520. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000046, 0.28700006, 0.280000031))
  521. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.839794159, 0.00254631042, -0.49509263, 3.8300077e-006, -1, 2.53319945e-006, 1, 3.82997496e-006, 3.04327147e-010, -3.12426113e-010, 2.53320582e-006, 1))
  522. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  523. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.420000046, 0.980000079))
  524. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.90734863e-006, -0.559818268, 0.0699512959, 1, -2.04636308e-011, 7.38572398e-013, -1.63709046e-011, 1, 2.6823227e-007, 7.82044568e-013, -2.68225904e-007, 1))
  525. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.280000001))
  526. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.279872894, 0.209986687, -1.33514404e-005, -3.935309e-006, 1, -2.90573007e-006, 1.08481819e-008, 2.90573598e-006, 1, 1, 3.93527625e-006, -1.08583693e-008))
  527. mesh("SpecialMesh",Part,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=3270017",Vector3.new(0, 0, 0),Vector3.new(0.491399914, 0.557200074, 1.74439991))
  528. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.560000062))
  529. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-2.0980835e-005, -0.419818878, 0.839810848, 1, -2.13731255e-011, -1.65118821e-011, -1.54614099e-011, 1, 2.62222466e-006, 1.80325338e-011, -2.62221829e-006, 1))
  530. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  531. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.420000017, 0.560000002))
  532. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559810638, -0.769824028, -3.43322754e-005, 1.45437184e-007, -1, -1.29630371e-006, -2.08639904e-007, 1.29629734e-006, -1, 1, 1.45400691e-007, -2.08638184e-007))
  533. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  534. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000061, 0.280000061, 0.280000031))
  535. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.209846497, -3.81469727e-006, 0.559957266, 1.49184416e-008, -1, -6.10877123e-007, 1, 1.48816071e-008, 2.96593194e-010, -2.95063474e-010, -6.10870757e-007, 1))
  536. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  537. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.287, 0.840000033, 0.200000003))
  538. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00215530396, -0.0698623657, 0.000190734863, 1, -2.22826202e-011, 1.80189787e-011, -1.43245416e-011, 1, 2.69661223e-006, -1.68107646e-011, -2.69660586e-006, 1))
  539. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  540. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.287, 0.200000003, 0.560000002))
  541. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0021572113, -0.559833527, -0.0698022842, 1, -5.50244295e-011, 1.91965506e-011, -4.70663508e-011, 1, 2.69661314e-006, -1.56331059e-011, -2.69659495e-006, 1))
  542. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  543. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.287, 0.427000016, 0.200000003))
  544. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000122070313, -0.560840607, 0.27643466, 1, -2.22826202e-011, 1.80189787e-011, -1.43245416e-011, 1, 8.19589786e-007, -1.68107889e-011, -8.1958342e-007, 1))
  545. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  546. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.420000017, 0.280000031))
  547. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.55978775, -2.44724131, -0.000165939331, 1.45490276e-007, -1, -2.49798723e-005, -2.08999595e-007, 2.49798668e-005, -1, 1, 1.45458671e-007, -2.08994436e-007))
  548. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  549. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.280000001, 0.560000062))
  550. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.559822083, 0, -0.419999123, 5.95878191e-008, 1, 1.94764652e-007, -1, 5.9624881e-008, 3.44258311e-008, 3.44273339e-008, -1.94758286e-007, 1))
  551. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  552. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.200000003))
  553. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0, 0.279838562, 0.21000886, 1, 4.46839294e-008, 1.44186561e-006, 4.47196271e-008, -1, 7.78919912e-007, 1.44186413e-006, -7.78926278e-007, -1))
  554. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 0.699999988))
  555. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.560000002, 0.420000017))
  556. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559791565, -0.55984664, 3.81469727e-005, 1.4543707e-007, -1, -5.08004541e-006, -2.08696321e-007, 5.08003723e-006, -1, 1, 1.45401373e-007, -2.08694047e-007))
  557. mesh("SpecialMesh",Part,Enum.MeshType.Sphere,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  558. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.200000003))
  559. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(5.91278076e-005, 0.279800415, 1.04951167, -1, -2.53198436e-007, 1.49545034e-008, 2.53235044e-007, -1, -7.584179e-006, 1.49579638e-008, -7.58417036e-006, 1))
  560. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 0.699999988))
  561. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.560000062, 0.200000003))
  562. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559768677, -2.37841272, -0.000438690186, 1.45475724e-007, -1, -2.01288749e-005, -2.08974669e-007, 2.01288676e-005, -1, 1, 1.45443096e-007, -2.08970206e-007))
  563. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  564. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.280000001, 0.420000017))
  565. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.55979538, -0.979748011, 7.62939453e-006, 1.45442073e-007, -1, -6.30070645e-006, -2.08722611e-007, 6.30070008e-006, -1, 1, 1.45406489e-007, -2.08720166e-007))
  566. mesh("SpecialMesh",Part,Enum.MeshType.Sphere,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  567. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.560000002))
  568. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.90734863e-006, -0.27980423, 0.699883938, 1, -2.04636308e-011, 1.10889423e-012, -1.63709046e-011, 1, 2.11572933e-006, 4.11753964e-013, -2.11572296e-006, 1))
  569. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  570. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.560000062))
  571. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.24249268e-005, -0.699771881, 0.839804649, 1, -2.13731255e-011, -1.66693187e-011, -1.54614099e-011, 1, 4.23093024e-006, 1.81899929e-011, -4.23092433e-006, 1))
  572. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  573. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000031, 0.200000003, 0.200000003))
  574. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.76837158e-005, -0.559803009, 1.0495255, 1, -1.56887836e-011, 3.45319641e-011, -2.09183781e-011, 1, 5.48155458e-006, -3.30136751e-011, -5.48154867e-006, 1))
  575. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 0.699999988))
  576. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  577. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000427246094, -2.58794498, 0.839736938, -1, -1.49499328e-008, -2.52553122e-007, 2.52551388e-007, 1.52605935e-005, -1, 1.49906327e-008, -1, -1.52605971e-005))
  578. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  579. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  580. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.83972168, -2.44782782, -0.000438690186, 1.45468562e-007, -1, -2.04852658e-005, -2.09350546e-007, 2.04852604e-005, -1, 1, 1.45436047e-007, -2.09346027e-007))
  581. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  582. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  583. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000421524048, 2.30780578, 0.83972168, 1, 5.67174197e-007, 2.54727388e-006, -2.54726456e-006, -1.37063362e-005, 1, 5.67245934e-007, -1, -1.37063407e-005))
  584. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  585. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  586. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00043296814, 2.30763364, -0.27973938, -1, 1.49386779e-008, 2.53097255e-007, 2.53098563e-007, -1.32949481e-005, 1, 1.49050265e-008, 1, 1.32949544e-005))
  587. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  588. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  589. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.279750824, 2.44781303, -0.000444412231, 1.45382273e-007, 1, 2.08481797e-005, -2.08853876e-007, -2.08481761e-005, 1, 1, -1.45423428e-007, 2.08852413e-007))
  590. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  591. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  592. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00043296814, -2.58781743, -0.279773712, 1, -5.67145435e-007, -2.54751899e-006, -2.54751376e-006, 1.19385704e-005, -1, 5.67138841e-007, 1, 1.19385777e-005))
  593. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 0.699999988, 0.699999988))
  594. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.231000006, 0.200000003, 0.280000031))
  595. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.560119629, -2.59035707, -0.000175476074, 3.96057294e-006, -1, -2.42740825e-005, -2.09122135e-007, 2.42740789e-005, -1, 1, 3.96054475e-006, -2.09025103e-007))
  596. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  597. Barrel=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Barrel",Vector3.new(0.200000003, 0.200000003, 0.280000031))
  598. Barrelweld=weld(m,FakeHandle,Barrel,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.562404633, -2.59142828, -0.000175476074, 3.96057203e-006, -1, -2.4095265e-005, -2.09117701e-007, 2.40952577e-005, -1, 1, 3.96054384e-006, -2.09021465e-007))
  599. mesh("CylinderMesh",Barrel,"","",Vector3.new(0, 0, 0),Vector3.new(0.945000052, 0.699999988, 1))
  600. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.200000003, 0.280000031))
  601. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559753418, -1.60731864, -0.000179290771, 1.45490958e-007, -1, -2.51584643e-005, -2.09002877e-007, 2.51584588e-005, -1, 1, 1.45459353e-007, -2.0899769e-007))
  602. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  603. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.200000003, 0.280000031))
  604. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559776306, -2.16727662, -0.000164031982, 1.45485501e-007, -1, -2.33735591e-005, -2.08965247e-007, 2.33735518e-005, -1, 1, 1.45453555e-007, -2.08960316e-007))
  605. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  606. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.420000046, 0.280000031))
  607. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559776306, -1.88730073, -0.000165939331, 1.45485956e-007, -1, -2.35518892e-005, -2.08967805e-007, 2.35518837e-005, -1, 1, 1.4545401e-007, -2.08962845e-007))
  608. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  609. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.280000061, 0.280000031))
  610. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559753418, -1.39711809, -0.000173568726, 1.45514491e-007, -1, -2.24795003e-005, -2.08946716e-007, 2.24794821e-005, -1, 1, 1.45416834e-007, -2.08939554e-007))
  611. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  612. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000017, 0.420000046, 0.200000003))
  613. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559764862, -1.88847375, -0.000436782837, 1.45466288e-007, -1, -1.8521725e-005, -2.08988865e-007, 1.85217195e-005, -1, 1, 1.45433319e-007, -2.08984645e-007))
  614. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  615. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.560000062, 0.200000003))
  616. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559757233, -1.39839482, -0.000442504883, 1.45464355e-007, -1, -1.69149826e-005, -2.08905689e-007, 1.69149753e-005, -1, 1, 1.45431045e-007, -2.08901696e-007))
  617. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.699999988))
  618. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000046, 0.287, 0.420000017))
  619. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559772491, 0.00134277344, -0.0700860023, -7.44953468e-008, -1, -4.73725959e-006, 1, -7.45317266e-008, -7.42083941e-008, 7.42095523e-008, -4.73725368e-006, 1))
  620. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  621. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.420000046, 0.287, 0.280000031))
  622. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.559783936, 0.00134277344, -0.420075655, -7.44639692e-008, -1, -5.6308827e-006, 1, -7.45658326e-008, -7.42004715e-008, 7.42039248e-008, -5.63086405e-006, 1))
  623. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  624. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.420000017, 0.280000001, 0.560000062))
  625. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.5598526, 1.52587891e-005, 1.11974049, 5.9590775e-008, 1, 2.51883012e-006, -1, 5.96276095e-008, 3.44174609e-008, 3.441885e-008, -2.51882193e-006, 1))
  626. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  627. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0.5,0,"New Yeller","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  628. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00018119812, -0.844371796, 0.276464224, 1, -2.20552465e-011, 1.82033399e-011, -1.47792889e-011, 1, 1.78784603e-006, -1.66827021e-011, -1.78783966e-006, 1))
  629. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.735000134, 0.699999988, 0.699999988))
  630. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.280000001, 0.200000003, 0.280000091))
  631. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.769760132, 0.000406265259, -0.279969931, 5.95582605e-008, 1, 2.26564134e-006, -1, 5.96603513e-008, 3.44175426e-008, 3.44209745e-008, -2.26562315e-006, 1))
  632. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.699999988, 1))
  633. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.700000048, 0.200000003))
  634. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.839698792, -0.0692727566, -0.000392913818, 1.45439344e-007, -1, -9.2651635e-006, -2.0875224e-007, 9.26515713e-006, -1, 1, 1.45404442e-007, -2.0874937e-007))
  635. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 1, 0.699999988))
  636. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Institutional white","Part",Vector3.new(0.200000003, 0.699999988, 0.200000003))
  637. Partweld=weld(m,FakeHandle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.839668274, -0.768940926, -0.000394821167, 1.45451168e-007, -1, -1.17661502e-005, -2.08743202e-007, 1.17661421e-005, -1, 1, 1.45416834e-007, -2.08739948e-007))
  638. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.699999988, 1, 0.699999988))
  639.  
  640. Handleweld.Part0 = LeftLeg
  641. Handleweld.C0 = angles(-2, 0, 0) * cf(-.5, 1.3, 1)
  642.  
  643. local PE1 = Create("ParticleEmitter"){
  644. Parent = Barrel,
  645. Color = ColorSequence.new(BrickColor.new("New Yeller").Color),
  646. Transparency = NumberSequence.new(0),
  647. Size = NumberSequence.new(.5),
  648. Texture = "rbxassetid://257430870",
  649. Lifetime = NumberRange.new(.1),
  650. Rate = 100,
  651. VelocitySpread = 180,
  652. Rotation = NumberRange.new(0),
  653. Speed = NumberRange.new(0),
  654. LightEmission = .6,
  655. LockedToPart = true,
  656. Enabled = false
  657. }
  658.  
  659. local PE2 = PE1:Clone()
  660. PE2.Size = NumberSequence.new(.7)
  661. PE2.LightEmission = 1
  662. PE2.Texture = "rbxassetid://87729590"
  663.  
  664. local Lite = Create("PointLight"){
  665.     Parent = Barrel,
  666.     Color = BrickColor.new("New Yeller").Color,
  667.     Shadows = true,
  668.     Range = 10,
  669.     Brightness = 0.5,
  670.     Enabled = false
  671. }
  672.  
  673. function Equip()
  674.     attack = true
  675.     equipped = true
  676.     RSH.Parent = nil
  677.     LSH.Parent = nil
  678.  
  679.     RHP.Parent = nil
  680.     LHP.Parent = nil
  681.  
  682.     RW = Create("Weld"){
  683.         Name = "Right Shoulder",
  684.         Part0 = Torso ,
  685.         C0 = cf(1.5, 0.5, 0),
  686.         C1 = cf(0, 0.5, 0),
  687.         Part1 = RightArm ,
  688.         Parent = Torso ,
  689.     }
  690.  
  691.     LW = Create("Weld"){
  692.         Name = "Left Shoulder",
  693.         Part0 = Torso ,
  694.         C0 = cf(-1.5, 0.5, 0),
  695.         C1 = cf(0, 0.5, 0) ,
  696.         Part1 = LeftArm ,
  697.         Parent = Torso ,
  698.     }
  699.  
  700.     RH = Create("Weld"){
  701.         Part0 = Torso,
  702.         C0 = cf(0, -1.5, 0), --* euler(1.3, 0, -0.5)
  703.         C1 = cf(-0.5, 0.5, 0) ,
  704.         Part1 = Character["Right Leg"],
  705.         Parent = Torso,
  706.     }
  707.  
  708.     LH = Create("Weld"){
  709.         Part0 = Torso,
  710.         C0 = cf(0, -1.5, 0), --* euler(1.3, 0, -0.5)
  711.         C1 = cf(0.5, 0.5, 0) ,
  712.         Part1 = Character["Left Leg"],
  713.         Parent = Torso,
  714.     }
  715.  
  716.     for i = 0, 1, 0.1 do
  717.         swait()
  718.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  719.         Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(30), math.rad(0), math.rad(30)), .3)
  720.         RW.C0 = clerp(RW.C0, CFrame.new(0, 0.2, -.5) * angles(math.rad(20), math.rad(0), math.rad(-50)), 0.3)
  721.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-5), math.rad(0), math.rad(-10)), 0.3)
  722.         RH.C0 = clerp(RH.C0, cf(0.03, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(2)), .3)
  723.         LH.C0 = clerp(LH.C0, cf(-0.03, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-2)), .3)
  724.     end
  725.     Handleweld.Part0 = RightArm
  726.     Handleweld.C0 = euler(0, 0, 0) * cf(0, 0, 0)
  727.     attack = false
  728. end
  729.  
  730. function Unequip()
  731.     equipped = false
  732.     attack = true
  733.     for i = 0, 1, 0.1 do
  734.         swait()
  735.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  736.         Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(30), math.rad(0), math.rad(30)), .3)
  737.         RW.C0 = clerp(RW.C0, CFrame.new(.5, 0.2, -.7) * angles(math.rad(20), math.rad(0), math.rad(-50)), 0.3)
  738.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.3)
  739.         RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(5)), .3)
  740.         LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  741.         FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) *euler(6*i,0,0), .5)
  742.     end
  743.     FakeHandleweld.C0 = angles(0, 0, 0) * cf(0, 0, 0)
  744.     Handleweld.Part0 = LeftLeg
  745.     Handleweld.C0 = angles(-2, 0, 0) * cf(-.5, 1.3, 1)
  746.     RW.Parent = nil
  747.     LW.Parent = nil
  748.     RH.Parent = nil
  749.     LH.Parent = nil
  750.     RSH.Parent = Torso
  751.     LSH.Parent = Torso
  752.     RHP.Parent = Torso
  753.     LHP.Parent = Torso
  754.     Torso.Neck.C0 = necko
  755.     RootJoint.C0 = RootCF
  756.     RW.C0 = cf(1.5, 0.5, 0) * euler(0, 0, 0)
  757.     RW.C1 = cf(0, 0.5, 0) * euler(0, 0, 0)
  758.     LW.C0 = cf(-1.5, 0.5, 0) * euler(0, 0, 0)
  759.     LW.C1 = cf(0, 0.5, 0) * euler(0, 0, 0)
  760.     attack = false
  761. end
  762.  
  763. function CylinderEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  764.     local prt = part(3, Character, "Neon", 0, 0, brickcolor, "Effect", vt(0.2, 0.2, 0.2))
  765.     prt.Anchored = true
  766.     prt.CFrame = cframe
  767.     local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  768.     game:GetService("Debris"):AddItem(prt, 5)
  769.     Effects[#Effects + 1] = {
  770.         prt,
  771.         "Cylinder",
  772.         delay,
  773.         x3,
  774.         y3,
  775.         z3
  776.     } --part, type, delay
  777. end
  778.  
  779. function MagnitudeDamage(Hit, Part, magni, mindam, maxdam, knock, Type)
  780.     for _, c in pairs(workspace:children()) do
  781.         local hum = c:findFirstChild("Humanoid")
  782.         if hum ~= nil then
  783.             local head = c:findFirstChild("Torso")
  784.             if head ~= nil then
  785.                 local targ = head.Position - Part.Position
  786.                 local mag = targ.magnitude
  787.                 if mag <= magni and c.Name ~= Player.Name then
  788.                     Damagefunc(Hit, head, mindam, maxdam, knock, Type, RootPart, 0, "rbxassetid://199149186", 1)
  789.                 end
  790.             end
  791.         end
  792.     end
  793. end
  794.  
  795. RailgunTarget = RootPart
  796. function Laser(asd)
  797. local MouseLook=cf((asd.Position+mouse.Hit.p)/2,mouse.Hit.p)
  798. local hit,pos = rayCast(asd.Position,MouseLook.lookVector,999,RailgunTarget.Parent)
  799. local mag=(asd.Position-pos).magnitude
  800. CylinderEffect(BrickColor.new("New Yeller"),CFrame.new((asd.Position+pos)/2,pos)*angles(1.57,0,0),1,mag*5,1,1.2,0,1.2,0.1)
  801. CylinderEffect(BrickColor.new("Institutional white"),CFrame.new((asd.Position+pos)/2,pos)*angles(1.57,0,0),1,mag*5,.5,1,0,.5,0.1)
  802. if hit~=nil then
  803. local ref=part(3,workspace,"SmoothPlastic",0,1,BrickColor.new("New Yeller"),"Reference",vt())
  804. ref.Anchored=true
  805. ref.CFrame=cf(pos)
  806. game:GetService("Debris"):AddItem(ref,1)
  807. Damagefunc(ref,hit,20,90,0,"Normal",RootPart,0)
  808. end
  809. end
  810.  
  811. RocketTarget = RootPart
  812. function Shoot(asd, spread1, spread2)
  813.     local MainPos = asd.Position
  814.     local MainPos2 = mouse.Hit.p
  815.     local spread = vt((math.random(-spread1, 0) + math.random()) * spread2, (math.random(-spread1, 0) + math.random()) * spread2, (math.random(-spread1, 0) + math.random()) * spread2) * (asd.Position - mouse.Hit.p).magnitude / 100
  816.     local MouseLook = cf((MainPos + MainPos2) / 2, MainPos2 + spread)
  817.     num = 30
  818.     coroutine.resume(coroutine.create(function(Spreaded)
  819.         repeat
  820.             wait()
  821.             local hit, pos = rayCast(MainPos, MouseLook.lookVector, 10, RocketTarget.Parent)
  822.             local TheHit = mouse.Hit.p
  823.             local mag = (MainPos - pos).magnitude
  824.             CylinderEffect(BrickColor.new("New Yeller"), CFrame.new((MainPos + pos) / 2, pos) * angles(1.57, 0, 0), 3, mag * 5, 3, .5, 0, 1.5, 0.1)
  825.             MainPos = MainPos + (MouseLook.lookVector * 10)
  826.             num = num - 1
  827.             if hit ~= nil then
  828.                 num = 0
  829.                 local ref = part(3, workspace, "Neon", 0, 1, BrickColor.new("New Yeller"), "Reference", vt())
  830.                 ref.Anchored = true
  831.                 ref.CFrame = cf(pos)
  832.                 MagnitudeDamage(ref, hit, 5, 10, 20, 1, "Normal")
  833.                 game:GetService("Debris"):AddItem(ref, 5)
  834.             end
  835.         until num <= 0
  836.     end))
  837. end
  838.  
  839. function ChargeEffect(part, x1, y1, z1, x2, y2, z2, x3, y3, z3, color)
  840.     local S = Create("Part"){
  841.     Material = "SmoothPlastic",
  842.     Name = "Effect",
  843.     formFactor = 0,
  844.     Size = vt(x1, y1, z1),
  845.     BrickColor = color,
  846.     Reflectance = 0,
  847.     TopSurface = 0,
  848.     BottomSurface = 0,
  849.     Transparency = 0,
  850.     Anchored = false,
  851.     CanCollide = false,
  852.     Material = "Neon",
  853.     CFrame = part.CFrame * cf(x2, y2, z2) * euler(x3, y3, z3),
  854.     Parent = m,
  855.     }
  856.     local msh1 = Create("SpecialMesh"){
  857.     Scale = vt(0.5, 0.5, 0.5) ,
  858.     MeshType = "Sphere",
  859.     Parent = S,
  860.     }
  861.     coroutine.resume(coroutine.create(function(Part, CF)
  862.         local f = Instance.new("BodyPosition")
  863.         f.P = 800
  864.         f.D = 100
  865.         f.maxForce = vt(math.huge, math.huge, math.huge)
  866.         f.position = part.Position
  867.         f.Parent = Part
  868.         for i = 0, 1, 0.1 do
  869.             wait()
  870.             Part.Transparency = Part.Transparency + 0.1
  871.         end
  872.         Part.Parent = nil
  873.     end), S, S.CFrame)
  874. end
  875.  
  876. local lasrs = {}
  877. local lasrspd = 3
  878. local maxTravelDistance = 500
  879. local maxRebounds = 20
  880.  
  881. function RAY(pos, dir, collidedlist, startpos, endpos, distleft)
  882.     collidedlist = collidedlist or {Character}
  883.     startpos = startpos or pos
  884.     distleft = distleft or dir.unit * dir.magnitude
  885.     endpos = endpos or pos + distleft
  886.     local ray = Ray.new(pos, distleft)
  887.     local hitz,enz = workspace:FindPartOnRayWithIgnoreList(ray, collidedlist)
  888.     if hitz ~= nil and not hitz.Parent:findFirstChild("Humanoid") then
  889.         if hitz.CanCollide == false then
  890.             table.insert(collidedlist, hitz)
  891.             local newpos = enz
  892.             local newdistleft = distleft - (dir.unit * (pos - newpos).magnitude)
  893.             if newdistleft then
  894.                 return RAY(newpos-(dir*0.01), dir, collidedlist, startpos, endpos, newdistleft+(dir*0.01))
  895.             end
  896.         end
  897.     end
  898.     return hitz, enz, ray
  899. end
  900.  
  901. function FindSurface(part, position)
  902.     local obj = part.CFrame:pointToObjectSpace(position)
  903.     local siz = part.Size/2
  904.     so("rbxassetid://199144144", workspace, 1, .9)
  905.     for i,v in pairs(Enum.NormalId:GetEnumItems()) do
  906.         local vec = Vector3.FromNormalId(v)
  907.         local wvec = part.CFrame:vectorToWorldSpace(vec)
  908.         local vz = (obj)/(siz*vec)
  909.         if (math.abs(vz.X-1) < 0.001 or math.abs(vz.Y-1) < 0.001 or math.abs(vz.Z-1) < 0.001) then
  910.             return wvec,vec
  911.         end
  912.     end
  913.     if part.className == "WedgePart" then
  914.         local pos = (part.CFrame * CFrame.new(0,part.Size.y/2,part.Size.z/2)).p
  915.         local apos = (part.CFrame * CFrame.Angles(-math.atan2(part.CFrame:pointToObjectSpace(pos).y,part.CFrame:pointToObjectSpace(pos).z),0,0) * CFrame.new(0,1,0)).p
  916.         local wvec,vec = (apos - part.Position).unit, part.CFrame:pointToObjectSpace(apos)
  917.         return wvec,vec
  918.     elseif part.className == "Part" and (part.Shape.Name == "Ball" or part.Shape.Name == "Cylinder") then
  919.         return (position - part.Position).unit, part.CFrame:vectorToObjectSpace((position - part.Position).unit)
  920.     end
  921. end
  922.  
  923. function Reflect(direction, normal)
  924.     return direction - 2 * normal:Dot(direction) * normal
  925. end
  926.  
  927. function ReflectShot(mouse)
  928.     local dir = (mouse.Hit.p - Torso.Position).unit
  929.     local tabl
  930.     local tablnum = 0
  931.     for i, v in pairs(lasrs) do
  932.         if not v[1] then
  933.             tabl = v
  934.             tablnum = i
  935.             break
  936.         end
  937.     end
  938.     if not tabl then
  939.         tablnum = #lasrs + 1
  940.         tabl = {false,nil,nil,0,0,1,{},{},{},{}}
  941.         for i = 1, 2 do
  942.             for j = 1, 6 do
  943.                 local p = Instance.new("Part")
  944.                 p.FormFactor = "Custom"
  945.                 p.CanCollide = false
  946.                 p.Anchored = true
  947.                 p.Locked = true
  948.                 p.BrickColor = BrickColor.new("New Yeller")
  949.                 p.TopSurface = 10
  950.                 p.BottomSurface = 10
  951.                 p.RightSurface = 10
  952.                 p.LeftSurface = 10
  953.                 p.FrontSurface = 10
  954.                 p.BackSurface = 10
  955.                 p.Size = Vector3.new(1,1,1)
  956.                 p.Material = "Neon"
  957.                 p.Transparency = i == 1 and 0 or 0.6
  958.                 p.Touched:connect(function(hit)
  959.                 hit.Parent.Humanoid:TakeDamage(30)
  960.                 end)
  961.                 local mesh = Instance.new("CylinderMesh",p)
  962.                 table.insert(tabl[6+i],p)
  963.                 table.insert(tabl[8+i],mesh)
  964.             end
  965.         end
  966.         table.insert(lasrs,tabl)
  967.     end
  968.     -- isMoving,direction,lastPosition,rebounds,distance,recycleCount,middleLayer,outerLayer
  969.     tabl[4],tabl[5] = 0,0
  970.     tabl[3] = Barrel.Position
  971.     tabl[2] = dir
  972.     tabl[1] = true
  973.  
  974. end
  975.  
  976. local MultiShoot = false
  977. local gun = false
  978. local shoot = false
  979. local Obliterate = false
  980. local LaserMode = false
  981. function Aim()
  982.     attack = true
  983.     gun = true
  984.     for i = 0, 1, 0.2 do
  985.         swait()
  986.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .5)
  987.         Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-90)), .5)
  988.         RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.5)
  989.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.5)
  990.         RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .5)
  991.         LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .5)
  992.     end
  993.     RootJoint.C0 = RootCF * cf(0, 0, 0) * euler(0, 0, 1.57)
  994.     RW.C0 = cf(1.5, 0.5, 0) * euler(1.57, 0, 1.57)
  995.     local gairo = Create("BodyGyro"){
  996.     Parent = RootPart,
  997.     maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
  998.     P = 20e+003 ,
  999.     cframe = RootPart.CFrame,
  1000.     }
  1001.     local offset = nil
  1002.     while gun == true do
  1003.         swait()
  1004.         local gunpos = vt(mouse.Hit.p.x, Head.Position.Y, mouse.Hit.p.z)
  1005.         offset = (Torso.Position.y - mouse.Hit.p.y) / 60
  1006.         local mag = (Torso.Position - mouse.Hit.p).magnitude / 80
  1007.         offset = offset / mag
  1008.         gairo.cframe = cf(Head.Position, gunpos)
  1009.         Neck.C0 = clerp(Neck.C0, necko * euler(0, 0, -1.57), .3)
  1010.         RW.C1 = clerp(RW.C1, cf(0, 0.5, 0) * euler(offset, 0, 0), .5)
  1011.     end
  1012.     if shoot == true then
  1013.         gairo.Parent = nil
  1014.         PE1.Enabled,PE2.Enabled = true,true
  1015.         Lite.Enabled = true
  1016.         for i = 0, 1, 0.1 do
  1017.             swait()
  1018.             RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .3)
  1019.             Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(5), math.rad(-90)), .3)
  1020.             RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(50), math.rad(90)), 0.3)
  1021.             LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-40)), 0.3)
  1022.             RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .3)
  1023.             LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  1024.             FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
  1025.         end
  1026.         Lite.Enabled = false
  1027.         PE1.Enabled,PE2.Enabled = false,false
  1028.     elseif MultiShoot == true then
  1029.         gairo.Parent = nil
  1030.         for i = 1,5 do
  1031.         so("rbxassetid://199144089", Barrel, 1, 1.1)
  1032.         Shoot(Barrel, .2, 1)
  1033.         PE1.Enabled,PE2.Enabled = true,true
  1034.         Lite.Enabled = true
  1035.         for i = 0,1,1 do
  1036.             swait()
  1037.             RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .5)
  1038.             Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(2), math.rad(-90)), .5)
  1039.             RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(50), math.rad(90)), 0.5)
  1040.             LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-40)), 0.5)
  1041.             RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .5)
  1042.             LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .5)
  1043.             FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
  1044.         end
  1045.         PE1.Enabled,PE2.Enabled = false,false
  1046.         Lite.Enabled = false
  1047.         for i = 0,1,1 do
  1048.             swait()
  1049.             RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .5)
  1050.             Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-90)), .5)
  1051.             RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.5)
  1052.             LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.5)
  1053.             RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .5)
  1054.             LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .5)
  1055.             FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1056.         end
  1057.        end
  1058.     elseif LaserMode == true then
  1059.         gairo.Parent = nil
  1060.         so("rbxassetid://161006157", Barrel, 1, .9)
  1061.         so("rbxassetid://161006131", Barrel, 1, 1.2)
  1062.         for i = 1, 30 do
  1063.             swait()
  1064.             ChargeEffect(Barrel, 2, 2, 2, math.random(-10, 10), math.random(-10, 10), math.random(-10, 10), 0, 0, 0, BrickColor.new("New Yeller"))
  1065.         end
  1066.         so("rbxassetid://199144089", Barrel, 1, .8)
  1067.         so("rbxassetid://199144089", Barrel, 1, .5)
  1068.         Laser(Barrel)
  1069.         PE1.Enabled,PE2.Enabled = true,true
  1070.         Lite.Enabled = true
  1071.         for i = 0, 1, 0.1 do
  1072.             swait()
  1073.             RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .3)
  1074.             Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(5), math.rad(-90)), .3)
  1075.             RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(50), math.rad(90)), 0.3)
  1076.             LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-40)), 0.3)
  1077.             RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .3)
  1078.             LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  1079.             FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
  1080.         end
  1081.         PE1.Enabled,PE2.Enabled = false,false
  1082.         Lite.Enabled = false
  1083.     elseif Obliterate == true then
  1084.         gairo.Parent = nil
  1085.         so("rbxassetid://161006157", Barrel, 1, .7)
  1086.         so("rbxassetid://161006131", Barrel, 1, 1)
  1087.         for i = 1, 60 do
  1088.             swait()
  1089.             ChargeEffect(Barrel, 2, 2, 2, math.random(-10, 10), math.random(-10, 10), math.random(-10, 10), 0, 0, 0, BrickColor.new("New Yeller"))
  1090.         end
  1091.         for i = 1, 5 do
  1092.             so("rbxassetid://199144089", Barrel, 1, .8)
  1093.             for i = 1, 5 do
  1094.                 Shoot(Barrel, 1, 3)
  1095.             end
  1096.             PE1.Enabled,PE2.Enabled = true,true
  1097.             Lite.Enabled = true
  1098.             for i = 0, 1, 0.2 do
  1099.                 swait()
  1100.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .5)
  1101.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(5), math.rad(-90)), .5)
  1102.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.8, 0) * angles(math.rad(90), math.rad(50), math.rad(90)), 0.5)
  1103.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-40)), 0.5)
  1104.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .5)
  1105.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .5)
  1106.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
  1107.             end
  1108.         PE1.Enabled,PE2.Enabled = false,false
  1109.         Lite.Enabled = false
  1110.             for i = 0, 1, 0.2 do
  1111.                 swait()
  1112.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .3)
  1113.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-90)), .3)
  1114.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.3)
  1115.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.3)
  1116.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .3)
  1117.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  1118.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1119.             end
  1120.         end
  1121.        
  1122.             for i = 0, 1, 0.1 do
  1123.                 swait()
  1124.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), .3)
  1125.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(5), math.rad(-5), math.rad(-55)), .3)
  1126.                 RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.5, -.5) * angles(math.rad(0), math.rad(130), math.rad(80)), 0.3)
  1127.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.3)
  1128.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .3)
  1129.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  1130.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), .3)
  1131.             end
  1132.         so("rbxassetid://161006157", Barrel, 1, .9)
  1133.         so("rbxassetid://161006131", Barrel, 1, 1.2)
  1134.         for i = 1, 30 do
  1135.             swait()
  1136.             ChargeEffect(Barrel, 2, 2, 2, math.random(-10, 10), math.random(-10, 10), math.random(-10, 10), 0, 0, 0, BrickColor.new("New Yeller"))
  1137.         end
  1138.             for i = 0, 1, 0.05 do
  1139.                 swait()
  1140.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .3)
  1141.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(1), math.rad(-85)), .3)
  1142.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), 0.3)
  1143.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.3)
  1144.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .3)
  1145.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .3)
  1146.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(20), math.rad(0), math.rad(0)), .3)
  1147.             end
  1148.         so("rbxassetid://199144089", Barrel, 1, .8)
  1149.         so("rbxassetid://199144089", Barrel, 1, .9)
  1150.         so("rbxassetid://199144089", Barrel, 1, .6)
  1151.             for i = 1, 20 do
  1152.                 Shoot(Barrel, 1.5, 5)
  1153.             end
  1154.             PE1.Enabled,PE2.Enabled = true,true
  1155.             Lite.Enabled = true
  1156.             for i = 0, 1, 0.05 do
  1157.                 swait()
  1158.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), .5)
  1159.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(0), math.rad(10), math.rad(-90)), .5)
  1160.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.8, 0) * angles(math.rad(0), math.rad(50), math.rad(120)), 0.5)
  1161.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.5)
  1162.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, 0) * angles(math.rad(5), math.rad(0), math.rad(5)), .5)
  1163.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-5)), .5)
  1164.             end
  1165.             PE1.Enabled,PE2.Enabled = false,false
  1166.             Lite.Enabled = false
  1167.     end
  1168.     gairo.Parent = nil
  1169.     shoot = false
  1170.     attack = false
  1171. end
  1172.  
  1173. mouse.Button1Down:connect(function()
  1174.     if gun == true then
  1175.         shoot = true
  1176.         so("rbxassetid://199144089", Barrel, 1, 1)
  1177.         Shoot(Barrel, 0, 0)
  1178.         gun = false
  1179.     end
  1180. end)
  1181.  
  1182.  
  1183.  
  1184. mouse.KeyDown:connect(function(k)
  1185.     k = k:lower()
  1186.     if attack == false and equipped == false and k == 'e' then
  1187.         Equip()
  1188.     elseif attack == false and equipped == true and k == 'e' then
  1189.         Unequip()
  1190.     elseif attack == false and equipped == true and k == 'f' then
  1191.         Aim()
  1192.     elseif equipped == true and k == 'f' then
  1193.         shoot = false
  1194.     elseif equipped == true and gun == true and k == 'q' then
  1195.         shoot = true
  1196.         so("rbxassetid://199144089", Barrel, 1, .8)
  1197.         for i = 1, 5 do
  1198.             Shoot(Barrel, 1, 3)
  1199.             gun = false
  1200.         end
  1201.     elseif equipped == true and gun == true and k == 'e' then
  1202.         MultiShoot = true
  1203.         gun = false
  1204.     elseif equipped == true and gun == true and k == 'r' then
  1205.         MultiShoot = false
  1206.         LaserMode = true
  1207.         gun = false
  1208.     elseif equipped == true and attack == true and gun == true and k == 't' then
  1209.         MultiShoot = false
  1210.         Obliterate = true
  1211.         LaserMode = false
  1212.         gun = false
  1213.     elseif equipped == true and attack == true and gun == true and k == 'g' then
  1214.         shoot = true
  1215.         ReflectShot(mouse)
  1216.         so("rbxassetid://199144089", Barrel, 1, .8)
  1217.         so("rbxassetid://199144089", Barrel, 1, .5)
  1218.         gun = false
  1219.     end
  1220. end)
  1221.  
  1222. game:GetService("RunService").Stepped:connect(function()
  1223.     for _, lasr in pairs(lasrs) do
  1224.         for i, v in pairs(lasr[9]) do
  1225.             if lasr[7][i].Parent then
  1226.                 v.Scale = v.Scale + Vector3.new(-0.1,0,-0.1)
  1227.                 lasr[10][i].Scale = lasr[10][i].Scale + Vector3.new(-0.1,0,-0.1)
  1228.                 if v.Scale.x < 0.1 then
  1229.                     lasr[7][i].Parent = nil
  1230.                     lasr[8][i].Parent = nil
  1231.                 end
  1232.             end
  1233.         end
  1234.  
  1235.         if lasr[1] then
  1236.             local hitz, enz = RAY(lasr[3],lasr[2]*lasrspd)
  1237.             lasr[5] = lasr[5] + (lasr[3] - enz).magnitude
  1238.  
  1239.             lasr[7][lasr[6]].Parent = m
  1240.             lasr[7][lasr[6]].CFrame = CFrame.new((lasr[3] + enz)/2,enz) * CFrame.Angles(math.pi/2,0,0)
  1241.             lasr[9][lasr[6]].Scale = Vector3.new(0.7,(lasr[3] - enz).magnitude*5,0.7)
  1242.  
  1243.             lasr[8][lasr[6]].Parent = m
  1244.             lasr[8][lasr[6]].CFrame = lasr[7][lasr[6]].CFrame
  1245.             lasr[10][lasr[6]].Scale = Vector3.new(1.3,(lasr[3] - enz).magnitude*5 + 0.02,1.3)
  1246.  
  1247.             lasr[3] = enz
  1248.             lasr[6] = lasr[6]%#lasr[7] + 1
  1249.  
  1250.             if hitz then
  1251.                 lasr[4] = lasr[4] + 1
  1252.                 if lasr[4] == maxRebounds then
  1253.                     lasr[1] = false
  1254.                 else
  1255.                     local norm = FindSurface(hitz,enz)
  1256.                     lasr[2] = Reflect(lasr[2],norm)
  1257.                 end
  1258.             end
  1259.             if lasr[5] > maxTravelDistance then
  1260.                 lasr[1] = false
  1261.             end
  1262.         end
  1263.     end
  1264. end)
  1265.  
  1266. local sine = 0
  1267. local change = 1
  1268. local val = 0
  1269. local idle = 0
  1270. local donum = 0
  1271.  
  1272. while true do
  1273.     swait()
  1274.     sine = sine + change
  1275.     mouse.Icon = "http://www.roblox.com/asset/?id=296383647"
  1276.     local torvel = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  1277.     local velderp = RootPart.Velocity.y
  1278.     hitfloor, posfloor = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
  1279.     if equipped == true then
  1280.         if attack == false then
  1281.             idle = idle + 1
  1282.         else
  1283.             idle = 0
  1284.         end
  1285.         if idle >= 500 then
  1286.             if attack == false then
  1287.             end
  1288.         end
  1289.         if donum >= .5 then
  1290.             handidle = true
  1291.         elseif donum <= 0 then
  1292.             handidle = false
  1293.         end
  1294.         if handidle == false then
  1295.             donum = donum + 0.003
  1296.         else
  1297.             donum = donum - 0.003
  1298.         end
  1299.         if RootPart.Velocity.y > 1 and hitfloor == nil then
  1300.             Anim = "Jump"
  1301.             if attack == false then
  1302.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1303.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(0)), .3)
  1304.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(30)), 0.3)
  1305.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-20)), 0.3)
  1306.                 RH.C0 = clerp(RH.C0, cf(.05, -1.5, .5) * angles(math.rad(-20), math.rad(0), math.rad(5)), .3)
  1307.                 LH.C0 = clerp(LH.C0, cf(-.05, -1.5, .5) * angles(math.rad(-20), math.rad(0), math.rad(-5)), .3)
  1308.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1309.                 RW.C1 = clerp(RW.C1, cf(0, 0.5, 0) * euler(0, 0, 0), .3)
  1310.             end
  1311.         elseif RootPart.Velocity.y < -1 and hitfloor == nil then
  1312.             Anim = "Fall"
  1313.             if attack == false then
  1314.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1315.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(20), math.rad(0), math.rad(0)), .3)
  1316.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(40)), 0.3)
  1317.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-30)), 0.3)
  1318.                 RH.C0 = clerp(RH.C0, cf(0.05, -1.5, -.2) * angles(math.rad(10), math.rad(0), math.rad(5)), .3)
  1319.                 LH.C0 = clerp(LH.C0, cf(-0.05, -1.5, -.2) * angles(math.rad(10), math.rad(0), math.rad(-5)), .3)
  1320.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1321.                 RW.C1 = clerp(RW.C1, cf(0, 0.5, 0) * euler(0, 0, 0), .3)
  1322.             end
  1323.         elseif torvel < 1 and hitfloor ~= nil then
  1324.             Anim = "Idle"
  1325.             if attack == false then
  1326.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(5) + donum / 3, math.rad(0), math.rad(30)), .3)
  1327.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(.5) - donum / 3, math.rad(.5) + donum / 3, math.rad(-30)), .3)
  1328.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(5) + donum / 2), 0.3)
  1329.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-5) + donum / 2, math.rad(0), math.rad(-10)), 0.3)
  1330.                 RH.C0 = clerp(RH.C0, cf(.2, -1.5, -.5) * angles(math.rad(5) + donum / 2, math.rad(-30), math.rad(5) + donum / 5), .3)
  1331.                 LH.C0 = clerp(LH.C0, cf(0, -1.5 - donum / 3.5, 0) * angles(math.rad(5) + donum / 3, math.rad(-10), math.rad(0)), .3)
  1332.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1333.                 RW.C1 = clerp(RW.C1, cf(0, 0.5, 0) * euler(0, 0, 0), .3)
  1334.             end
  1335.         elseif torvel > 2 and hitfloor ~= nil then
  1336.             Anim = "Walk"
  1337.             if attack == false then
  1338.                 change = 3
  1339.                 RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(20) + donum / 2, math.rad(0), math.rad(0)), .3)
  1340.                 Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(-10) - donum / 2, math.rad(0), math.rad(0)), .3)
  1341.                 RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-50) + donum / 2, math.rad(0), math.rad(5) + donum / 2), 0.3)
  1342.                 LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20) + donum / 2, math.rad(0), math.rad(-5) - donum / 2), 0.3)
  1343.                 LH.C0 = clerp(LH.C0, CFrame.new(0, -1.5-0.3*math.cos(sine/10)/2, -.05 + math.sin(sine/10)/2) * CFrame.Angles(math.rad(3) + -math.sin(sine/10)/2.3, math.rad(0), math.rad(-3)), .4)
  1344.                 RH.C0 = clerp(RH.C0, CFrame.new(0, -1.5+0.3*math.cos(sine/10)/2, -.05 + -math.sin(sine/10)/2) * CFrame.Angles(math.rad(3) + math.sin(sine/10)/2.3, math.rad(0), math.rad(3)), .4)
  1345.                 FakeHandleweld.C0 = clerp(FakeHandleweld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1346.                 RW.C1 = clerp(RW.C1, cf(0, 0.5, 0) * euler(0, 0, 0), .3)
  1347.             end
  1348.         end
  1349.     end
  1350.     if #Effects > 0 then
  1351.         for e = 1, #Effects do
  1352.             if Effects[e] ~= nil then
  1353.                 local Thing = Effects[e]
  1354.                 if Thing ~= nil then
  1355.                     local Part = Thing[1]
  1356.                     local Mode = Thing[2]
  1357.                     local Delay = Thing[3]
  1358.                     local IncX = Thing[4]
  1359.                     local IncY = Thing[5]
  1360.                     local IncZ = Thing[6]
  1361.                     if Thing[1].Transparency <= 1 then
  1362.                         if Thing[2] == "Block1" then
  1363.                             Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1364.                             Mesh = Thing[1].Mesh
  1365.                             Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1366.                             Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1367.                         elseif Thing[2] == "Cylinder" then
  1368.                             Mesh = Thing[1].Mesh
  1369.                             Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1370.                             Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1371.                         elseif Thing[2] == "Blood" then
  1372.                             Mesh = Thing[7]
  1373.                             Thing[1].CFrame = Thing[1].CFrame * cf(0, .5, 0)
  1374.                             Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1375.                             Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1376.                         elseif Thing[2] == "Elec" then
  1377.                             Mesh = Thing[1].Mesh
  1378.                             Mesh.Scale = Mesh.Scale + vt(Thing[7], Thing[8], Thing[9])
  1379.                             Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1380.                         elseif Thing[2] == "Disappear" then
  1381.                             Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1382.                         end
  1383.                     else
  1384.                         Part.Parent = nil
  1385.                         table.remove(Effects, e)
  1386.                     end
  1387.                 end
  1388.             end
  1389.         end
  1390.     end
  1391. end
Add Comment
Please, Sign In to add comment