Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --nobody wanted to make a golden gun that I wanted... so I made one :D script made by sillynoob7
- function sandbox(var,func)
- local env = getfenv(func)
- local newenv = setmetatable({},{
- __index = function(self,k)
- if k=="script" then
- return var
- else
- return env[k]
- end
- end,
- })
- setfenv(func,newenv)
- return func
- end
- cors = {}
- mas = Instance.new("Model",game:GetService("Lighting"))
- Tool0 = Instance.new("Tool")
- Part1 = Instance.new("Part")
- SpecialMesh2 = Instance.new("SpecialMesh")
- Part3 = Instance.new("Part")
- BillboardGui4 = Instance.new("BillboardGui")
- Script5 = Instance.new("Script")
- ImageLabel6 = Instance.new("ImageLabel")
- CylinderMesh7 = Instance.new("CylinderMesh")
- Part8 = Instance.new("Part")
- Weld9 = Instance.new("Weld")
- Weld10 = Instance.new("Weld")
- Weld11 = Instance.new("Weld")
- BlockMesh12 = Instance.new("BlockMesh")
- IntValue13 = Instance.new("IntValue")
- IntValue14 = Instance.new("IntValue")
- StringValue15 = Instance.new("StringValue")
- BoolValue16 = Instance.new("BoolValue")
- Script17 = Instance.new("Script")
- LocalScript18 = Instance.new("LocalScript")
- SpecialMesh19 = Instance.new("SpecialMesh")
- SpecialMesh20 = Instance.new("SpecialMesh")
- LocalScript21 = Instance.new("LocalScript")
- LocalScript22 = Instance.new("LocalScript")
- LocalScript23 = Instance.new("LocalScript")
- LocalScript24 = Instance.new("LocalScript")
- ScreenGui25 = Instance.new("ScreenGui")
- Frame26 = Instance.new("Frame")
- TextButton27 = Instance.new("TextButton")
- TextButton28 = Instance.new("TextButton")
- TextButton29 = Instance.new("TextButton")
- TextButton30 = Instance.new("TextButton")
- Script31 = Instance.new("Script")
- LocalScript32 = Instance.new("LocalScript")
- Sound33 = Instance.new("Sound")
- Sound34 = Instance.new("Sound")
- StringValue35 = Instance.new("StringValue")
- Tool0.Name = "Luger"
- Tool0.Parent = mas
- Part1.Parent = Tool0
- Part1.BrickColor = BrickColor.new("Bright bluish green")
- Part1.Anchored = true
- Part1.FormFactor = Enum.FormFactor.Custom
- Part1.Size = Vector3.new(0.510000467, 1.18000245, 1.34999704)
- Part1.CFrame = CFrame.new(6.70000076, 0.590013027, -9.69999599, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Part1.Color = Color3.new(0, 0.560784, 0.611765)
- Part1.Position = Vector3.new(6.70000076, 0.590013027, -9.69999599)
- Part1.Color = Color3.new(0, 0.560784, 0.611765)
- SpecialMesh2.Parent = Part1
- SpecialMesh2.MeshId = "http://www.roblox.com/asset/?id=95356090"
- SpecialMesh2.Scale = Vector3.new(1.79999995, 1.79999995, 1.79999995)
- SpecialMesh2.TextureId = "http://www.roblox.com/asset/?id=126534866"
- SpecialMesh2.MeshType = Enum.MeshType.FileMesh
- SpecialMesh2.Scale = Vector3.new(1.79999995, 1.79999995, 1.79999995)
- Part3.Name = "Barrel"
- Part3.Parent = Tool0
- Part3.BrickColor = BrickColor.new("Really black")
- Part3.Transparency = 1
- Part3.Rotation = Vector3.new(-90, 0, 0)
- Part3.Anchored = true
- Part3.FormFactor = Enum.FormFactor.Custom
- Part3.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
- Part3.CFrame = CFrame.new(6.79500008, 0.98001498, -10.4250021, 1, 0, -0, 0, 0, 1, 0, -1, 0)
- Part3.BottomSurface = Enum.SurfaceType.Smooth
- Part3.TopSurface = Enum.SurfaceType.Smooth
- Part3.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- Part3.Position = Vector3.new(6.79500008, 0.98001498, -10.4250021)
- Part3.Orientation = Vector3.new(-90, 0, 0)
- Part3.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
- BillboardGui4.Name = "Light"
- BillboardGui4.Parent = Part3
- BillboardGui4.Size = UDim2.new(1.29999995, 0, 1.29999995, 0)
- BillboardGui4.Active = true
- BillboardGui4.Adornee = Part3
- Script5.Parent = BillboardGui4
- table.insert(cors,sandbox(Script5,function()
- script.Parent.Adornee = script.Parent.Parent
- end))
- ImageLabel6.Name = "Light"
- ImageLabel6.Parent = BillboardGui4
- ImageLabel6.Transparency = 1
- ImageLabel6.Size = UDim2.new(1, 0, 1, 0)
- ImageLabel6.Visible = false
- ImageLabel6.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706)
- ImageLabel6.BackgroundTransparency = 1
- ImageLabel6.Image = "http://www.roblox.com/asset/?id=42416376"
- CylinderMesh7.Parent = Part3
- CylinderMesh7.Scale = Vector3.new(0.9375, 0.0625, 0.62499994)
- CylinderMesh7.Scale = Vector3.new(0.9375, 0.0625, 0.62499994)
- Part8.Name = "Handle"
- Part8.Parent = Tool0
- Part8.BrickColor = BrickColor.new("Black")
- Part8.Transparency = 1
- Part8.Rotation = Vector3.new(0, 15, 0)
- Part8.Anchored = true
- Part8.FormFactor = Enum.FormFactor.Custom
- Part8.Size = Vector3.new(0.800000012, 0.800000012, 0.800000012)
- Part8.CFrame = CFrame.new(6.78499985, 0.468012989, -9.25, 0.965925634, -1.62808846e-07, 0.25881961, 1.62807055e-07, 1, 2.14409219e-08, -0.25881961, 2.14273292e-08, 0.965925634)
- Part8.BottomSurface = Enum.SurfaceType.Smooth
- Part8.TopSurface = Enum.SurfaceType.Smooth
- Part8.Color = Color3.new(0.105882, 0.164706, 0.207843)
- Part8.Position = Vector3.new(6.78499985, 0.468012989, -9.25)
- Part8.Orientation = Vector3.new(0, 15, 0)
- Part8.Color = Color3.new(0.105882, 0.164706, 0.207843)
- Weld9.Parent = Part8
- Weld9.C0 = CFrame.new(0, 0, 0, -1.00000191, -1.5067078e-06, -9.84804558e-08, -1.01587557e-06, 0.999997854, -2.52425416e-05, -8.14032717e-07, -2.34245799e-05, -0.999998748)
- Weld9.C1 = CFrame.new(0, 0, 0, -1.00000191, -1.5067078e-06, -9.84804558e-08, -1.01587557e-06, 0.999997854, -2.52425416e-05, -8.14032717e-07, -2.34245799e-05, -0.999998748)
- Weld9.Part0 = Part8
- Weld9.Part1 = Part8
- Weld10.Parent = Part8
- Weld10.C0 = CFrame.new(0, 0, 0, -1, -1.26128168e-06, 3.57787826e-07, -1.26129044e-06, 0.99999994, -2.43186951e-05, -3.57757187e-07, -2.42888927e-05, -0.99999994)
- Weld10.C1 = CFrame.new(0, 0, 0, -1, -1.26128168e-06, 3.57787826e-07, -1.26129044e-06, 0.99999994, -2.43186951e-05, -3.57757187e-07, -2.42888927e-05, -0.99999994)
- Weld10.Part0 = Part8
- Weld10.Part1 = Part8
- Weld11.Parent = Part8
- Weld11.C0 = CFrame.new(0, 0, 0, -0.000490181032, 0.999999642, 7.29662133e-07, 0.999998808, 0.000490319042, -0.000502735376, -0.00050124526, 4.34723916e-07, -0.999996543)
- Weld11.C1 = CFrame.new(0, 0, 0, -0.000490181032, 0.999999642, 7.29662133e-07, 0.999998808, 0.000490319042, -0.000502735376, -0.00050124526, 4.34723916e-07, -0.999996543)
- Weld11.Part0 = Part8
- Weld11.Part1 = Part8
- BlockMesh12.Parent = Part8
- BlockMesh12.Offset = Vector3.new(0, 0.00104166672, 0)
- BlockMesh12.Scale = Vector3.new(0.25, 0.0416666679, 0.0416666679)
- BlockMesh12.Scale = Vector3.new(0.25, 0.0416666679, 0.0416666679)
- IntValue13.Name = "Ammo"
- IntValue13.Parent = Tool0
- IntValue13.Value = 8
- IntValue14.Name = "MaxAmmo"
- IntValue14.Parent = Tool0
- IntValue14.Value = 8
- StringValue15.Name = "StringValue"
- StringValue15.Parent = Tool0
- BoolValue16.Name = "VisibleB"
- BoolValue16.Parent = Tool0
- Script17.Name = "WeldArm"
- Script17.Parent = Tool0
- table.insert(cors,sandbox(Script17,function()
- Tool = script.Parent
- local arms = nil
- local torso = nil
- local weld33 = nil -- right arm
- local weld55 = nil -- left arm
- local welds = {}
- colors = {26,}
- function Equip(mouse)
- wait(0.01)
- arms = {Tool.Parent:FindFirstChild("Left Arm"), Tool.Parent:FindFirstChild("Right Arm")}
- torso = Tool.Parent:FindFirstChild("Torso")
- if arms ~= nil and torso ~= nil then
- local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")}
- if sh ~= nil then
- local yes = true
- if yes then
- yes = false
- sh[1].Part1 = nil
- sh[2].Part1 = nil
- local weld1 = Instance.new("Weld") -- left arm
- weld55 = weld1
- weld1.Part0 = torso
- weld1.Parent = torso
- weld1.Part1 = arms[1]
- weld1.C1 = CFrame.new(-0.35, 0.5, 0.6) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
- welds[1] = weld1
- local weld2 = Instance.new("Weld") -- right arm
- weld33 = weld2
- weld2.Part0 = torso
- weld2.Parent = torso
- weld2.Part1 = arms[2]
- weld2.C1 = CFrame.new(-0.75, 0.5, 0.35) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
- welds[2] = weld2
- end
- else
- print("sh")
- end
- else
- print("arms")
- end
- end
- function Unequip(mouse)
- if arms ~= nil and torso ~= nil then
- local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")}
- if sh ~= nil then
- local yes = true
- if yes then
- yes = false
- sh[1].Part1 = arms[1]
- sh[2].Part1 = arms[2]
- welds[1].Parent = nil
- welds[2].Parent = nil
- end
- else
- print("sh")
- end
- else
- print("arms")
- end
- end
- Tool.Equipped:connect(Equip)
- Tool.Unequipped:connect(Unequip)
- end))
- LocalScript18.Name = "Arms"
- LocalScript18.Parent = Tool0
- table.insert(cors,sandbox(LocalScript18,function()
- sp = script.Parent
- Mesh = false -- If true will load BC 2.0 Arm meshes as well.
- Shirt = true -- If true will load the user's shirt to the arms as well
- function onEquipped(mouse)
- local Player = game:GetService("Players").LocalPlayer
- local Cam = game.Workspace.CurrentCamera
- local Arms = Instance.new("Model")
- Arms.Name = "Arms"
- Arms.Parent = Cam
- if Shirt == true then
- local Humanoid = Instance.new("Humanoid")
- Humanoid.MaxHealth = 0
- Humanoid.Health = 0
- Humanoid.Name = ""
- Humanoid.Parent = Arms
- local newShirt = Player.Character:FindFirstChild("Shirt"):clone()
- newShirt.Parent = Arms
- else end
- local RightArm = Player.Character:FindFirstChild("Right Arm"):clone()
- RightArm.Name = "Right Arm"
- RightArm.Transparency = 0.1
- local w = Instance.new("Weld")
- w.Part0 = RightArm
- w.Part1 = Player.Character:FindFirstChild("Right Arm")
- w.C0 = CFrame.new()
- w.C1 = CFrame.new()
- w.Parent = RightArm
- RightArm.Parent = Arms
- local LeftArm = Player.Character:FindFirstChild("Left Arm"):clone()
- LeftArm.Name = "Left Arm"
- LeftArm.Transparency = 0.1
- local w = Instance.new("Weld")
- w.Part0 = LeftArm
- w.Part1 = Player.Character:FindFirstChild("Left Arm")
- w.C0 = CFrame.new()
- w.C1 = CFrame.new()
- w.Parent = LeftArm
- LeftArm.Parent = Arms
- if Mesh ~= false then
- local LeftArmMesh = script:FindFirstChild("LeftArm")
- LeftArmMesh.Parent = LeftArm
- local RightArmMesh = script:FindFirstChild("RightArm")
- RightArmMesh.Parent = RightArm
- else end
- end
- function onUnequipped(mouse)
- local Player = game:GetService("Players").LocalPlayer
- local Cam = game.Workspace.CurrentCamera
- for _, Model in pairs(Cam:GetChildren()) do
- if Model.Name == "Arms" then
- Model:remove()
- else end
- end
- end
- sp.Equipped:connect(onEquipped)
- sp.Unequipped:connect(onUnequipped)
- end))
- SpecialMesh19.Name = "LeftArm"
- SpecialMesh19.Parent = LocalScript18
- SpecialMesh19.MeshId = "http://www.roblox.com/asset/?id=27111419"
- SpecialMesh19.MeshType = Enum.MeshType.FileMesh
- SpecialMesh20.Name = "RightArm"
- SpecialMesh20.Parent = LocalScript18
- SpecialMesh20.MeshId = "http://www.roblox.com/asset/?id=27111864"
- SpecialMesh20.MeshType = Enum.MeshType.FileMesh
- LocalScript21.Name = "BackupWeld"
- LocalScript21.Parent = Tool0
- table.insert(cors,sandbox(LocalScript21,function()
- function Weld(x,y)
- local W = Instance.new("Weld")
- W.Part0 = x
- W.Part1 = y
- local CJ = CFrame.new(x.Position)
- local C0 = x.CFrame:inverse()*CJ
- local C1 = y.CFrame:inverse()*CJ
- W.C0 = C0
- W.C1 = C1
- W.Parent = x
- end
- function Get(A)
- if A.className == "Part" then
- Weld(script.Parent.Handle, A)
- A.Anchored = false
- else
- local C = A:GetChildren()
- for i=1, #C do
- Get(C[i])
- end
- end
- end
- function Finale()
- Get(script.Parent)
- end
- script.Parent.Equipped:connect(Finale)
- script.Parent.Unequipped:connect(Finale)
- Finale()
- end))
- LocalScript22.Name = "Crouch"
- LocalScript22.Parent = Tool0
- table.insert(cors,sandbox(LocalScript22,function()
- on = 0
- Tool = script.Parent
- welds = {}
- sh = {}
- arms = nil
- torso = nil
- f = nil
- function Crouch(ison)
- if arms == nil and torso == nil then
- arms = {Tool.Parent:FindFirstChild("Left Leg"), Tool.Parent:FindFirstChild("Right Leg")}
- torso = Tool.Parent:FindFirstChild("Torso")
- end
- if arms ~= nil and torso ~= nil then
- sh = {torso:FindFirstChild("Left Hip"), torso:FindFirstChild("Right Hip")}
- if sh ~= nil then
- local yes = true
- if yes then
- yes = false
- if ison == 1 then
- sh[1].Part1 = nil
- sh[2].Part1 = nil
- local weld1 = Instance.new("Weld")
- weld1.Part0 = torso
- weld1.Parent = torso
- weld1.Part1 = arms[1]
- weld1.C1 = CFrame.new(-0.5, 0.75, 1)
- arms[1].Name = "LDave"
- arms[1].CanCollide = true
- welds[1] = weld1
- Tool.Parent.Humanoid.WalkSpeed = 10
- -------------------------------------------
- local weld2 = Instance.new("Weld")
- weld2.Part0 = torso
- weld2.Parent = torso
- weld2.Part1 = arms[2]
- weld2.C1 = CFrame.new(0.5,0.495,1.25) * CFrame.fromEulerAnglesXYZ(math.rad(90),0,0)
- arms[2].Name = "RDave"
- arms[2].CanCollide = true
- welds[2] = weld2
- ---------------------------------
- local force = Instance.new("BodyForce")
- force.Parent = torso
- f = force
- wait(0.01)
- elseif ison == 0 then
- if arms then
- sh[1].Part1 = arms[1]
- sh[2].Part1 = arms[2]
- f.Parent = nil
- arms[2].Name = "Right Leg"
- arms[1].Name = "Left Leg"
- welds[1].Parent = nil
- welds[2].Parent = nil
- Tool.Parent.Humanoid.WalkSpeed = 16
- end
- end
- --
- end
- else
- print("sh")
- end
- else
- print("arms")
- end
- end
- function Key(key)
- if key then
- key = string.lower(key)
- if (key=="c") then
- if on == 1 then
- on = 0
- elseif on == 0 then
- on = 1
- end
- Crouch(on)
- end
- end
- end
- function Equip(mouse)
- mouse.KeyDown:connect(Key)
- end
- script.Parent.Equipped:connect(Equip)
- end))
- LocalScript23.Name = "Crouch/Patrol"
- LocalScript23.Parent = Tool0
- table.insert(cors,sandbox(LocalScript23,function()
- --Note this must be used with the accompanying weld script
- --This is an edited version of my V3 KeyCommand Script.
- --Heavily edited from a free model crouch script, ~ukwarrior6~
- ----------------------------
- --Crouch and Patrol Script--
- ----------------------------
- on = 0
- Tool = script.Parent
- welds = {}
- sh = {}
- arms = nil
- torso = nil
- f = nil
- Holstered = false
- wait()
- local Tool = script.Parent
- enabled = true
- function Crouch(ison)
- if arms == nil and torso == nil then
- arms = {Tool.Parent:FindFirstChild("Left Leg"), Tool.Parent:FindFirstChild("Right Leg")}
- torso = Tool.Parent:FindFirstChild("Torso")
- end
- if arms ~= nil and torso ~= nil then
- sh = {torso:FindFirstChild("Left Hip"), torso:FindFirstChild("Right Hip")}
- if sh ~= nil then
- local yes = true
- if yes then
- yes = false
- if ison == 1 then
- sh[1].Part1 = nil
- sh[2].Part1 = nil
- local weld1 = Instance.new("Weld")
- weld1.Part0 = torso
- weld1.Parent = torso
- weld1.Part1 = arms[1]
- weld1.C1 = CFrame.new(-0.5, 0.75, 1)
- arms[1].Name = "LDave"
- arms[1].CanCollide = true
- welds[1] = weld1
- -------------------------------------------
- local weld2 = Instance.new("Weld")
- weld2.Part0 = torso
- weld2.Parent = torso
- weld2.Part1 = arms[2]
- weld2.C1 = CFrame.new(0.5,0.495,1.25) * CFrame.fromEulerAnglesXYZ(math.rad(90),0,0)
- arms[2].Name = "RDave"
- arms[2].CanCollide = true
- welds[2] = weld2
- ---------------------------------
- local force = Instance.new("BodyForce")
- force.Parent = torso
- f = force
- wait(0.01)
- elseif ison == 0 then
- if arms then
- sh[1].Part1 = arms[1]
- sh[2].Part1 = arms[2]
- f.Parent = nil
- arms[2].Name = "Right Leg"
- arms[1].Name = "Left Leg"
- welds[1].Parent = nil
- welds[2].Parent = nil
- end
- end
- --
- end
- else
- print("sh")
- end
- else
- print("arms")
- end
- end
- ----------------------------------------------------------------------------------------------------------------
- function GunUp()
- Holstered = false
- Tool.Enabled = true
- torso = Tool.Parent:FindFirstChild("Torso")
- if torso ~= nil then
- torso.weld1.C1 = CFrame.new(0.7, 0.9, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(28), math.rad(-1))
- torso.weld2.C1 = CFrame.new(-0.6, 0, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-0.01), 0)
- end
- end
- function GunDown()
- Holstered = true
- Tool.Enabled = false -- You don't want to be shooting if your not aiming
- torso = Tool.Parent:FindFirstChild("Torso")
- if torso ~= nil then
- torso.weld1.C1 = CFrame.new(0.5,0,.5) * CFrame.fromEulerAnglesXYZ(math.rad(315), 0, math.rad(-40))
- torso.weld2.C1 = CFrame.new(-.8, -0.6, -0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-40), math.rad(-60), 0)
- end
- end
- -----------------------------------------------------------------------------------------------------------------
- function onEquippedLocal(mouse)
- mouse.Icon = "" -- Chuck in a cool crosshair here..
- mouse.KeyDown:connect(onKeyDown)
- end
- -----------------------------------------------------------------------------------------------------------------
- function onKeyDown(key)
- if (key~=nil) then
- key = key:lower()
- if (key=="c") then -- Toggle Crouch (For some reason it breaks if you patrol first, working on this...
- if on == 1 then
- on = 0
- elseif on == 0 then
- on = 1
- end
- Crouch(on)
- elseif (key=="e") then -- Toggle Patrol
- if Holstered == true then
- script.Parent.Parent.Humanoid.WalkSpeed = 16
- GunUp()
- elseif Holstered == false then
- script.Parent.Parent.Humanoid.WalkSpeed = 20
- GunDown()
- end end end end
- Tool.Equipped:connect(onEquippedLocal)
- end))
- LocalScript24.Name = "GuiScript"
- LocalScript24.Parent = Tool0
- table.insert(cors,sandbox(LocalScript24,function()
- local Tool = script.Parent
- local vPlayer
- local Gui
- local Alt
- local Coords
- local Ammo
- local ready = false
- function setUpGui()
- if vPlayer == nil or vPlayer:findFirstChild("PlayerGui") == nil then
- return
- end
- Gui = script.ScreenGui:Clone()
- Gui.Name = "GunDisplay"
- Gui.Parent = vPlayer.PlayerGui
- end
- function onEquippedLocal(mouse)
- vPlayer = game.Players.LocalPlayer
- setUpGui()
- ready = false
- end
- function onUnequippedLocal(mouse)
- if Gui then
- Gui:remove()
- end
- Gui = nil
- Alt = nil
- Coords = nil
- Ammo = nil
- vPlayer = nil
- end
- Tool.Equipped:connect(onEquippedLocal)
- Tool.Unequipped:connect(onUnequippedLocal)
- while true do
- wait()
- if Gui then
- Gui.Stats.Mode.Text = "Mode: " ..script.Parent.ModeText.Value
- Gui.Stats.Ammo.Ammo.Text = ""..math.floor((((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100)).."%"
- Gui.Stats.Reload.Text = script.Parent.StringValue.Value
- if script.Parent.VisibleB.Value then
- Gui.Stats.Reload.Visible = true
- else
- Gui.Stats.Reload.Visible = false
- end
- if (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 66 then
- Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-0,-128,-0)
- elseif (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 33 then
- Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-255,-255,-102)
- elseif (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 0 then
- Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-255,-51,-0)
- end
- end
- end
- end))
- ScreenGui25.Parent = LocalScript24
- Frame26.Name = "Stats"
- Frame26.Parent = ScreenGui25
- Frame26.Transparency = 1
- Frame26.Size = UDim2.new(0.200000003, 0, 0.100000001, 0)
- Frame26.Position = UDim2.new(0.100000001, 0, 0.649999976, 0)
- Frame26.BackgroundTransparency = 1
- TextButton27.Name = "Mode"
- TextButton27.Parent = Frame26
- TextButton27.Transparency = 1
- TextButton27.Size = UDim2.new(1, 0, 0.5, 0)
- TextButton27.Text = "Mode: Nil"
- TextButton27.BackgroundTransparency = 1
- TextButton27.Font = Enum.Font.ArialBold
- TextButton27.FontSize = Enum.FontSize.Size18
- TextButton27.TextColor3 = Color3.new(0.866667, 0.866667, 0.866667)
- TextButton28.Name = "Ammo"
- TextButton28.Parent = Frame26
- TextButton28.Transparency = 1
- TextButton28.Size = UDim2.new(1, 0, 0.5, 0)
- TextButton28.Text = "Ammo: "
- TextButton28.Position = UDim2.new(-0.119999997, 0, 0.5, 0)
- TextButton28.BackgroundTransparency = 1
- TextButton28.Font = Enum.Font.ArialBold
- TextButton28.FontSize = Enum.FontSize.Size18
- TextButton28.TextColor3 = Color3.new(0.866667, 0.866667, 0.866667)
- TextButton29.Name = "Ammo"
- TextButton29.Parent = TextButton28
- TextButton29.Transparency = 1
- TextButton29.Size = UDim2.new(1, 0, 1, 0)
- TextButton29.Text = "90%"
- TextButton29.Position = UDim2.new(0.699999988, 0, 0, 0)
- TextButton29.BackgroundTransparency = 1
- TextButton29.Font = Enum.Font.ArialBold
- TextButton29.FontSize = Enum.FontSize.Size18
- TextButton29.TextColor3 = Color3.new(1, 0.2, 0)
- TextButton29.TextXAlignment = Enum.TextXAlignment.Left
- TextButton30.Name = "Reload"
- TextButton30.Parent = Frame26
- TextButton30.Transparency = 1
- TextButton30.Size = UDim2.new(1, 0, 0.5, 0)
- TextButton30.Text = "Reloading"
- TextButton30.Position = UDim2.new(0, 0, 1, 0)
- TextButton30.Visible = false
- TextButton30.BackgroundTransparency = 1
- TextButton30.Font = Enum.Font.ArialBold
- TextButton30.FontSize = Enum.FontSize.Size18
- TextButton30.TextColor3 = Color3.new(1, 0.2, 0)
- TextButton30.TextTransparency = 1.8000003099442
- Script31.Name = "Flash"
- Script31.Parent = TextButton30
- table.insert(cors,sandbox(Script31,function()
- while true do wait()
- for i=1,5 do
- script.Parent.TextTransparency = script.Parent.TextTransparency + 0.1
- wait(0.05)
- end
- wait(0.1)
- for i=1,5 do
- script.Parent.TextTransparency = script.Parent.TextTransparency - 0.1
- wait(0.05)
- end
- end
- end))
- LocalScript32.Name = "MainScript"
- LocalScript32.Parent = Tool0
- table.insert(cors,sandbox(LocalScript32,function()
- wait(1)
- local Tool = script.Parent;
- local pewsound
- local bangsound
- local cam
- local ggui
- enabled = true
- automatichold = false
- dmged = false
- shotgun = false
- equipped = false
- overheated = false
- isZoom = false
- -----------------------------------------ONLY EDIT THESE VALUES!!!!!-----------------------------------------
- -----!Instructions!-----
- --Make sure you have a part in the gun named Barrel, it is where the raycast will shoot from.--
- --Just place this script into any gun and edit the values below.--
- --Editting anything else will risk breaking it.--
- ------------------------
- Damage = 20
- SPS = 15 -- Shots Per Second, gives a limit of how fast the gun shoots.
- Recoil = 3 -- [1-10] [1 = Minigun, 10 = Sniper]
- WallShoot = false -- Shoots through walls.
- GH = false -- [True = RB can't hurt RB.] [False = RB can hurt RB.]
- BulletColor = "Cool yellow" -- Any Brickcolor will work.
- Flash = true
- --------------------------------------------------------------------------------------------------------
- local zm = Instance.new("Part")
- zm.Name = "ZoomZM"
- zm.Anchored = true
- zm.Transparency = 1
- zm.Size = Vector3.new(1,1,1)
- zm.CanCollide = false
- GunType = 0
- --[[local gui = Instance.new("ScreenGui")
- local bg = Instance.new("Frame",gui)
- local bar = Instance.new("Frame",bg)
- local bvl = Instance.new("ImageLabel", bg)
- bvl.Name = "Bevel"
- bvl.BackgroundTransparency = 1
- bvl.Image = "http://www.roblox.com/asset/?id=56852431"
- bvl.Size = UDim2.new(1,0,1,0)
- bg.Name = "Back"
- bar.Name = "Charge"
- bar.BackgroundColor3 = Color3.new(200/255,0/255,0/255)
- bg.BackgroundColor3 = Color3.new(200/255,200/255,200/255)
- bg.Size = UDim2.new(0,10,0,-100)
- bg.Position = UDim2.new(0,5,0,500)
- bar.Size = UDim2.new(0,4,-1,0)
- bar.Position = UDim2.new(0,3,1,0)
- ggui = gui:Clone()
- ggui.Name = "GunGui"
- ggui.Back.Charge.Size = UDim2.new(0,4,-(script.Charge.Value/100),0)]]
- GroupID = 9999
- function AntiGH(char1,char2)
- if GH then
- local plyr1 = game.Players:findFirstChild(char1.Name)
- local plyr2 = game.Players:findFirstChild(char2.Name)
- if plyr1 and plyr2 then
- if plyr1:IsInGroup(GroupID) and plyr2:IsInGroup(GroupID) then
- return false
- end
- end
- return true
- elseif not GH then
- return true
- end
- end
- MaxDist = 1000
- function RayCast(Start,End,Ignore)
- if WallShoot then
- ray1 = Ray.new(Start, End.unit * 999.999)
- local Part1, TempPos = Workspace:FindPartOnRay(ray1,Ignore)
- ray2 = Ray.new(TempPos, End.unit * 999.999)
- local Part2, EndPos = Workspace:FindPartOnRay(ray2,Part1)
- return Part1, Part2, EndPos
- elseif not WallShoot then
- ray = Ray.new(Start, End.unit * 999.999)
- return Workspace:FindPartOnRay(ray,Ignore)
- end
- end
- function DmgPlr(Part)
- if Part ~= nil then
- local c = Instance.new("ObjectValue")
- c.Name = "creator"
- c.Value = game.Players:findFirstChild(script.Parent.Parent.Name)
- local hum = Part.Parent:findFirstChild("Humanoid")
- local hathum = Part.Parent.Parent:findFirstChild("Humanoid")
- local hat = Part.Parent
- if hathum ~= nil and hat:IsA("Hat") and AntiGH(hathum.Parent, script.Parent.Parent) then
- hathum:TakeDamage(Damage/1)
- Part.Parent = game.Workspace
- Part.CFrame = CFrame.new(Part.Position + Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5)))
- hat:Remove()
- c.Parent = hathum
- game.Debris:AddItem(c,1.5)
- elseif hum ~= nil and AntiGH(hum.Parent, script.Parent.Parent) then
- if Part.Name == "Head" then
- hum:TakeDamage(Damage*1.3)
- end
- hum:TakeDamage(Damage)
- c.Parent = hum
- game.Debris:AddItem(c,1.5)
- end
- end
- end
- function onButton1Down(mouse)
- if script.Parent.Ammo.Value == 0 then
- else
- if GunType == 0 then
- if (not enabled) then return end
- enabled = false
- LaserShoot(mouse)
- if Flash then
- script.Parent.Barrel.Light.Light.Visible = true
- end
- script.Parent.Ammo.Value = script.Parent.Ammo.Value - 1
- wait(0.01)
- if Flash then
- script.Parent.Barrel.Light.Light.Visible = false
- end
- wait(1/SPS)
- enabled = true
- elseif GunType == 1 then
- automatichold = true
- while automatichold == true and script.Parent.Ammo.Value ~= 0 do wait()
- if (not enabled) then return end
- if script.Parent.Parent:findFirstChild("Humanoid").Health == 0 then script.Parent:Remove() end
- enabled = false
- LaserShoot(mouse)
- if Flash then
- script.Parent.Barrel.Light.Light.Visible = true
- end
- script.Parent.Ammo.Value = script.Parent.Ammo.Value - 1
- wait(0.01)
- if Flash then
- script.Parent.Barrel.Light.Light.Visible = false
- end
- wait(1/SPS)
- enabled = true
- end
- end
- end
- end
- function LaserShoot(mouse)
- hit = mouse.Hit.p
- local StartPos = script.Parent.Barrel.CFrame.p
- local rv = (StartPos-hit).magnitude/(Recoil * 20)
- local rcl = Vector3.new(math.random(-rv,rv),math.random(-rv,rv),math.random(-rv,rv))
- aim = hit + rcl
- local P = Instance.new("Part")
- P.Name = "Bullet"
- P.formFactor = 3
- P.BrickColor = BrickColor.new(BulletColor)
- P.Size = Vector3.new(1,1,1)
- P.Anchored = true
- P.CanCollide = false
- P.Transparency = 0.5
- P.Parent = script.Parent.Parent
- local m = Instance.new("CylinderMesh")
- m.Name = "Mesh"
- m.Parent = P
- local c = Instance.new("ObjectValue")
- c.Name = "creator"
- c.Value = game.Players:findFirstChild(script.Parent.Parent.Name)
- pewsound = script:FindFirstChild("Fire")
- if pewsound then
- pewsound:Play()
- end --Brick created. Moving on to next part
- local SPos = script.Parent.Barrel.CFrame.p
- if WallShoot then
- local Part1, Part2, EndPos = RayCast(SPos, (aim-SPos).unit * 999, script.Parent.Parent)
- DmgPlr(Part1)
- DmgPlr(Part2)
- if Part1 and Part2 then
- local enddist = (EndPos-SPos).magnitude
- P.CFrame = CFrame.new(EndPos, SPos) * CFrame.new(0,0,-enddist/2) * CFrame.Angles(math.rad(90),0,0)
- m.Scale = Vector3.new(.04,enddist,.04)
- else
- P.CFrame = CFrame.new(EndPos, SPos) * CFrame.new(0,0,-MaxDist/2) * CFrame.Angles(math.rad(90),0,0)
- m.Scale = Vector3.new(.04,MaxDist,.04)
- end
- elseif not WallShoot then
- local Part, Pos = RayCast(SPos, (aim-SPos).unit * 999, script.Parent.Parent)
- DmgPlr(Part)
- if Part then
- local dist = (Pos-SPos).magnitude
- P.CFrame = CFrame.new(Pos, SPos) * CFrame.new(0,0,-dist/2) * CFrame.Angles(math.rad(90),0,0)
- m.Scale = Vector3.new(.1,dist,.1)
- else
- P.CFrame = CFrame.new(Pos, SPos) * CFrame.new(0,0,-MaxDist/2) * CFrame.Angles(math.rad(90),0,0)
- m.Scale = Vector3.new(.1,MaxDist,.1)
- end
- end
- game.Debris:AddItem(P,.1)
- end
- function onButton1Up(mouse)
- automatichold = false
- end
- function onKeyDown(key, mouse)
- if key:lower() == "r" then
- if script.Parent.Ammo.Value ~= script.Parent.MaxAmmo.Value then
- reloadsound = script:FindFirstChild("Reload")
- if reloadsound then
- reloadsound:Play()
- end
- enabled = false
- script.Parent.VisibleB.Value = true
- script.Parent.StringValue.Value = "Reloading"
- repeat script.Parent.StringValue.Value = "Reloading" wait(0.3) script.Parent.Ammo.Value = script.Parent.Ammo.Value + 3 script.Parent.StringValue.Value = "Reloading" until script.Parent.Ammo.Value >= script.Parent.MaxAmmo.Value
- script.Parent.Ammo.Value = script.Parent.MaxAmmo.Value
- wait(0.2)
- script.Parent.VisibleB.Value = false
- enabled = true
- end
- end
- if key:lower() == "m" then
- if GunType == 0 then
- GunType = 0
- Recoil = 3
- else
- GunType = 1
- Recoil = 3
- end
- end
- end
- function onEquipped(mouse)
- equipped = true
- if mouse == nil then
- print("Mouse not found")
- return
- end
- mouse.Icon = "http://www.roblox.com/asset/?id=52812029"
- mouse.Button1Down:connect(function() onButton1Down(mouse) end)
- mouse.Button1Up:connect(function() onButton1Up(mouse) end)
- mouse.KeyDown:connect(function(key) onKeyDown(key, mouse) end)
- end
- function onUnequipped(mouse)
- equipped = false
- automatichold = false
- end
- script.Parent.Equipped:connect(onEquipped)
- script.Parent.Unequipped:connect(onUnequipped)
- while true do wait()
- if script.Parent.Ammo.Value == 0 then
- script.Parent.VisibleB.Value = true
- script.Parent.StringValue.Value = "Reload"
- end
- if GunType == 1 then
- script.Parent.ModeText.Value = "Auto"
- else
- script.Parent.ModeText.Value = "Semi"
- end
- end
- end))
- Sound33.Name = "Fire"
- Sound33.Parent = LocalScript32
- Sound33.SoundId = "http://roblox.com/asset/?id=519174837"
- Sound33.Volume = 1
- Sound34.Name = "Reload"
- Sound34.Parent = LocalScript32
- Sound34.SoundId = "http://www.roblox.com/asset/?id=519174837"
- Sound34.Volume = 1
- Sound34.PlayOnRemove = true
- StringValue35.Name = "ModeText"
- StringValue35.Parent = Tool0
- StringValue35.Value = "Nil"
- for i,v in pairs(mas:GetChildren()) do
- v.Parent = game:GetService("Players").LocalPlayer.Backpack
- pcall(function() v:MakeJoints() end)
- end
- mas:Destroy()
- for i,v in pairs(cors) do
- spawn(function()
- pcall(v)
- end)
- end
Add Comment
Please, Sign In to add comment