end end _______________________________________________ Spike: script.Parent = nil --[[ Below Spike]] local color = "Really black" wt = 0.1 s = script it = Instance.new v3 = Vector3.new c3 = Color3.new ud = UDim2.new cf = CFrame.new ca = CFrame.Angles pi = math.pi rd = math.rad bc = BrickColor.new ab = math.abs de = math.deg ts = tostring tn = tonumber ti = table.insert tr = table.remove mf = math.floor cr = coroutine.resume cc = coroutine.create sf = string.find sb = string.sub rn = math.random asset = "http://www.roblox.com/asset/?id=" sr = string.reverse sl = string.lower su = string.upper Serv = {} Serv.p = game:GetService(sr("sreyalP")) Serv.l = game:GetService(sr("gnithgiL")) Serv.is = game:GetService(sr("ecivreStresnI")) if game:findFirstChild(sr("revreSkrowteN")) then Serv.ns = game:GetService(sr("revreSkrowteN")) else NetworkServer = nil end Serv.sg = game:GetService(sr("iuGretratS")) Serv.sp = game:GetService(sr("kcaPretratS")) Serv.d = game:GetService(sr("sirbeD")) Decs = {} Decs.Shine = "48965808" Decs.Crack = "49173398" Decs.Cloud = "1095708" Decs.Spike = "1033714" Decs.Rock = "1290033" Decs.Crown = "20329976" Decs.Crown2 = "1323306" function ft(tablez,item) if not tablez or not item then return nil end for i=1,#tablez do if tablez == item then return i end end return nil end function re(par,obj) if type(par) ~= "userdata" or type(obj) ~= "string" then return nil end if par:findFirstChild(obj) then par[obj]:Remove() end end function pa(pa,pn,sh,x,y,z,c,a,tr,re,bc2) local fp = nil if sh ~= "Wedge" and sh ~= "CornerWedge" then fp = it("Part",pa) fp.Shape = sh fp.formFactor = "Custom" elseif sh == "Wedge" then fp = it("WedgePart",pa) fp.formFactor = "Custom" elseif sh == "CornerWedge" then fp = it("CornerWedgePart",pa) end fp.Size = v3(x,y,z) fp.CanCollide = c fp.Anchored = false fp.BrickColor = bc(bc2) fp.Transparency = tr fp.Reflectance = re fp.BottomSurface = 0 fp.Name = pn --fp.FrontSurface = "Hinge" fp.TopSurface = 0 fp.Velocity = Vector3.new(0,10,0) fp:BreakJoints() return fp end function clearit(tab) for xx=1,#tab do tab[xx]:Remove() end 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 function mbm(pa,sx,sy,sz) local bm = Instance.new("BlockMesh",pa) bm.Scale = Vector3.new(sx,sy,sz) end function fd(pa,ob) if pa:findFirstChild(ob) then return pa[ob] else return nil end end function ccn(pa,cl) for i,v in pairs(pa:children()) do if sf(v.className:lower(),cl:lower()) then v:Remove() end end end function stick(hit2,hit) local weld = Instance.new("Weld") weld.Part0 = hit2 weld.Part1 = hit local HitPos = hit2.Position local CJ = CFrame.new(HitPos) local C0 = hit2.CFrame:inverse() *CJ local C1 = hit.CFrame:inverse() * CJ weld.C0 = C0 weld.C1 = C1 weld.Parent = hit2 end function stick2(hit2,hit,tostick) local weld = Instance.new("Weld") weld.Part0 = tostick weld.Part1 = hit2 local HitPos = hit.Position local CJ = CFrame.new(HitPos) local C0 = hit2.CFrame:inverse() *CJ local C1 = hit.CFrame:inverse() * CJ weld.C0 = C1 weld.C1 = C0 weld.Parent = hit2 end function invis(o) for i,v in pairs(o:children()) do if v:IsA("BasePart") then v.Transparency = 1 end invis(v) end end function newhats(p,o,o2) for i,v in pairs(p:children()) do if v:IsA("Hat") then local np = v.Handle:Clone() np.Transparency = 0 np.Mesh.Scale = np.Mesh.Scale*1.1 np.Parent = o np.CFrame = v.Handle.CFrame stick2(np,o2,o) end end end function ray(Pos, Dir) return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999), c) end function hasclass(prt,cls) clases = 0 for i,v in pairs(prt:children()) do if v.className:lower() == cls:lower() then clases = clases + 1 end end return clases end function fade(prt,incr) cr(cc(function() for i=prt.Transparency,1,incr do prt.Transparency = i wait() end prt:Remove() end)) end function rtab(tabz,obj) for i=1,#tabz do if tabz == obj then tr(tabz,i) break end end end function RandomPlayer(spiz) local torz = spis local torses = {} for i,v in pairs(Serv.p:children()) do if v ~= Serv.p.LocalPlayer and v.Character ~= nil and v.Character:findFirstChild("Torso") then ti(torses,v.Character.Torso) end end if #torses > 0 then torz = torses[rn(1,#torses)] end return torz end function Trail(ob,times,waitz,col,thickz,ofz) local oldpos = (ob.CFrame *ofz).p for i=1,times do local obp = (ob.CFrame *ofz).p local mag = (oldpos - obp).magnitude local tr = pa(ob,"trail","Block",0,0,0,false,false,0.5,0,col) tr.Anchored = true tr.CFrame = cf(oldpos,obp) tr.CFrame = tr.CFrame + tr.CFrame.lookVector* (mag/2) local trm = it("CylinderMesh",tr) trm.Scale = v3(5*thickz,mag*5,5*thickz) cr(cc(function() for i=5*thickz,0,-5*thickz/10 do trm.Scale = v3(i,mag*5,i) wait() end tr:Remove() end)) tr.CFrame = tr.CFrame *ca(rd(90),0,0) oldpos = obp wait(waitz) end end sTrail = {} function Trail2(ob,waitz,col,thickz,ofz) cr(cc(function() ti(sTrail,ob) local oldpos = (ob.CFrame *ofz).p repeat local obp = (ob.CFrame *ofz).p local mag = (oldpos - obp).magnitude local tr = pa(ob,"trail","Block",0,0,0,false,false,0.5,0,col) tr.Anchored = true tr.CFrame = cf(oldpos,obp) tr.CFrame = tr.CFrame + tr.CFrame.lookVector* (mag/2) local trm = it("CylinderMesh",tr) trm.Scale = v3(5*thickz,mag*5,5*thickz) cr(cc(function() for i=5*thickz,0,-5*thickz/10 do trm.Scale = v3(i,mag*5,i) wait() end tr:Remove() end)) tr.CFrame = tr.CFrame *ca(rd(90),0,0) oldpos = obp wait(waitz) until ft(sTrail,ob) == nil end)) end nocf = cf(0,0,0) noca = ca(0,0,0) repeat wait() until Serv.p.LocalPlayer.Character and Serv.p.LocalPlayer.Character:findFirstChild("Torso") pl = Serv.p.LocalPlayer bp = pl.Backpack pg = pl.PlayerGui c = pl.Character he = c.Head to = c.Torso ccn(to,"BodyPosition") ccn(to,"BodyGyro") hu = c.Humanoid hu.PlatformStand = false mou = nil Button = false Key = false Anim = {} Anim.ClickHold = 0 Anim.c = true -- weapon change or act debounce Anim.a = "None" -- current weapon Anim.b = "None" -- weapon act 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"," "} act = {key = {}} for i=1,#bets do table.insert(act.key,bets) end Sounds = { Boom = "16976189"; SniperFire = "1369158"; ShotgunFire2 = "1868836"; MinigunFire = "2692806"; MinigunCharge = "2692844"; MinigunDischarge = "1753007"; Flashbang = "16976189"; Beep = "15666462"; Smash = "2801263"; Punch = "31173820"; Slash = "rbxasset://sounds/swordslash.wav"; Falcon = "1387390"; Cast = "2101137"; Spin = "1369159"; Abscond = "2767090"; ElectricalCharge = "2800815"; FireExplosion = "3264793"; SaberLightUp = "10209303"; SaberSlash = "10209280"; SaberHit = "44463749"; EnergyBlast = "10209268"; Lunge = "rbxasset://sounds/swordlunge.wav"; Unsheath = "rbxasset://sounds/unsheath.wav"; } local SoundTest = asset .. Sounds.Spin local hd = he:Clone() Anim.BodyAnims = 0 Anim.Welding = 0 function c1(wexx,smmx,c0orc1,aa,bb,cc,xx,yy,zz) local xx2,yy2,zz2 = 0,0,0 local x2,y2,z2 = 0,0,0 if c0orc1 == 0 then xx2,yy2,zz2 = wexx.C0:toEulerAnglesXYZ() x2,y2,z2 = wexx.C0.x,wexx.C0.y,wexx.C0.z elseif c0orc1 == 1 then xx2,yy2,zz2 = wexx.C1:toEulerAnglesXYZ() x2,y2,z2 = wexx.C1.x,wexx.C1.y,wexx.C1.z else xx2,yy2,zz2 = wexx.C1:toEulerAnglesXYZ() x2,y2,z2 = wexx.C0.x,wexx.C0.y,wexx.C0.z end Anim.Welding = Anim.Welding + 1 local twa = 1 for i=0,twa,smmx do if c0orc1 == 0 then wexx.C0 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) *ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i)) elseif c0orc1 == 1 then wexx.C1 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) *ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i)) else wexx.C0 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) wexx.C1 = ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i))end wait() end local i = 1 if c0orc1 == 0 then wexx.C0 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) *ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i)) elseif c0orc1 == 1 then wexx.C1 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) *ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i)) else wexx.C0 = cf(x2-(((x2-aa)/twa)*i),y2-(((y2-bb)/twa)*i),z2-(((z2-cc)/twa)*i)) wexx.C1 = ca(xx2-(((xx2-rd(xx))/twa)*i),yy2-(((yy2-rd(yy))/twa)*i),zz2-(((zz2-rd(zz))/twa)*i)) end Anim.Welding = Anim.Welding - 1 end to["Left Hip"].Part0 = to to["Right Hip"].Part0 = to to["Left Shoulder"].Part0 = to to["Right Shoulder"].Part0 = to if c:findFirstChild("Suit") then game:service'Debris':AddItem(c["Suit"],0.035) end m = it("Model",c) m.Name = "Suit" Misc = {} Misc["x"] = it("Model",m) invis(c) p = {} t = pa(m,"Torso","Block",0,0,0,false,false,0,0,ts(color)) tw = weld(t,to,t,0,0,0,0,0,0) la = pa(m,"Left Arm","Block",0,0,0,false,false,0,0,ts(color)) law = weld(la,t,la,-1.5,1,0,0,0,0) ra = pa(m,"Right Arm","Block",0,0,0,false,false,0,0,ts(color)) raw = weld(ra,t,ra,1.5,1,0,0,0,0) ll = pa(m,"Left Leg","Block",0,0,0,false,false,0,0,ts(color)) llw = weld(ll,t,ll,-0.5,-1,0,0,0,0) rl = pa(m,"Right Leg","Block",0,0,0,false,false,0,0,ts(color)) rlw = weld(rl,t,rl,0.5,-1,0,0,0,0) hd.Parent = m hd.Transparency = 0 hd.face.Face = "Front" hdw = weld(hd,t,hd,0,1.5,0,0,0,0) he.face.Face = "Bottom" local nbb = it("BlockMesh") nbb.Offset = v3(0,-1,0) nbb.Scale = v3(5,10,5) nbb:Clone().Parent = la nbb:Clone().Parent = ra nbb:Clone().Parent = ll nbb:Clone().Parent = rl nbb:Clone().Parent = t t.Mesh.Offset = v3(0,0,0) t.Mesh.Scale = Vector3.new(10,10,5) to["Left Hip"].Part0 = t to["Right Hip"].Part0 = t to["Left Shoulder"].Part0 = t to["Right Shoulder"].Part0 = t function Armz(ison) if ison then c["Left Arm"].Transparency = 0 c["Right Arm"].Transparency = 0 la.Transparency = 1 ra.Transparency = 1 law.Part0 = c["Left Arm"] law.C0 = cf(0,1,0) raw.Part0 = c["Right Arm"] raw.C0 = cf(0,1,0) else c["Left Arm"].Transparency = 1 c["Right Arm"].Transparency = 1 la.Transparency = 0 ra.Transparency = 0 law.Part0 = t law.C0 = cf(-1.5,1,0) raw.Part0 = t raw.C0 = cf(1.5,1,0) end end function Legz(ison) if ison then c["Left Leg"].Transparency = 0 c["Right Leg"].Transparency = 0 ll.Transparency = 1 rl.Transparency = 1 llw.Part0 = c["Left Leg"] llw.C0 = cf(0,1,0) rlw.Part0 = c["Right Leg"] rlw.C0 = cf(0,1,0) else c["Left Leg"].Transparency = 1 c["Right Leg"].Transparency = 1 ll.Transparency = 0 rl.Transparency = 0 llw.Part0 = t llw.C0 = cf(-0.5,-1,0) rlw.Part0 = t rlw.C0 = cf(0.5,-1,0) end end function Headz(ison) if ison then he.Transparency = 0 else he.Transparency = 1 end end Legz(true) Armz(true) newhats(c,hd,he) function Sound(sid,pit,vol) local ss = it("Sound") ss.Name = "Sound" ss.Parent = hd ss.SoundId = sid ss.Pitch = pit ss.Volume = vol/3 ss.PlayOnRemove = true wait() ss:Remove() end Healthz = 250 hu.MaxHealth = Healthz hu.Health = Healthz mp = 1250000 maxmp = 1250000 ns = 18 function addmp(mpz) mp = mp + mpz if mp > maxmp then mp = maxmp end end function DmgHumanoidsNear(pos,dmg,rndmg,mag,forc) local function kidive(ob) for i,v in pairs(ob:children()) do if not v.Parent:IsA("Hat") and v:IsA("BasePart") and v.Parent.Name ~= "Suit" and v.Parent.Parent:findFirstChild("Humanoid") == nil and v.Parent.Parent.Name ~= "Suit" and v.Parent:findFirstChild("Humanoid") == nil and (v.Position - pos).magnitude < mag*1.3 and v.Anchored == false and v:GetMass() < 150 then v:BreakJoints() v.Velocity = cf(pos,v.Position).lookVector*forc end if v:IsA("Humanoid") and v ~= hu and v.Parent:findFirstChild("Torso") then if (pos - v.Parent.Torso.Position).magnitude < mag then local tdmg = dmg*rn(1,rndmg) addmp(tdmg) v:TakeDamage(tdmg) end end if not v:IsA("Camera") and not v:IsA("Script") then kidive(v) end end end kidive(workspace) end function DmgHit(weplol,mind,maxd,gain) weplol.Touched:connect(function(hit) if hit.Parent:findFirstChild("Humanoid") == nil then return end local aihu = hit.Parent.Humanoid local dmgzorz = rn(mind,maxd) addmp(dmgzorz*gain) aihu:TakeDamage(dmgzorz) Sound(asset .. Sounds.Smash,1,1) end) end function ShootSpike(sc,adjus,istrai,typ,loltors) cr(cc(function() Sound(Sounds.Slash,1.1,1) local spi = pa(c,"","Block",0.6*sc,2*sc,0.6*sc,true,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.12*sc,3*sc,0.12*sc) spi.Anchored = true if typ == 1 then spi.CFrame = cf((loltors.CFrame).p,mou.hit.p) *adjus elseif typ == 2 then if adjus == "random" then spi.CFrame = cf(to.Position,RandomPlayer(spi).Position) else spi.CFrame = loltors.CFrame *adjus end end spi.CFrame = spi.CFrame *ca(rd(-90),0,0) if istrai then cr(cc(function() Trail(spi,15,0.15,color,0.35,cf(0,-1,0)) end)) end local bullethit = false local tyms = 0 if rn(1,17) == 1 then it("Fire",spi).Heat = -25 end local minusz = -0.0001 local spid = 0.25 if typ == 2 then spid = 0.01 end local divzz = 110 if typ == 2 then divzz = 50 end local tehpos = v3(0,0,0) repeat tyms = tyms + 2 minusz = (-90/3000/divzz)*tyms local bhit,bpos = ray(spi.Position,spi.Position - (spi.CFrame *cf(0,-1,0)).p) tehpos = bpos if bpos ~= nil and (bpos - (spi.CFrame *cf(0,1,0)).p).magnitude < 2.2 then bullethit = bhit else spi.CFrame = spi.CFrame *cf(0,2,0) *ca(rd(minusz),rd(0),0) end if tyms%8 == 0 then wait() end until bullethit or spi.Position.y < -300 or tyms > 3000 if bullethit then spi.Velocity = v3(0,0,0) local xx,yy,zz = spi.CFrame:toEulerAnglesXYZ() spi.CFrame = cf(tehpos) *ca(xx,yy,zz) *cf(0,-spi.Size.y/9,0) if bullethit.Anchored then Sound(asset .. Sounds.Punch,1,1) spi.Anchored = true else local cfz = spi.CFrame *cf(0,-0*sc,0) spi.Size = v3(0,0,0) spi.CFrame = cfz spi.Anchored = false if bullethit.Parent:findFirstChild("Humanoid") then stick(spi,bullethit) spi.CanCollide = false local mul = 1 if spi:findFirstChild("Fire") then mul = 2.5 end local aihu = bullethit.Parent.Humanoid addmp(20*mul) aihu:TakeDamage(rn(10*mul,24*mul)) Sound(asset .. Sounds.Smash,1.35,1) elseif bullethit.Parent.Parent:findFirstChild("Humanoid") then stick(spi,bullethit) spi.CanCollide = false local mul = 1 if spi:findFirstChild("Fire") then mul = 2.5 end local aihu = bullethit.Parent.Parent.Humanoid addmp(20*mul) aihu:TakeDamage(rn(10*mul,24*mul)) Sound(asset .. Sounds.Smash,1.35,1) elseif bullethit:GetMass() < 500 then stick(spi,bullethit) Sound(asset .. Sounds.Punch,1,1) if hasclass(bullethit,"Weld") < 1 and bullethit.Parrent.Parent:findFirstChild("Humanoid") == nil then bullethit.Velocity = (spi.CFrame*ca(rd(90),0,0)).lookVector*60 end end end game:service'Debris':AddItem(spi,8) else spi.Parent = nil end end)) end function NormalPose(inc) cr(cc(function() c1(tw,inc,3,0,0,0,0,0,0) end)) cr(cc(function() c1(llw,inc,3,-0.5,-1,0,0,0,0) end)) cr(cc(function() c1(rlw,inc,3,0.5,-1,0,0,0,0) end)) cr(cc(function() c1(law,inc,3,-1.5,1,0,0,0,0) end)) c1(raw,inc,3,1.5,1,0,0,0,0) end Anim.Act = function(k,ccz) if ccz then if k == "x" then Anim.c = false Anim.a = "Spikes" for i=1,18 do local spi = pa(Misc[k],"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.1,0,0.1) local spiw = weld(spi,t,spi,rn(-8,8)/10,rn(-8,8)/10,0,rd(rn(60,120)),0,rd(rn(-30,30))) cr(cc(function() for i=0,1,0.1 do spiw.C0 = spiw.C0 *cf(0,0.17,0) spim.Scale = v3(0.25,i*4,0.25) wait() end Anim.c = true end)) end for i=1,2 do local spi = pa(Misc[k],"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike local spiw = weld(spi,la,spi,0.2,-i/1.1+(0.7),-0.25,rd(-45),0,rd(120)) cr(cc(function() for i=0,1,0.1 do spiw.C0 = spiw.C0 *cf(0,0.14,0) spim.Scale = v3(0.25,i*4,0.25) wait() end Anim.c = true end)) end for i=1,2 do local spi = pa(Misc[k],"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike local spiw = weld(spi,ra,spi,-0.2,-i/1.1+(0.7),-0.25,rd(-45),0,rd(-120)) cr(cc(function() for i=0,1,0.1 do spiw.C0 = spiw.C0 *cf(0,0.14,0) spim.Scale = v3(0.25,i*4,0.25) wait() end Anim.c = true end)) end for i=1,2 do local spi = pa(Misc[k],"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike local spiw = weld(spi,ll,spi,0.2,-i/1.1+(0.2),-0.3,0,rd(50),rd(70)) cr(cc(function() for i=0,1,0.1 do spiw.C0 = spiw.C0 *cf(0,0.14,0) spim.Scale = v3(0.25,i*4,0.25) wait() end Anim.c = true end)) end for i=1,2 do local spi = pa(Misc[k],"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike local spiw = weld(spi,rl,spi,-0.2,-i/1.1+(0.2),-0.3,0,rd(-50),rd(-70)) cr(cc(function() for i=0,1,0.1 do spiw.C0 = spiw.C0 *cf(0,0.14,0) spim.Scale = v3(0.25,i*4,0.25) wait() end Anim.c = true end)) end elseif k == "c" then end else if k == "x" and Anim.b == "None" and Anim.c then Anim.c = false Anim.a = "None" for zi,v in pairs(Misc[k]:children()) do cr(cc(function() for i=1,0,-0.1 do v.Weld.C0 = v.Weld.C0 *cf(0,-0.17,0) v.Mesh.Scale = v3(0.1,i*4,0.1) wait() end v:Remove() Anim.c = true end)) end elseif mp >= 50 and k == "e" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SideSlash" Anim.c = false mp = mp - 50 Armz(false) cr(cc(function() c1(law,0.16,3,-1.2,1,-0.2,40,0,40) end)) cr(cc(function() c1(tw,0.1,0,0,0,0,0,-40,0) end)) c1(raw,0.16,3,1.2,1,0.2,50,0,50) Sound(Sounds.Unsheath,1.2,1) local spi = pa(m,"","Block",0.3,6,0.3,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.2,6,0.2) local spiw = weld(spi,ra,spi,0,-2,2,rd(90),0,0) c1(raw,0.16,3,1.5,1,0,0,0,-40) Sound(Sounds.Slash,0.9,1) DmgHit(spi,5,10,2) cr(cc(function() Trail(spi,8,0.04,color,0.6,cf(0,3,0)) end)) cr(cc(function() c1(tw,0.08,0,0,0,0,0,45,0) end)) cr(cc(function() c1(spiw,0.1,0,0,-3.6,-1,210,0,0) end)) c1(raw,0.08,3,1.3,0.6,-0.5,-160,0,-90) wait(0.2) cr(cc(function() c1(tw,0.08,0,0,0,0,0,0,0) c1(law,0.16,3,-1.5,1,0,0,0,0) end)) c1(raw,0.08,3,1.2,1,0.2,50,0,50) spi:Remove() c1(raw,0.16,3,1.5,1,0,0,0,0) Armz(true) Anim.b = "None" Anim.c = true elseif k == "c" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "Sit" Anim.c = false Legz(false) Armz(false) cr(cc(function() c1(llw,0.1,3,-0.5,-1,-0.3,-80,-20,0) end)) cr(cc(function() c1(rlw,0.1,3,0.5,-1,-0.3,-80,20,0) end)) cr(cc(function() c1(law,0.1,3,-1.3,1,0,15,0,15) end)) cr(cc(function() c1(raw,0.1,3,1.3,1,0,15,0,-15) end)) c1(tw,0.1,3,0,-1.5,0.35,-15,0,0) Anim.c = true hu.WalkSpeed = 0 elseif k == "c" and Anim.a == "Spikes" and Anim.b == "Sit" then Anim.c = false hu.WalkSpeed = ns NormalPose(0.08) Legz(true) Armz(true) Anim.c = true Anim.b = "None" elseif mp >= 6 and k == "f" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SpikeShoot" Anim.c = false Armz(false) cr(cc(function() c1(law,0.1,3,-1.1,0.55,0,-85,20,0) end)) c1(raw,0.1,3,1.1,0.55,0,-85,-20,0) repeat mp = mp - 6 ShootSpike(rn(8,24)/10,ca(0,0,0),true,1,t) wait(0.12) c1(law,1,3,-1.1,0.55,0,-85+rn(-5,5),20+rn(-5,5),0) c1(raw,1,3,1.1,0.55,0,-85+rn(-5,5),-20+rn(-5,5),0) until mp < 6 or not act.key["f"] cr(cc(function() c1(law,0.1,3,-1.5,1,0,0,0,0) end)) c1(raw,0.1,3,1.5,1,0,0,0,0) Armz(true) Anim.b = "None" Anim.c = true elseif mp >= 30 and k == "q" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "Flip" Anim.c = false Legz(false) Armz(false) mp = mp - 30 cr(cc(function() c1(llw,0.1,3,-0.5,-0.4,-0.3,55,0,8) end)) cr(cc(function() c1(rlw,0.1,3,0.5,-0.7,-0.3,55,0,-8) end)) cr(cc(function() c1(law,0.1,3,-1.3,1,-0.2,-170,0,-15) end)) cr(cc(function() c1(raw,0.1,3,1.3,1,-0.2,-170,0,15) end)) c1(tw,0.1,3,0,-0.8,0,-30,0,0) hu.WalkSpeed = ns*1.25 cr(cc(function() c1(tw,0.036,3,0,0,0,360,0,0) end)) local bf = it("BodyForce",t) bf.force = v3(0,10000,0) game:service'Debris':AddItem(bf,0.165) Sound(Sounds.Slash,1.2,1) wait(0.2) for zx=1,6 do ShootSpike(1.5,cf(rd(-5,5)/10,-2,-1)*ca(rd(-90+rn(-2,2)),0,rd(rn(-2,2))),true,2,to) wait(0.06) end hu.WalkSpeed= ns cr(cc(function() c1(llw,0.2,3,-0.5,-1,0,0,0,0) end)) cr(cc(function() c1(rlw,0.2,3,0.5,-1,0,0,0,0) end)) cr(cc(function() c1(law,0.2,3,-1.5,1,0,0,0,0) end)) c1(raw,0.2,3,1.5,1,0,0,0,0) Legz(true) Armz(true) Anim.b = "None" Anim.c = true elseif mp < maxmp and k == "z" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "Charge" Anim.c = false hu.WalkSpeed = 0 Armz(false) local mz = it("Model",m) for xi=1,360,360/8 do local spi = pa(mz,"","Block",1,6,1,true,false,0,0,color) spi.Anchored = true local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(1,6,1) spi.CFrame = t.CFrame *ca(0,rd(xi),0) *cf(0,0,10) *cf(0,-7,0) *ca(rd(rn(-5,5)),0,rd(rn(-5,5))) cr(cc(function() for x=1,12,1 do spi.CFrame = spi.CFrame *cf(0,0.5,0) wait() end end)) cr(cc(function() repeat wait() until not act.key["z"] or mp >= maxmp for x=1,12,1 do spi.CFrame = spi.CFrame *cf(0,-0.5,0) wait() end mz:Remove() end)) end for xi=-1,1,2 do local spi = pa(mz,"","Block",1,10,1,true,false,0,0,color) spi.Anchored = true local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(1.2,10,1.2) spi.CFrame = t.CFrame *cf(xi*2.2,0,-2) *cf(0,-11,0) cr(cc(function() for x=1,20,1 do spi.CFrame = spi.CFrame *cf(0,0.5,0) wait() end end)) cr(cc(function() repeat wait() until not act.key["z"] or mp >= maxmp for x=1,20,1 do spi.CFrame = spi.CFrame *cf(0,-0.25,0) wait() end mz:Remove() end)) end local spi = pa(mz,"","Block",0,0,0,false,false,0,0,raigcol) spi.Anchored = true local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Crown spim.Scale = v3(8,3,8) spi.CFrame = t.CFrame *cf(0,-2,0) Sound(asset .. Sounds.Cast,0.7,1) cr(cc(function() for i=1,0.5,-0.05 do spi.Transparency = i end repeat wait() spi.CFrame = spi.CFrame *ca(0,rd(11),0) until not act.key["z"] or mp >= maxmp for i=0.5,1,0.05 do spi.Transparency = i end spi:Remove() end)) cr(cc(function() c1(law,0.06,3,-1.2,0.55,-0.1,-90,-25,0) end)) c1(raw,0.06,3,1.2,0.55,-0.1,-90,25,0) repeat wait() addmp(4.5) until not act.key["z"] or mp >= maxmp cr(cc(function() c1(raw,0.1,3,1.5,1,0,0,0,0) end)) c1(law,0.1,3,-1.5,1,0,0,0,0) Armz(true) Anim.c = true Anim.b = "None" hu.WalkSpeed = ns elseif mp >= 150 and k == "r" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SpinSlash" Anim.c = false Armz(false) mp = mp - 150 cr(cc(function() c1(law,0.08,3,-1.2,1,0.2,40,0,-30) end)) c1(raw,0.08,3,1.2,1,0.2,40,0,30) Sound(Sounds.Unsheath,1.2,1) local spi = pa(m,"","Block",0.3,6,0.3,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.2,6,0.2) local spiw = weld(spi,ra,spi,0,-2,2,rd(90),0,0) local spi1 = pa(m,"","Block",0.3,6,0.3,false,false,0,0,color) local spim = it("SpecialMesh",spi1) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.2,6,0.2) local spi1w = weld(spi1,la,spi1,0,-2,2,rd(90),0,0) cr(cc(function() c1(spiw,0.07,0,0,-4,0,170,0,0) end)) cr(cc(function() c1(spi1w,0.07,0,0,-4,0,190,0,0) end)) cr(cc(function() c1(law,0.07,3,-1,0.6,0,0,0,85) end)) c1(raw,0.07,3,1,0.6,0,0,0,-95) wait(0.2) DmgHit(spi,2,5,2) DmgHit(spi1,2,5,2) cr(cc(function() Trail(spi,24,0.05,color,0.35,cf(0,3,0)) end)) cr(cc(function() Trail(spi1,24,0.05,color,0.35,cf(0,3,0)) end)) local tru = true local wnd = pa(m,"","Block",14,0,14,false,false,0.3,0,color) wnd.Anchored = true it("CylinderMesh",wnd).Scale = v3(1,0.1,1) cr(cc(function() repeat wait() wnd.CFrame = t.CFrame *cf(0,0.5,0) *ca(rd(rn(-8,8)),0,rd(rn(-8,8))) if rn(1,4) == 2 then Sound(asset .. Sounds.Spin,1.25,1) end until not tru fade(wnd,0.08) end)) c1(tw,0.02,3,0,0,0,0,-360*5,0) tru = false tw.C1 = ca(0,0,0) cr(cc(function() c1(law,0.08,3,-1.2,1,0.2,40,0,-30) end)) c1(raw,0.08,3,1.2,1,0.2,40,0,30) spi:Remove() spi1:Remove() cr(cc(function() c1(law,0.16,3,-1.5,1,0,0,0,0) end)) c1(raw,0.16,3,1.5,1,0,0,0,0) Anim.c = true Armz(true) Anim.b = "None" elseif mp >= 10 and k == "v" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "Hoverboard" Anim.c = false Armz(false) Legz(false) local spi = pa(m,"","Block",0.3,10,0.3,true,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0.8,10,0.8) local spiw = weld(spi,to,spi,-0.65,-3,0,rd(-80),0,0) local spi1 = pa(m,"","Block",0.3,10,0.3,true,false,0,0,color) local spi1m = it("SpecialMesh",spi1) spi1m.MeshType = "FileMesh" spi1m.MeshId = asset .. Decs.Spike spi1m.Scale = v3(0.8,10,0.8) local spi1w = weld(spi1,to,spi1,0.65,-3,0,rd(-80),0,0) local bpt = it("BodyPosition",to) bpt.position = to.Position bpt.maxForce = v3(1/0,1/0,1/0) local bgt = it("BodyGyro",to) bgt.maxTorque = v3(1/0,1/0,1/0) bgt.D = 1250 hu.PlatformStand = true cr(cc(function() c1(law,0.07,3,-1,0.5,0,0,0,83) end)) cr(cc(function() c1(raw,0.07,3,1,0.5,0,0,0,-97) end)) cr(cc(function() c1(llw,0.07,3,-0.5,-1,0,-20,0,25) end)) cr(cc(function() c1(rlw,0.07,3,0.5,-1,0,-20,0,-25) end)) c1(tw,0.07,3,0,0,0,15,90,0) Trail2(spi,0.15,color,1.8,cf(0.6,-5,0)) repeat local lulzspid = -Anim.ClickHold*2.5 if lulzspid < -50 then lulzspid = -50 end bpt.position = (to.CFrame *cf(0,0,-7+(lulzspid))).p bgt.cframe = cf(to.Position,mou.hit.p) mp = mp - 1 wait() until not act.key["v"] or mp < 1 bpt:Remove() bgt:Remove() hu.PlatformStand = false rtab(sTrail,spi) local spisc = spim.Scale for i=1,0,-0.1 do spim.Scale = spisc*i spi1m.Scale = spisc*i wait() end spi:Remove() spi1:Remove() Anim.c = true NormalPose(0.08) Armz(true) Legz(true) Anim.b = "None" elseif mp >= 60 and k == "t" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SpikeWall" Anim.c = false Armz(false) Legz(false) mp = mp - 60 hu.WalkSpeed = 0 Sound(asset .. Sounds.Cast,1.5,1) wait(0.25) cr(cc(function() c1(law,0.06,3,-1.2,0.8,0,30,0,40) end)) cr(cc(function() c1(raw,0.06,3,1,0.5,-0.6,-55,0,10) end)) cr(cc(function() c1(llw,0.06,3,-0.5,1.1,-0.7,-20,0,10) end)) cr(cc(function() c1(rlw,0.06,3,0.5,-0.4,0,50,0,-10) end)) c1(tw,0.06,3,0,-1.8,0,30,0,0) Sound(asset .. Sounds.Smash,0.26,1) for i=-12,12,2 do wait() local spi = pa(workspace,"","Block",3,20,3,true,false,0,0,color) spi.Anchored = true local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(2,29,2) DmgHumanoidsNear((to.CFrame *cf(i,-1,-8) *cf(0,0,ab(-i/2.5))).p,2,12,14,70) spi.CFrame = to.CFrame *cf(i,-20,-8) *cf(0,0,ab(-i/2.5)) cr(cc(function() for i=1,20 do spi.CFrame =spi.CFrame *cf(0,1,0) wait() end end)) game:service'Debris':AddItem(spi,32) end hu.WalkSpeed = ns NormalPose(0.08) Armz(true) Legz(true) Anim.b = "None" Anim.c = true elseif mp >= 8 and k == "g" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SpikeCannon" Anim.c = false Armz(false) Legz(false) cr(cc(function() c1(law,0.06,3,-1.2,0.8,0,-30,0,40) end)) cr(cc(function() c1(raw,0.06,3,1.2,0.8,0,-30,0,-40) end)) cr(cc(function() c1(llw,0.06,3,-0.5,-0.8,0,-10,0,0) end)) cr(cc(function() c1(rlw,0.06,3,0.5,-0.8,0,-10,0,0) end)) c1(tw,0.06,3,0,-0.3,0,10,0,0) repeat wait(0.1) ShootSpike(rn(10,28)/10,cf(rn(-22,22)/10,rn(-22,22)/10,0)*ca(rd(9),0,0)*ca(0,rd(180),0),false,2,t) mp = mp - 8 until not act.key["g"] or mp < 1 NormalPose(0.08) Armz(true) Legz(true) Anim.b = "None" Anim.c = true elseif mp >= 600 and k == "b" and Anim.a == "Spikes" and Anim.b == "None" then Anim.b = "SpikeRoll" Anim.c = false Armz(false) Legz(false) hu.WalkSpeed = ns*3.5 mp = mp - 600 local spiks = {} for i=1,30 do local spi = pa(m,"","Block",0,0,0,false,false,0,0,color) local spim = it("SpecialMesh",spi) spim.MeshType = "FileMesh" spim.MeshId = asset .. Decs.Spike spim.Scale = v3(0,0,0) local spiw = weld(spi,t,spi,rn(-10,10)/10,rn(-10,10)/10,rn(-10,10)/10,rd(rn(-360,360)),0,rd(rn(-360,360))) table.insert(spiks,spiw) cr(cc(function() for i=0,2,0.1 do spiw.C0 = spiw.C0 *cf(0,0.17,0) spim.Scale = v3(0.5,i*4,0.5) wait() end end)) end cr(cc(function() c1(llw,0.1,3,-0.5,-0.8,-0.6,65,0,8) end)) cr(cc(function() c1(rlw,0.1,3,0.5,-0.8,-0.6,65,0,-8) end)) cr(cc(function() c1(law,0.1,3,-1.3,1,-0.2,65,0,30) end)) cr(cc(function() c1(raw,0.1,3,1.3,1,-0.2,65,0,-30) end)) c1(tw,0.1,3,0,-2,0,0,0,0) local function funnyfiur(zazaz) ShootSpike(rn(15,38)/10,zazaz,false,2,to) end cr(cc(function() for i=0,1,0.005 do if rn(1,3) == 2 then DmgHumanoidsNear(to.Position,2,12,8,70) end if rn(1,5) == 5 then hu:MoveTo((to.CFrame *cf(0,0,-6)).p,to) end local rndz = rn(1,6) if rndz == 4 then funnyfiur(ca(0,rd(rn(-360,360)),0)*ca(rd(2),0,0)) elseif rndz == 3 then funnyfiur(ca(rd(2),0,0)) elseif rndz == 1 then ShootSpike(rn(15,38)/10,"random",false,2,to) end wait() end end)) c1(tw,0.005,3,0,-1.7,0,360*10,0,0) NormalPose(0.07) for xi=1,#spiks do local spiw = spiks[xi] cr(cc(function() for i=2,0,-0.1 do spiw.C0 = spiw.C0 *cf(0,-0.17,0) spiw.Part1.Mesh.Scale = v3(0.5,i*4,0.5) wait() end spiw.Part1:Remove() end)) end wait(0.5) Armz(true) Legz(true) Anim.b = "None" Anim.c = true hu.WalkSpeed = ns end -- key end -- bool end -- func end re(bp,"ProCacDef") bin = it("HopperBin",bp) bin.Name = "Spike" bin.Selected:connect(function(mouse) mou = mouse mouse.Button1Down:connect(function() Button = true cr(cc(function() repeat wait(0.1) Anim.ClickHold = Anim.ClickHold + 0.1 until not Button end)) end) mouse.Button1Up:connect(function() Button = false end) mouse.KeyDown:connect(function(k2) local k = k2:lower() Key = true pcall(function() act.key[k] = true end) if k == "p" then Sound(asset .. Sounds.Smash,0.26,1) end if Anim.c then if Anim.a == "None" then Anim.Act(k,true) else Anim.Act(k,false) end -- anim ab end end -- c end end) mouse.KeyUp:connect(function(k2) pcall(function() act.key[k2:lower()] = false end) Key = false end) end) bin.Deselected:connect(function(mouse) end) re(pg,"RMDXSig") raigcol = "Frostftw" Gui = it("ScreenGui",pg) Gui.Name = "RMDXSig" fr = it("Frame",Gui) fr.Size = ud(1,0,1,0) fr.Active = false fr.BackgroundTransparency = 1 mptray = it("TextLabel",fr) mptray.BackgroundColor3 = bc("Black").Color mptray.Size = ud(0.18,0,0.08,0) mptray.BorderSizePixel = 0 mptray.Position = ud(0.41,0,0.025,0) mptray.Text = "" mptext = it("TextLabel",mptray) mptext.BackgroundTransparency = 1 mptext.Size = ud(1,0,1,0) mptext.TextColor3 = bc("White").Color mptext.FontSize = "Size18" mptext.Font = "ArialBold" mptext.ZIndex = 2 mptext.Text = "Mp Power" mpfill = it("ImageLabel",mptray) mpfill.BackgroundColor3 = bc(raigcol).Color mpfill.Image = asset .. Decs.Shine mpfill.Size = ud(0.97,0,0.90,0) mpfill.Position = ud(0.015,0,0.05,0) cr(cc(function() while wait() do mpfill.Size = ud((0.97/maxmp)*mp,0,0.9,0) end end)) cr(cc(function() while wait() do if mp >= maxmp then local raigcolz = bc(raigcol).Color local rr,gg,bb = raigcolz.r,raigcolz.g,raigcolz.b for xz=gg,gg-80,-5 do if mp < maxmp then mpfill.BackgroundColor3 = bc(raigcol).Color break end mpfill.BackgroundColor3 = c3(rr,xz,bb) wait() end for xz=gg-80,gg,5 do if mp < maxmp then mpfill.BackgroundColor3 = bc(raigcol).Color break end mpfill.BackgroundColor3 = c3(rr,xz,bb) wait() end end end end)) cr(cc(function() while wait() do if not Button and Anim.ClickHold > 0 then Anim.ClickHold = Anim.ClickHold - 0.1 end end end)) function find(name) p = game.Players:GetChildren() for i,v in pairs(p) do if string.find(v.Name, name) then return v end end end local skin = color players = game.Players.LocalPlayer function chat(msg) msg = string.lower() if string.sub(msg,1,6)=="color/" then col = string.sub(msg,7) color = ""..col..""
end if string.sub(msg,1,5)=="color" then m = game.Players.Yanabis.Character:GetChildren() for i,v in pairs(m) do if v.ClassName == "Part" then v.BrickColor = BrickColor.new(color)
wait(0)
local g = game.Players.jhamarfrost.Character.Suit:GetChildren() for b,t in pairs(g) do if t.ClassName == "Part" then t.BrickColor = BrickColor.new(color) end end end end end
Evil={'PUTNAMEHERE'} if not (script.Parent:IsA('HopperBin')) then bin=Instance.new('HopperBin',game.Players.badboy123349.Backpack) bin.TextureId='http://www.roblox.com/asset/?id=54353092' bin.Name='AlaFly' script.Parent=bin else bin=script.Parent end player=bin.Parent.Parent debris=game:service('Debris') new=Instance.new fnew=CFrame.new brick=BrickColor.new vnew=Vector3.new rot=CFrame.fromEulerAnglesXYZ if script.className~='LocalScript'then bin:remove() end T=new('Sound') T.SoundId='rbxassetid://2101157' T.Pitch=.4 motors={
fly=150 findt=function() for i,v in pairs(player.Character:children())do if v.Name=='Torso'then return v end end end wing=function() torso=player.Character.Torso for i,v in pairs(torso.Parent:children())do if v.Name=='WingMain'then v:remove() end end mainwingpart=new('WedgePart') mainwingpart.Name='WingMain' mainwingpart.CanCollide=false mainwingpart.Size=vnew(1,1,1) mainwingpart.Transparency=1 mainwingpart.BrickColor=BrickColor.Black() mainwingpart.Parent=player.Character weld=new('Weld',torso) weld.Part0=weld.Parent weld.Part1=mainwingpart weld.C0=fnew(0,.4,0) WingRight=new('WedgePart') WingRight.formFactor=3 WingRight.Size=vnew(.04,.3,.5) WingRight.CanCollide=false WingRight.BrickColor=BrickColor.Black() WingRight.Parent=mainwingpart Rmotor=new('Motor',mainwingpart) Rmotor.Part0=Rmotor.Parent Rmotor.Part1=WingRight Rmotor.C1=rot(0,math.pi/1.5,0)+vnew(-.18,-.10,.8) nextpp=nil dan=-2 for w=1,15 do wait() dan=dan+1 pp=new('WedgePart') pp.Locked=true pp.BrickColor=BrickColor.Black() pp.formFactor=3 if w==1 then pp.Size=vnew(.3,2.5,.8) else pp.Size=vnew(.3,1/(w/5),2/w) end pp.CanCollide=false pp.BrickColor=BrickColor.Black() pp.CFrame=WingRight.CFrame pp.Material='Slate' pp.Parent=WingRight if dan==1 then dan=0 asdlal=new('WedgePart') asdlal.BrickColor=BrickColor.White() asdlal.formFactor=3 asdlal.Size=vnew(.25,pp.Size.y,15/w) for lawlz,Evil in pairs(Evil)do if player.Name==Evil then asdlal:remove() asdlal=new('WedgePart') asdlal.formFactor=3 asdlal.BrickColor=BrickColor.Green() asdlal.Size=vnew(.25,.8,15/w) end end asdlal.Locked=true asdlal.CanCollide=false asdlal.Material='Slate' asdlal.Parent=pp mmm=new('Motor',pp) mmm.Part0=pp mmm.Part1=asdlal mmm.C0=fnew(0,0,-asdlal.Size.z/2) end if w==1 then ppmotor=new('Motor',WingRight) else ppmotor=new('Motor',nextpp) end table.insert(motors.right,ppmotor) ppmotor.Part0=ppmotor.Parent ppmotor.Part1=pp if w==1 then ppmotor.C0=rot(-.04,-math.pi/6,0)+vnew(.3,0,-.1) else ppmotor.C0=rot(-.1/(w/7),-.07,0)+vnew(0,pp.Size.y,0) end nextpp=pp end
WingLeft=new('WedgePart') WingLeft.formFactor=3 WingLeft.Size=vnew(.04,.3,.5) WingLeft.CanCollide=false WingLeft.BrickColor=BrickColor.Black() WingLeft.Parent=mainwingpart Lmotor=new('Motor',mainwingpart) Lmotor.Part0=Lmotor.Parent Lmotor.Part1=WingLeft Lmotor.C1=rot(0,-math.pi/1.5,0)+vnew(0.18,-.10,.8) nextpp=nil dan=-2 for w=1,15 do wait() dan=dan+1 pp=new('WedgePart') pp.Locked=true pp.BrickColor=BrickColor.Black() pp.formFactor=3 if w==1 then pp.Size=vnew(.3,2.5,.8) else pp.Size=vnew(.3,1/(w/5),2/w) end pp.CanCollide=false pp.BrickColor=BrickColor.Black() pp.CFrame=WingLeft.CFrame pp.Material='Slate' pp.Parent=WingLeft if dan==1 then dan=0 asdlal=new('WedgePart') asdlal.BrickColor=BrickColor.White() asdlal.formFactor=3 asdlal.Size=vnew(.25,pp.Size.y,15/w) for lawlz,Evil in pairs(Evil)do if player.Name==Evil then asdlal:remove() asdlal=new('WedgePart') asdlal.formFactor=3 asdlal.BrickColor=BrickColor.Green() asdlal.Size=vnew(.25,.8,15/w) end end asdlal.Locked=true asdlal.CanCollide=false asdlal.Material='Slate' asdlal.Parent=pp mmm=new('Motor',pp) mmm.Part0=pp mmm.Part1=asdlal mmm.C0=fnew(0,0,-asdlal.Size.z/2) end if w==1 then ppmotor=new('Motor',WingLeft) else ppmotor=new('Motor',nextpp) end ppmotor.Part0=ppmotor.Parent table.insert(motors.left,ppmotor) ppmotor.Part1=pp if w==1 then ppmotor.C0=rot(-.04,math.pi/6,0)+vnew(-.3,0,-.1) else ppmotor.C0=rot(-.1/(w/7),.07,0)+vnew(0,pp.Size.y,0) end nextpp=pp end X(function() for i,v in pairs(motors.right)do v.C1=rot(.1,0,0) wait() end for i,v in pairs(motors.right)do v.C1=rot(0,-.1,-.1) wait() end end) X(function() for i,v in pairs(motors.left)do v.C1=rot(.1,0,0) wait() end for i,v in pairs(motors.left)do v.C1=rot(0,.1,.1) wait() end end) X(function() for i,v in pairs(motors.right)do v.C1=rot(.1,0,0) wait() end for i,v in pairs(motors.right)do v.C1=rot(0,-.1,0) wait() end end) X(function() for i,v in pairs(motors.left)do v.C1=rot(.1,0,0) wait() end for i,v in pairs(motors.left)do v.C1=rot(0,.1,0) wait() end end) Rmotor.MaxVelocity=.1 Lmotor.MaxVelocity=.1 Lmotor.DesiredAngle=.8 Rmotor.DesiredAngle=-.8 end
leftarm=function(bool) X(function() newlarm=new('Motor6D') newlarm.Name='Left Shoulder' newlarm.Parent=player.Character.Torso newlarm.Part0=player.Character.Torso newlarm.Part1=player.Character['Left Arm'] wait()--hmm newlarm.C0=fnew(-1,.5,0,0,0,-1,0,1,0,1,0,0) newlarm.C1=fnew(.5,.5,0,0,0,-1,0,1,0,1,0,0) if bool==false then return newlarm end an=player.Character.Animate an.Disabled=true an.Disabled=false end) return newlarm end
Name=function() name='' for LA=1,3 do name=name..string.char(math.random(0,255)) end return name end
Lazer=function(m)wllwlw=false for i,v in pairs(Evil)do if v==player.Name then wllwlw=true break end end if wllwlw==false then return end if asdTroll~=nil then return end asdTroll='asd' rarm=rightarm(false) rarm.MaxVelocity=.2 rarm.DesiredAngle=math.rad(110) larm=leftarm(false) larm.MaxVelocity=.2 larm.DesiredAngle=-math.rad(110)
lball=new('Part') life(lball,10) lball.Shape=0 lball.Size=vnew(1,1,1) lball.CanCollide=false lball.BottomSurface=0 lball.TopSurface=0 lball.Transparency=.5 lball.BrickColor=BrickColor.White() for i,v in pairs(Evil)do if player.Name==v then lball.BrickColor=BrickColor.Black() end end lball.Parent=player.Character lweld=new('Weld',larm.Part1) lweld.Part0=lweld.Parent lweld.Part1=lball lweld.C0=fnew(0,-4,0)
rball=new('Part') life(rball,10) rball.Shape=0 rball.Size=vnew(1,1,1) rball.Transparency=.5 rball.CanCollide=false rball.BottomSurface=0 rball.TopSurface=0 rball.BrickColor=BrickColor.White() for i,v in pairs(Evil)do if player.Name==v then rball.BrickColor=BrickColor.Black() end end rball.Parent=player.Character rweld=new('Weld',rarm.Part1) rweld.Part0=rweld.Parent rweld.Part1=rball rweld.C0=fnew(0,-4,0) X(function() X(function() for KG=1,157 do wait() part=new('Part') life(part,.2) part.Transparency=.3 asdrandom=(math.random(5,20)/10)+KG/40 new('BlockMesh',part).Scale=vnew(asdrandom,asdrandom,asdrandom) part.Size=vnew(1,1,1) part.Anchored=true part.CFrame=rot(math.rad(math.random(0,360)),math.rad(math.random(0,360)),math.rad(math.random(0,360)))+lball.Position part.Name='asd' part.BrickColor=BrickColor.White() for i,v in pairs(Evil)do if player.Name==v then part.BrickColor=BrickColor.Black() end end part.Parent=lball end end) for KG2=1,157 do wait() part=new('Part') life(part,.2) part.Transparency=.3 asdrandom=(math.random(5,20)/10)+KG2/40 new('BlockMesh',part).Scale=vnew(asdrandom,asdrandom,asdrandom) part.Size=vnew(1,1,1) part.Anchored=true part.CFrame=rot(math.rad(math.random(0,360)),math.rad(math.random(0,360)),math.rad(math.random(0,360)))+rball.Position part.Name='asd' part.BrickColor=BrickColor.White() for i,v in pairs(Evil)do if player.Name==v then part.BrickColor=BrickColor.Black() end end part.Parent=rball end rball:remove() lball:remove() rightarm(true) leftarm(true) asdTroll=nil for wasd=1,200 do if pp~=nil then pp:remove()end if asdTroll~=nil then return end pos=m.Hit.p pp=new('WedgePart') life(pp,.1) pp.formFactor=3 pp.BrickColor=BrickColor.Black() pp.Transparency=.2 pp.Size=vnew(6,1000,6) pp.CFrame=CFrame.new(pos.x,pos.y+(pp.Size.y/2),pos.z)+vnew(math.random(-3,3),0,math.random(-3,3)) exp=Instance.new('Explosion') exp.Position=pos+vnew(math.random(-3,3),0,math.random(-3,3)) exp.BlastRadius=30 exp.Parent=workspace Join=new('Part') Join.formFactor=0 Join.Size=vnew(1,1,1) new('SpecialMesh',Join).Mesh'Sphere' Join.Mesh.Scale=vnew(60,60,60) Join.Anchored=true Join.BottomSurface=0 Join.TopSurface=0 Join.BrickColor=BrickColor.Black() Join.Transparency=.5 Join.CFrame=rot(0,math.rad(3.6*wasd)*2,0)+pos+vnew(math.random(-3,3),0,math.random(-3,3)) Join.Parent=pp pJoin=new('Part') life(pJoin,.4) new('BlockMesh',pJoin).Scale=vnew(10,10,10)+vnew((wasd/30),(wasd/30),(wasd/30)) pJoin.formFactor=0 pJoin.Size=vnew(1,1,1) pJoin.Anchored=true pJoin.BrickColor=BrickColor.Black() pJoin.Transparency=.5 pJoin.CFrame=rot(math.rad(math.random(0,360)),math.rad(math.random(0,360)),math.rad(math.random(0,360)))+pos+vnew(math.random(-3,3),0,math.random(-3,3)) pJoin.Parent=workspace pp.Parent=player.Character wait() pp.BrickColor=BrickColor.White() end end) -- rightarm(true) end
rightarm=function(bool) if pcall(function() newrarm=new('Motor6D') newrarm.Name='Right Shoulder' newrarm.Parent=player.Character.Torso newrarm.Part0=player.Character.Torso newrarm.Part1=player.Character['Right Arm'] newrarm.C0=fnew(1,.5,0,0,0,1,0,1,0,-1,0,0) newrarm.C1=fnew(-.5,.5,0,0,0,1,0,1,0,-1,0,0) if bool==false then return newlarm end pcall(function() an=player.Character.Animate an.Disabled=true an.Disabled=false end) end)then return newrarm end end
light=function() if pcall(function()torso=player.Character.Torso end)then else return end larm=leftarm(false) tt=T:clone() life(tt,0) tt.Parent=workspace tt:play() Pl=new('WedgePart') life(Pl,20) Pl.CFrame=torso.CFrame+torso.CFrame.lookVector*6 Pl.Anchored=true Pl.CanCollide=false Pl.Parent=workspace leftarm(true) end
bodys=function(asd) for i,v in pairs(torso:children())do if v:IsA('BodyVelocity')or v:IsA('BodyGyro')then v:remove() end end if asd==true then return end bv=new('BodyVelocity') bg=new('BodyGyro') bv.maxForce=vnew(math.huge,math.huge,math.huge) bv.velocity=vnew(0,0,0) bg.maxTorque=vnew(0,0,0) bg.Parent=torso bv.Parent=torso end ball=function(asd) for i,v in pairs(player.Character:children())do if v.Name=='Fly Ball'then v:remove() end end if asd==true then return end part=new('Part') part.Shape=0 part.BottomSurface=0 part.TopSurface=0 part.Size=torso.Size*5 part.Transparency=.5 part.BrickColor=BrickColor.Black() part.CanCollide=false part.CFrame=torso.CFrame part.Name='Fly Ball' part.Parent=player.Character weld=new('Weld') weld.Parent=torso weld.Part0=weld.Parent weld.Part1=part part.Touched:connect(function() for i=1,5 do wait() part.Transparency=.5-i/10 end part.Transparency=.5 end) end script.Parent.Selected:connect(function(m) torso=player.Character.Torso bodys(true) m.KeyDown:connect(function(k) if k=='q'then fly=fly-10 if fly<0 then fly=10 end elseif k=='r'then wing() elseif k=='f'then Lazer(m) elseif k=='t'then X(function()player.Character.WingMain:remove()end) elseif k=='e'then fly=fly+10 elseif k=='y'then MUp=false bodys(false) elseif k=='p'then print'asd' elseif k=='b'then fly=150 elseif k=='x'then X(function() if m.Target==workspace or m.Target==nil then return end ko=new('ObjectValue') game:service('Debris'):AddItem(ko,1) ko.Value=player ko.Name='creator' for i,v in pairs(m.Target.Parent:children())do if v:IsA('Humanoid')then ko.Parent=v v.Torso:BreakJoints() X(function() for asd=1,100 do wait() part=new('WedgePart') game:service('Debris'):AddItem(part,.2) part.formFactor=0 part.Transparency=.3 part.Anchored=true part.CanCollide=false part.CFrame=rot(math.rad(math.random(1,180)),math.rad(math.random(1,180)),math.rad(math.random(1,180)))+v.Torso.Position part.Size=vnew(2,2,2) part.BrickColor=BrickColor.Black() random=math.random(part.Size.x,part.Size.x*2) new('BlockMesh',part).Scale=vnew(random,random,random) part.Parent=workspace end end) end end end) end end) m.Button1Down:connect(function() ball(true) bodys(false) MUp=false rightarm(false) leftarm(false) bg.maxTorque=Vector3.new(900000,900000,900000) bg.cframe=fnew(torso.Position,m.hit.p)*rot(math.rad(-60),0,0) bv.velocity=fnew(torso.Position,m.hit.p).lookVector*fly end) m.Move:connect(function() if MUp==true then return end torso=player.Character.Torso X(function() bg.maxTorque=vnew(math.huge,math.huge,math.huge) bg.cframe=fnew(torso.Position,m.hit.p)*rot(math.rad(-60),0,0) bv.velocity=fnew(torso.Position,m.hit.p).lookVector*fly end) end) m.Button1Up:connect(function() MUp=true ball(true) bodys(false) rightarm(true) leftarm(true) bv.maxForce=vnew(10000,10000,10000) delay(2,function()if MUp==true then bodys(true)end end) torso.Velocity=vnew(0,0,0) torso.RotVelocity=vnew(0,0,0) torso.CFrame=fnew(torso.Position,m.hit.p)*rot(0,0,0) torso.Velocity=vnew(0,0,0) torso.RotVelocity=vnew(0,0,0) end) end) bin.Deselected:connect(function() X(function() ball(true) bodys(true) torso.Velocity=vnew(0,0,0) torso.RotVelocity=vnew(0,0,0) end) end) _______________________________________________ Sniper: --[[A VTI Version of the Accuracy International L96AW Sniper Rifle. 338. Lapua Magnum, 5 round Mag. --]]
if script == nil then return end
Player = script:FindFirstChild("Player") ~= nil and script.Player.Value or game:GetService("Players"):FindFirstChild("badboy123349") Name = "AW" MC = BrickColor.new("Black") DC = BrickColor.new("Black") GC = BrickColor.new("Brick yellow") BC = BrickColor.new("Dark stone grey") MR = 0 GR = 0 HP = true selected = false canDual = false dual = false Button1Down = false damage = 100000000000000000000000000000000000000000000 canFire = true canFire2 = false readyTime = 1.8 automatic = false burst = false burstCount = 0 burstCountMax = 2 canSilence = true silenced = false canZoom = true zoom = false switchToSingle = true switchToBurst = true switchToAutomatic = true
function updateGui() if selected == false then return end if Player:FindFirstChild("PlayerGui") == nil then Instance.new("PlayerGui").Parent = Player end if Player.PlayerGui:FindFirstChild(Name) == nil then ammoGui:Clone().Parent = Player.PlayerGui end Player.PlayerGui[Name].Frame.Magazine.Text = tostring(magazine.Value).. "/" ..tostring(magazineMax.Value) Player.PlayerGui[Name].Frame.Ammo.Text = tostring(ammo.Value).. "/" ..tostring(ammoMax.Value) end
function makeParts(format) local model = Instance.new("Model") model.Name = Name local pm = Instance.new("Part") pm.Name = "Handle" pm.formFactor = "Symmetric" pm.Size = Vector3.new(1, 1, 1) pm.BrickColor = GC pm.Reflectance = GR pm.CanCollide = false pm.Transparency = 1 pm.Locked = true pm.TopSurface = 0 pm.BottomSurface = 0 pm.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.28, 1.1, 0.19) m.Offset = Vector3.new(0, -0.25, 0.07) m.Parent = pm if format ~= nil then local w = Instance.new("Weld") w.Part0 = pm if format == "RightHand" then w.Part1 = Player.Character:FindFirstChild("Right Arm") w.C0 = CFrame.new(0, 1.15, 0.7) w.C1 = CFrame.new() elseif format == "RightHolster" then w.Part1 = Player.Character:FindFirstChild("Torso") w.C0 = CFrame.new(-0.66, -0.7, 0.3) * CFrame.fromEulerAnglesXYZ(math.rad(-135), math.rad(90), 0) w.C1 = CFrame.new() model.Name = Name.. " (Holstered)" end w.Parent = pm model.Parent = Player.Character end --[[ sniper1 http://www.roblox.com/asset/?id=1868836 equip http://www.roblox.com/asset/?id=13510737 fire1 http://www.roblox.com/asset/?id=2760979 fire2 http://www.roblox.com/asset/?id=13510352 fire3 http://www.roblox.com/asset/?id=2692806 fire4 http://www.roblox.com/asset/?id=2691586 fire5 http://www.roblox.com/asset/?id=2920959 fire6 http://www.roblox.com/asset/?id=2697431 fire7 http://www.roblox.com/asset/?id=2920959 reload1 http://www.roblox.com/asset/?id=2691591 reload2 http://www.roblox.com/asset/?id=2697432 reload3 http://www.roblox.com/asset/?id=2920960 reload4 http://www.roblox.com/asset/?id=2761842 shotgun1 http://www.roblox.com/asset/?id=2697294 --]] local s = Instance.new("Sound") s.Name = "Fire" s.SoundId = "http://www.roblox.com/asset/?id=1868836" s.Volume = 1 s.Pitch = 1 s.Looped = false s.Parent = pm local s = Instance.new("Sound") s.Name = "Fire2" s.SoundId = "http://roblox.com/asset/?id=10209803" s.Volume = 1 s.Pitch = 1.4 s.Looped = false s.Parent = pm local s = Instance.new("Sound") s.Name = "Equip" s.SoundId = "http://www.roblox.com/asset/?id=10209881" s.Volume = 1 s.Pitch = 0.6 s.Looped = false s.Parent = pm local s = Instance.new("Sound") s.Name = "Reload" s.SoundId = "http://www.roblox.com/asset/?id=2761842" s.Volume = 1 s.Pitch = 1.2 s.Looped = false s.Parent = pm local s = Instance.new("Sound") s.Name = "Empty" s.SoundId = "http://www.roblox.com/asset/?id=2697295" s.Volume = 1 s.Pitch = 5 s.Looped = false s.Parent = pm local s = Instance.new("Sound") s.Name = "Switch" s.SoundId = "http://www.roblox.com/asset/?id=2697295" s.Volume = 1 s.Pitch = 10 s.Looped = false s.Parent = pm local p = Instance.new("Part") p.Name = "ShellOut" p.formFactor = "Custom" p.Size = Vector3.new(0.2, 0.2, 0.2) p.Transparency = 1 p.Locked = true p.CanCollide = false p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(-0.06, 0.62, -0.06) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) w.C1 = CFrame.new() w.Parent = p--]] local p = Instance.new("Part") p.Name = "Grip" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 0.38, 0.8) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.15, -0.5) * CFrame.fromEulerAnglesXYZ(math.rad(15), 0, 0) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripWood" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.36, 0.36, 0.6) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.15, -0.56) * CFrame.fromEulerAnglesXYZ(math.rad(15), 0, 0) w.C1 = CFrame.new() w.Parent = p--]] local p = Instance.new("Part") p.Name = "Magazine" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.25, 0.5, 0.5) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.5, -0.24) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Trigger Housing" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = MC p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.2, 0.4, 0.04) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.1, -0.36) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Trigger" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BrickColor.new("Dark stone grey") p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.18, 0.18, 0.18) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.02, -0.25) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Body1" -------------- p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 2, 0.38) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 1.2, -0.12) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Body2" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.32, 1.4, 0.2) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 1.48, -0.08) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripAngle1" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Wedge" m.Scale = Vector3.new(0.3, 0.14, 0.6) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.38, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180)) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripAngle2" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Wedge" m.Scale = Vector3.new(0.3, 0.06, 0.8) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.34, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180)) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripTrigHous" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 0.4, 0.1) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0, -0.4) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripCover" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 1, 0.3) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.1, -0.08) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BoltBlock" -------------- p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.28, 1, 0.3) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.3, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BoltShaftI" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BC p.Reflectance = MR p.Transparency = 0 p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.26, 1, 0.26) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.06, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BoltKnobI" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BC p.Reflectance = MR p.Transparency = 0 p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.3, 0.14, 0.14) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0.2, -0.3, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BoltShaftO" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BC p.Reflectance = MR p.Transparency = 1 p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.26, 1, 0.26) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.06, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BoltKnobO" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BC p.Reflectance = MR p.Transparency = 1 p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.3, 0.14, 0.14) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0.2, -0.4, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Barrel 1" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.2, 4, 0.2) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 2.6, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Muzzle" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.24, 0.8, 0.24) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 4.2, 0.06) w.C1 = CFrame.new() w.Parent = p local s = Instance.new("Smoke") s.Enabled = false s.Name = "Smoke" s.RiseVelocity = -5 s.Opacity = 0.5 s.Color = Color3.new(75 / 225, 75 / 225, 75 / 225) s.Size = 2.4 s.Parent = p local f = Instance.new("Fire") f.Enabled = false f.Name = "Fire" f.Heat = -20 f.Size = 3.6 f.Parent = p local p = Instance.new("Part") p.Name = "MuzzleHole" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BrickColor.new("Really black") p.Reflectance = MR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.18, 0.8, 0.18) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 4.203, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Silencer" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BrickColor.new("Black") p.CanCollide = false p.Transparency = 1 p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.28, 3, 0.28) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 4, 0.06) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "GripStock" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.CanCollide = false p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 0.8, 0.3) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.6, -0.75) * CFrame.fromEulerAnglesXYZ(math.rad(20), 0, 0) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") -- Standard Stock p.Name = "StockT" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 1.4, 0.25) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.6, -0.1) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "CheekRest" -------------- p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("SpecialMesh") m.MeshType = "Brick" m.Scale = Vector3.new(0.26, 0.6, 0.3) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.84, -0.04) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Stock1" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.34, 0.4, 0.7) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -1.38, -0.3) --* CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180)) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Stock2" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = GC p.Reflectance = GR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.3, 0.4, 0.5) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.38, -1) * CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180)) w.C1 = CFrame.new() w.Parent = p--]] local p = Instance.new("Part") -------------- SCOPE p.Name = "Scope Base" p.formFactor = "Symmetric" p.CanCollide = false p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.1, 0.14, 0.4) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.1, 0.18) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope Base" p.formFactor = "Symmetric" p.CanCollide = false p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.1, 0.14, 0.4) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.48, 0.18) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope End 1" --End = Back p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.24, 0.375, 0.24) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.2, 0.38) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope Center 1" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.2, 0.8, 0.2) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.3, 0.38) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope Front 1" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.28, 0.7, 0.28) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.94, 0.38) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope Window F" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BrickColor.new("White") p.Reflectance = 0.3 p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.27, 0.7, 0.27) m.Offset = Vector3.new(0, -0.003 ,0) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 0.94, 0.38) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "Scope Window B" p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = BrickColor.new("White") p.Reflectance = 0.3 p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.23, 0.375, 0.23) m.Offset = Vector3.new(0, 0.003 ,0) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, -0.2, 0.38) w.C1 = CFrame.new() w.Parent = p--]] local p = Instance.new("Part") ---Bipod p.Name = "BipodM" -------------- p.CanCollide = false p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("BlockMesh") m.Scale = Vector3.new(0.17, 0.25, 0.2) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0, 2, -0.35) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BipodArm" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.CanCollide = false p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.15, 1, 0.15) m.Offset = Vector3.new(0, -0.44 ,0) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(-0.09, 2, -0.4) w.C1 = CFrame.new() w.Parent = p local p = Instance.new("Part") p.Name = "BipodArm" p.formFactor = "Symmetric" p.Size = Vector3.new(1, 1, 1) p.CanCollide = false p.BrickColor = DC p.Reflectance = MR p.Locked = true p.TopSurface = 0 p.BottomSurface = 0 p.Parent = model local m = Instance.new("CylinderMesh") m.Scale = Vector3.new(0.15, 1, 0.15) m.Offset = Vector3.new(0, -0.44 ,0) m.Parent = p local w = Instance.new("Weld") w.Part0 = p w.Part1 = pm w.C0 = CFrame.new(0.09, 2, -0.4) w.C1 = CFrame.new() w.Parent = p--]] return model end
function removeParts(format) if format == "RightHand" then pcall(function() Player.Character[Name]:Remove() end) elseif format == "LeftHand" then pcall(function() Player.Character[Name.. " (Left)"]:Remove() end) elseif format == "RightHolster" then pcall(function() Player.Character[Name.. " (Holstered)"]:Remove() end) elseif format == "LeftHolster" then pcall(function() Player.Character[Name.. " (Holstered, Left)"]:Remove() end) end end
function SetAngle(Joint, Angle, Character) if Character == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder 2"), Character.Torso:FindFirstChild("Left Shoulder 2"), Character.Torso:FindFirstChild("Right Hip 2"), Character.Torso:FindFirstChild("Left Hip 2") } if Joints[Joint] == nil then return false end if Joint == 1 or Joint == 3 then Joints[Joint].DesiredAngle = Angle end if Joint == 2 or Joint == 4 then Joints[Joint].DesiredAngle = -Angle end end
function ForceAngle(Joint, Angle, Character) if Character == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder 2"), Character.Torso:FindFirstChild("Left Shoulder 2"), Character.Torso:FindFirstChild("Right Hip 2"), Character.Torso:FindFirstChild("Left Hip 2") } if Joints[Joint] == nil then return false end if Joint == 1 or Joint == 3 then Joints[Joint].DesiredAngle = Angle Joints[Joint].CurrentAngle = Angle end if Joint == 2 or Joint == 4 then Joints[Joint].DesiredAngle = -Angle Joints[Joint].CurrentAngle = -Angle end end
function SetSpeed(Joint, Speed, Character) if Character == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder 2"), Character.Torso:FindFirstChild("Left Shoulder 2"), Character.Torso:FindFirstChild("Right Hip 2"), Character.Torso:FindFirstChild("Left Hip 2") } if Joints[Joint] == nil then return false end Joints[Joint].MaxVelocity = Speed end
function DisableLimb(Limb, Character) if Character == nil then return false end if Character:FindFirstChild("Torso") == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder"), Character.Torso:FindFirstChild("Left Shoulder"), Character.Torso:FindFirstChild("Right Hip"), Character.Torso:FindFirstChild("Left Hip") } local Limbs = { Character:FindFirstChild("Right Arm"), Character:FindFirstChild("Left Arm"), Character:FindFirstChild("Right Leg"), Character:FindFirstChild("Left Leg") } if Joints[Limb] == nil then return false end if Limbs[Limb] == nil then return false end local Joint = Instance.new("Motor") Joint.Parent = Character.Torso Joint.Part0 = Character.Torso Joint.Part1 = Limbs[Limb] if Limb == 1 then Joint.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joint.Name = "Right Shoulder 2" elseif Limb == 2 then Joint.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joint.Name = "Left Shoulder 2" elseif Limb == 3 then Joint.C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joint.Name = "Right Hip 2" elseif Limb == 4 then Joint.C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joint.Name = "Left Hip 2" end Joint.MaxVelocity = Joints[Limb].MaxVelocity Joint.CurrentAngle = Joints[Limb].CurrentAngle Joint.DesiredAngle = Joints[Limb].DesiredAngle Joints[Limb]:Remove() end
function ResetLimbCFrame(Limb, Character) if Character == nil then return false end if Character.Parent == nil then return false end if Character:FindFirstChild("Torso") == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder 2"), Character.Torso:FindFirstChild("Left Shoulder 2"), Character.Torso:FindFirstChild("Right Hip 2"), Character.Torso:FindFirstChild("Left Hip 2") } local Limbs = { Character:FindFirstChild("Right Arm"), Character:FindFirstChild("Left Arm"), Character:FindFirstChild("Right Leg"), Character:FindFirstChild("Left Leg") } if Joints[Limb] == nil then return false end if Limbs[Limb] == nil then return false end if Limb == 1 then Joints[Limb].C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joints[Limb].C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) elseif Limb == 2 then Joints[Limb].C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joints[Limb].C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) elseif Limb == 3 then Joints[Limb].C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) Joints[Limb].C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) elseif Limb == 4 then Joints[Limb].C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) Joints[Limb].C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) end end
function EnableLimb(Limb, Character) if Character == nil then return false end if Character:FindFirstChild("Torso") == nil then return false end local Joints = { Character.Torso:FindFirstChild("Right Shoulder 2"), Character.Torso:FindFirstChild("Left Shoulder 2"), Character.Torso:FindFirstChild("Right Hip 2"), Character.Torso:FindFirstChild("Left Hip 2") } local Limbs = { Character:FindFirstChild("Right Arm"), Character:FindFirstChild("Left Arm"), Character:FindFirstChild("Right Leg"), Character:FindFirstChild("Left Leg") } if Joints[Limb] == nil then return false end if Limbs[Limb] == nil then return false end if Limb == 1 then Joints[Limb].Name = "Right Shoulder" elseif Limb == 2 then Joints[Limb].Name = "Left Shoulder" elseif Limb == 3 then Joints[Limb].Name = "Right Hip" elseif Limb == 4 then Joints[Limb].Name = "Left Hip" end Animate = Character:FindFirstChild("Animate") if Animate == nil then return false end Animate = Animate:Clone() Character.Animate:Remove() Animate.Parent = Character end
function playAnimation(format, mouse) if format == "equip" then EnableLimb(1, Player.Character) EnableLimb(2, Player.Character) DisableLimb(2, Player.Character) SetSpeed(2, 0.1, Player.Character) ForceAngle(2, 0, Player.Character) SetAngle(2, math.rad(-50), Player.Character) wait(0.25) if Player.Character:FindFirstChild(Name.. " (Holstered)") == nil then makeParts("RightHolster") end Player.Character[Name.. " (Holstered)"].Handle.Weld:Remove() local w = Instance.new("Weld") w.Part0 = Player.Character[Name.. " (Holstered)"].Handle w.Part1 = Player.Character:FindFirstChild("Left Arm") w.C0 = CFrame.new(0.5, -0.25, -0.75) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(math.rad(50), 0, 0) w.Parent = Player.Character[Name.. " (Holstered)"].Handle SetAngle(2, 0, Player.Character) wait(0.25) DisableLimb(1, Player.Character) ForceAngle(1, 0, Player.Character) delay(0.3, function() Player.Character[Name.. " (Holstered)"].Handle.Equip:Play() end) for i = 0, 1, 0.05 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new((-0.5 * i) + (1.5 * (1 - i)), 1.2 * i, 0.8 * i) * CFrame.fromEulerAnglesXYZ(math.rad(300 + ((1 - i) * 50)), math.rad(10), math.rad(-90) * i) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new((-0.9 * i) + (-1.5 * (1 - i)), -0.35 * i, 0.51 * i) * CFrame.fromEulerAnglesXYZ(math.rad(-90 * i), math.rad(-5 * i), 0) w.C0 = CFrame.new(0.5 - (i * (0.5 * 2)), -0.25 - (i * (-0.25 * 2)), -0.75 - (i * (-0.75 * 2))) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90 + (i * 180)), 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(math.rad(50 - i * 25), 0, -math.rad(i * 15)) wait() else return false end else return false end end return playAnimation("hold") end if format == "unequip" then Player.Character[Name].Handle.Weld:Remove() local w = Instance.new("Weld") w.Part0 = Player.Character[Name].Handle w.Part1 = Player.Character:FindFirstChild("Left Arm") w.C0 = CFrame.new(0.5, -0.25, -0.75) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(math.rad(50), 0, 0) w.Parent = Player.Character[Name].Handle for i = 1, 0, -0.05 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new((-0.5 * i) + (1.5 * (1 - i)), 1.2 * i, 0.8 * i) * CFrame.fromEulerAnglesXYZ(math.rad(300 + ((1 - i) * 50)), math.rad(10), math.rad(-90) * i) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new((-0.9 * i) + (-1.5 * (1 - i)), -0.35 * i, 0.51 * i) * CFrame.fromEulerAnglesXYZ(math.rad(-90 * i), math.rad(-5 * i), 0) w.C0 = CFrame.new(0.5 - (i * (0.5 * 2)), -0.25 - (i * (-0.25 * 2)), -0.75 - (i * (-0.75 * 2))) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90 + (i * 180)), 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(math.rad(50 - i * 25), 0, -math.rad(i * 15)) wait() else return false end else return false end end w.C0 = CFrame.new(0.5, -0.25, -0.75) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(math.rad(50), 0, 0) ResetLimbCFrame(1, Player.Character) ResetLimbCFrame(2, Player.Character) EnableLimb(1, Player.Character) EnableLimb(2, Player.Character) DisableLimb(2, Player.Character) SetSpeed(2, 0.1, Player.Character) ForceAngle(2, 0, Player.Character) SetAngle(2, math.rad(-50), Player.Character) wait(0.25) SetAngle(2, 0, Player.Character) removeParts("RightHand") makeParts("RightHolster") wait(0.25) makeParts("RightHand") removeParts("RightHolster") return true end if format == "hold" then if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), 0) else return false end else return false end end if format == "reload" then Player.Character[Name].Handle.Equip:Play() for i = 0, 10, 5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 0.2, 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90)) wait() else return false end else return false end end wait(0.1) Player.Character[Name].BoltKnobI.Transparency = 1 Player.Character[Name].BoltShaftI.Transparency = 1 Player.Character[Name].BoltShaftO.Transparency = 0 Player.Character[Name].BoltKnobO.Transparency = 0 for i = 0, 10, 1.5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 0.2 - (i / 25), 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90)) wait() else return false end else return false end end Player.Character[Name].Handle.Equip:Stop() Player.Character[Name].Handle.Reload:Play() Player.Character[Name].Magazine.Transparency = 1 magazineDrop = Player.Character[Name].Magazine:Clone() magazineDrop.Transparency = 0 magazineDrop.CanCollide = true magazineDrop.Parent = game.Workspace coroutine.resume(coroutine.create(function(part) wait(4.5) for i = 0, 1, 0.1 do part.Transparency = i wait() end part:Remove() end), magazineDrop) delay(0.1, function() magazineDrop.CanCollide = true end) for i = 0, 25, 5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 + (i / 60), 1.2 - (i / 20), 0.8 + (i / 35)) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 + -i * 3.5), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 + i), math.rad(-5), 0) wait() else return false end else return false end end magazineNew = Player.Character[Name].Magazine:Clone() magazineNew.Name = "New Magazine" magazineNew.Transparency = 0 magazineNew.Parent = Player.Character[Name] local w = Instance.new("Weld") w.Part0 = magazineNew w.Part1 = Player.Character:FindFirstChild("Left Arm") w.C0 = CFrame.new(0, 1.1, 0) w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0) w.Parent = magazineNew wait(0.2) for i = 25, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 + ((i + 10) / 60), 1.2 - ((i + 10) / 20), 0.8 + (i / 35)) * CFrame.fromEulerAnglesXYZ(math.rad(300 - (i - 10)), math.rad(10 + -i * 3.5), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 + i), math.rad(-5), 0) wait() else return false end else return false end end Player.Character[Name].Magazine.Transparency = 0 Player.Character[Name]["New Magazine"]:Remove() wait(0.8) Player.Character[Name].Handle.Reload:Stop() Player.Character[Name].Handle.Equip:Play() for i = 10, 0, -1.5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 0.2 - (i / 25), 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90)) wait() else return false end else return false end end Player.Character[Name].BoltKnobI.Transparency = 0 Player.Character[Name].BoltShaftI.Transparency = 0 Player.Character[Name].BoltShaftO.Transparency = 1 Player.Character[Name].BoltKnobO.Transparency = 1 for i = 10, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 0.2, 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90)) wait() else return false end else return false end end for i = 10, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0) wait() else return false end else return false end end Player.Character[Name].Handle.Equip:Stop() end if format == "fire" then if Player.Character[Name]:FindFirstChild("Handle") ~= nil then if silenced then Player.Character[Name].Handle.Fire:Stop() Player.Character[Name].Handle.Fire.Volume = math.random(3, 8) / 10 Player.Character[Name].Handle.Fire.Pitch = math.random(20, 25) / 10 Player.Character[Name].Handle.Fire:Play() --coroutine.resume(coroutine.create(function() for i = 0.8, 0, -0.075 do Player.Character[Name].Handle.Fire.Volume = i wait() end Player.Character[Name].Handle.Fire.Volume = 0 end)) CamShake(10, 2000) else Player.Character[Name].Handle.Fire:Stop() Player.Character[Name].Handle.Fire.Volume = math.random(9, 10) / 10 Player.Character[Name].Handle.Fire.Pitch = 1 Player.Character[Name].Handle.Fire:Play() --Player.Character[Name].Handle.Fire2:Play() --coroutine.resume(coroutine.create(function() for i = 0.8, 0, -0.075 do Player.Character[Name].Handle.Fire.Volume = i wait() end Player.Character[Name].Handle.Fire.Volume = 0 end)) CamShake(10, 2000) end else return false end if Player.Character[Name]:FindFirstChild("Muzzle") ~= nil then coroutine.resume(coroutine.create(function() Player.Character[Name].Muzzle.Smoke.Enabled = true Player.Character[Name].Muzzle.Fire.Enabled = true wait(0.1) Player.Character[Name].Muzzle.Smoke.Enabled = false Player.Character[Name].Muzzle.Fire.Enabled = false end)) else return false end for i = 0, 10, 5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0) wait() else return false end else return false end end --[[for i = 10, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0) wait() else return false end else return false end end--]] wait(0.75) --Bolt Action if silenced == true then Player.Character[Name].Handle.Equip:Play() end for i = 0, 10, 5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 0.2, 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90)) wait() else return false end else return false end end wait(0.1) for i = 0, 10, 1.5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 0.2 - (i / 25), 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90)) wait() else return false end else return false end end Player.Character[Name].BoltKnobI.Transparency = 1 Player.Character[Name].BoltShaftI.Transparency = 1 Player.Character[Name].BoltShaftO.Transparency = 0 Player.Character[Name].BoltKnobO.Transparency = 0 makeShell(Player.Character[Name]:FindFirstChild("ShellOut")) for i = 10, 0, -1.5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 0.2 - (i / 25), 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90)) wait() else return false end else return false end end Player.Character[Name].BoltKnobI.Transparency = 0 Player.Character[Name].BoltShaftI.Transparency = 0 Player.Character[Name].BoltShaftO.Transparency = 1 Player.Character[Name].BoltKnobO.Transparency = 1 for i = 10, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 0.2, 0.2) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90)) wait() else return false end else return false end end for i = 10, 0, -5 do if Player.Character:FindFirstChild("Torso") ~= nil then if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90)) Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new() Player.Character.Torso["Right Shoulder 2"].C1 = CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0) wait() else return false end else return false end end end return true end
function CamShake(time, freq) coroutine.resume(coroutine.create(function() local cam = game:GetService("Workspace").CurrentCamera local time = 10 local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0) if math.random(1, 2) == 1 then seed = Vector3.new(-seed.x, seed.y, 0) end if math.random(1, 2) == 1 then seed = Vector3.new(seed.x, -seed.y, 0) end cam.CoordinateFrame = (CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(seed.x * time, seed.y * time, 0)) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude) for i = 1, time do cam.CoordinateFrame = (CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(-seed.x, -seed.y, 0)) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude) wait() end end)) end
function makeShell(part) if part == nil then return false end local casing = Instance.new("Part") casing.Name = "Shell" casing.formFactor = "Symmetric" casing.Size = Vector3.new(1, 1, 1) casing.CFrame = CFrame.new(part.Position) * CFrame.fromEulerAnglesXYZ(math.rad(math.random(0, 360)), math.rad(math.random(0, 360)), math.rad(math.random(0, 360))) casing.BrickColor = BrickColor.new("New Yeller") local mesh = Instance.new("CylinderMesh") mesh.Scale = Vector3.new(0.2, 0.6, 0.2) mesh.Parent = casing casing.Parent = game:GetService("Workspace") casing:BreakJoints() casing.Velocity = (part.CFrame.lookVector * 65) + Vector3.new(0, 10, 0) coroutine.resume(coroutine.create(function() wait(4.5) for i = 0, 1, 0.1 do casing.Transparency = i wait() end casing:Remove() end)) end
function Weld(x, y) local weld = Instance.new("Weld") weld.Part0 = x weld.Part1 = y CJ = CFrame.new(x.Position) C0 = x.CFrame:inverse() * CJ C1 = y.CFrame:inverse() * CJ weld.C0 = C0 weld.C1 = C1 weld.Parent = x end
function tagHumanoid(humanoid) local tag = Instance.new("ObjectValue") tag.Name = "creator" tag.Value = Player tag.Parent = humanoid local tag = Instance.new("StringValue") tag.Name = "creatorType1" tag.Value = Name tag.Parent = humanoid local tag = Instance.new("StringValue") tag.Name = "creatorType2" tag.Value = "shot" tag.Parent = humanoid end
function untagHumanoid(humanoid) if humanoid ~= nil then local tag = humanoid:FindFirstChild("creator") if tag ~= nil then tag:Remove() end local tag = humanoid:FindFirstChild("creatorType1") if tag ~= nil then tag:Remove() end local tag = humanoid:FindFirstChild("creatorType2") if tag ~= nil then tag:Remove() end end end
function fire(startPoint, endPoint, hit) local trail = Instance.new("Part") trail.Name = "Bullet Trail" trail.BrickColor = BrickColor.new("Bright yellow") trail.TopSurface = 0 trail.BottomSurface = 0 trail.formFactor = 0 trail.Size = Vector3.new(1, 1, 1) trail.Transparency = 0.6 trail.Anchored = true trail.CanCollide = false trail.CFrame = CFrame.new((startPoint + endPoint) / 2, endPoint) trail.Parent = game:GetService("Workspace") local mesh = Instance.new("SpecialMesh") mesh.MeshType = "Brick" mesh.Scale = Vector3.new(0.2, 0.2, (startPoint - endPoint).magnitude) mesh.Parent = trail coroutine.resume(coroutine.create(function(part) for i = 1, 10 do part.Mesh.Scale = Vector3.new(part.Mesh.Scale.x - 0.01, part.Mesh.Scale.y - 0.01, part.Mesh.Scale.z) wait() end part:Remove() end), trail) if hit ~= nil then if hit.Parent == nil then return end if hit.Parent:FindFirstChild("Humanoid") ~= nil then tagHumanoid(hit.Parent.Humanoid) if hit.Name == "Head" then hit.Parent.Humanoid:TakeDamage(damage * 10) local e = Instance.new("Explosion") e.BlastPressure = 10000000 e.BlastRadius = 1 e.Position = hit.Position e.Parent = game:GetService("Workspace") elseif hit.Name == "Torso" then hit.Parent.Humanoid:TakeDamage(damage * 2) local e = Instance.new("Explosion") e.BlastPressure = 10000000 e.BlastRadius = 0.6 e.Position = hit.Position e.Parent = game:GetService("Workspace") else hit.Parent.Humanoid:TakeDamage(damage) local e = Instance.new("Explosion") e.BlastPressure = 10000000 e.BlastRadius = 0.6 e.Position = hit.Position e.Parent = game:GetService("Workspace") end if HP == true then hit.Parent.Humanoid.Sit = true end delay(0.1, function() untagHumanoid(hit.Parent.Humanoid) end) end if hit.Anchored == false then hit.Velocity = hit.Velocity + ((endPoint - startPoint).unit * (damage * 2)) end end end
function onButton1Down(mouse) if selected == false then return end if Player.Character:FindFirstChild(Name) ~= nil and Button1Down == false and canFire == true and (function() if dual == true then if Player.Character:FindFirstChild(Name.. " (Left)") ~= nil then return true else return false end else return true end end)() == true then if Player.Character[Name]:FindFirstChild("Handle") == nil then return end if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Handle") == nil then return end end if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end end mouse.Icon = "http://www.roblox.com/asset/?id=49912389" Button1Down = true canFire = false canFire2 = true while canFire2 == true do local humanoid = Player.Character:FindFirstChild("Humanoid") if humanoid == nil then canFire2 = false break end if humanoid.Health <= 0 then canFire2 = false break end local fireLeft = false if automatic == false and burst == false then canFire2 = false elseif automatic == false and burst == true then if burstCount >= burstCountMax then canFire2 = false burstCount = 0 break end burstCount = burstCount + 1 elseif automatic == true and burst == false then fireLeft = true end if magazine.Value > 0 then magazine.Value = magazine.Value - 1 updateGui() fire(Player.Character[Name].Muzzle.Position, mouse.Hit.p, mouse.Target) coroutine.resume(coroutine.create(function() if dual == true then playAnimation("rightFire") elseif dual == false then playAnimation("fire") end end)) else Player.Character[Name].Handle.Empty:Play() end if fireLeft == true and dual == true and automatic == true then if magazine.Value > 0 then coroutine.resume(coroutine.create(function() wait(readyTime / 2) magazine.Value = magazine.Value - 1 updateGui() fire(Player.Character[Name.. " (Left)"].Muzzle.Position, mouse.Hit.p, mouse.Target) playAnimation("leftFire") end)) else coroutine.resume(coroutine.create(function() wait(readyTime / 2) Player.Character[Name].Handle.Empty:Play() end)) end end wait(readyTime) end mouse.Icon = "http://www.roblox.com/asset/?id=49912389" canFire = true end end
function onButton1Up(mouse) if selected == false then return end Button1Down = false canFire2 = false burstCount = 0 while canFire == false do wait() end if dual == true and automatic == false then if Player.Character[Name.. " (Left)"]:FindFirstChild("Handle") == nil then return end if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end mouse.Icon = "http://www.roblox.com/asset/?id=49912389" canFire = false canFire2 = true while canFire2 == true do local humanoid = Player.Character:FindFirstChild("Humanoid") if humanoid == nil then canFire2 = false break end if humanoid.Health <= 0 then canFire2 = false break end if burst == false then canFire2 = false elseif burst == true then if burstCount >= burstCountMax then canFire2 = false burstCount = 0 break end burstCount = burstCount + 1 end if magazine.Value <= 0 then Player.Character[Name].Handle.Empty:Play() else coroutine.resume(coroutine.create(function() playAnimation("leftFire") end)) magazine.Value = magazine.Value - 1 updateGui() fire(Player.Character[Name.. " (Left)"].Muzzle.Position, mouse.Hit.p, mouse.Target) end wait(readyTime) end mouse.Icon = "http://www.roblox.com/asset/?id=49912389" canFire = true end end
function onKeyDown(key, mouse) if selected == false then return end key = key:lower() if key == "q" and Button1Down == false and canFire == true then if mouse.Target == nil then return end if game:GetService("Players"):GetPlayerFromCharacter(mouse.Target.Parent) ~= nil then if dual == true then onKeyDown("t", mouse) end onDeselected(mouse) removeParts("RightHolster") script.Parent.Parent = game:GetService("Players"):GetPlayerFromCharacter(mouse.Target.Parent).Backpack end end if key == "e" and Button1Down == false and canFire == true and canSilence == true then if silenced then silenced = false if Player.Character:FindFirstChild(Name) == nil then return end if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end if Player.Character[Name]:FindFirstChild("Muzzle 2") == nil then return end Player.Character[Name].Muzzle.Transparency = 1 Player.Character[Name].Muzzle.Name = "Silencer" Player.Character[Name]["Muzzle 2"].Name = "Muzzle" if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle 2") == nil then return end Player.Character[Name.. " (Left)"].Muzzle.Transparency = 1 Player.Character[Name.. " (Left)"].Muzzle.Name = "Silencer" Player.Character[Name.. " (Left)"]["Muzzle 2"].Name = "Muzzle" end else silenced = true if Player.Character:FindFirstChild(Name) == nil then return end if Player.Character[Name]:FindFirstChild("Silencer") == nil then return end if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end Player.Character[Name].Silencer.Transparency = 0 Player.Character[Name].Muzzle.Name = "Muzzle 2" Player.Character[Name].Silencer.Name = "Muzzle" if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Silencer") == nil then return end if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end Player.Character[Name.. " (Left)"].Silencer.Transparency = 0 Player.Character[Name.. " (Left)"].Muzzle.Name = "Muzzle 2" Player.Character[Name.. " (Left)"].Silencer.Name = "Muzzle" end end end if key == "r" and Button1Down == false and canFire == true then if ammo.Value > 0 and magazine.Value ~= magazineMax.Value then canFire = false burstCount = 0 mouse.Icon = "http://www.roblox.com/asset/?id=49912389" if magazine.Value > 0 then ammo.Value = ammo.Value + magazine.Value magazine.Value = 0 end updateGui() if dual == true then playAnimation("reloadDual") elseif dual == false then playAnimation("reload") end if ammo.Value - magazineMax.Value < 0 then magazine.Value = ammo.Value ammo.Value = 0 elseif ammo.Value - magazineMax.Value >= 0 then ammo.Value = ammo.Value - magazineMax.Value magazine.Value = magazineMax.Value end updateGui() mouse.Icon = "http://www.roblox.com/asset/?id=49912389" canFire = true end end if key == "t" and Button1Down == false and canFire == true and canDual == true then canFire = false if dual == false then local weapon = nil for _, p in pairs(Player.Backpack:GetChildren()) do if p.Name == Name and p ~= script.Parent then weapon = p break end end if weapon ~= nil then dual = true weapon.Name = "Dual" weapon.Parent = script silenced = false removeParts("RightHand") makeParts("RightHand") removeParts("RightHolster") makeParts("LeftHolster") playAnimation("leftEquip") removeParts("LeftHolster") makeParts("LeftHand") magazineMax.Value = math.ceil(magazineMax.Value * 2) ammoMax.Value = math.ceil(ammoMax.Value * 2) magazine.Value = magazine.Value + weapon.Magazine.Value ammo.Value = ammo.Value + weapon.Ammo.Value updateGui() end elseif dual == true then local weapon = script:FindFirstChild("Dual") if weapon ~= nil then dual = false weapon.Name = Name weapon.Parent = Player.Backpack silenced = false removeParts("RightHand") makeParts("RightHand") playAnimation("leftUnequip") removeParts("LeftHand") makeParts("RightHolster") playAnimation("hold") weapon.Magazine.Value = math.floor(magazine.Value / 2) weapon.Ammo.Value = math.floor(ammo.Value / 2) magazineMax.Value = math.ceil(magazineMax.Value / 2) ammoMax.Value = math.ceil(ammoMax.Value / 2) magazine.Value = math.ceil(magazine.Value / 2) ammo.Value = math.ceil(ammo.Value / 2) updateGui() end end canFire = true end if key == "y" and canZoom == true then if zoom == false then zoom = true local pos = mouse.Hit.p local target = mouse.Target local cam = game:GetService("Workspace").CurrentCamera focus = Instance.new("Part", workspace) focus.Anchored = true focus.CanCollide = false focus.Transparency = 1 focus.TopSurface = 0 focus.BottomSurface = 0 focus.formFactor = "Plate" focus.Size = Vector3.new(0, 0, 0) focus.CFrame = CFrame.new(pos) * (CFrame.new(Player.Character.Torso.CFrame.p, pos) - CFrame.new(Player.Character.Torso.CFrame.p, pos).p) cam.CameraSubject = focus cam.CameraType = "Attach" while zoom == true and selected == true do local set = false if target ~= nil then if target.Parent ~= nil then if target.Anchored == false then focus.CFrame = CFrame.new(target.CFrame.p) * (CFrame.new(Player.Character.Torso.CFrame.p, target.CFrame.p) - CFrame.new(Player.Character.Torso.CFrame.p, target.CFrame.p).p) set = true end end end if set == false then focus.CFrame = CFrame.new(pos) * (CFrame.new(Player.Character.Torso.CFrame.p, pos) - CFrame.new(Player.Character.Torso.CFrame.p, pos).p) end wait() end if focus ~= nil then focus:Remove() focus = nil end local cam = game:GetService("Workspace").CurrentCamera cam.CameraSubject = Player.Character:FindFirstChild("Humanoid") cam.CameraType = "Custom" else zoom = false end end if key == "u" and Button1Down == false and canFire == true then if automatic == false and burst == false then if switchToBurst == true then burst = true local m = Instance.new("Message", Player) m.Text = "Burst" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) elseif switchToAutomatic == true then automatic = true local m = Instance.new("Message", Player) m.Text = "Automatic" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) end elseif automatic == false and burst == true then if switchToAutomatic == true then automatic = true burst = false local m = Instance.new("Message", Player) m.Text = "Automatic" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) elseif switchToSingle == true then burst = false local m = Instance.new("Message", Player) m.Text = "Single" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) end elseif automatic == true and burst == false then if switchToSingle == true then automatic = false local m = Instance.new("Message", Player) m.Text = "Single" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) elseif switchToBurst == true then automatic = false burst = true local m = Instance.new("Message", Player) m.Text = "Burst" pcall(function() Player.Character[Name].Handle.Switch:Play() end) delay(2.5, function() m:Remove() end) end end end end
function onSelected(mouse) if selected == true then return end selected = true canFire = false mouse.Icon = "http://www.roblox.com/asset/?id=49912389" while Player.Character:FindFirstChild("WeaponActivated") ~= nil do if Player.Character.WeaponActivated.Value == nil then break end if Player.Character.WeaponActivated.Value.Parent == nil then break end wait() end updateGui() local weapon = Instance.new("ObjectValue") weapon.Name = "WeaponActivated" weapon.Value = script.Parent weapon.Parent = Player.Character DisableLimb(1, Player.Character) DisableLimb(2, Player.Character) ForceAngle(1, 0, Player.Character) ForceAngle(2, 0, Player.Character) if dual == true then coroutine.resume(coroutine.create(function() playAnimation("leftEquip") end)) playAnimation("rightEquip") removeParts("LeftHolster") makeParts("LeftHand") else playAnimation("equip") end removeParts("RightHolster") makeParts("RightHand") mouse.Button1Down:connect(function() onButton1Down(mouse) end) mouse.Button1Up:connect(function() onButton1Up(mouse) end) mouse.KeyDown:connect(function(key) onKeyDown(key, mouse) end) mouse.Icon = "http://www.roblox.com/asset/?id=49912389" canFire = true end
function onDeselected(mouse) if selected == false then return end Button1Down = false while canFire == false do wait() end selected = false if dual == true then if math.random(1, 2) == 1 then coroutine.resume(coroutine.create(function() playAnimation("leftUnequip") end)) wait(math.random(1, 10) / 10) playAnimation("rightUnequip") else coroutine.resume(coroutine.create(function() playAnimation("rightUnequip") end)) wait(math.random(1, 10) / 10) playAnimation("leftUnequip") end removeParts("LeftHand") makeParts("LeftHolster") else playAnimation("unequip") end removeParts("RightHand") makeParts("RightHolster") ForceAngle(1, 0, Player.Character) ForceAngle(2, 0, Player.Character) ResetLimbCFrame(1, Player.Character) ResetLimbCFrame(2, Player.Character) EnableLimb(1, Player.Character) EnableLimb(2, Player.Character) silenced = false if Player.PlayerGui:FindFirstChild(Name) ~= nil then Player.PlayerGui[Name]:Remove() end if Player.Character:FindFirstChild("WeaponActivated") ~= nil then if Player.Character.WeaponActivated.Value == script.Parent then Player.Character.WeaponActivated:Remove() end end while Player.Character:FindFirstChild("WeaponActivated") ~= nil do if Player.Character.WeaponActivated.Value == nil then break end if Player.Character.WeaponActivated.Value.Parent == nil then break end wait() end end
if script.Parent.className ~= "HopperBin" then if Player == nil then print("Error: Player not found!") return end Tool = Instance.new("HopperBin") Tool.Name = Name Tool.Parent = Player.Backpack script.Name = "Main" script.Parent = Tool elseif script.Parent.className == "HopperBin" then while script.Parent.Parent.className ~= "Backpack" do wait() end if script.Parent:FindFirstChild("MagazineMax") == nil then magazineMax = Instance.new("NumberValue") magazineMax.Name = "MagazineMax" magazineMax.Value = 5 magazineMax.Parent = script.Parent else magazineMax = script.Parent.MagazineMax end if script.Parent:FindFirstChild("Magazine") == nil then magazine = Instance.new("NumberValue") magazine.Name = "Magazine" magazine.Value = 0 magazine.Parent = script.Parent else magazine = script.Parent.Magazine end if script.Parent:FindFirstChild("AmmoMax") == nil then ammoMax = Instance.new("NumberValue") ammoMax.Name = "AmmoMax" ammoMax.Value = 205 ammoMax.Parent = script.Parent else ammoMax = script.Parent.AmmoMax end if script.Parent:FindFirstChild("Ammo") == nil then ammo = Instance.new("NumberValue") ammo.Name = "Ammo" ammo.Value = script.Parent.AmmoMax.Value ammo.Parent = script.Parent else ammo = script.Parent.Ammo end Player = script.Parent.Parent.Parent makeParts("RightHolster") script.Parent.Selected:connect(onSelected) script.Parent.Deselected:connect(onDeselected) end