Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Player = game:GetService("Players").LocalPlayer
- Char = Player.Character
- Head = Char.Head
- PlayerGui=Player.PlayerGui
- Torso = Char.Torso
- Mouse=nil
- mana=400
- cf=CFrame.new
- vt=Vector3.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- equipped=false
- h = Char.Humanoid
- LeftArm = Char["Left Arm"]
- LeftLeg = Char["Left Leg"]
- RightArm = Char["Right Arm"]
- RightLeg = Char["Right Leg"]
- necko=CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- local RbxUtility = LoadLibrary("RbxUtility")
- local Create = RbxUtility.Create
- local gairo = Instance.new("BodyGyro")
- gairo.Parent = nil
- RootPart=Char.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- RW = Create("Weld"){
- Name = "Right Shoulder",
- Part0 = Torso ,
- C0 = cf(1.5, 0.5, 0),
- C1 = cf(0, 0.5, 0),
- Part1 = RightArm ,
- Parent = Torso ,
- }
- LW = Create("Weld"){
- Name = "Left Shoulder",
- Part0 = Torso ,
- C0 = cf(-1.5, 0.5, 0),
- C1 = cf(0, 0.5, 0) ,
- Part1 = LeftArm ,
- Parent = Torso ,
- }
- if Char:findFirstChild("Weapon",true) ~= nil then
- Char:findFirstChild("Weapon",true).Parent = nil
- end
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "Heartbeat"
- script:WaitForChild("Heartbeat")
- frame = 1 / 30
- tf = 0
- allowframeloss = true
- tossremainder = false
- lastframe = tick()
- script.Heartbeat:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if frame <= tf then
- if allowframeloss then
- script.Heartbeat:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.Heartbeat:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end
- )
- local function swait(num)
- if num == 0 or num == nil then
- ArtificialHB.Event:wait()
- else
- for i = 0, num do
- ArtificialHB.Event:wait()
- end
- end
- end
- bets = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"," "}
- col = {"Really black","Really black","Really black"}
- Anims = {}
- act = {key = {}}
- for i=1,#bets do table.insert(act.key,bets) end
- act.mousedown = false
- act.keydown = false
- act.Walking = false
- act.Jumping = false
- act.Anim = ""
- LS = Torso["Left Shoulder"]
- LH = Torso["Left Hip"]
- RS = Torso["Right Shoulder"]
- RH = Torso["Right Hip"]
- Neck = Torso.Neck
- hitted=false
- roflcopter=false
- bodypos=Instance.new("BodyPosition")
- holdshoot=false
- Prop = {}
- difficulty=0.05
- Prop.LegLength = 5
- Prop.LegWide = .1
- Prop.BallSize = .1
- --[[difficulty=0.1
- Prop.LegLength = 4
- Prop.LegWide = 0.8
- Prop.BallSize = 1
- difficulty=0.01
- Prop.LegLength = 50
- Prop.LegWide = 10
- Prop.BallSize = 10.3
- Prop.LegLength = 150
- Prop.LegWide = 60
- Prop.BallSize = 60.3]]
- Spider = {w = {}}
- attack = false
- attackdebounce = false
- it = Instance.new
- bc = BrickColor.new
- v3 = Vector3.new
- cf = CFrame.new
- ca = CFrame.Angles
- pi = math.pi
- rd = math.rad
- br = BrickColor.new
- if PlayerGui:findFirstChild("manaGUI",true) ~= nil then
- PlayerGui:findFirstChild("manaGUI",true).Parent = nil
- end
- local fengui = Instance.new("GuiMain")
- fengui.Parent = PlayerGui
- fengui.Name = "manaGUI"
- local fenframe = Instance.new("Frame")
- fenframe.Parent = fengui
- fenframe.BackgroundColor3 = Color3.new(255,255,255)
- fenframe.BackgroundTransparency = 1
- fenframe.BorderColor3 = Color3.new(17,17,17)
- fenframe.Size = UDim2.new(0.0500000007, 0, 0.100000001, 0)
- local fentext = Instance.new("TextLabel")
- fentext.Parent = fenframe
- fentext.Text = "Energy("..mana..")"
- fentext.BackgroundTransparency = 1
- fentext.SizeConstraint = "RelativeXY"
- fentext.TextXAlignment = "Center"
- fentext.TextYAlignment = "Center"
- fentext.Position = UDim2.new(0,80,1,200)
- local fentext2 = Instance.new("TextLabel")
- fentext2.Parent = fenframe
- fentext2.Text = " "
- fentext2.BackgroundTransparency = 0
- fentext2.BackgroundColor3 = Color3.new(0,0,0)
- fentext2.SizeConstraint = "RelativeXY"
- fentext2.TextXAlignment = "Center"
- fentext2.TextYAlignment = "Center"
- fentext2.Position = UDim2.new(0,10,1,170)
- fentext2.Size = UDim2.new(2.79999995,0,0.210000306,0)
- local fentext3 = Instance.new("TextLabel")
- fentext3.Parent = fenframe
- fentext3.Text = " "
- fentext3.BackgroundTransparency = 0
- fentext3.BackgroundColor3 = Color3.new(1,1,0)
- fentext3.SizeConstraint = "RelativeXY"
- fentext3.TextXAlignment = "Center"
- fentext3.TextYAlignment = "Center"
- fentext3.Position = UDim2.new(0,10,1,170)
- fentext3.Size = UDim2.new(mana/100,0,0.400000006,0)
- coroutine.resume(coroutine.create(function()
- while true do
- wait(.1)
- fentext3.Size = UDim2.new(mana*0.007,0,0.200000006,0)
- fentext.Text = "Energy..("..mana.."%)"
- fentext3.BackgroundColor3 = Color3.new(1,1,0)
- fentext.TextStrokeTransparency=0
- fentext.TextColor3=Color3.new(1,1,0)
- end
- end))
- coroutine.resume(coroutine.create(function()
- while true do
- wait(0.1)
- if mana <= -1 then
- mana=0
- attack=false
- end
- if mana <= 0 and attack == false then
- attack = true
- while mana <= 50 do
- wait(0.1)
- mana = mana + 5
- end
- attack = false
- end
- if mana < 400 and attack == false then
- mana = mana + 2
- end
- end
- end))
- function nooutline(part)
- part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
- end
- function part(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
- local fp = Create("Part"){
- formFactor = formfactor,
- Parent = parent,
- Reflectance = reflectance,
- Transparency = transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(brickcolor)),
- Name = name,
- Size = size,
- Position = Char.Torso.Position,
- Material = material,
- }
- nooutline(fp)
- return fp
- end
- function mesh(Mesh, part, meshtype, meshid, offset, scale)
- local Msh = Create(Mesh){
- Parent = part,
- Offset = offset,
- Scale = scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = meshtype
- Msh.MeshId = meshid
- end
- return Msh
- end
- function weld(parent, part0, part1, c0, c1)
- local Weld = Create("Weld"){
- Parent = parent,
- Part0 = part0,
- Part1 = part1,
- C0 = c0,
- C1 = c1,
- }
- return Weld
- end
- function so(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 = Sounds[id].Id
- swait()
- sou:play()
- swait(6)
- sou:Remove()
- 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 r(pa,ob)
- pcall(function() pa[ob]:Remove() end)
- end
- function p(pa,sh,x,y,z,c,a,tr,re,bc)
- local fp = it("Part",pa)
- fp.formFactor = "Custom"
- fp.Shape = sh
- fp.Size = v3(x,y,z)
- fp.CanCollide = c
- fp.Anchored = false
- fp.BrickColor = br(bc)
- fp.Transparency = tr
- fp.Reflectance = re
- fp.BottomSurface = 0
- fp.TopSurface = 0
- fp.CFrame = Torso.CFrame + Vector3.new(0,50,0)
- fp.Velocity = Vector3.new(0,10,0)
- fp:BreakJoints()
- return fp
- end
- function weld(pa,p0,p1,x,y,z,a,b,c)
- local fw = it("Weld",pa)
- fw.Part0 = p0 fw.Part1 = p1
- fw.C0 = cf(x,y,z) *ca(a,b,c)
- return fw
- end
- function spm(ty,pa,ss)
- local sp = it("SpecialMesh",pa)
- sp.MeshType = ty
- sp.Scale = Vector3.new(ss,ss,ss)
- end
- pcall(function() Torso.Spider:Remove() end)
- wait(0.1)
- pack = it("Model",Torso)
- pack.Name = "Spider"
- Spider.Back = p(pack,"Block",1.2,1.7,0.5,false,false,0,0,col[1])
- --Right Arm
- Spider.RAb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[2]) spm("Sphere",Spider.RAb1,Prop.BallSize)
- Spider.w.RAb1 = weld(Spider.RAb1,Spider.Back,Spider.RAb1,0.5,0.6,0.35,0,0,0) Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.RAa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.RAa1 = weld(Spider.RAa1,Spider.RAb1,Spider.RAa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.RAb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[2]) spm("Sphere",Spider.RAb2,Prop.BallSize)
- Spider.w.RAb2 = weld(Spider.RAb2,Spider.RAa1,Spider.RAb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.RAa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.RAa2 = weld(Spider.RAa2,Spider.RAb2,Spider.RAa2,0,Prop.LegLength/2,0,0,0,0)
- --Left Arm
- Spider.LAb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[2]) spm("Sphere",Spider.LAb1,Prop.BallSize)
- Spider.w.LAb1 = weld(Spider.LAb1,Spider.Back,Spider.LAb1,-0.5,0.6,0.35,0,0,0) Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.LAa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LAa1 = weld(Spider.LAa1,Spider.LAb1,Spider.LAa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.LAb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[2]) spm("Sphere",Spider.LAb2,Prop.BallSize)
- Spider.w.LAb2 = weld(Spider.LAb2,Spider.LAa1,Spider.LAb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- Spider.LAa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LAa2 = weld(Spider.LAa2,Spider.LAb2,Spider.LAa2,0,Prop.LegLength/2,0,0,0,0)
- --Upper Right
- Spider.URb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.URb1,Prop.BallSize)
- Spider.w.URb1 = weld(Spider.URb1,Spider.Back,Spider.URb1,0.5,-0.6,0.35,0,0,0) Spider.w.URb1.C1 = CFrame.Angles(math.rad(80),math.rad(40),0)
- Spider.URa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.URa1 = weld(Spider.URa1,Spider.URb1,Spider.URa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.URb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.URb2,Prop.BallSize)
- Spider.w.URb2 = weld(Spider.URb2,Spider.URa1,Spider.URb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.URb2.C1 = CFrame.Angles(math.rad(100),math.rad(0),0)
- Spider.URa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.URa2 = weld(Spider.URa2,Spider.URb2,Spider.URa2,0,Prop.LegLength/2,0,0,0,0)
- --Upper Left
- Spider.ULb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.ULb1,Prop.BallSize)
- Spider.w.ULb1 = weld(Spider.ULb1,Spider.Back,Spider.ULb1,-0.5,-0.6,0.35,0,0,0) Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40),0)
- Spider.ULa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.ULa1 = weld(Spider.ULa1,Spider.ULb1,Spider.ULa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.ULb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.ULb2,Prop.BallSize)
- Spider.w.ULb2 = weld(Spider.ULb2,Spider.ULa1,Spider.ULb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100),math.rad(0),0)
- Spider.ULa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.ULa2 = weld(Spider.ULa2,Spider.ULb2,Spider.ULa2,0,Prop.LegLength/2,0,0,0,0)
- --Lower Right
- Spider.LRb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.LRb1,Prop.BallSize)
- Spider.w.LRb1 = weld(Spider.LRb1,Spider.Back,Spider.LRb1,0.5,-0.6,0.35,0,0,0) Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80),math.rad(-40),0)
- Spider.LRa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LRa1 = weld(Spider.LRa1,Spider.LRb1,Spider.LRa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.LRb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.LRb2,Prop.BallSize)
- Spider.w.LRb2 = weld(Spider.LRb2,Spider.LRa1,Spider.LRb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100),math.rad(0),0)
- Spider.LRa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LRa2 = weld(Spider.LRa2,Spider.LRb2,Spider.LRa2,0,Prop.LegLength/2,0,0,0,0)
- --Lower Left
- Spider.LLb1 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.LLb1,Prop.BallSize)
- Spider.w.LLb1 = weld(Spider.LLb1,Spider.Back,Spider.LLb1,-0.5,-0.6,0.35,0,0,0) Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80),math.rad(40),0)
- Spider.LLa1 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LLa1 = weld(Spider.LLa1,Spider.LLb1,Spider.LLa1,0,Prop.LegLength/2,0,0,0,0)
- Spider.LLb2 = p(pack,"Ball",1,1,1,false,false,0,0,col[3]) spm("Sphere",Spider.LLb2,Prop.BallSize)
- Spider.w.LLb2 = weld(Spider.LLb2,Spider.LLa1,Spider.LLb2,0,(Prop.LegLength/2),0,0,0,0) Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100),math.rad(0),0)
- Spider.LLa2 = p(pack,"Block",Prop.LegWide,Prop.LegLength,Prop.LegWide,true,false,0,0,col[1])
- Spider.w.LLa2 = weld(Spider.LLa2,Spider.LLb2,Spider.LLa2,0,Prop.LegLength/2,0,0,0,0)
- local prt1 = Instance.new("Part")
- prt1.formFactor = 1
- prt1.Parent = pack
- prt1.CanCollide = false
- prt1.BrickColor = br(col[1])
- prt1.Name = "Part1"
- prt1.Size = Vector3.new(1,1,1)
- prt1.Position = Torso.Position
- local prt2 = Instance.new("Part")
- prt2.formFactor = 1
- prt2.Parent = pack
- prt2.CanCollide = false
- prt2.BrickColor = BrickColor.new("Really red")
- prt2.Name = "Part2"
- prt2.Reflectance=0.3
- prt2.Size = Vector3.new(1,2,1)
- prt2.Position = Torso.Position
- local prt3 = Instance.new("Part")
- prt3.formFactor = 1
- prt3.Parent = pack
- prt3.CanCollide = false
- prt3.BrickColor = BrickColor.new("Medium stone grey")
- prt3.Name = "Part3"
- prt3.Reflectance=0.6
- prt3.Size = Vector3.new(1,2,1)
- prt3.Position = Torso.Position
- local prt4 = Instance.new("Part")
- prt4.formFactor = 1
- prt4.Parent = pack
- prt4.CanCollide = false
- prt4.BrickColor = BrickColor.new("Really red")
- prt4.Name = "Part4"
- prt4.Reflectance=0.3
- prt4.Size = Vector3.new(1,1,1)
- prt4.Position = Torso.Position
- local prt5 = Instance.new("Part")
- prt5.formFactor = 1
- prt5.Parent = pack
- prt5.CanCollide = false
- prt5.BrickColor = br(col[1])
- prt5.Name = "Part5"
- prt5.Size = Vector3.new(1,1,1)
- prt5.Position = Torso.Position
- local prt6 = Instance.new("Part")
- prt6.formFactor = 1
- prt6.Parent = pack
- prt6.CanCollide = false
- prt6.BrickColor = br(col[1])
- prt6.Name = "Part6"
- prt6.Size = Vector3.new(1,1,1)
- prt6.Position = Torso.Position
- local prt7 = Instance.new("Part")
- prt7.formFactor = 1
- prt7.Parent = pack
- prt7.CanCollide = false
- prt7.BrickColor = BrickColor.new("Really black")
- prt7.Name = "Part7"
- prt7.Size = Vector3.new(1,1,1)
- prt7.Position = Torso.Position
- local prt8 = Instance.new("Part")
- prt8.formFactor = 1
- prt8.Parent = pack
- prt8.CanCollide = false
- prt8.BrickColor = br(col[1])
- prt8.Name = "Part8"
- prt8.Size = Vector3.new(1,1,1)
- prt8.Position = Torso.Position
- local prt9 = Instance.new("Part")
- prt9.formFactor = 1
- prt9.Parent = pack
- prt9.CanCollide = false
- prt9.BrickColor = br(col[1])
- prt9.Name = "Part9"
- prt9.Size = Vector3.new(1,1,1)
- prt9.Position = Torso.Position
- local prt10 = Instance.new("Part")
- prt10.formFactor = 1
- prt10.Parent = pack
- prt10.CanCollide = false
- prt10.BrickColor = br(col[1])
- prt10.Name = "Part10"
- prt10.Size = Vector3.new(1,1,1)
- prt10.Position = Torso.Position
- local prt11 = Instance.new("Part")
- prt11.formFactor = 1
- prt11.Parent = pack
- prt11.CanCollide = false
- prt11.BrickColor = br(col[1])
- prt11.Name = "Part11"
- prt11.Size = Vector3.new(1,1,1)
- prt11.Position = Torso.Position
- local prt12 = Instance.new("Part")
- prt12.formFactor = 1
- prt12.Parent = pack
- prt12.CanCollide = false
- prt12.BrickColor = br(col[1])
- prt12.Name = "Part12"
- prt12.Size = Vector3.new(1,1,1)
- prt12.Position = Torso.Position
- local msh1 = Instance.new("BlockMesh")
- msh1.Parent = prt1
- --msh1.Scale = Vector3.new(0.9,0.8,3)
- msh1.Scale = Vector3.new(Prop.LegWide/0.9,Prop.LegWide/1,Prop.LegLength/1.3)
- local msh2 = Instance.new("BlockMesh")
- msh2.Parent = prt2
- --msh2.Scale = Vector3.new(0.3,2.5,1)
- msh2.Scale = Vector3.new(Prop.LegWide/2.5,Prop.LegLength/1.6,Prop.LegWide*1.3)
- local msh3 = Instance.new("BlockMesh")
- msh3.Parent = prt3
- --msh3.Scale = Vector3.new(0.1,2.6,1.5)
- msh3.Scale = Vector3.new(Prop.LegWide/6,Prop.LegLength/1.6,Prop.LegWide*1.9)
- local msh4 = Instance.new("SpecialMesh")
- msh4.Parent = prt4
- msh4.MeshType = "Wedge"
- --msh4.Scale = Vector3.new(0.3,2,1)
- msh4.Scale = Vector3.new(Prop.LegWide/2.5,Prop.LegLength/2,Prop.LegWide*1.3)
- local msh5 = Instance.new("CylinderMesh")
- msh5.Parent = prt5
- --msh5.Scale = Vector3.new(1.5,1,1.5)
- msh5.Scale = Vector3.new(Prop.LegWide*2,Prop.LegLength/4,Prop.LegWide*2)
- local msh6 = Instance.new("CylinderMesh")
- msh6.Parent = prt6
- --msh6.Scale = Vector3.new(2.5,1.6,2.5)
- msh6.Scale = Vector3.new(Prop.LegWide*3.1,Prop.LegLength/2.5,Prop.LegWide*3.1)
- local msh7 = Instance.new("CylinderMesh")
- msh7.Parent = prt7
- --msh7.Scale = Vector3.new(1.4,1.7,1.4)
- msh7.Scale = Vector3.new(Prop.LegWide*1.8,Prop.LegLength/2.3,Prop.LegWide*1.8)
- local msh8 = Instance.new("BlockMesh")
- msh8.Parent = prt8
- --msh8.Scale = Vector3.new(0.5,2,0.5)
- msh8.Scale = Vector3.new(Prop.LegWide/1.6,Prop.LegLength/2,Prop.LegWide/1.6)
- local msh9 = Instance.new("BlockMesh")
- msh9.Parent = prt9
- --msh9.Scale = Vector3.new(0.5,2,0.5)
- msh9.Scale = Vector3.new(Prop.LegWide/1.6,Prop.LegLength/2,Prop.LegWide/1.6)
- local msh10 = Instance.new("BlockMesh")
- msh10.Parent = prt10
- --msh10.Scale = Vector3.new(0.5,2,0.5)
- msh10.Scale = Vector3.new(Prop.LegWide/1.6,Prop.LegLength/2,Prop.LegWide/1.6)
- local msh11 = Instance.new("BlockMesh")
- msh11.Parent = prt11
- --msh11.Scale = Vector3.new(0.5,2,0.5)
- msh11.Scale = Vector3.new(Prop.LegWide/1.6,Prop.LegLength/2,Prop.LegWide/1.6)
- local msh12 = Instance.new("BlockMesh")
- msh12.Parent = prt12
- --msh12.Scale = Vector3.new(0.5,2,0.5)
- msh12.Scale = Vector3.new(0,0,0)
- local wld1 = Instance.new("Weld")
- wld1.Parent = prt1
- wld1.Part0 = prt1
- wld1.Part1 = Spider.RAa2
- --wld1.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-0.5,0)
- wld1.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/6,0)
- local wld2 = Instance.new("Weld")
- wld2.Parent = prt2
- wld2.Part0 = prt2
- wld2.Part1 = prt1
- --wld2.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-3,0)
- wld2.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/1.3,0)
- local wld3 = Instance.new("Weld")
- wld3.Parent = prt3
- wld3.Part0 = prt3
- wld3.Part1 = prt1
- --wld3.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-3,0)
- wld3.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/1.3,0)
- local wld4 = Instance.new("Weld")
- wld4.Parent = prt4
- wld4.Part0 = prt4
- wld4.Part1 = prt2
- wld4.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-4.2,0)
- wld4.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/1.1,0)
- local wld5 = Instance.new("Weld")
- wld5.Parent = prt5
- wld5.Part0 = prt5
- wld5.Part1 = Spider.LAa2
- --wld5.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-2.5,0)
- wld5.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/1.6,0)
- local wld6 = Instance.new("Weld")
- wld6.Parent = prt6
- wld6.Part0 = prt6
- wld6.Part1 = prt5
- --wld6.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-1.5,0)
- wld6.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,-Prop.LegLength/2.6,0)
- local wld7 = Instance.new("Weld")
- wld7.Parent = prt7
- wld7.Part0 = prt7
- wld7.Part1 = prt6
- wld7.C0 = CFrame.fromEulerAnglesXYZ(0,0,0) * CFrame.new(0,0,0)
- local wld8 = Instance.new("Weld")
- wld8.Parent = prt8
- wld8.Part0 = prt8
- wld8.Part1 = prt6
- --wld8.C0 = CFrame.fromEulerAnglesXYZ(0,0,-0.5) * CFrame.new(1.5,-1,0)
- wld8.C0 = CFrame.fromEulerAnglesXYZ(0,0,-0.5) * CFrame.new(Prop.LegWide*2,-Prop.LegLength/4,0)
- local wld9 = Instance.new("Weld")
- wld9.Parent = prt9
- wld9.Part0 = prt9
- wld9.Part1 = prt6
- --wld9.C0 = CFrame.fromEulerAnglesXYZ(0,0,0.5) * CFrame.new(-1.5,-1,0)
- wld9.C0 = CFrame.fromEulerAnglesXYZ(0,0,0.5) * CFrame.new(-Prop.LegWide*2,-Prop.LegLength/4,0)
- local wld10 = Instance.new("Weld")
- wld10.Parent = prt10
- wld10.Part0 = prt10
- wld10.Part1 = prt6
- --wld10.C0 = CFrame.fromEulerAnglesXYZ(-0.5,0,0) * CFrame.new(0,-1,-1.5)
- wld10.C0 = CFrame.fromEulerAnglesXYZ(-0.5,0,0) * CFrame.new(0,-Prop.LegLength/4,-Prop.LegWide*2)
- local wld11 = Instance.new("Weld")
- wld11.Parent = prt11
- wld11.Part0 = prt11
- wld11.Part1 = prt6
- --wld11.C0 = CFrame.fromEulerAnglesXYZ(0.5,0,0) * CFrame.new(0,-1,1.5)
- wld11.C0 = CFrame.fromEulerAnglesXYZ(0.5,0,0) * CFrame.new(0,-Prop.LegLength/4,Prop.LegWide*2)
- local wld12 = Instance.new("Weld")
- wld12.Parent = prt12
- wld12.Part0 = prt12
- wld12.Part1 = prt6
- --wld12.C0 = CFrame.fromEulerAnglesXYZ(1.57,0,0) * CFrame.new(0,0,0)
- wld12.C0 = CFrame.fromEulerAnglesXYZ(-1.57,0,0) * CFrame.new(0,0,0)
- swait()
- Spider.w.Back = weld(Spider.Back,Torso,Spider.Back,0,0,0.5,0,0,0)
- swait()
- Torso.CFrame = Torso.CFrame + Vector3.new(0,10,0)
- function Anim()
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-(120*i)),math.rad(70-(70*i)),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+(10*i)),math.rad(40+(50*i)),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-(120*i)),math.rad(-70+(70*i)),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+(10*i)),math.rad(-40-(50*i)),0)
- end
- bodypos=Instance.new("BodyPosition")
- bodypos.P=500
- bodypos.D=100
- bodypos.maxForce=Vector3.new(0,math.huge,0)
- bodypos.position=Head.Position+Vector3.new(0,50,0)
- bodypos.Parent=Head
- while roflcopter==true do
- for i = 0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-(120)),math.rad(70-(70)),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+(10)),math.rad(90+(360*i)),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-(120)),math.rad(-70+(70)),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+(10)),math.rad(-90+(360*i)),0)
- end
- end
- bodypos.Parent=nil
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-(120-120*i)),math.rad(70-(70-70*i)),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+(10-10*i)),math.rad(90-(50*i)),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-(120-120*i)),math.rad(-70+(70-70*i)),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+(10-10*i)),math.rad(-90+(50*i)),0)
- end
- attack=false
- end
- function RoflCopter()
- act.Jumping=true
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+80*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-80*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+80*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-80*i),math.rad(0),0)
- end
- bodypos.P=500
- bodypos.D=100
- bodypos.maxForce=Vector3.new(0,math.huge,0)
- bodypos.position=Head.Position+Vector3.new(0,10,0)
- bodypos.Parent=Head
- while roflcopter==true do
- derpcon1=Spider.LRa2.Touched:connect(function(hit) Damagefunc1(hit,5,5) end)
- derpcon2=Spider.LLa2.Touched:connect(function(hit) Damagefunc1(hit,5,5) end)
- derpcon3=Spider.URa2.Touched:connect(function(hit) Damagefunc1(hit,5,5) end)
- derpcon4=Spider.ULa2.Touched:connect(function(hit) Damagefunc1(hit,5,5) end)
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80),math.rad(-40+360*i),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+80),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40+360*i),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-80),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80),math.rad(40+360*i),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+80),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80),math.rad(40+360*i),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-80),math.rad(0),0)
- end
- derpcon1:disconnect()
- derpcon2:disconnect()
- derpcon3:disconnect()
- derpcon4:disconnect()
- end
- bodypos.Parent=nil
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+80-80*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-80+80*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+80-80*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-80+80*i),math.rad(0),0)
- end
- act.Jumping=false
- end
- function Shoot()
- if mana>=10 then mana=mana-10 else return end
- attack=true
- for i=0,1,0.1 do
- swait()
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-90)),.3)
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50*i),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+20*i),math.rad(-40+40*i),0)
- end
- for i=0,1,0.1 do
- swait()
- Torso.Neck.C0=necko*CFrame.fromEulerAnglesXYZ(0,0,1.57*i)
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50+20*i),math.rad(-70-20*i),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+20+80*i),math.rad(-40+40),0)
- end
- wait(0.1)
- for i = 1,3 do
- DerpMagic(prt7,Prop.LegWide*4,Prop.LegWide*4,Prop.LegWide*4,0,1,0,BrickColor.new("Black"))
- shoottrail2(prt7)
- wait(0.5)
- end
- for i=0,1,0.1 do
- swait()
- Torso.Neck.C0=necko*CFrame.fromEulerAnglesXYZ(0,0,1.57-1.57*i)
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50+20+30*i),math.rad(-70-20+20*i),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+20+80-100*i),math.rad(-40+40-40*i),0)
- end
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),1)
- gairo.Parent=nil
- Torso.Neck.C0=necko
- attack=false
- end
- function Shoot2()
- if mana>=40 then mana=mana-40 else return end
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-60*i),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+15*i),math.rad(-40-60*i),0)
- end
- for i=0,0.3,0.1 do
- wait(0.1)
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-60),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+15+40*i),math.rad(-40-60),0)
- DerpMagic(prt7,Prop.LegWide*4,Prop.LegWide*4,Prop.LegWide*4,0,1,0,BrickColor.new("Black"))
- shoottrail2(prt7)
- end
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-60+60*i),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+15+20-55*i),math.rad(-40-60+60*i),0)
- end
- attack=false
- end
- function Shoot3()
- if mana>80 then mana=mana-80 else return end
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50*i),math.rad(-70+70*i),math.rad(90*i))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+60*i),math.rad(-40+40*i),math.rad(3*i))
- end
- for i=0,2,0.5 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50+60*i),math.rad(-70+70),math.rad(90))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+60+40*i),math.rad(-40+40),math.rad(3))
- DerpMagic(prt7,Prop.LegWide*4,Prop.LegWide*4,Prop.LegWide*4,0,1,0,BrickColor.new("Black"))
- shoottrail2(prt7)
- end
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120-50+60-10*i),math.rad(-70+70-70*i),math.rad(90-90*i))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+60+40-100*i),math.rad(-40+40-40*i),math.rad(3-3*i))
- end
- attack=false
- end
- function Shoot4()
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120+60*i),math.rad(-70+70*i),math.rad(0))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+50*i),math.rad(-40+40*i),math.rad(0))
- end
- for i=0,1,0.1 do
- swait()
- DerpMagic(prt7,Prop.LegWide*4,Prop.LegWide*4,Prop.LegWide*4,0,1,0,BrickColor.new("Black"))
- shoottrail2(prt7)
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120+60),math.rad(-70+70),math.rad(0))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+50+50*i),math.rad(-40+40),math.rad(0))
- end
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120),math.rad(70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120+60-60*i),math.rad(-70+70-70*i),math.rad(0))
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100+50+50-100*i),math.rad(-40+40-40*i),math.rad(0))
- end
- attack=false
- end
- function Attack()
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-80*i),math.rad(70-70*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40-40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- ss(1)
- con1=prt2.Touched:connect(function(hit) Damagefunc(prt2, hit, 10,35, math.random(10,15), "Normal", RootPart, .1, "Hit1", 1) end)
- con2=Spider.RAa2.Touched:connect(function(hit) Damagefunc(Spider.RAa2, hit, 10,35, math.random(10,15), "Normal", RootPart, .1, "Hit1", 1) end)
- for i=0,1,0.2 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-80+90*i),math.rad(70-70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+70*i),math.rad(40-40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- wait(0.1)
- con1:disconnect()
- con2:disconnect()
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120+10-10*i),math.rad(70-70+70*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+70-70*i),math.rad(40-40+40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- attack=false
- end
- function MegaBonk()
- if mana>=10 then mana=mana-10 else return end
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-80*i),math.rad(70-70*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40-40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- wait(0.1)
- for i=0,1,0.02 do
- swait()
- MMMAGIC(prt4,Prop.BallSize*2,Prop.BallSize*2,Prop.BallSize*2,0,Prop.LegLength/2,0,BrickColor.new("Really black"))
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-80-30*i),math.rad(70-70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100-30*i),math.rad(40-40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- ss(1.3)
- con1=prt2.Touched:connect(function(hit) Damagefunc(prt2, hit, 10,75, math.random(10,15), "Knockback", RootPart, .1, "Hit1", 1) end)
- con2=Spider.RAa2.Touched:connect(function(hit) Damagefunc(Spider.RAa2, hit, 10,75, math.random(10,15), "Knockback", RootPart, .1, "Hit1", 1) end)
- for i=0,1,0.2 do
- swait()
- MMMAGIC(prt4,Prop.BallSize*2,Prop.BallSize*2,Prop.BallSize*2,0,Prop.LegLength/2,0,BrickColor.new("Really black"))
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-80-30+110*i),math.rad(70-70),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100-30+120*i),math.rad(40-40),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- MMMAGIC(prt4,Prop.BallSize*4,Prop.BallSize*4,Prop.BallSize*4,0,Prop.LegLength/2,0,BrickColor.new("Really black"))
- wait(0.5)
- con1:disconnect()
- con2:disconnect()
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-110+110),math.rad(70-70+70*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100-30+120-100*i),math.rad(40-40+40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- attack=false
- end
- function DualAttack()
- attack=true
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-30*i),math.rad(70-90*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(40+40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- ss(1)
- con1=prt2.Touched:connect(function(hit) Damagefunc(prt2, hit, 10,35, math.random(10,15), "Normal", RootPart, .1, "Hit1", 1) end)
- con2=Spider.RAa2.Touched:connect(function(hit) Damagefunc(Spider.RAa2, hit, 10,35, math.random(10,15), "Normal", RootPart, .1, "Hit1", 1) end)
- for i=0,1,0.2 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-20),math.rad(70-90+100*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-80+20*i),math.rad(50+50),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- con1:disconnect()
- con2:disconnect()
- for i=0,1,0.1 do
- swait()
- Spider.w.RAb1.C1 = CFrame.Angles(math.rad(120-30+30*i),math.rad(70-90+100-10*i),0)
- Spider.w.RAb2.C1 = CFrame.Angles(math.rad(-100+50-50*i),math.rad(40+40-40*i),0)
- Spider.w.LAb1.C1 = CFrame.Angles(math.rad(120),math.rad(-70),0)
- Spider.w.LAb2.C1 = CFrame.Angles(math.rad(-100),math.rad(-40),0)
- end
- attack=false
- end
- function Stomp()
- if mana>=10 then mana=mana-10 else return end
- attack=true
- local vel2 = Instance.new("BodyVelocity")
- vel2.Parent = Player.Character.Torso
- vel2.maxForce = Vector3.new(4e+005,4e+005,4e+005)*1
- vel2.velocity = Vector3.new(0,1,0) * 20
- wait(0.05)
- vel2.Parent=nil
- act.Jumping=true
- Char.Humanoid.WalkSpeed=0
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80-50*i),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+50*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80-50*i),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+50*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100),math.rad(0),0)
- end
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80-50),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+50),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50*i),math.rad(-40+40*i),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-30*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80-50),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+50),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50*i),math.rad(40-40*i),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-30*i),math.rad(0),0)
- end
- ss(0.9)
- con1=Spider.URa1.Touched:connect(function(hit) DBHit(hit,50,Prop.LegLength*2) end)
- con2=Spider.URa2.Touched:connect(function(hit) DBHit(hit,50,Prop.LegLength*2) end)
- for i=0,1,0.2 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80-50+50*i),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+50-50*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50+50*i),math.rad(-40+40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-30+30*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80-50+50*i),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+50-50*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50+50*i),math.rad(40-40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-30+30*i),math.rad(0),0)
- end
- wait(0.1)
- con1:disconnect()
- con2:disconnect()
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80-50+50),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100+50-50),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50+50),math.rad(-40+40-40*i),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100-30+30),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80-50+50),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100+50-50),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50+50),math.rad(40-40+40*i),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100-30+30),math.rad(0),0)
- end
- Char.Humanoid.WalkSpeed=16
- act.Jumping=false
- attack=false
- end
- function Jump()
- if mana>=20 then mana=mana-20 else return end
- attack=true
- act.Jumping=true
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80+50*i),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100-50*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50*i),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100+50*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80+50*i),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100-50*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50*i),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100+50*i),math.rad(0),0)
- end
- for i=0,1,0.2 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80+50-100*i),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100-50+100*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50+100*i),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100+50-100*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80+50-100*i),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100-50+100*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50+100*i),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100+50-100*i),math.rad(0),0)
- end
- local vel2 = Instance.new("BodyVelocity")
- vel2.Parent = Player.Character.Torso
- vel2.maxForce = Vector3.new(4e+005,4e+005,4e+005)*1
- vel2.velocity = Vector3.new(0,1,0) * 100
- wait(0.1)
- vel2.Parent=nil
- for i=0,1,0.1 do
- swait()
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80+50-100+50*i),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100-50+100-50*i),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-50+100-50*i),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100+50-100+50*i),math.rad(0),0)
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80+50-100+50*i),math.rad(40),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100-50+100-50*i),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-50+100-50*i),math.rad(40),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100+50-100+50*i),math.rad(0),0)
- end
- act.Jumping=false
- attack=false
- end
- function shoottrail2(pos1)
- coroutine.resume(coroutine.create(function()
- spread2 = 0
- range2 = Prop.LegLength*150
- rangepower = Prop.LegLength*1.5
- local spreadvector = (Vector3.new(math.random(-spread2,spread2),math.random(-spread2,spread2),math.random(-spread2,spread2)) / 100) * (pos1.Position).magnitude/100
- --local dir = Head.CFrame.lookVector+spreadvector
- local dir = prt12.CFrame.lookVector+spreadvector
- local hit2,pos = rayCast(pos1.Position,dir,10,pack)
- local rangepos = range2
- local function drawtrail(From,To)
- local effectsmsh = Instance.new("CylinderMesh")
- effectsmsh.Scale = Vector3.new(.3,1,.3)
- effectsmsh.Name = "Mesh"
- local effectsg = Instance.new("Part")
- effectsg.formFactor = 3
- effectsg.CanCollide = false
- effectsg.Name = "Eff"
- effectsg.Locked = true
- effectsg.Anchored = true
- effectsg.Size = Vector3.new(Prop.LegLength/4,Prop.LegLength/5,Prop.LegLength/4)
- effectsg.Parent = pack
- effectsmsh.Parent = effectsg
- effectsg.BrickColor = BrickColor.new("Really black")
- effectsg.Reflectance = 0.25
- local LP = From
- local point1 = To
- local mg = (LP - point1).magnitude
- effectsmsh.Scale = Vector3.new(1,mg*5,1)
- effectsg.CFrame = CFrame.new((LP+point1)/2,point1) * CFrame.Angles(math.rad(90),0,0)
- coroutine.resume(coroutine.create(function()
- for i = 0 , 1 , 0.2 do
- swait()
- effectsg.Transparency = 1*i
- effectsmsh.Scale = Vector3.new(1-1*i,mg*5,1-1*i)
- end
- effectsg.Parent = nil
- end))
- end
- local newpos = pos1.Position
- local inc = rangepower
- repeat
- swait()
- rangepos = rangepos - 10
- dir = dir
- hit2,pos = rayCast(newpos,dir,inc,pack)
- drawtrail(newpos,pos)
- newpos = newpos + (dir * inc)
- if alt==1 then
- inc = 10
- if inc >= 20 then
- inc = inc - 10
- end
- end
- if hit2 ~= nil then
- rangepos = 0
- end
- until rangepos <= 0
- if hit2 ~= nil then
- local effectsmsh = Instance.new("SpecialMesh")
- effectsmsh.MeshId = "http://www.roblox.com/asset/?id=15887356"
- --effectsmsh.Scale = Vector3.new(1,1,2.5)
- effectsmsh.Scale = Vector3.new(1,1,1)
- local effectsg = Instance.new("Part")
- effectsg.formFactor = 3
- effectsg.CanCollide = false
- effectsg.Name = "Arrow"
- effectsg.Locked = true
- effectsg.Transparency = 1
- effectsg.Size = Vector3.new(0.2,0.2,0.2)
- effectsg.Parent = pack
- effectsg.BrickColor = BrickColor.new("Really black")
- effectsmsh.Parent = effectsg
- effectsg.CFrame = CFrame.new(newpos,pos) + CFrame.new(newpos,pos).lookVector*2.5*2
- local efwel = Instance.new("Weld")
- efwel.Parent = effectsg
- efwel.Part0 = effectsg
- efwel.Part1 = hit2
- efwel.Parent = nil
- effectsg.Anchored = true
- local HitPos = effectsg.Position + CFrame.new(newpos,pos).lookVector*0.75
- --local HitPos = prt1.Position + CFrame.new(newpos,pos).lookVector*0.75
- --local HitPos = prt1.Position + (prt1.CFrame.lookVector * .5)
- local CJ = CFrame.new(HitPos)
- local C0 = effectsg.CFrame:inverse() * CJ
- local C1 = hit2.CFrame:inverse() * CJ
- --efwel.C0 = C0
- --efwel.C1 = C1
- --efwel.Parent = effectsg
- Damg = 5
- coroutine.resume(coroutine.create(function()
- msound(1)
- coroutine.resume(coroutine.create(function()
- local c = game.Workspace:GetChildren();
- for i = 1, #c do
- local hum = c:findFirstChild("Humanoid")
- if hum ~= nil and hum.Health ~= 0 then
- local head = c:findFirstChild("Head");
- if head ~= nil then
- local targ = head.Position - effectsg.Position;
- local mag = targ.magnitude;
- if mag <= Prop.LegLength*3 then
- swait()
- DBHit(head,effectsg,Prop.LegLength)
- end
- end
- end
- end
- end))
- EVENMOARMAGIX(effectsg,Prop.LegLength*3,Prop.LegLength*2,Prop.LegLength*3,0,0,0,0,0,0,BrickColor.new("Black"))
- for i = 0,5 do
- swait()
- MMMAGIC(effectsg,Prop.LegLength*3,Prop.LegLength*2,Prop.LegLength*3,0,0,0,BrickColor.new("Black"))
- end
- end))
- coroutine.resume(coroutine.create(function()
- wait(3)
- effectsg.Parent = nil
- end))
- if hit2.Parent:FindFirstChild("Humanoid") ~= nil then
- hum = hit2.Parent.Humanoid
- attackdebounce = false
- MagniDamage(effectsg,effectsg,30,20,20,10,"Up")
- elseif hit2.Parent.Parent ~= nil and hit2.Parent.Parent:FindFirstChild("Humanoid") ~= nil then
- hum = hit2.Parent.Parent.Humanoid
- attackdebounce = false
- MagniDamage(effectsg,effectsg,30,20,20,10,"Up")
- --Damagefunc1(hit2,Damg,10)
- end
- end
- end))
- end
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , Ignore Descendants
- return game.Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
- end
- function MMMAGIC(part,x1,y1,z1,x2,y2,z2,color)
- local msh1 = Instance.new("BlockMesh")
- msh1.Scale = Vector3.new(0.5,0.5,0.5)
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(x1,y1,z1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.1,0.1,0.1) Part.CFrame=Part.CFrame*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50)) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function UltimaMMMAGIC(part,x1,y1,z1,x2,y2,z2,color)
- local msh1 = Instance.new("BlockMesh")
- msh1.Scale = Vector3.new(x1,y1,z1)
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(1,1,1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.1,0.1,0.1) Part.CFrame=Part.CFrame*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50)) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function MOREMAGIX(part,cframe,x,y,z,color)
- p2=Instance.new("Part")
- p2.Name="Blast"
- p2.TopSurface=0
- p2.BottomSurface=0
- p2.CanCollide=false
- p2.Anchored=true
- p2.BrickColor=color
- p2.Size=Vector3.new(x,y,z)
- p2.formFactor="Symmetric"
- p2.CFrame=part.CFrame*CFrame.new(0,cframe,0)
- p2.Parent=pack
- m=Instance.new("BlockMesh")
- m.Parent=p2
- m.Name="BlastMesh"
- coroutine.resume(coroutine.create(function(part,dir) for loll=1, 15 do part.BlastMesh.Scale=part.BlastMesh.Scale-Vector3.new(.09,.09,.09) part.Transparency=loll/20 part.CFrame=part.CFrame*CFrame.new(dir)*CFrame.fromEulerAnglesXYZ(math.random(-100,100)/100, math.random(-100,100)/100, math.random(-100,100)/100) swait() end part.Parent=nil end),p2,Vector3.new(math.random(-10,10)/10,math.random(-10,10)/10,math.random(-10,10)/10))
- end
- function EVENMOARMAGIX(part,x1,y1,z1,x2,y2,z2,x3,y3,z3,color)
- local msh1 = Instance.new("SpecialMesh")
- msh1.Scale = Vector3.new(0.5,0.5,0.5)
- msh1.MeshType = "Sphere"
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(x1,y1,z1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(x3,y3,z3)
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.15,0.15,0.15) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function WaveEffect(part,x1,y1,z1,x2,y2,z2,x3,y3,z3,color)
- local msh1 = Instance.new("SpecialMesh")
- msh1.Scale = Vector3.new(x1,y1,z1)
- msh1.MeshId = "http://www.roblox.com/asset/?id=20329976"
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(1,1,1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(x3,y3,z3)
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.15,0.3,0.15) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function BlastEffect(part,x1,y1,z1,x2,y2,z2,x3,y3,z3,color)
- local msh1 = Instance.new("SpecialMesh")
- msh1.Scale = Vector3.new(x1,y1,z1)
- msh1.MeshId = "http://www.roblox.com/asset/?id=1323306"
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(1,1,1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(x3,y3,z3)
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.15,0.15,0.15) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function DerpMagic(part,x1,y1,z1,x2,y2,z2,color)
- local msh1 = Instance.new("BlockMesh")
- msh1.Scale = Vector3.new(0.5,0.5,0.5)
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(x1,y1,z1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- S.Parent=pack
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.1,0.1,0.1) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- function ss(pitch)
- local SlashSound = Instance.new("Sound")
- --SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
- SlashSound.SoundId = "http://roblox.com/asset/?id=10209645"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .7
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function equipsound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "rbxasset://sounds\\unsheath.wav"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .5
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function magicsound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset/?id=2248511"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .5
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function critsound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset/?id=2801263"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .7
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function spikesound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset/?id=3264793"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .7
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function msound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset?id=2101148"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .7
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function lasersound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "rbxasset://sounds/Launching rocket.wav"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .5
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function omnomnom(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset/?id=12544690"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .5
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- wait(0)
- SlashSound.Parent = nil
- end))
- end
- function msound(pitch)
- local SlashSound = Instance.new("Sound")
- SlashSound.SoundId = "http://www.roblox.com/asset?id=2101148"
- SlashSound.Parent = Char.Torso
- SlashSound.Volume = .7
- SlashSound.Pitch = pitch
- SlashSound.PlayOnRemove = true
- coroutine.resume(coroutine.create(function()
- swait()
- SlashSound.Parent = nil
- end))
- end
- function MMMAGIC(part,x1,y1,z1,x2,y2,z2,color)
- local msh1 = Instance.new("BlockMesh")
- msh1.Scale = Vector3.new(0.5,0.5,0.5)
- S=Instance.new("Part")
- S.Name="Effect"
- S.formFactor=0
- S.Size=Vector3.new(x1,y1,z1)
- S.BrickColor=color
- S.Reflectance = 0
- S.TopSurface=0
- S.BottomSurface=0
- S.Transparency=0
- S.Anchored=true
- S.CanCollide=false
- S.CFrame=part.CFrame*CFrame.new(x2,y2,z2)*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- S.Parent=Char
- msh1.Parent = S
- coroutine.resume(coroutine.create(function(Part,CF) for i=1, 9 do Part.Mesh.Scale = Part.Mesh.Scale + Vector3.new(0.1,0.1,0.1) Part.CFrame=Part.CFrame*CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50)) Part.Transparency=i*.1 swait() end Part.Parent=nil end),S,S.CFrame)
- end
- attackdebounce = false
- Damagefunc1=function(hit,Damage,Knockback)
- if hit.Parent==nil then
- return
- end
- CPlayer=Bin
- h=hit.Parent:FindFirstChild("Humanoid")
- if h~=nil and hit.Parent.Name~=Char.Name and hit.Parent:FindFirstChild("Torso")~=nil then
- if attackdebounce == false then
- critsound(2)
- attackdebounce = true
- coroutine.resume(coroutine.create(function()
- wait(0.1)
- attackdebounce = false
- end))
- Damage=Damage
- --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- return
- end]]
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game.Players.LocalPlayer
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- -- print(c.Value)
- if math.random(0,99)+math.random()<=5 then
- CRIT=true
- Damage=Damage*2
- --[[ Knockback=Knockback*2
- r=Instance.new("BodyAngularVelocity")
- r.P=3000
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- --critsound(2)
- end
- Damage=Damage+math.random(50,100)
- -- Blood(hit.CFrame*CFrame.new(math.random(-10,10)/10,math.random(-10,10)/10,0),math.floor(Damage/20))
- h:TakeDamage(Damage)
- showDamage(hit.Parent,Damage,50)
- vp=Instance.new("BodyVelocity")
- vp.P=500
- vp.maxForce=Vector3.new(math.huge,0,math.huge)
- -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
- vp.velocity=Torso.CFrame.lookVector*Knockback+Torso.Velocity/1.05
- if Knockback>0 then
- vp.Parent=hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp,.25)
- --[[ r=Instance.new("BodyAngularVelocity")
- r.P=3000
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- game:GetService("Debris"):AddItem(r,.5)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=Player
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- CRIT=false
- hitDeb=true
- AttackPos=6
- end
- end
- end
- Damagefunc = function(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
- if hit.Parent == nil then
- return
- end
- local h = hit.Parent:FindFirstChild("Humanoid")
- for _, v in pairs(hit.Parent:children()) do
- if v:IsA("Humanoid") then
- h = v
- end
- end
- if h ~= nil and hit.Parent.Name ~= Char.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
- if hit.Parent:findFirstChild("DebounceHit") ~= nil then
- if hit.Parent.DebounceHit.Value == true then
- return
- end
- end
- if h.MaxHealth >= math.huge then
- hit:BreakJoints()
- end
- --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- return
- end]]
- -- hs(hit,1.2)
- local c = Create("ObjectValue"){
- Name = "creator",
- Value = game:service("Players").LocalPlayer,
- Parent = h,
- }
- game:GetService("Debris"):AddItem(c, .5)
- if HitSound ~= nil and HitPitch ~= nil then
- so(HitSound, hit, 1, HitPitch)
- end
- local Damage = math.random(minim, maxim)
- -- h:TakeDamage(Damage)
- local blocked = false
- local block = hit.Parent:findFirstChild("Block")
- if block ~= nil then
- if block.className == "IntValue" then
- if block.Value > 0 then
- blocked = true
- block.Value = block.Value - 1
- print(block.Value)
- end
- end
- end
- if blocked == false then
- -- h:TakeDamage(Damage)
- HitHealth=h.Health
- h.Health = h.Health - Damage
- if HitHealth~=h.Health and HitHealth~=0 and h.Health<=0 and h.Parent.Name~="Hologram" then
- print("gained spree")
- game.Players.LocalPlayer:FindFirstChild("leaderstats").Spree.Value=game.Players.LocalPlayer.leaderstats.Spree.Value+1
- end
- ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color)
- else
- h.Health = h.Health - (Damage / 2)
- ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color)
- end
- if Type == "Knockdown" then
- local hum = hit.Parent.Humanoid
- hum.PlatformStand = true
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(1)
- HHumanoid.PlatformStand = false
- end), hum)
- local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
- local bodvol = Create("BodyVelocity"){
- velocity = angle * knockback,
- P = 5000,
- maxForce = Vector3.new(1000e+003, 1000e+003, 1000e+003),
- Parent = hit,
- }
- local rl = Create("BodyAngularVelocity"){
- P = 3000,
- maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
- angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
- Parent = hit,
- }
- game:GetService("Debris"):AddItem(bodvol, .5)
- game:GetService("Debris"):AddItem(rl, .5)
- elseif Type == "Normal" then
- local vp = Create("BodyVelocity"){
- P = 500,
- maxForce = Vector3.new(math.huge, 0, math.huge),
- velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
- }
- if knockback > 0 then
- vp.Parent = hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp, .5)
- elseif Type == "Up" then
- local bodyVelocity = Create("BodyVelocity"){
- velocity = vt(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
- Parent = hit,
- }
- game:GetService("Debris"):AddItem(bodyVelocity, .5)
- elseif Type == "Snare" then
- local bp = Create("BodyPosition"){
- P = 2000,
- D = 100,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso,
- }
- game:GetService("Debris"):AddItem(bp, 1)
- elseif Type == "Freeze" then
- local BodPos = Create("BodyPosition"){
- P = 50000,
- D = 1000,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso,
- }
- local BodGy = Create("BodyGyro") {
- maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
- P = 20e+003,
- Parent = hit.Parent.Torso,
- cframe = hit.Parent.Torso.CFrame,
- }
- hit.Parent.Torso.Anchored = true
- coroutine.resume(coroutine.create(function(Part)
- swait(1.5)
- Part.Anchored = false
- end), hit.Parent.Torso)
- game:GetService("Debris"):AddItem(BodPos, 3)
- game:GetService("Debris"):AddItem(BodGy, 3)
- end
- local debounce = Create("BoolValue"){
- Name = "DebounceHit",
- Parent = hit.Parent,
- Value = true,
- }
- game:GetService("Debris"):AddItem(debounce, Delay)
- c = Instance.new("ObjectValue")
- c.Name = "creator"
- c.Value = Player
- c.Parent = h
- game:GetService("Debris"):AddItem(c, .5)
- end
- end
- function ShowDamage(Pos, Text, Time, Color)
- local Rate = (1 / 30)
- local Pos = (Pos or Vector3.new(0, 0, 0))
- local Text = (Text or "")
- local Time = (Time or 2)
- local Color = (Color or Color3.new(1, 0, 0))
- local EffectPart = part("Custom", workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", vt(0, 0, 0))
- EffectPart.Anchored = true
- local BillboardGui = Create("BillboardGui"){
- Size = UDim2.new(3, 0, 3, 0),
- Adornee = EffectPart,
- Parent = EffectPart,
- }
- local TextLabel = Create("TextLabel"){
- BackgroundTransparency = 1,
- Size = UDim2.new(1, 0, 1, 0),
- Text = Text,
- TextColor3 = Color,
- TextScaled = true,
- Font = Enum.Font.ArialBold,
- Parent = BillboardGui,
- }
- game.Debris:AddItem(EffectPart, (Time + 0.1))
- EffectPart.Parent = game:GetService("Workspace")
- delay(0, function()
- local Frames = (Time / Rate)
- for Frame = 1, Frames do
- wait(Rate)
- local Percent = (Frame / Frames)
- EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
- TextLabel.TextTransparency = Percent
- end
- if EffectPart and EffectPart.Parent then
- EffectPart:Destroy()
- end
- end)
- end
- function MagniDamage(Hit, Part, magni, mindam, maxdam, knock, Type)
- for _, c in pairs(workspace:children()) do
- local hum = c:findFirstChild("Humanoid")
- if hum ~= nil then
- local head = c:findFirstChild("Torso")
- if head ~= nil then
- local targ = head.Position - Part.Position
- local mag = targ.magnitude
- if mag <= magni and c.Name ~= Player.Name then
- Damagefunc(Hit, head, mindam, maxdam, knock, Type, RootPart, .2, 1, 3)
- end
- end
- end
- end
- end
- Damagefunc2=function(hit,Damage,Knockback)
- if hit.Parent==nil then
- return
- end
- CPlayer=Bin
- h=hit.Parent:FindFirstChild("Humanoid")
- if h~=nil and hit.Parent.Name~=Char.Name and hit.Parent:FindFirstChild("Torso")~=nil then
- if attackdebounce == false then
- critsound(1)
- attackdebounce = true
- coroutine.resume(coroutine.create(function()
- wait(0.1)
- attackdebounce = false
- end))
- Damage=Damage
- --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- return
- end]]
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game.Players.LocalPlayer
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- -- print(c.Value)
- if math.random(0,99)+math.random()<=5 then
- CRIT=true
- Damage=Damage*2
- --[[ Knockback=Knockback*2
- r=Instance.new("BodyAngularVelocity")
- r.P=30
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- --critsound(2)
- end
- Damage=Damage
- -- Blood(hit.CFrame*CFrame.new(math.random(-10,10)/10,math.random(-10,10)/10,0),math.floor(Damage/20))
- h:TakeDamage(Damage)
- showDamage(hit.Parent,Damage,50)
- vp=Instance.new("BodyVelocity")
- vp.P=500
- vp.maxForce=Vector3.new(math.huge,0,math.huge)
- -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
- vp.velocity=Torso.CFrame.lookVector*Knockback+Torso.Velocity/1.05
- rl=Instance.new("BodyAngularVelocity")
- rl.P=3000
- rl.maxTorque=Vector3.new(5000,5000,5000)*500000000
- rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
- rl.Parent=t
- game:GetService("Debris"):AddItem(rl,.2)
- vl=Instance.new("BodyVelocity")
- vl.P=4500
- vl.maxForce=Vector3.new(math.huge,math.huge,math.huge)
- vl.velocity=Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z)*1.05+Vector3.new(0,10,0)
- vl.Parent=t
- game:GetService("Debris"):AddItem(vl,.2)
- if Knockback>0 then
- vp.Parent=hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp,.25)
- --[[ r=Instance.new("BodyAngularVelocity")
- r.P=3000
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- game:GetService("Debris"):AddItem(r,.5)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=Player
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- CRIT=false
- hitDeb=true
- AttackPos=6
- end
- end
- end
- slashdamage1=function(hit,Damage,Knockback)
- if hit.Parent==nil then
- return
- end
- CPlayer=Bin
- h=hit.Parent:FindFirstChild("Humanoid")
- if h~=nil and hit.Parent.Name~=Char.Name and hit.Parent:FindFirstChild("Torso")~=nil then
- if attackdebounce == false then
- attackdebounce = true
- coroutine.resume(coroutine.create(function()
- wait(0.1)
- attackdebounce = false
- end))
- Damage=Damage
- --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- return
- end]]
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game.Players.LocalPlayer
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- -- print(c.Value)
- if math.random(0,99)+math.random()<=5 then
- Damage=Damage*2
- --[[ Knockback=Knockback*2
- r=Instance.new("BodyAngularVelocity")
- r.P=3000
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- --critsound(2)
- end
- Damage=Damage
- -- Blood(hit.CFrame*CFrame.new(math.random(-10,10)/10,math.random(-10,10)/10,0),math.floor(Damage/20))
- h:TakeDamage(Damage)
- showDamage(hit.Parent,Damage,50)
- vp=Instance.new("BodyVelocity")
- vp.P=500
- vp.maxForce=Vector3.new(math.huge,0,math.huge)
- -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
- vp.velocity=Torso.CFrame.lookVector*Knockback+Torso.Velocity/1.05
- if Knockback>0 then
- vp.Parent=hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp,.25)
- --[[ r=Instance.new("BodyAngularVelocity")
- r.P=3000
- r.maxTorque=Vector3.new(500000000,50000000000,500000000)*50000
- r.angularvelocity=Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20))
- r.Parent=hit.Parent.Torso]]
- game:GetService("Debris"):AddItem(r,.5)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=Player
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- CRIT=false
- hitDeb=true
- AttackPos=6
- end
- end
- end
- DBHit=function(hit,DB,Dmg) --credits to turdulator for making this function
- if hit.Parent==nil then
- return
- end
- h=hit.Parent:FindFirstChild("Humanoid")
- if h==nil then
- h=hit.Parent.Parent:FindFirstChild("Humanoid")
- end
- t=hit.Parent:FindFirstChild("Torso")
- if h~=nil and t~=nil then
- --[[ if h.Parent==Character then
- return
- end]]
- critsound(1.5)
- Damage=Dmg
- h:TakeDamage(Damage)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game.Players.LocalPlayer
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- showDamage(hit.Parent,Damage,59)
- vl=Instance.new("BodyVelocity")
- vl.P=4500
- vl.maxForce=Vector3.new(math.huge,math.huge,math.huge)
- vl.velocity=Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z)*1.05+Vector3.new(0,10,0)
- vl.Parent=t
- game:GetService("Debris"):AddItem(vl,.2)
- rl=Instance.new("BodyAngularVelocity")
- rl.P=3000
- rl.maxTorque=Vector3.new(5000,5000,5000)*500000000
- rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
- rl.Parent=t
- game:GetService("Debris"):AddItem(rl,.2)
- else
- if hit.CanCollide==false then
- return
- end
- CRIT=false
- end
- end
- showDamage=function(Char,Dealt,du)
- m=Instance.new("Model")
- m.Name=tostring(Dealt)
- h=Instance.new("Humanoid")
- h.Health=math.huge
- h.MaxHealth=math.huge
- h.Parent=m
- c=Instance.new("Part")
- c.Transparency=0
- c.BrickColor=BrickColor:Red()
- c.Name="Head"
- c.TopSurface=0
- c.BottomSurface=0
- c.formFactor="Plate"
- c.Size=Vector3.new(1,.4,1)
- ms=Instance.new("CylinderMesh")
- ms.Scale=Vector3.new(.8,.8,.8)
- ms.Parent=c
- c.Reflectance=0
- Instance.new("BodyGyro").Parent=c
- c.Parent=m
- c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
- f=Instance.new("BodyPosition")
- f.P=2000
- f.D=100
- f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
- f.position=c.Position+Vector3.new(0,3,0)
- f.Parent=c
- game:GetService("Debris"):AddItem(m,.5)
- c.CanCollide=false
- m.Parent=workspace
- c.CanCollide=false
- end
- Anims.Walking = function()
- for i=0,1,difficulty do
- if act.Jumping ~= true then
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80+(20*i)),math.rad(-40-(40*i)),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100-(20*i)),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-(20*i)),math.rad(-40-(40*i)),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100+(20*i)),math.rad(0),0)
- swait()
- end
- end
- coroutine.resume(coroutine.create(function()
- for i=0,1,difficulty do
- if act.Jumping ~= true then
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80+(20*i)),math.rad(40+(40*i)),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100-(20*i)),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-(20*i)),math.rad(40+(40*i)),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100+(20*i)),math.rad(0),0)
- swait()
- end
- end
- for i=1,0,-difficulty do
- if act.Jumping ~= true then
- Spider.w.LLb1.C1 = CFrame.Angles(math.rad(-80+(20*i)),math.rad(40+(40*i)),0)
- Spider.w.LLb2.C1 = CFrame.Angles(math.rad(-100-(20*i)),math.rad(0),0)
- Spider.w.URb1.C1 = CFrame.Angles(math.rad(80-(20*i)),math.rad(40+(40*i)),0)
- Spider.w.URb2.C1 = CFrame.Angles(math.rad(100+(20*i)),math.rad(0),0)
- swait()
- end
- end
- end))
- for i=1,0,-difficulty do
- if act.Jumping ~= true then
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80+(20*i)),math.rad(-40-(40*i)),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100-(20*i)),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80-(20*i)),math.rad(-40-(40*i)),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100+(20*i)),math.rad(0),0)
- swait()
- end
- end
- if act.Jumping ~= true then
- Spider.w.LRb1.C1 = CFrame.Angles(math.rad(-80),math.rad(-40),0)
- Spider.w.LRb2.C1 = CFrame.Angles(math.rad(-100),math.rad(0),0)
- Spider.w.ULb1.C1 = CFrame.Angles(math.rad(80),math.rad(-40),0)
- Spider.w.ULb2.C1 = CFrame.Angles(math.rad(100),math.rad(0),0)
- end
- end
- --[[while true do
- swait()
- if act.Walking == true then return end
- if Torso.Velocity.magnitude >= 19 then
- act.Walking = true
- Anims.Walking()
- act.Walking = false
- end
- end ]]
- mouse = game.Players.LocalPlayer:GetMouse()
- t = script.Parent
- equipped=true
- mouse.KeyDown:connect(function(k) act.keydown = true
- pcall(function() act.key[k:lower()] = true end)
- local kk = k:lower()
- if kk == "w" or kk == "a" or kk == "s" or kk == "d" then
- if act.Walking == true then return end
- while act.key["w"] == true or act.key["a"] == true or act.key["s"] == true or act.key["d"] == true do
- act.Walking = true
- Anims.Walking()
- swait()
- end
- act.Walking = false
- end
- if attack == true then return end
- if kk == "f" then
- Shoot()
- end
- if kk == "g" then
- Shoot2()
- end
- if kk == "h" then
- Shoot3()
- end
- if kk == "j" then
- Shoot4()
- end
- if kk == "z" then
- Attack()
- end
- if kk == "x" then
- DualAttack()
- end
- if kk == "c" then
- MegaBonk()
- end
- if kk == "v" then
- Stomp()
- end
- if kk == " " then
- Jump()
- end
- end)
- mouse.KeyUp:connect(function(k) act.keydown = false
- pcall(function() act.key[k:lower()] = false end)
- end)
- --end
- function ds(mouse)
- equipped=false
- end
- local sine = 0
- local change = 1
- local val = 0
- local idle = 0
- local donum = 0
- while true do
- swait()
- sine = sine + change
- 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
- end
- end
- if donum >= .5 then
- handidle = true
- elseif donum <= 0 then
- handidle = false
- end
- if handidle == false then
- donum = donum + 0.003
- else
- donum = donum - 0.003
- end
- if RootPart.Velocity.y > 1 and hitfloor == nil then
- Anim = "Jump"
- if attack == false then
- RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 2) * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(20), math.rad(0), math.rad(0)), .3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(20), math.rad(70)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(-20), math.rad(-70)), 0.3)
- RH.C0 = clerp(RH.C0, cf(1, -.5, -.5) * angles(math.rad(0), math.rad(90), math.rad(-30)), .3)
- LH.C0 = clerp(LH.C0, cf(-1, -.8, -.5) * angles(math.rad(0), math.rad(-90), math.rad(20)), .3)
- end
- elseif RootPart.Velocity.y < -1 and hitfloor == nil then
- Anim = "Fall"
- if attack == false then
- RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(30), math.rad(0), math.rad(0)), .3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(130)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(-130)), 0.3)
- RH.C0 = clerp(RH.C0, cf(1, -.7, -.5) * angles(math.rad(0), math.rad(90), math.rad(-20)), .3)
- LH.C0 = clerp(LH.C0, cf(-1, -1, -.5) * angles(math.rad(0), math.rad(-90), math.rad(10)), .3)
- end
- elseif torvel < 1 and hitfloor ~= nil then
- Anim = "Idle"
- if attack == false then
- RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(5), math.rad(0), math.rad(0)), .3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.3, 0.5, -.5) * angles(math.rad(30) + donum / 2, math.rad(30) + donum / 2, math.rad(40)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.2, 0.5, 0) * angles(math.rad(30) + donum / 2, math.rad(-30) - donum / 2, math.rad(-20)), 0.3)
- RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)), .3)
- LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)), .3)
- end
- elseif torvel > 2 and hitfloor ~= nil then
- Anim = "Walk"
- if attack == false then
- change = 3
- RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(0)), .3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(15)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-15)), 0.3)
- RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) , .3)
- LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)), .3)
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement