Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Player=game:GetService("Players").LocalPlayer
- Character=Player.Character
- PlayerGui=Player.PlayerGui
- Backpack=Player.Backpack
- Torso=Character.Torso
- Head=Character.Head
- Humanoid=Character.Humanoid
- m=Instance.new('Model',Character)
- LeftArm=Character["Left Arm"]
- LeftLeg=Character["Left Leg"]
- RightArm=Character["Right Arm"]
- RightLeg=Character["Right Leg"]
- LS=Torso["Left Shoulder"]
- LH=Torso["Left Hip"]
- RS=Torso["Right Shoulder"]
- RH=Torso["Right Hip"]
- Neck=Torso.Neck
- it=Instance.new
- attacktype=1
- vt=Vector3.new
- cf=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
- LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
- RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
- RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
- RootPart=Character.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- attack = false
- attackdebounce = false
- deb=false
- equipped=true
- hand=false
- MMouse=nil
- combo=0
- mana=0
- trispeed=.2
- attackmode='none'
- local idle=0
- local Anim="Idle"
- local Effects={}
- local gun=false
- local shoot=false
- player=nil
- mouse=Player:GetMouse()
- --save shoulders
- RSH, LSH=nil, nil
- --welds
- RW, LW=Instance.new("Weld"), Instance.new("Weld")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- LH=Torso["Left Hip"]
- RH=Torso["Right Hip"]
- TorsoColor=Torso.BrickColor
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- player=Player
- ch=Character
- RSH=ch.Torso["Right Shoulder"]
- LSH=ch.Torso["Left Shoulder"]
- --
- RSH.Parent=nil
- LSH.Parent=nil
- --
- RW.Name="Right Shoulder"
- RW.Part0=ch.Torso
- RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
- RW.C1=cf(0, 0.5, 0)
- RW.Part1=ch["Right Arm"]
- RW.Parent=ch.Torso
- --
- LW.Name="Left Shoulder"
- LW.Part0=ch.Torso
- LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
- LW.C1=cf(0, 0.5, 0)
- LW.Part1=ch["Left Arm"]
- LW.Parent=ch.Torso
- local Stats=Instance.new("BoolValue")
- Stats.Name="Stats"
- Stats.Parent=Character
- local Atk=Instance.new("NumberValue")
- Atk.Name="Damage"
- Atk.Parent=Stats
- Atk.Value=1
- local Def=Instance.new("NumberValue")
- Def.Name="Defense"
- Def.Parent=Stats
- Def.Value=1
- local Speed=Instance.new("NumberValue")
- Speed.Name="Speed"
- Speed.Parent=Stats
- Speed.Value=1
- local Mvmt=Instance.new("NumberValue")
- Mvmt.Name="Movement"
- Mvmt.Parent=Stats
- Mvmt.Value=1
- local donum=0
- function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
- local fp=it("Part")
- fp.formFactor=formfactor
- fp.Parent=parent
- fp.Reflectance=reflectance
- fp.Transparency=transparency
- fp.CanCollide=false
- fp.Locked=true
- fp.BrickColor=brickcolor
- fp.Name=name
- fp.Size=size
- fp.Position=Torso.Position
- NoOutline(fp)
- fp.Material="SmoothPlastic"
- fp:BreakJoints()
- return fp
- end
- function mesh(Mesh,part,meshtype,meshid,offset,scale)
- local mesh=it(Mesh)
- mesh.Parent=part
- if Mesh=="SpecialMesh" then
- mesh.MeshType=meshtype
- if meshid~="nil" then
- mesh.MeshId="http://www.roblox.com/asset/?id="..meshid
- end
- end
- mesh.Offset=offset
- mesh.Scale=scale
- return mesh
- end
- function weld(parent,part0,part1,c0)
- local weld=it("Weld")
- weld.Parent=parent
- weld.Part0=part0
- weld.Part1=part1
- weld.C0=c0
- return weld
- end
- local Color1=Torso.BrickColor
- local bodvel=Instance.new("BodyVelocity")
- local bg=Instance.new("BodyGyro")
- function swait(num)
- if num==0 or num==nil then
- game:service'RunService'.Stepped:wait(0)
- else
- for i=0,num do
- game:service'RunService'.Stepped:wait(0)
- end
- end
- end
- so = function(id,par,vol,pit)
- coroutine.resume(coroutine.create(function()
- local sou = Instance.new("Sound",par or workspace)
- sou.Volume=vol
- sou.Pitch=pit or 1
- sou.SoundId=id
- swait()
- sou:play()
- game:GetService("Debris"):AddItem(sou,6)
- end))
- end
- function clerp(a,b,t)
- local qa = {QuaternionFromCFrame(a)}
- local qb = {QuaternionFromCFrame(b)}
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1-t
- return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5/s
- return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
- else
- local i = 0
- if m11 > m00 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00-m11-m22+1)
- local recip = 0.5/s
- return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
- elseif i == 1 then
- local s = math.sqrt(m11-m22-m00+1)
- local recip = 0.5/s
- return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
- elseif i == 2 then
- local s = math.sqrt(m22-m00-m11+1)
- local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
- end
- end
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w*xs, w*ys, w*zs
- local xx = x*xs
- local xy = x*ys
- local xz = x*zs
- local yy = y*ys
- local yz = y*zs
- local zz = z*zs
- 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))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
- local startInterp, finishInterp;
- if cosTheta >= 0.0001 then
- if (1 - cosTheta) > 0.0001 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((1-t)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = 1-t
- finishInterp = t
- end
- else
- if (1+cosTheta) > 0.0001 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((t-1)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = t-1
- finishInterp = t
- end
- end
- 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
- end
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
- return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
- end
- user=game:service'Players'.localPlayer
- char=user.Character
- mouse=user:GetMouse()
- m=Instance.new('Model',char)
- game:service'Lighting'.Outlines=false
- local Handle = Instance.new("Part", m)
- Handle:BreakJoints()
- Handle.TopSurface = "Smooth"
- Handle.Name = 'Handle'
- Handle.BottomSurface = "Smooth"
- Handle.FormFactor = "Custom" Handle.CanCollide = false
- Handle.BrickColor = BrickColor.new("Bright red")
- Handle.Size = Vector3.new(0.200000003, 0.600000143, 1)
- Handle.Transparency = 0 Handle.Reflectance = 0 local Handleweld = Instance.new("ManualWeld")
- Handleweld.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
- Handleweld.Part1 = Handle Handleweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Handleweld.C1 = CFrame.new(0.0123119354, -0.101894379, -1.04238629, -0.99999249, -3.16296064e-05, -7.61519459e-06, 7.6239744e-06, -4.36603978e-06, -0.999996424, 3.02437056e-05, -0.999994636, 4.51505184e-06)
- Handleweld.Parent = game.Players.LocalPlayer.Character["Right Arm"]
- local HandleMesh = Instance.new("CylinderMesh",Handle)
- HandleMesh.Name = "Mesh"
- HandleMesh.Offset = Vector3.new(0, 0, 0)
- HandleMesh.Scale = Vector3.new(1, 1.5, 0.100000001)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.400000006, 0.400000006)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-0.249811172, 0.399396658, -0.432449341, 0.865910232, 0.50017333, 1.17659147e-06, -1.30344306e-05, 2.04888893e-05, -0.99998939, -0.500169456, 0.865916908, 2.25871609e-05)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-3.07559967e-05, 0.599258423, 9.53674316e-06, -6.35111282e-05, -8.71689826e-06, -0.99998951, 1.48341051e-05, 0.999992788, -9.00047962e-06, 0.99998498, -1.48519975e-05, -6.07394177e-05)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.200000003, 0.80000037, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(0.000123977661, -5.8923111, -3.0040741e-05, -0.99998498, 8.61155058e-09, -1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, -1.38593168e-06, 1.48787407e-07, -0.99998951)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = ""
- PartMesh.MeshType = Enum.MeshType.Wedge PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.400000006, 1.68499994, 1.25999999)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.600000024, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.71661377e-05, -0.998729706, 1.93119049e-05, 0.99998498, -8.61155058e-09, 1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, 1.38593168e-06, -1.48787407e-07, 0.99998951)
- Partweld.Parent = Part
- local PartMesh = Instance.new("BlockMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.449999988, 1.10000002, 0.150000006)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.200000003, 1.80000019, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-7.05718994e-05, -2.79658508, 1.50203705e-05, 0.99998498, -8.61155058e-09, 1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, 1.38593168e-06, -1.48787407e-07, 0.99998951)
- Partweld.Parent = Part
- local PartMesh = Instance.new("BlockMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.400000006, 2.70000005, 1.25)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(1, 0.200000003, 0.400000036)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.1920929e-06, 5.7220459e-06, -0.499408722, -6.35111282e-05, -8.71689826e-06, -0.99998951, -0.99998498, 9.16634235e-09, 6.07395486e-05, -8.61291483e-09, 0.999992788, -9.00003033e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("CylinderMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(1, 0.899999976, 0.899999976)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000033, 0.200000003, 0.400000006)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.1920929e-06, 5.7220459e-06, -0.499408722, -6.35111282e-05, -8.71689826e-06, -0.99998951, -0.99998498, 9.16634235e-09, 6.07395486e-05, -8.61291483e-09, 0.999992788, -9.00003033e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("CylinderMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(1, 1.10000002, 0.25)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.200000003, 0.400000006)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-0.353210449, -0.399423361, -0.353027344, 0.706925392, 0.707272351, 9.96809831e-07, -2.79798551e-05, 2.69560824e-05, -0.99998951, -0.707266808, 0.706930995, 3.66166132e-05)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.800000012, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-5.7220459e-06, -1.1920929e-06, -0.499404907, 0.99998498, -8.61155058e-09, 1.38593168e-06, -1.38592986e-06, -8.77697676e-06, -0.99998951, -8.62564775e-09, 0.999992847, -9.04473382e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("CylinderMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(1, 0.860000014, 0.349999994)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(0, -0.39940536, -0.499397278, 0.99998498, -8.61155058e-09, 1.38593168e-06, -1.38592986e-06, -8.77697676e-06, -0.99998951, -8.62564775e-09, 0.999992847, -9.04473382e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.400000006, 0.200000003, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(0.499408722, 3.24249268e-05, 0.000199556351, -7.73533029e-05, -0.999992728, -0.000388200919, 0.99998492, -7.72523927e-05, -0.000302863016, 0.000305603549, -0.000388563407, 0.99998939)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/asset/?id=16606212"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.0500000007, 0.0599999987, 0.219999999)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.600000024, 0.200000003, 0.400000006)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.1920929e-06, 5.7220459e-06, -0.499408722, -6.35111282e-05, -8.71689826e-06, -0.99998951, -0.99998498, 9.16634235e-09, 6.07395486e-05, -8.61291483e-09, 0.999992788, -9.00003033e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("CylinderMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(1, 1, 0.5)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.53779984e-05, 2.67028809e-05, 0.299648285, -6.35111282e-05, -8.71689826e-06, -0.99998951, 0.99998498, -8.36862455e-08, -6.07395486e-05, -6.59101715e-08, -0.999992788, 9.00003306e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.200000003, 0.200000003, 0.400000006)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Bright red")
- Part.Size = Vector3.new(0.600000024, 0.400000036, 0.400000006)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.06096268e-05, 1.33514404e-05, 0.199748993, -6.35111282e-05, -8.71689826e-06, -0.99998951, 0.99998498, -8.36862455e-08, -6.07395486e-05, -6.59101715e-08, -0.999992788, 9.00003306e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.200000003, 0.200000003, 0.400000006)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.200000003, 0.600000024, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-1.90734863e-06, 0, 0, 0.99998498, -8.61155058e-09, 1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, 1.38593168e-06, -1.48787407e-07, 0.99998951)
- Partweld.Parent = Part
- local PartMesh = Instance.new("BlockMesh",Part)
- PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.5, 1.5, 0.150000006)
- local Part = Instance.new("Part", m)
- Part:BreakJoints()
- Part.TopSurface = "Smooth"
- Part.Name = 'Part'
- Part.BottomSurface = "Smooth"
- Part.FormFactor = "Custom" Part.CanCollide = false
- Part.BrickColor = BrickColor.new("Really black")
- Part.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
- Part.Reflectance = 0 Part.Transparency = 0 local Partweld = Instance.new("ManualWeld")
- Partweld.Part0 = Handle Partweld.Part1 = Part Partweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Partweld.C1 = CFrame.new(-2.0980835e-05, 0.399411321, -0.499404907, 0.99998498, -8.61155058e-09, 1.38593168e-06, -1.38592986e-06, -8.77697676e-06, -0.99998951, -8.62564775e-09, 0.999992847, -9.04473382e-06)
- Partweld.Parent = Part
- local PartMesh = Instance.new("SpecialMesh",Part)
- PartMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362"
- PartMesh.MeshType = Enum.MeshType.FileMesh PartMesh.Name = "Mesh"
- PartMesh.Offset = Vector3.new(0, 0, 0)
- PartMesh.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
- local hitbox = Instance.new("Part", m)
- hitbox:BreakJoints()
- hitbox.TopSurface = "Smooth"
- hitbox.Name = 'hitbox'
- hitbox.BottomSurface = "Smooth"
- hitbox.FormFactor = "Custom" hitbox.CanCollide = false
- hitbox.BrickColor = BrickColor.new("Royal purple")
- hitbox.Size = Vector3.new(0.200000003, 5.80000019, 0.400000006)
- hitbox.Reflectance = 0 hitbox.Transparency = 1 local hitboxweld = Instance.new("ManualWeld")
- hitboxweld.Part0 = Handle hitboxweld.Part1 = hitbox hitboxweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- hitboxweld.C1 = CFrame.new(-0.0100803375, -3.59560394, -0.0413378477, 0.99998498, -8.61155058e-09, 1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, 1.38593168e-06, -1.48787407e-07, 0.99998951)
- hitboxweld.Parent = hitbox
- local tip = Instance.new("Part", m)
- tip:BreakJoints()
- tip.TopSurface = "Smooth"
- tip.Name = 'tip'
- tip.BottomSurface = "Smooth"
- tip.FormFactor = "Custom" tip.CanCollide = false
- tip.BrickColor = BrickColor.new("Royal purple")
- tip.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
- tip.Reflectance = 0 tip.Transparency = 1 local tipweld = Instance.new("ManualWeld")
- tipweld.Part0 = Handle tipweld.Part1 = tip tipweld.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- tipweld.C1 = CFrame.new(-0.01014328, -6.39224243, 0.0585107803, 0.99998498, -8.61155058e-09, 1.38593168e-06, -8.61155058e-09, 0.999992847, -1.48787407e-07, 1.38593168e-06, -1.48787407e-07, 0.99998951)
- tipweld.Parent = tip
- local function weldBetween(a, b, name)
- local weld = Instance.new("ManualWeld")
- weld.Part0 = a
- weld.Part1 = b
- weld.C0 = CFrame.new()
- weld.C1 = b.CFrame:inverse() * a.CFrame
- weld.Parent = a
- weld.Name=name or 'weldb1'
- weld.Parent=m
- return weld;
- end
- rings=Instance.new('Model',Character)
- ring=function(way,way2,where,vector,rv1,rv2,rv3,c1,c2)
- local rng = Instance.new("Part", rings)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("Bright blue")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = .5
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = where.CFrame * CFrame.Angles(math.rad(way), math.rad(way2), 0)
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- rngm.Scale = vector--10,10,1
- for i = 1, 20, 1 do
- rngm.Scale = Vector3.new(rv1 + i*c1, rv2 + i*c2, rv3)--(10 + i*2, 10 + i*2, 1)
- rng.Transparency = i/20
- swait()
- end
- wait()
- rng:destroy''
- end
- player=game.Players.localPlayer
- char=player.Character
- Effects={}
- vt=Vector3.new
- cf=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- m=Instance.new("Model",char)
- function dmgstart(dmg,what)
- hitcon = what.Touched:connect(function(hit)
- local hum = hit.Parent:FindFirstChild("Humanoid")
- if hum and not hum:IsDescendantOf(Character) then
- hum:TakeDamage(dmg)
- end
- end)
- end
- function dmgstop()
- hitcon:disconnect()
- end
- mouse.Button1Down:connect(function()
- if equipped==true and hand==false then
- if attacktype==1 then
- attackone()
- elseif attacktype==2 then
- attacktwo()
- elseif attacktype==3 then
- attackthree()
- end
- end
- end)
- mouse.KeyDown:connect(function(k)
- k=k:lower()
- if k=='q' then
- if attack==false then
- spin()
- end
- elseif k=='f' then
- if attack==false then
- boom()
- end
- end
- end)
- function spin()
- attack=true
- dmgstart(5,hitbox)
- for i=0,1,0.2 do
- swait()
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(0,0,0),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.45)
- RW.C0=clerp(RW.C0,cf(1,0.5,-0.5)*euler(1.5,-1.5,0)*euler(.5,0,0),.45)
- LW.C0=clerp(LW.C0,cf(0,0.5,-0.7)*euler(1.5,-1.5,0)*euler(.7,0,0),.45)
- RH.C0=clerp(RH.C0,RHC0*euler(-.2,0,0),.45)
- LH.C0=clerp(LH.C0,LHC0*euler(-.2,0,0),.45)
- end
- for i=0,1,0.15 do
- so("http://roblox.com/asset/?id=161006212",hitbox,1,1)
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- for i=0,1,0.1 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- RW.C0=clerp(RW.C0,cf(1,0.5,-0.5)*euler(1.5,-1.5,0)*euler(-.5,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-0.5)*euler(1.5,-1.5,0)*euler(.5,0,0),.3)
- RootJoint.C0=RootCF*euler(0,0,6.6*i)
- end
- end
- dmgstop()
- attack=false
- end
- function attackone()
- if attack==false and attacktype==1 then
- attacktype=2
- attack=true
- dmgstart(5,hitbox)
- for i=0,1,0.2 do
- swait()
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,.5),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.5),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(2,0,1),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.3,0.5,-.3)*euler(.4,0,.2)*euler(0,-.2,0),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,.5,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.5,0),.4)
- end
- so("http://roblox.com/asset/?id=161006212",hitbox,1,.7)
- hitconasdf = hitbox.Touched:connect(function(hit)
- local hum12 = hit.Parent:FindFirstChild("Humanoid")
- if hum12 and not hum12:IsDescendantOf(Character) then
- so('http://roblox.com/asset/?id=220025675',hitbox,1,3)
- hitconasdf:disconnect()
- end
- end)
- for i=0,1,0.3 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.5)*euler(.2,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.5),.4)
- RW.C0=clerp(RW.C0,cf(1.2,0.5,-.3)*euler(.2,0,-.2)*euler(0,-.5,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.4,0,-.2),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,-.5,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,-.5,0),.4)
- end
- for i=0,1,0.2 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.5)*euler(.2,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.5),.4)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.5)*euler(.6,0,-1)*euler(0,-.7,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.4,0,-.2),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,-.5,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,-.5,0),.4)
- end
- pcall(function()
- hitconasdf:disconnect()
- end)
- dmgstop()
- attack=false
- end
- end
- function attacktwo()
- if attack==false and attacktype==2 then
- attacktype=3
- attack=true
- dmgstart(5,hitbox)
- for i=0,1,0.2 do
- swait()
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.7)*euler(.2,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.7),.4)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.5)*euler(1.57,0,-1)*euler(0,1.2,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.8,0,-.4),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(.8,-1,.2)*euler(0,1.57,0)*euler(0,-.7,0),.4)
- LH.C0=clerp(LH.C0,cf(-.8,-1,.2)*euler(0,-1.57,0)*euler(0,-.7,0),.4)
- end
- so("http://roblox.com/asset/?id=161006212",hitbox,1,.8)
- hitconasdf = hitbox.Touched:connect(function(hit)
- local hum12 = hit.Parent:FindFirstChild("Humanoid")
- if hum12 and not hum12:IsDescendantOf(Character) then
- so('http://roblox.com/asset/?id=220025675',hitbox,1,3)
- hitconasdf:disconnect()
- end
- end)
- for i=0,1,0.3 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.5)*euler(0,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.5),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.3,0,1)*euler(0,1.6,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.2,0,-.2),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,.5,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.5,0),.4)
- end
- for i=0,1,0.2 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.5)*euler(.1,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.5),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1,0,.8)*euler(0,1.3,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.2,0,-.2),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,.5,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.5,0),.4)
- end
- pcall(function()
- hitconasdf:disconnect()
- end)
- dmgstop()
- attack=false
- end
- end
- function attackthree()
- if attack==false and attacktype==3 then
- attacktype=1
- attack=true
- dmgstart(5,hitbox)
- for i=0,1,0.2 do
- swait()
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.2),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,-.3),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1,0,1.2)*euler(0,-2,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,-.2)*euler(.7,0,.1)*euler(0,-.4,0),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,.3,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.3,0),.4)
- end
- so("http://roblox.com/asset/?id=161006212",hitbox,1,.9)
- hitconasdf = hitbox.Touched:connect(function(hit)
- local hum12 = hit.Parent:FindFirstChild("Humanoid")
- if hum12 and not hum12:IsDescendantOf(Character) then
- so('http://roblox.com/asset/?id=220025675',hitbox,1,3)
- hitconasdf:disconnect()
- end
- end)
- for i=0,1,0.1 do
- swait()
- local blcf = hitbox.CFrame*CFrame.new(0,.5,0)
- if scfr and (hitbox.Position-scfr.p).magnitude > .1 then
- local h = 5
- local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
- if a then game.Debris:AddItem(a,trispeed) end if b then game.Debris:AddItem(b,trispeed) end
- scfr = blcf
- elseif not scfr then
- scfr = blcf
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,-.6),.35)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,.6),.35)
- RW.C0=clerp(RW.C0,cf(1,0.5,-0.5)*euler(1.2,0,-1.2)*euler(0,-1.2,0),.35)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.35)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,-.2)*euler(-.4,0,-.7)*euler(0,0,0),.35)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.35)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,-.6,0),.35)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,-.6,0),.35)
- end
- pcall(function()
- hitconasdf:disconnect()
- end)
- dmgstop()
- attack=false
- end
- end
- function boom()
- attack=true
- for i=0,3,0.2 do
- swait()
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.2),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(math.rad(0),math.rad(0),math.rad(0)),.4)
- RW.C0=clerp(RW.C0,cf(1, 1, -.5)*euler(math.rad(145),math.rad(180),math.rad(45)),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(0)),.4)
- LW.C0=clerp(LW.C0,cf(-1, 1, -.5)*euler(math.rad(145),math.rad(0),math.rad(45)),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(0)),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-15),math.rad(0),math.rad(0)),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-15),math.rad(0),math.rad(0)),.4)
- end
- for i=0,1,0.07 do
- swait()
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(0.1+(0.04/2),0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)*euler(0.1,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1, 1, -.5)*euler(math.rad(90),math.rad(180),math.rad(45)),.4)
- LW.C0=clerp(LW.C0,cf(-1, 1, -.5)*euler(math.rad(90),math.rad(0),math.rad(45)),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(-1.2,1.57,0),.4)
- LH.C0=clerp(LH.C0,cf(-1.1,0.4,-0.8)*euler(-0.05,-1.57,0),.4)
- end
- attack=false
- end
- local function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CFrame.new(at.x, at.y, at.z,
- right.x, top.x, back.x,
- right.y, top.y, back.y,
- right.z, top.z, back.z)
- end
- function Triangle(a, b, c)
- local edg1 = (c-a):Dot((b-a).unit)
- local edg2 = (a-b):Dot((c-b).unit)
- local edg3 = (b-c):Dot((a-c).unit)
- if edg1 <= (b-a).magnitude and edg1 >= 0 then
- a, b, c = a, b, c
- elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
- a, b, c = b, c, a
- elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
- a, b, c = c, a, b
- else
- assert(false, "unreachable")
- end
- local len1 = (c-a):Dot((b-a).unit)
- local len2 = (b-a).magnitude - len1
- local width = (a + (b-a).unit*len1 - c).magnitude
- local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
- local list = {}
- if len1 > 0.01 then
- local w1 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w1,5)
- w1.Material = "SmoothPlastic"
- w1.FormFactor = 'Custom'
- w1.BrickColor = BrickColor.new("Really black")
- w1.Transparency = 0
- w1.Reflectance = 0
- w1.Material = "SmoothPlastic"
- w1.CanCollide = false
- NoOutline(w1)
- local sz = Vector3.new(0.2, width, len1)
- w1.Size = sz
- local sp = Instance.new("SpecialMesh",w1)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
- w1:BreakJoints()
- w1.Anchored = true
- w1.Parent = workspace
- w1.Transparency = 0.7
- table.insert(Effects,{w1,"Disappear",.01})
- w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
- table.insert(list,w1)
- end
- if len2 > 0.01 then
- local w2 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w2,5)
- w2.Material = "SmoothPlastic"
- w2.FormFactor = 'Custom'
- w2.BrickColor = BrickColor.new("Really black")
- w2.Transparency = 0
- w2.Reflectance = 0
- w2.Material = "SmoothPlastic"
- w2.CanCollide = false
- NoOutline(w2)
- local sz = Vector3.new(0.2, width, len2)
- w2.Size = sz
- local sp = Instance.new("SpecialMesh",w2)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
- w2:BreakJoints()
- w2.Anchored = true
- w2.Parent = workspace
- w2.Transparency = 0.7
- table.insert(Effects,{w2,"Disappear",.01})
- w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
- table.insert(list,w2)
- end
- return unpack(list)
- end
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- if #Effects>0 then
- --table.insert(Effects,{prt,"Block1",delay})
- for e=1,#Effects do
- if Effects[e]~=nil then
- --for j=1,#Effects[e] do
- local Thing=Effects[e]
- if Thing~=nil then
- local Part=Thing[1]
- local Mode=Thing[2]
- local Delay=Thing[3]
- local IncX=Thing[4]
- local IncY=Thing[5]
- local IncZ=Thing[6]
- if Thing[1].Transparency<=1 then
- if Thing[2]=="Block1" then
- Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Mesh=Thing[1].Mesh
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Cylinder" then
- Mesh=Thing[1].Mesh
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Blood" then
- Mesh=Thing[1].Mesh
- Thing[1].CFrame=Thing[1].CFrame*cf(0,.5,0)
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Elec" then
- Mesh=Thing[1].Mesh
- Mesh.Scale=Mesh.Scale+vt(Thing[7],Thing[8],Thing[9])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Disappear" then
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- end
- else
- Part.Parent=nil
- table.remove(Effects,e)
- end
- end
- --end
- end
- end
- end
- idleanim=.4
- while true do
- swait()
- local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
- local velderp=RootPart.Velocity.y
- hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
- if equipped==true or equipped==false then
- if attack==false then
- idle=idle+1
- else
- idle=0
- end
- if idle>=500 then
- if attack==false then
- --Sheath()
- end
- end
- if Anim~='Fly' then
- pcall(function()
- RightLeg.Transparency=0
- LeftLeg.Transparency=0
- m.fakerleg:destroy()
- m.fakelleg:destroy()
- end)
- end
- if RootPart.Velocity.y > 1 and hitfloor==nil then
- Anim="Jump"
- if attack==false then
- Neck.C0=clerp(Neck.C0,necko*euler(-0.2,0,0),.3)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.5,0,0.5),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.5,0,-0.5),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,-.3)*euler(-0.5,1.57,0)*euler(-.2,0,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,-.3)*euler(-0.5,-1.57,0)*euler(-.2,0,0),.2)
- end
- elseif RootPart.Velocity.y < -1 and hitfloor==nil then
- Anim="Fall"
- if attack==false then
- Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.3)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0.3,0,0.2),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0.3,0,-0.2),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.4,1.57,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(-0.2,-1.57,0),.2)
- end
- elseif torvel<1 and hitfloor~=nil then
- Anim="Idle"
- if attack==false then
- --[[Neck.C0=clerp(Neck.C0,necko*angles(math.rad(-10),0,0),.3)
- Neck.C1=clerp(Neck.C1,necko2*angles(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*angles(math.rad(15),0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(0,0,0.1),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*angles(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(90),0,math.rad(45)),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*angles(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.5,-.5)*angles(math.rad(15),math.rad(90),0),.3)
- RH.C1=clerp(RH.C1,RHC1,.3)
- LH.C0=clerp(LH.C0,cf(1,-.5,0)*angles(math.rad(15),math.rad(-90),0),.3)
- LH.C1=clerp(LH.C1,LHC1,.3)]]
- idleanim=.4
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-0.5-idleanim)*euler(0.4+(idleanim/2),0,-0.4),.3)
- --RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(-idleanim/2,0,0.4),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(-25),math.rad(-35),math.rad(45)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(90),math.rad(0),math.rad(45)),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,-idleanim)*euler(-0.2-(idleanim/2),1.57,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.5+idleanim,0)*euler(0.5+(idleanim/2),-1.2,0)*euler(-.2,0,0),.3)
- end
- elseif torvel>2 and torvel<22 and hitfloor~=nil then
- Anim="Walk"
- if attack==false then
- idleanim=-1
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*euler(0.4,0,0),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(-0.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(-35),math.rad(45)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(0),math.rad(35),math.rad(-45)),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.2,1.57,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0.5,-1.57,0)*euler(0,0,0),.3)
- end
- elseif torvel>=22 and hitfloor~=nil then
- Anim="Run"
- if attack==false then
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-0.5)*euler(0.4,0,0),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*euler(-0.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(-35),math.rad(-35),math.rad(45)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-35),math.rad(35),math.rad(-45)),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.2,1.57,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0.5,-1.57,0)*euler(0,0,0),.3)
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement