SHOW:
|
|
- or go back to the newest paste.
1 | ||
2 | --https://github.com/Mokiros/roblox-FE-compatibility | |
3 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
4 | local Player,Mouse,mouse,UserInputService,ContextActionService = owner | |
5 | local RealPlayer = Player | |
6 | do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end | |
7 | --nobody wanted to make a golden gun that I wanted... so I made one :D script made by sillynoob7 | |
8 | function sandbox(var,func) | |
9 | local env = getfenv(func) | |
10 | local newenv = setmetatable({},{ | |
11 | __index = function(self,k) | |
12 | if k=="script" then | |
13 | return var | |
14 | else | |
15 | return env[k] | |
16 | end | |
17 | end, | |
18 | }) | |
19 | setfenv(func,newenv) | |
20 | return func | |
21 | end | |
22 | cors = {} | |
23 | mas = Instance.new("Model",game:GetService("Lighting")) | |
24 | Tool0 = Instance.new("Tool") | |
25 | Part1 = Instance.new("Part") | |
26 | SpecialMesh2 = Instance.new("SpecialMesh") | |
27 | Part3 = Instance.new("Part") | |
28 | BillboardGui4 = Instance.new("BillboardGui") | |
29 | Script5 = Instance.new("Script") | |
30 | ImageLabel6 = Instance.new("ImageLabel") | |
31 | CylinderMesh7 = Instance.new("CylinderMesh") | |
32 | Part8 = Instance.new("Part") | |
33 | Weld9 = Instance.new("Weld") | |
34 | Weld10 = Instance.new("Weld") | |
35 | Weld11 = Instance.new("Weld") | |
36 | BlockMesh12 = Instance.new("BlockMesh") | |
37 | IntValue13 = Instance.new("IntValue") | |
38 | IntValue14 = Instance.new("IntValue") | |
39 | StringValue15 = Instance.new("StringValue") | |
40 | BoolValue16 = Instance.new("BoolValue") | |
41 | Script17 = Instance.new("Script") | |
42 | LocalScript18 = Instance.new("LocalScript") | |
43 | SpecialMesh19 = Instance.new("SpecialMesh") | |
44 | SpecialMesh20 = Instance.new("SpecialMesh") | |
45 | LocalScript21 = Instance.new("LocalScript") | |
46 | LocalScript22 = Instance.new("LocalScript") | |
47 | LocalScript23 = Instance.new("LocalScript") | |
48 | LocalScript24 = Instance.new("LocalScript") | |
49 | ScreenGui25 = Instance.new("ScreenGui") | |
50 | Frame26 = Instance.new("Frame") | |
51 | TextButton27 = Instance.new("TextButton") | |
52 | TextButton28 = Instance.new("TextButton") | |
53 | TextButton29 = Instance.new("TextButton") | |
54 | TextButton30 = Instance.new("TextButton") | |
55 | Script31 = Instance.new("Script") | |
56 | LocalScript32 = Instance.new("LocalScript") | |
57 | Sound33 = Instance.new("Sound") | |
58 | Sound34 = Instance.new("Sound") | |
59 | StringValue35 = Instance.new("StringValue") | |
60 | Tool0.Name = "Luger" | |
61 | Tool0.Parent = mas | |
62 | Part1.Parent = Tool0 | |
63 | Part1.BrickColor = BrickColor.new("Bright bluish green") | |
64 | Part1.Anchored = true | |
65 | Part1.FormFactor = Enum.FormFactor.Custom | |
66 | Part1.Size = Vector3.new(0.510000467, 1.18000245, 1.34999704) | |
67 | Part1.CFrame = CFrame.new(6.70000076, 0.590013027, -9.69999599, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
68 | Part1.Color = Color3.new(0, 0.560784, 0.611765) | |
69 | Part1.Position = Vector3.new(6.70000076, 0.590013027, -9.69999599) | |
70 | Part1.Color = Color3.new(0, 0.560784, 0.611765) | |
71 | SpecialMesh2.Parent = Part1 | |
72 | SpecialMesh2.MeshId = "http://www.roblox.com/asset/?id=95356090" | |
73 | SpecialMesh2.Scale = Vector3.new(1.79999995, 1.79999995, 1.79999995) | |
74 | SpecialMesh2.TextureId = "http://www.roblox.com/asset/?id=126534866" | |
75 | SpecialMesh2.MeshType = Enum.MeshType.FileMesh | |
76 | SpecialMesh2.Scale = Vector3.new(1.79999995, 1.79999995, 1.79999995) | |
77 | Part3.Name = "Barrel" | |
78 | Part3.Parent = Tool0 | |
79 | Part3.BrickColor = BrickColor.new("Really black") | |
80 | Part3.Transparency = 1 | |
81 | Part3.Rotation = Vector3.new(-90, 0, 0) | |
82 | Part3.Anchored = true | |
83 | Part3.FormFactor = Enum.FormFactor.Custom | |
84 | Part3.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
85 | Part3.CFrame = CFrame.new(6.79500008, 0.98001498, -10.4250021, 1, 0, -0, 0, 0, 1, 0, -1, 0) | |
86 | Part3.BottomSurface = Enum.SurfaceType.Smooth | |
87 | Part3.TopSurface = Enum.SurfaceType.Smooth | |
88 | Part3.Color = Color3.new(0.0666667, 0.0666667, 0.0666667) | |
89 | Part3.Position = Vector3.new(6.79500008, 0.98001498, -10.4250021) | |
90 | Part3.Orientation = Vector3.new(-90, 0, 0) | |
91 | Part3.Color = Color3.new(0.0666667, 0.0666667, 0.0666667) | |
92 | BillboardGui4.Name = "Light" | |
93 | BillboardGui4.Parent = Part3 | |
94 | BillboardGui4.Size = UDim2.new(1.29999995, 0, 1.29999995, 0) | |
95 | BillboardGui4.Active = true | |
96 | BillboardGui4.Adornee = Part3 | |
97 | Script5.Parent = BillboardGui4 | |
98 | table.insert(cors,sandbox(Script5,function() | |
99 | script.Parent.Adornee = script.Parent.Parent | |
100 | end)) | |
101 | ImageLabel6.Name = "Light" | |
102 | ImageLabel6.Parent = BillboardGui4 | |
103 | ImageLabel6.Transparency = 1 | |
104 | ImageLabel6.Size = UDim2.new(1, 0, 1, 0) | |
105 | ImageLabel6.Visible = false | |
106 | ImageLabel6.BackgroundColor3 = Color3.new(0.756863, 0.752941, 0.764706) | |
107 | ImageLabel6.BackgroundTransparency = 1 | |
108 | ImageLabel6.Image = "http://www.roblox.com/asset/?id=42416376" | |
109 | CylinderMesh7.Parent = Part3 | |
110 | CylinderMesh7.Scale = Vector3.new(0.9375, 0.0625, 0.62499994) | |
111 | CylinderMesh7.Scale = Vector3.new(0.9375, 0.0625, 0.62499994) | |
112 | Part8.Name = "Handle" | |
113 | Part8.Parent = Tool0 | |
114 | Part8.BrickColor = BrickColor.new("Black") | |
115 | Part8.Transparency = 1 | |
116 | Part8.Rotation = Vector3.new(0, 15, 0) | |
117 | Part8.Anchored = true | |
118 | Part8.FormFactor = Enum.FormFactor.Custom | |
119 | Part8.Size = Vector3.new(0.800000012, 0.800000012, 0.800000012) | |
120 | 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) | |
121 | Part8.BottomSurface = Enum.SurfaceType.Smooth | |
122 | Part8.TopSurface = Enum.SurfaceType.Smooth | |
123 | Part8.Color = Color3.new(0.105882, 0.164706, 0.207843) | |
124 | Part8.Position = Vector3.new(6.78499985, 0.468012989, -9.25) | |
125 | Part8.Orientation = Vector3.new(0, 15, 0) | |
126 | Part8.Color = Color3.new(0.105882, 0.164706, 0.207843) | |
127 | Weld9.Parent = Part8 | |
128 | 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) | |
129 | 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) | |
130 | Weld9.Part0 = Part8 | |
131 | Weld9.Part1 = Part8 | |
132 | Weld10.Parent = Part8 | |
133 | 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) | |
134 | 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) | |
135 | Weld10.Part0 = Part8 | |
136 | Weld10.Part1 = Part8 | |
137 | Weld11.Parent = Part8 | |
138 | 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) | |
139 | 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) | |
140 | Weld11.Part0 = Part8 | |
141 | Weld11.Part1 = Part8 | |
142 | BlockMesh12.Parent = Part8 | |
143 | BlockMesh12.Offset = Vector3.new(0, 0.00104166672, 0) | |
144 | BlockMesh12.Scale = Vector3.new(0.25, 0.0416666679, 0.0416666679) | |
145 | BlockMesh12.Scale = Vector3.new(0.25, 0.0416666679, 0.0416666679) | |
146 | IntValue13.Name = "Ammo" | |
147 | IntValue13.Parent = Tool0 | |
148 | IntValue13.Value = 8 | |
149 | IntValue14.Name = "MaxAmmo" | |
150 | IntValue14.Parent = Tool0 | |
151 | IntValue14.Value = 8 | |
152 | StringValue15.Name = "StringValue" | |
153 | StringValue15.Parent = Tool0 | |
154 | BoolValue16.Name = "VisibleB" | |
155 | BoolValue16.Parent = Tool0 | |
156 | Script17.Name = "WeldArm" | |
157 | Script17.Parent = Tool0 | |
158 | table.insert(cors,sandbox(Script17,function() | |
159 | Tool = script.Parent | |
160 | ||
161 | ||
162 | local arms = nil | |
163 | local torso = nil | |
164 | local weld33 = nil -- right arm | |
165 | local weld55 = nil -- left arm | |
166 | local welds = {} | |
167 | ||
168 | ||
169 | ||
170 | ||
171 | colors = {26,} | |
172 | ||
173 | function Equip(mouse) | |
174 | wait(0.01) | |
175 | arms = {Tool.Parent:FindFirstChild("Left Arm"), Tool.Parent:FindFirstChild("Right Arm")} | |
176 | torso = Tool.Parent:FindFirstChild("Torso") | |
177 | if arms ~= nil and torso ~= nil then | |
178 | local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")} | |
179 | if sh ~= nil then | |
180 | local yes = true | |
181 | if yes then | |
182 | yes = false | |
183 | sh[1].Part1 = nil | |
184 | sh[2].Part1 = nil | |
185 | local weld1 = Instance.new("Weld") -- left arm | |
186 | weld55 = weld1 | |
187 | weld1.Part0 = torso | |
188 | weld1.Parent = torso | |
189 | weld1.Part1 = arms[1] | |
190 | weld1.C1 = CFrame.new(-0.35, 0.5, 0.6) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90)) | |
191 | welds[1] = weld1 | |
192 | local weld2 = Instance.new("Weld") -- right arm | |
193 | weld33 = weld2 | |
194 | weld2.Part0 = torso | |
195 | weld2.Parent = torso | |
196 | weld2.Part1 = arms[2] | |
197 | weld2.C1 = CFrame.new(-0.75, 0.5, 0.35) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0) | |
198 | welds[2] = weld2 | |
199 | ||
200 | end | |
201 | else | |
202 | print("sh") | |
203 | end | |
204 | else | |
205 | print("arms") | |
206 | end | |
207 | end | |
208 | ||
209 | function Unequip(mouse) | |
210 | if arms ~= nil and torso ~= nil then | |
211 | local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")} | |
212 | if sh ~= nil then | |
213 | local yes = true | |
214 | if yes then | |
215 | yes = false | |
216 | sh[1].Part1 = arms[1] | |
217 | sh[2].Part1 = arms[2] | |
218 | welds[1].Parent = nil | |
219 | welds[2].Parent = nil | |
220 | ||
221 | end | |
222 | else | |
223 | print("sh") | |
224 | end | |
225 | else | |
226 | print("arms") | |
227 | end | |
228 | end | |
229 | Tool.Equipped:connect(Equip) | |
230 | Tool.Unequipped:connect(Unequip) | |
231 | end)) | |
232 | LocalScript18.Name = "Arms" | |
233 | LocalScript18.Parent = Tool0 | |
234 | table.insert(cors,sandbox(LocalScript18,function() | |
235 | sp = script.Parent | |
236 | ||
237 | Mesh = false -- If true will load BC 2.0 Arm meshes as well. | |
238 | Shirt = true -- If true will load the user's shirt to the arms as well | |
239 | ||
240 | function onEquipped(mouse) | |
241 | local Player = game:GetService("Players").LocalPlayer | |
242 | local Cam = game.Workspace.CurrentCamera | |
243 | ||
244 | local Arms = Instance.new("Model") | |
245 | Arms.Name = "Arms" | |
246 | Arms.Parent = Cam | |
247 | ||
248 | if Shirt == true then | |
249 | local Humanoid = Instance.new("Humanoid") | |
250 | Humanoid.MaxHealth = 0 | |
251 | Humanoid.Health = 0 | |
252 | Humanoid.Name = "" | |
253 | Humanoid.Parent = Arms | |
254 | ||
255 | local newShirt = Player.Character:FindFirstChild("Shirt"):clone() | |
256 | newShirt.Parent = Arms | |
257 | else end | |
258 | ||
259 | local RightArm = Player.Character:FindFirstChild("Right Arm"):clone() | |
260 | RightArm.Name = "Right Arm" | |
261 | RightArm.Transparency = 0.1 | |
262 | ||
263 | local w = Instance.new("Weld") | |
264 | w.Part0 = RightArm | |
265 | w.Part1 = Player.Character:FindFirstChild("Right Arm") | |
266 | w.C0 = CFrame.new() | |
267 | w.C1 = CFrame.new() | |
268 | w.Parent = RightArm | |
269 | RightArm.Parent = Arms | |
270 | ||
271 | local LeftArm = Player.Character:FindFirstChild("Left Arm"):clone() | |
272 | LeftArm.Name = "Left Arm" | |
273 | LeftArm.Transparency = 0.1 | |
274 | ||
275 | local w = Instance.new("Weld") | |
276 | w.Part0 = LeftArm | |
277 | w.Part1 = Player.Character:FindFirstChild("Left Arm") | |
278 | w.C0 = CFrame.new() | |
279 | w.C1 = CFrame.new() | |
280 | w.Parent = LeftArm | |
281 | LeftArm.Parent = Arms | |
282 | ||
283 | if Mesh ~= false then | |
284 | local LeftArmMesh = script:FindFirstChild("LeftArm") | |
285 | LeftArmMesh.Parent = LeftArm | |
286 | local RightArmMesh = script:FindFirstChild("RightArm") | |
287 | RightArmMesh.Parent = RightArm | |
288 | else end | |
289 | ||
290 | end | |
291 | ||
292 | function onUnequipped(mouse) | |
293 | local Player = game:GetService("Players").LocalPlayer | |
294 | local Cam = game.Workspace.CurrentCamera | |
295 | for _, Model in pairs(Cam:GetChildren()) do | |
296 | if Model.Name == "Arms" then | |
297 | Model:remove() | |
298 | else end | |
299 | end | |
300 | end | |
301 | ||
302 | sp.Equipped:connect(onEquipped) | |
303 | sp.Unequipped:connect(onUnequipped) | |
304 | ||
305 | end)) | |
306 | SpecialMesh19.Name = "LeftArm" | |
307 | SpecialMesh19.Parent = LocalScript18 | |
308 | SpecialMesh19.MeshId = "http://www.roblox.com/asset/?id=27111419" | |
309 | SpecialMesh19.MeshType = Enum.MeshType.FileMesh | |
310 | SpecialMesh20.Name = "RightArm" | |
311 | SpecialMesh20.Parent = LocalScript18 | |
312 | SpecialMesh20.MeshId = "http://www.roblox.com/asset/?id=27111864" | |
313 | SpecialMesh20.MeshType = Enum.MeshType.FileMesh | |
314 | LocalScript21.Name = "BackupWeld" | |
315 | LocalScript21.Parent = Tool0 | |
316 | table.insert(cors,sandbox(LocalScript21,function() | |
317 | function Weld(x,y) | |
318 | local W = Instance.new("Weld") | |
319 | W.Part0 = x | |
320 | W.Part1 = y | |
321 | local CJ = CFrame.new(x.Position) | |
322 | local C0 = x.CFrame:inverse()*CJ | |
323 | local C1 = y.CFrame:inverse()*CJ | |
324 | W.C0 = C0 | |
325 | W.C1 = C1 | |
326 | W.Parent = x | |
327 | end | |
328 | ||
329 | function Get(A) | |
330 | if A.className == "Part" then | |
331 | Weld(script.Parent.Handle, A) | |
332 | A.Anchored = false | |
333 | else | |
334 | local C = A:GetChildren() | |
335 | for i=1, #C do | |
336 | Get(C[i]) | |
337 | end | |
338 | end | |
339 | end | |
340 | ||
341 | function Finale() | |
342 | Get(script.Parent) | |
343 | end | |
344 | ||
345 | script.Parent.Equipped:connect(Finale) | |
346 | script.Parent.Unequipped:connect(Finale) | |
347 | Finale() | |
348 | end)) | |
349 | LocalScript22.Name = "Crouch" | |
350 | LocalScript22.Parent = Tool0 | |
351 | table.insert(cors,sandbox(LocalScript22,function() | |
352 | on = 0 | |
353 | Tool = script.Parent | |
354 | welds = {} | |
355 | sh = {} | |
356 | arms = nil | |
357 | torso = nil | |
358 | f = nil | |
359 | function Crouch(ison) | |
360 | if arms == nil and torso == nil then | |
361 | arms = {Tool.Parent:FindFirstChild("Left Leg"), Tool.Parent:FindFirstChild("Right Leg")} | |
362 | torso = Tool.Parent:FindFirstChild("Torso") | |
363 | end | |
364 | if arms ~= nil and torso ~= nil then | |
365 | sh = {torso:FindFirstChild("Left Hip"), torso:FindFirstChild("Right Hip")} | |
366 | if sh ~= nil then | |
367 | local yes = true | |
368 | if yes then | |
369 | yes = false | |
370 | if ison == 1 then | |
371 | sh[1].Part1 = nil | |
372 | sh[2].Part1 = nil | |
373 | local weld1 = Instance.new("Weld") | |
374 | weld1.Part0 = torso | |
375 | weld1.Parent = torso | |
376 | weld1.Part1 = arms[1] | |
377 | weld1.C1 = CFrame.new(-0.5, 0.75, 1) | |
378 | arms[1].Name = "LDave" | |
379 | arms[1].CanCollide = true | |
380 | welds[1] = weld1 | |
381 | Tool.Parent.Humanoid.WalkSpeed = 10 | |
382 | ------------------------------------------- | |
383 | local weld2 = Instance.new("Weld") | |
384 | weld2.Part0 = torso | |
385 | weld2.Parent = torso | |
386 | weld2.Part1 = arms[2] | |
387 | weld2.C1 = CFrame.new(0.5,0.495,1.25) * CFrame.fromEulerAnglesXYZ(math.rad(90),0,0) | |
388 | arms[2].Name = "RDave" | |
389 | arms[2].CanCollide = true | |
390 | welds[2] = weld2 | |
391 | --------------------------------- | |
392 | local force = Instance.new("BodyForce") | |
393 | force.Parent = torso | |
394 | f = force | |
395 | wait(0.01) | |
396 | elseif ison == 0 then | |
397 | if arms then | |
398 | sh[1].Part1 = arms[1] | |
399 | sh[2].Part1 = arms[2] | |
400 | f.Parent = nil | |
401 | arms[2].Name = "Right Leg" | |
402 | arms[1].Name = "Left Leg" | |
403 | welds[1].Parent = nil | |
404 | welds[2].Parent = nil | |
405 | Tool.Parent.Humanoid.WalkSpeed = 16 | |
406 | end | |
407 | end | |
408 | -- | |
409 | end | |
410 | else | |
411 | print("sh") | |
412 | end | |
413 | else | |
414 | print("arms") | |
415 | end | |
416 | end | |
417 | function Key(key) | |
418 | if key then | |
419 | key = string.lower(key) | |
420 | if (key=="c") then | |
421 | if on == 1 then | |
422 | on = 0 | |
423 | elseif on == 0 then | |
424 | on = 1 | |
425 | end | |
426 | Crouch(on) | |
427 | end | |
428 | end | |
429 | end | |
430 | function Equip(mouse) | |
431 | mouse.KeyDown:connect(Key) | |
432 | end | |
433 | script.Parent.Equipped:connect(Equip) | |
434 | ||
435 | ||
436 | end)) | |
437 | LocalScript23.Name = "Crouch/Patrol" | |
438 | LocalScript23.Parent = Tool0 | |
439 | table.insert(cors,sandbox(LocalScript23,function() | |
440 | --Note this must be used with the accompanying weld script | |
441 | --This is an edited version of my V3 KeyCommand Script. | |
442 | --Heavily edited from a free model crouch script, ~ukwarrior6~ | |
443 | ||
444 | ---------------------------- | |
445 | --Crouch and Patrol Script-- | |
446 | ---------------------------- | |
447 | ||
448 | on = 0 | |
449 | Tool = script.Parent | |
450 | welds = {} | |
451 | sh = {} | |
452 | arms = nil | |
453 | torso = nil | |
454 | f = nil | |
455 | Holstered = false | |
456 | wait() | |
457 | local Tool = script.Parent | |
458 | enabled = true | |
459 | ||
460 | function Crouch(ison) | |
461 | if arms == nil and torso == nil then | |
462 | arms = {Tool.Parent:FindFirstChild("Left Leg"), Tool.Parent:FindFirstChild("Right Leg")} | |
463 | torso = Tool.Parent:FindFirstChild("Torso") | |
464 | end | |
465 | if arms ~= nil and torso ~= nil then | |
466 | sh = {torso:FindFirstChild("Left Hip"), torso:FindFirstChild("Right Hip")} | |
467 | if sh ~= nil then | |
468 | local yes = true | |
469 | if yes then | |
470 | yes = false | |
471 | if ison == 1 then | |
472 | sh[1].Part1 = nil | |
473 | sh[2].Part1 = nil | |
474 | local weld1 = Instance.new("Weld") | |
475 | weld1.Part0 = torso | |
476 | weld1.Parent = torso | |
477 | weld1.Part1 = arms[1] | |
478 | weld1.C1 = CFrame.new(-0.5, 0.75, 1) | |
479 | arms[1].Name = "LDave" | |
480 | arms[1].CanCollide = true | |
481 | welds[1] = weld1 | |
482 | ------------------------------------------- | |
483 | local weld2 = Instance.new("Weld") | |
484 | weld2.Part0 = torso | |
485 | weld2.Parent = torso | |
486 | weld2.Part1 = arms[2] | |
487 | weld2.C1 = CFrame.new(0.5,0.495,1.25) * CFrame.fromEulerAnglesXYZ(math.rad(90),0,0) | |
488 | arms[2].Name = "RDave" | |
489 | arms[2].CanCollide = true | |
490 | welds[2] = weld2 | |
491 | --------------------------------- | |
492 | local force = Instance.new("BodyForce") | |
493 | force.Parent = torso | |
494 | f = force | |
495 | wait(0.01) | |
496 | elseif ison == 0 then | |
497 | if arms then | |
498 | sh[1].Part1 = arms[1] | |
499 | sh[2].Part1 = arms[2] | |
500 | f.Parent = nil | |
501 | arms[2].Name = "Right Leg" | |
502 | arms[1].Name = "Left Leg" | |
503 | welds[1].Parent = nil | |
504 | welds[2].Parent = nil | |
505 | end | |
506 | end | |
507 | -- | |
508 | end | |
509 | else | |
510 | print("sh") | |
511 | end | |
512 | else | |
513 | print("arms") | |
514 | end | |
515 | end | |
516 | ---------------------------------------------------------------------------------------------------------------- | |
517 | function GunUp() | |
518 | Holstered = false | |
519 | Tool.Enabled = true | |
520 | torso = Tool.Parent:FindFirstChild("Torso") | |
521 | if torso ~= nil then | |
522 | torso.weld1.C1 = CFrame.new(0.7, 0.9, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(28), math.rad(-1)) | |
523 | torso.weld2.C1 = CFrame.new(-0.6, 0, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-0.01), 0) | |
524 | end | |
525 | end | |
526 | ||
527 | function GunDown() | |
528 | Holstered = true | |
529 | Tool.Enabled = false -- You don't want to be shooting if your not aiming | |
530 | torso = Tool.Parent:FindFirstChild("Torso") | |
531 | if torso ~= nil then | |
532 | torso.weld1.C1 = CFrame.new(0.5,0,.5) * CFrame.fromEulerAnglesXYZ(math.rad(315), 0, math.rad(-40)) | |
533 | torso.weld2.C1 = CFrame.new(-.8, -0.6, -0.5) * CFrame.fromEulerAnglesXYZ(math.rad(-40), math.rad(-60), 0) | |
534 | end | |
535 | end | |
536 | ----------------------------------------------------------------------------------------------------------------- | |
537 | function onEquippedLocal(mouse) | |
538 | mouse.Icon = "" -- Chuck in a cool crosshair here.. | |
539 | mouse.KeyDown:connect(onKeyDown) | |
540 | end | |
541 | ----------------------------------------------------------------------------------------------------------------- | |
542 | function onKeyDown(key) | |
543 | if (key~=nil) then | |
544 | key = key:lower() | |
545 | ||
546 | if (key=="c") then -- Toggle Crouch (For some reason it breaks if you patrol first, working on this... | |
547 | if on == 1 then | |
548 | on = 0 | |
549 | elseif on == 0 then | |
550 | on = 1 | |
551 | end | |
552 | Crouch(on) | |
553 | ||
554 | elseif (key=="e") then -- Toggle Patrol | |
555 | if Holstered == true then | |
556 | script.Parent.Parent.Humanoid.WalkSpeed = 16 | |
557 | GunUp() | |
558 | elseif Holstered == false then | |
559 | script.Parent.Parent.Humanoid.WalkSpeed = 20 | |
560 | GunDown() | |
561 | end end end end | |
562 | Tool.Equipped:connect(onEquippedLocal) | |
563 | ||
564 | ||
565 | ||
566 | ||
567 | ||
568 | ||
569 | end)) | |
570 | LocalScript24.Name = "GuiScript" | |
571 | LocalScript24.Parent = Tool0 | |
572 | table.insert(cors,sandbox(LocalScript24,function() | |
573 | local Tool = script.Parent | |
574 | ||
575 | local vPlayer | |
576 | local Gui | |
577 | local Alt | |
578 | local Coords | |
579 | local Ammo | |
580 | local ready = false | |
581 | ||
582 | ||
583 | function setUpGui() | |
584 | if vPlayer == nil or vPlayer:findFirstChild("PlayerGui") == nil then | |
585 | return | |
586 | end | |
587 | ||
588 | Gui = script.ScreenGui:Clone() | |
589 | Gui.Name = "GunDisplay" | |
590 | Gui.Parent = vPlayer.PlayerGui | |
591 | end | |
592 | ||
593 | function onEquippedLocal(mouse) | |
594 | vPlayer = game.Players.LocalPlayer | |
595 | ||
596 | setUpGui() | |
597 | ready = false | |
598 | end | |
599 | ||
600 | function onUnequippedLocal(mouse) | |
601 | if Gui then | |
602 | Gui:remove() | |
603 | end | |
604 | ||
605 | Gui = nil | |
606 | Alt = nil | |
607 | Coords = nil | |
608 | Ammo = nil | |
609 | vPlayer = nil | |
610 | end | |
611 | ||
612 | Tool.Equipped:connect(onEquippedLocal) | |
613 | Tool.Unequipped:connect(onUnequippedLocal) | |
614 | ||
615 | while true do | |
616 | wait() | |
617 | if Gui then | |
618 | Gui.Stats.Mode.Text = "Mode: " ..script.Parent.ModeText.Value | |
619 | Gui.Stats.Ammo.Ammo.Text = ""..math.floor((((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100)).."%" | |
620 | Gui.Stats.Reload.Text = script.Parent.StringValue.Value | |
621 | if script.Parent.VisibleB.Value then | |
622 | Gui.Stats.Reload.Visible = true | |
623 | else | |
624 | Gui.Stats.Reload.Visible = false | |
625 | end | |
626 | if (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 66 then | |
627 | Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-0,-128,-0) | |
628 | elseif (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 33 then | |
629 | Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-255,-255,-102) | |
630 | elseif (((script.Parent.Ammo.Value / script.Parent.MaxAmmo.Value)) * 100) > 0 then | |
631 | Gui.Stats.Ammo.Ammo.TextColor3 = Color3.new(-255,-51,-0) | |
632 | end | |
633 | ||
634 | end | |
635 | end | |
636 | ||
637 | end)) | |
638 | ScreenGui25.Parent = LocalScript24 | |
639 | Frame26.Name = "Stats" | |
640 | Frame26.Parent = ScreenGui25 | |
641 | Frame26.Transparency = 1 | |
642 | Frame26.Size = UDim2.new(0.200000003, 0, 0.100000001, 0) | |
643 | Frame26.Position = UDim2.new(0.100000001, 0, 0.649999976, 0) | |
644 | Frame26.BackgroundTransparency = 1 | |
645 | TextButton27.Name = "Mode" | |
646 | TextButton27.Parent = Frame26 | |
647 | TextButton27.Transparency = 1 | |
648 | TextButton27.Size = UDim2.new(1, 0, 0.5, 0) | |
649 | TextButton27.Text = "Mode: Nil" | |
650 | TextButton27.BackgroundTransparency = 1 | |
651 | TextButton27.Font = Enum.Font.ArialBold | |
652 | TextButton27.FontSize = Enum.FontSize.Size18 | |
653 | TextButton27.TextColor3 = Color3.new(0.866667, 0.866667, 0.866667) | |
654 | TextButton28.Name = "Ammo" | |
655 | TextButton28.Parent = Frame26 | |
656 | TextButton28.Transparency = 1 | |
657 | TextButton28.Size = UDim2.new(1, 0, 0.5, 0) | |
658 | TextButton28.Text = "Ammo: " | |
659 | TextButton28.Position = UDim2.new(-0.119999997, 0, 0.5, 0) | |
660 | TextButton28.BackgroundTransparency = 1 | |
661 | TextButton28.Font = Enum.Font.ArialBold | |
662 | TextButton28.FontSize = Enum.FontSize.Size18 | |
663 | TextButton28.TextColor3 = Color3.new(0.866667, 0.866667, 0.866667) | |
664 | TextButton29.Name = "Ammo" | |
665 | TextButton29.Parent = TextButton28 | |
666 | TextButton29.Transparency = 1 | |
667 | TextButton29.Size = UDim2.new(1, 0, 1, 0) | |
668 | TextButton29.Text = "90%" | |
669 | TextButton29.Position = UDim2.new(0.699999988, 0, 0, 0) | |
670 | TextButton29.BackgroundTransparency = 1 | |
671 | TextButton29.Font = Enum.Font.ArialBold | |
672 | TextButton29.FontSize = Enum.FontSize.Size18 | |
673 | TextButton29.TextColor3 = Color3.new(1, 0.2, 0) | |
674 | TextButton29.TextXAlignment = Enum.TextXAlignment.Left | |
675 | TextButton30.Name = "Reload" | |
676 | TextButton30.Parent = Frame26 | |
677 | TextButton30.Transparency = 1 | |
678 | TextButton30.Size = UDim2.new(1, 0, 0.5, 0) | |
679 | TextButton30.Text = "Reloading" | |
680 | TextButton30.Position = UDim2.new(0, 0, 1, 0) | |
681 | TextButton30.Visible = false | |
682 | TextButton30.BackgroundTransparency = 1 | |
683 | TextButton30.Font = Enum.Font.ArialBold | |
684 | TextButton30.FontSize = Enum.FontSize.Size18 | |
685 | TextButton30.TextColor3 = Color3.new(1, 0.2, 0) | |
686 | TextButton30.TextTransparency = 1.8000003099442 | |
687 | Script31.Name = "Flash" | |
688 | Script31.Parent = TextButton30 | |
689 | table.insert(cors,sandbox(Script31,function() | |
690 | while true do wait() | |
691 | for i=1,5 do | |
692 | script.Parent.TextTransparency = script.Parent.TextTransparency + 0.1 | |
693 | wait(0.05) | |
694 | end | |
695 | wait(0.1) | |
696 | for i=1,5 do | |
697 | script.Parent.TextTransparency = script.Parent.TextTransparency - 0.1 | |
698 | wait(0.05) | |
699 | end | |
700 | end | |
701 | ||
702 | end)) | |
703 | LocalScript32.Name = "MainScript" | |
704 | LocalScript32.Parent = Tool0 | |
705 | table.insert(cors,sandbox(LocalScript32,function() | |
706 | wait(1) | |
707 | local Tool = script.Parent; | |
708 | local pewsound | |
709 | local bangsound | |
710 | local cam | |
711 | local ggui | |
712 | ||
713 | enabled = true | |
714 | automatichold = false | |
715 | dmged = false | |
716 | shotgun = false | |
717 | equipped = false | |
718 | overheated = false | |
719 | isZoom = false | |
720 | ||
721 | -----------------------------------------ONLY EDIT THESE VALUES!!!!!----------------------------------------- | |
722 | -----!Instructions!----- | |
723 | --Make sure you have a part in the gun named Barrel, it is where the raycast will shoot from.-- | |
724 | --Just place this script into any gun and edit the values below.-- | |
725 | --Editting anything else will risk breaking it.-- | |
726 | ------------------------ | |
727 | Damage = 20 | |
728 | SPS = 15 -- Shots Per Second, gives a limit of how fast the gun shoots. | |
729 | Recoil = 3 -- [1-10] [1 = Minigun, 10 = Sniper] | |
730 | WallShoot = false -- Shoots through walls. | |
731 | GH = false -- [True = RB can't hurt RB.] [False = RB can hurt RB.] | |
732 | BulletColor = "Cool yellow" -- Any Brickcolor will work. | |
733 | Flash = true | |
734 | -------------------------------------------------------------------------------------------------------- | |
735 | ||
736 | local zm = Instance.new("Part") | |
737 | zm.Name = "ZoomZM" | |
738 | zm.Anchored = true | |
739 | zm.Transparency = 1 | |
740 | zm.Size = Vector3.new(1,1,1) | |
741 | zm.CanCollide = false | |
742 | GunType = 0 | |
743 | ||
744 | --[[local gui = Instance.new("ScreenGui") | |
745 | local bg = Instance.new("Frame",gui) | |
746 | local bar = Instance.new("Frame",bg) | |
747 | local bvl = Instance.new("ImageLabel", bg) | |
748 | bvl.Name = "Bevel" | |
749 | bvl.BackgroundTransparency = 1 | |
750 | bvl.Image = "http://www.roblox.com/asset/?id=56852431" | |
751 | bvl.Size = UDim2.new(1,0,1,0) | |
752 | bg.Name = "Back" | |
753 | bar.Name = "Charge" | |
754 | bar.BackgroundColor3 = Color3.new(200/255,0/255,0/255) | |
755 | bg.BackgroundColor3 = Color3.new(200/255,200/255,200/255) | |
756 | bg.Size = UDim2.new(0,10,0,-100) | |
757 | bg.Position = UDim2.new(0,5,0,500) | |
758 | bar.Size = UDim2.new(0,4,-1,0) | |
759 | bar.Position = UDim2.new(0,3,1,0) | |
760 | ||
761 | ggui = gui:Clone() | |
762 | ggui.Name = "GunGui" | |
763 | ggui.Back.Charge.Size = UDim2.new(0,4,-(script.Charge.Value/100),0)]] | |
764 | ||
765 | GroupID = 9999 | |
766 | ||
767 | function AntiGH(char1,char2) | |
768 | if GH then | |
769 | local plyr1 = game.Players:findFirstChild(char1.Name) | |
770 | local plyr2 = game.Players:findFirstChild(char2.Name) | |
771 | if plyr1 and plyr2 then | |
772 | if plyr1:IsInGroup(GroupID) and plyr2:IsInGroup(GroupID) then | |
773 | return false | |
774 | end | |
775 | end | |
776 | return true | |
777 | elseif not GH then | |
778 | return true | |
779 | end | |
780 | end | |
781 | ||
782 | MaxDist = 1000 | |
783 | ||
784 | function RayCast(Start,End,Ignore) | |
785 | if WallShoot then | |
786 | ray1 = Ray.new(Start, End.unit * 999.999) | |
787 | local Part1, TempPos = Workspace:FindPartOnRay(ray1,Ignore) | |
788 | ray2 = Ray.new(TempPos, End.unit * 999.999) | |
789 | local Part2, EndPos = Workspace:FindPartOnRay(ray2,Part1) | |
790 | return Part1, Part2, EndPos | |
791 | elseif not WallShoot then | |
792 | ray = Ray.new(Start, End.unit * 999.999) | |
793 | return Workspace:FindPartOnRay(ray,Ignore) | |
794 | end | |
795 | end | |
796 | ||
797 | function DmgPlr(Part) | |
798 | if Part ~= nil then | |
799 | local c = Instance.new("ObjectValue") | |
800 | c.Name = "creator" | |
801 | c.Value = game.Players:findFirstChild(script.Parent.Parent.Name) | |
802 | local hum = Part.Parent:findFirstChild("Humanoid") | |
803 | local hathum = Part.Parent.Parent:findFirstChild("Humanoid") | |
804 | local hat = Part.Parent | |
805 | if hathum ~= nil and hat:IsA("Hat") and AntiGH(hathum.Parent, script.Parent.Parent) then | |
806 | hathum:TakeDamage(Damage/1) | |
807 | Part.Parent = game.Workspace | |
808 | Part.CFrame = CFrame.new(Part.Position + Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))) | |
809 | hat:Remove() | |
810 | c.Parent = hathum | |
811 | game.Debris:AddItem(c,1.5) | |
812 | elseif hum ~= nil and AntiGH(hum.Parent, script.Parent.Parent) then | |
813 | if Part.Name == "Head" then | |
814 | hum:TakeDamage(Damage*1.3) | |
815 | end | |
816 | hum:TakeDamage(Damage) | |
817 | c.Parent = hum | |
818 | game.Debris:AddItem(c,1.5) | |
819 | end | |
820 | end | |
821 | end | |
822 | ||
823 | function onButton1Down(mouse) | |
824 | if script.Parent.Ammo.Value == 0 then | |
825 | else | |
826 | if GunType == 0 then | |
827 | if (not enabled) then return end | |
828 | enabled = false | |
829 | LaserShoot(mouse) | |
830 | if Flash then | |
831 | script.Parent.Barrel.Light.Light.Visible = true | |
832 | end | |
833 | script.Parent.Ammo.Value = script.Parent.Ammo.Value - 1 | |
834 | wait(0.01) | |
835 | if Flash then | |
836 | script.Parent.Barrel.Light.Light.Visible = false | |
837 | end | |
838 | wait(1/SPS) | |
839 | enabled = true | |
840 | elseif GunType == 1 then | |
841 | automatichold = true | |
842 | while automatichold == true and script.Parent.Ammo.Value ~= 0 do wait() | |
843 | if (not enabled) then return end | |
844 | if script.Parent.Parent:findFirstChild("Humanoid").Health == 0 then script.Parent:Remove() end | |
845 | enabled = false | |
846 | LaserShoot(mouse) | |
847 | if Flash then | |
848 | script.Parent.Barrel.Light.Light.Visible = true | |
849 | end | |
850 | script.Parent.Ammo.Value = script.Parent.Ammo.Value - 1 | |
851 | wait(0.01) | |
852 | if Flash then | |
853 | script.Parent.Barrel.Light.Light.Visible = false | |
854 | end | |
855 | wait(1/SPS) | |
856 | enabled = true | |
857 | end | |
858 | end | |
859 | end | |
860 | end | |
861 | ||
862 | function LaserShoot(mouse) | |
863 | hit = mouse.Hit.p | |
864 | local StartPos = script.Parent.Barrel.CFrame.p | |
865 | local rv = (StartPos-hit).magnitude/(Recoil * 20) | |
866 | local rcl = Vector3.new(math.random(-rv,rv),math.random(-rv,rv),math.random(-rv,rv)) | |
867 | aim = hit + rcl | |
868 | local P = Instance.new("Part") | |
869 | P.Name = "Bullet" | |
870 | P.formFactor = 3 | |
871 | P.BrickColor = BrickColor.new(BulletColor) | |
872 | P.Size = Vector3.new(1,1,1) | |
873 | P.Anchored = true | |
874 | P.CanCollide = false | |
875 | P.Transparency = 0.5 | |
876 | P.Parent = script.Parent.Parent | |
877 | local m = Instance.new("CylinderMesh") | |
878 | m.Name = "Mesh" | |
879 | m.Parent = P | |
880 | local c = Instance.new("ObjectValue") | |
881 | c.Name = "creator" | |
882 | c.Value = game.Players:findFirstChild(script.Parent.Parent.Name) | |
883 | pewsound = script:FindFirstChild("Fire") | |
884 | if pewsound then | |
885 | pewsound:Play() | |
886 | end --Brick created. Moving on to next part | |
887 | local SPos = script.Parent.Barrel.CFrame.p | |
888 | if WallShoot then | |
889 | local Part1, Part2, EndPos = RayCast(SPos, (aim-SPos).unit * 999, script.Parent.Parent) | |
890 | DmgPlr(Part1) | |
891 | DmgPlr(Part2) | |
892 | if Part1 and Part2 then | |
893 | local enddist = (EndPos-SPos).magnitude | |
894 | P.CFrame = CFrame.new(EndPos, SPos) * CFrame.new(0,0,-enddist/2) * CFrame.Angles(math.rad(90),0,0) | |
895 | m.Scale = Vector3.new(.04,enddist,.04) | |
896 | else | |
897 | P.CFrame = CFrame.new(EndPos, SPos) * CFrame.new(0,0,-MaxDist/2) * CFrame.Angles(math.rad(90),0,0) | |
898 | m.Scale = Vector3.new(.04,MaxDist,.04) | |
899 | end | |
900 | elseif not WallShoot then | |
901 | local Part, Pos = RayCast(SPos, (aim-SPos).unit * 999, script.Parent.Parent) | |
902 | DmgPlr(Part) | |
903 | if Part then | |
904 | local dist = (Pos-SPos).magnitude | |
905 | P.CFrame = CFrame.new(Pos, SPos) * CFrame.new(0,0,-dist/2) * CFrame.Angles(math.rad(90),0,0) | |
906 | m.Scale = Vector3.new(.1,dist,.1) | |
907 | else | |
908 | P.CFrame = CFrame.new(Pos, SPos) * CFrame.new(0,0,-MaxDist/2) * CFrame.Angles(math.rad(90),0,0) | |
909 | m.Scale = Vector3.new(.1,MaxDist,.1) | |
910 | end | |
911 | end | |
912 | game.Debris:AddItem(P,.1) | |
913 | end | |
914 | ||
915 | function onButton1Up(mouse) | |
916 | automatichold = false | |
917 | end | |
918 | ||
919 | function onKeyDown(key, mouse) | |
920 | ||
921 | ||
922 | ||
923 | if key:lower() == "r" then | |
924 | if script.Parent.Ammo.Value ~= script.Parent.MaxAmmo.Value then | |
925 | reloadsound = script:FindFirstChild("Reload") | |
926 | if reloadsound then | |
927 | reloadsound:Play() | |
928 | end | |
929 | enabled = false | |
930 | script.Parent.VisibleB.Value = true | |
931 | script.Parent.StringValue.Value = "Reloading" | |
932 | 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 | |
933 | script.Parent.Ammo.Value = script.Parent.MaxAmmo.Value | |
934 | wait(0.2) | |
935 | script.Parent.VisibleB.Value = false | |
936 | enabled = true | |
937 | end | |
938 | end | |
939 | ||
940 | if key:lower() == "m" then | |
941 | if GunType == 0 then | |
942 | GunType = 0 | |
943 | Recoil = 3 | |
944 | else | |
945 | GunType = 1 | |
946 | Recoil = 3 | |
947 | end | |
948 | end | |
949 | ||
950 | end | |
951 | ||
952 | function onEquipped(mouse) | |
953 | equipped = true | |
954 | ||
955 | if mouse == nil then | |
956 | print("Mouse not found") | |
957 | return | |
958 | end | |
959 | mouse.Icon = "http://www.roblox.com/asset/?id=52812029" | |
960 | mouse.Button1Down:connect(function() onButton1Down(mouse) end) | |
961 | mouse.Button1Up:connect(function() onButton1Up(mouse) end) | |
962 | mouse.KeyDown:connect(function(key) onKeyDown(key, mouse) end) | |
963 | ||
964 | end | |
965 | ||
966 | function onUnequipped(mouse) | |
967 | equipped = false | |
968 | automatichold = false | |
969 | ||
970 | ||
971 | end | |
972 | ||
973 | script.Parent.Equipped:connect(onEquipped) | |
974 | script.Parent.Unequipped:connect(onUnequipped) | |
975 | while true do wait() | |
976 | if script.Parent.Ammo.Value == 0 then | |
977 | script.Parent.VisibleB.Value = true | |
978 | script.Parent.StringValue.Value = "Reload" | |
979 | end | |
980 | if GunType == 1 then | |
981 | script.Parent.ModeText.Value = "Auto" | |
982 | else | |
983 | script.Parent.ModeText.Value = "Semi" | |
984 | end | |
985 | end | |
986 | ||
987 | ||
988 | end)) | |
989 | Sound33.Name = "Fire" | |
990 | Sound33.Parent = LocalScript32 | |
991 | Sound33.SoundId = "http://roblox.com/asset/?id=519174837" | |
992 | Sound33.Volume = 1 | |
993 | Sound34.Name = "Reload" | |
994 | Sound34.Parent = LocalScript32 | |
995 | Sound34.SoundId = "http://www.roblox.com/asset/?id=519174837" | |
996 | Sound34.Volume = 1 | |
997 | Sound34.PlayOnRemove = true | |
998 | StringValue35.Name = "ModeText" | |
999 | StringValue35.Parent = Tool0 | |
1000 | StringValue35.Value = "Nil" | |
1001 | for i,v in pairs(mas:GetChildren()) do | |
1002 | v.Parent = game:GetService("Players").LocalPlayer.Backpack | |
1003 | pcall(function() v:MakeJoints() end) | |
1004 | end | |
1005 | mas:Destroy() | |
1006 | for i,v in pairs(cors) do | |
1007 | spawn(function() | |
1008 | pcall(v) | |
1009 | end) | |
1010 | end |