SHOW:
|
|
- or go back to the newest paste.
1 | - | --A MP5 ^-^ |
1 | + | --A Golden MP5 ^-^ |
2 | --Has a 30 round magazine and does lots of damage | |
3 | --Don't leak this. If you do i will fucking shoot you till your dead :\ | |
4 | local runDummyScript = function(f,scri) | |
5 | local oldenv = getfenv(f) | |
6 | local newenv = setmetatable({}, { | |
7 | __index = function(_, k) | |
8 | if k:lower() == 'script' then | |
9 | return scri | |
10 | else | |
11 | return oldenv[k] | |
12 | end | |
13 | end | |
14 | }) | |
15 | setfenv(f, newenv) | |
16 | ypcall(function() f() end) | |
17 | end | |
18 | cors = {} | |
19 | mas = Instance.new("Model",game:GetService("Lighting")) | |
20 | mas.Name = "CompiledModel" | |
21 | o1 = Instance.new("Tool") | |
22 | o2 = Instance.new("Part") | |
23 | o3 = Instance.new("SpecialMesh") | |
24 | o4 = Instance.new("PointLight") | |
25 | o5 = Instance.new("Sound") | |
26 | o6 = Instance.new("Sound") | |
27 | o7 = Instance.new("Sound") | |
28 | o8 = Instance.new("Sound") | |
29 | o9 = Instance.new("Weld") | |
30 | o10 = Instance.new("Weld") | |
31 | o12 = Instance.new("LocalScript") | |
32 | o13 = Instance.new("NumberValue") | |
33 | o14 = Instance.new("NumberValue") | |
34 | o15 = Instance.new("Smoke") | |
35 | o16 = Instance.new("Smoke") | |
36 | o17 = Instance.new("Smoke") | |
37 | o18 = Instance.new("NumberValue") | |
38 | o19 = Instance.new("ScreenGui") | |
39 | o20 = Instance.new("Frame") | |
40 | o21 = Instance.new("TextLabel") | |
41 | o22 = Instance.new("TextLabel") | |
42 | o23 = Instance.new("Frame") | |
43 | o24 = Instance.new("TextLabel") | |
44 | o25 = Instance.new("Frame") | |
45 | o26 = Instance.new("Frame") | |
46 | o27 = Instance.new("Part") | |
47 | o28 = Instance.new("BlockMesh") | |
48 | o29 = Instance.new("Part") | |
49 | o30 = Instance.new("BlockMesh") | |
50 | - | o1.Name = "MP5" |
50 | + | o1.Name = "Golden MP5" |
51 | o1.Parent = game.Players.LocalPlayer.Backpack | |
52 | o1.TextureId = "http://www.roblox.com/asset/?id=122080062" | |
53 | o1.GripForward = Vector3.new(-0, -0, 1) | |
54 | o1.GripPos = Vector3.new(-0.1, 0.25, -1) | |
55 | o1.GripRight = Vector3.new(1, 0, 0) | |
56 | o1.GripUp = Vector3.new(0, -1, 0) | |
57 | o1.ToolTip = "MP5" | |
58 | o1.CanBeDropped = false | |
59 | o2.Name = "Handle" | |
60 | o2.Parent = o1 | |
61 | - | o2.BrickColor = BrickColor.new("Black") |
61 | + | o2.BrickColor = BrickColor.new("Gold") |
62 | o2.Position = Vector3.new(10.3698215, -8.49250793, 9.99193001) | |
63 | o2.Rotation = Vector3.new(-179.710007, 4.6500001, -0.0199999996) | |
64 | o2.CanCollide = false | |
65 | o2.FormFactor = Enum.FormFactor.Custom | |
66 | o2.Size = Vector3.new(0.200000003, 1, 3) | |
67 | o2.CFrame = CFrame.new(10.3698215, -8.49250793, 9.99193001, 0.996700466, 0.000403226441, 0.081140928, -1.96705855e-06, -0.999987543, 0.00499360403, 0.0811419338, -0.00497728772, -0.996688247) | |
68 | o2.BottomSurface = Enum.SurfaceType.Smooth | |
69 | o2.TopSurface = Enum.SurfaceType.Smooth | |
70 | - | o2.Color = Color3.new(0.105882, 0.164706, 0.207843) |
70 | + | |
71 | o3.Parent = o2 | |
72 | o3.MeshId = "http://www.roblox.com/asset/?id=2760846" | |
73 | o3.Scale = Vector3.new(-0.949999988, -0.850000024, -0.850000024) | |
74 | o3.MeshType = Enum.MeshType.FileMesh | |
75 | - | o3.TextureId = "http://www.roblox.com/asset/?id=2760834" |
75 | + | |
76 | o4.Parent = o2 | |
77 | o4.Color = Color3.new(1, 1, 0) | |
78 | o4.Enabled = false | |
79 | o4.Brightness = 1.5 | |
80 | o5.Name = "Bolt" | |
81 | o5.Parent = o2 | |
82 | o5.SoundId = "http://roblox.com/asset/?id=166238161" | |
83 | o5.Volume = 0.20000000298023 | |
84 | o6.Name = "MagIn" | |
85 | o6.Parent = o2 | |
86 | o6.SoundId = "http://roblox.com/asset/?id=166238223" | |
87 | o6.Volume = 0.20000000298023 | |
88 | o7.Name = "MagOut" | |
89 | o7.Parent = o2 | |
90 | o7.SoundId = "http://roblox.com/asset/?id=166238177" | |
91 | o7.Volume = 0.20000000298023 | |
92 | o8.Name = "Shoot" | |
93 | o8.Parent = o2 | |
94 | o8.SoundId = "http://www.roblox.com/asset/?id=180955656" | |
95 | o8.Volume = 1 | |
96 | o9.Parent = o2 | |
97 | o9.C0 = CFrame.new(-0.00968074799, -0.660612106, -1.09442449, 1, 3.01910623e-05, -3.21764019e-05, 3.01900891e-05, -1, -3.0264544e-05, -3.2177315e-05, 3.02635726e-05, -1) | |
98 | o9.Part0 = o2 | |
99 | o9.Part1 = o27 | |
100 | o10.Parent = o2 | |
101 | o10.C0 = CFrame.new(0.000315666199, -0.38229084, 1.55278492, 1, 3.01910623e-05, -3.21764019e-05, 3.01900891e-05, -1, -3.0264544e-05, -3.2177315e-05, 3.02635726e-05, -1) | |
102 | o10.Part0 = o2 | |
103 | o10.Part1 = o29 | |
104 | o12.Name = "Gun_Script" | |
105 | o12.Parent = o1 | |
106 | print("Giving "..game.Players.LocalPlayer.Name.. " a " ..o1.Name.. " Don't leak this. If you do i will fucking shoot you till your dead! ") | |
107 | table.insert(cors,coroutine.create(function() | |
108 | wait() | |
109 | runDummyScript(function() | |
110 | sp = o1 | |
111 | ||
112 | Mesh = false -- If true will load BC 2.0 Arm meshes as well. | |
113 | Shirt = true -- If true will load the user's shirt to the arms as well | |
114 | ||
115 | function onEquipped(mouse) | |
116 | local Player = game:GetService("Players").LocalPlayer | |
117 | local Cam = game.Workspace.CurrentCamera | |
118 | ||
119 | local Arms = Instance.new("Model") | |
120 | Arms.Name = "Arms" | |
121 | Arms.Parent = Cam | |
122 | ||
123 | if Shirt == true then | |
124 | local Humanoid = Instance.new("Humanoid") | |
125 | Humanoid.MaxHealth = 0 | |
126 | Humanoid.Health = 0 | |
127 | Humanoid.Name = "" | |
128 | Humanoid.Parent = Arms | |
129 | ||
130 | local newShirt = Player.Character:FindFirstChild("Shirt"):clone() | |
131 | newShirt.Parent = Arms | |
132 | else end | |
133 | ||
134 | local RightArm = Player.Character:FindFirstChild("Right Arm"):clone() | |
135 | RightArm.Name = "Right Arm" | |
136 | RightArm.Transparency = 0 | |
137 | ||
138 | local w = Instance.new("Weld") | |
139 | w.Part0 = RightArm | |
140 | w.Part1 = Player.Character:FindFirstChild("Right Arm") | |
141 | w.C0 = CFrame.new() | |
142 | w.C1 = CFrame.new() | |
143 | w.Parent = RightArm | |
144 | RightArm.Parent = Arms | |
145 | ||
146 | local LeftArm = Player.Character:FindFirstChild("Left Arm"):clone() | |
147 | LeftArm.Name = "Left Arm" | |
148 | LeftArm.Transparency = 0 | |
149 | ||
150 | local w = Instance.new("Weld") | |
151 | w.Part0 = LeftArm | |
152 | w.Part1 = Player.Character:FindFirstChild("Left Arm") | |
153 | w.C0 = CFrame.new() | |
154 | w.C1 = CFrame.new() | |
155 | w.Parent = LeftArm | |
156 | LeftArm.Parent = Arms | |
157 | ||
158 | if Mesh ~= false then | |
159 | local LeftArmMesh = script:FindFirstChild("LeftArm") | |
160 | LeftArmMesh.Parent = LeftArm | |
161 | local RightArmMesh = script:FindFirstChild("RightArm") | |
162 | RightArmMesh.Parent = RightArm | |
163 | else end | |
164 | ||
165 | end | |
166 | ||
167 | function onUnequipped(mouse) | |
168 | local Player = game:GetService("Players").LocalPlayer | |
169 | local Cam = game.Workspace.CurrentCamera | |
170 | for _, Model in pairs(Cam:GetChildren()) do | |
171 | if Model.Name == "Arms" then | |
172 | Model:remove() | |
173 | else end | |
174 | end | |
175 | end | |
176 | ||
177 | sp.Equipped:connect(onEquipped) | |
178 | sp.Unequipped:connect(onUnequipped) | |
179 | ||
180 | wait(0.5) | |
181 | --Made by YouTubes-- | |
182 | --Edit settings below-- | |
183 | local Tool = o1 | |
184 | local Settings = { | |
185 | Range = math.huge | |
186 | ,Spread = 0 | |
187 | - | Range = 10000 |
187 | + | ,Damage = math.huge |
188 | - | ,Spread = 8 |
188 | + | ,HeadShotDamage = math.huge |
189 | - | ,Damage = {25, 25} |
189 | + | ,Bullets = 10 |
190 | - | ,HeadShotDamage = {25, 25} |
190 | + | ,FireRate = 0.01 |
191 | - | ,Bullets = 1 |
191 | + | |
192 | - | ,FireRate = 0.06 |
192 | + | |
193 | ,ImpactDuration = 0.1 | |
194 | --Reload | |
195 | ,ReloadKey = "R" | |
196 | ,ReloadTime = 1.83 | |
197 | ,Ammo = math.huge | |
198 | ,IncludeChamberedBullet = false | |
199 | - | ,Ammo = 30 |
199 | + | |
200 | ,GuiPos = Vector2.new(script.Gui.Frame.Position.X.Scale, script.Gui.Frame.Position.Y.Scale) | |
201 | --Arms | |
202 | ,OneHanded = false | |
203 | ,FakeArms = false | |
204 | ,FakeArmTransparency = 1 | |
205 | -- (+Left to -Right, +Fward to -Bward, +Up to -Down) (+Up to -Down, +Left to -Right, +Counter to -Clock) | |
206 | ,RightPos = CFrame.new(-0.75, -0.25, 0.45) * CFrame.Angles(math.rad(-90), 0, 0) | |
207 | ,LeftPos = CFrame.new(1.2, 0.21, 0.55)* CFrame.Angles(math.rad(-90), math.rad(55), math.rad(5), 0) | |
208 | ,AimPart = Tool.AimPart | |
209 | ,AimPartOffset = CFrame.new() | |
210 | ,AimGripOffset = Vector3.new(0, 0, 0) | |
211 | ,LeftAimPos = CFrame.new(1.05, 0.98, 0.48) * CFrame.Angles(math.rad(-95), math.rad(24), math.rad(0), 00) | |
212 | ,AimAnim = { | |
213 | Enabled = false | |
214 | ,Frames = 50 | |
215 | ,Time = 0.1 | |
216 | } | |
217 | ,ChangeFOV = {true, 55} | |
218 | ,SpreadReduction = 7.5 | |
219 | --Weld | |
220 | ,Weld = true | |
221 | --Mouse | |
222 | ,Icons = { | |
223 | Idle = "rbxassetid://70288585" | |
224 | ,Fire1 = "rbxassetid://70288578" | |
225 | ,Fire2 = "rbxassetid://70288572" | |
226 | ,Fire3 = "rbxassetid://70288578" | |
227 | ,Reload = "rbxassetid://70288599" | |
228 | ,Aim = "rbxasset://textures/Blank.png" | |
229 | } | |
230 | ,FireMouseAnimTime = 0.15 | |
231 | --Recoil | |
232 | ,Recoil = math.rad(0.5) | |
233 | --Smoke | |
234 | ,Smoke = true | |
235 | ,SmokePart = Tool.SmokePart | |
236 | ,Smokes = {{script.Smoke, 6, 0.01}, {script.Smoke1, 0.01}, {script.Smoke2, 0.01}} | |
237 | --Sprint | |
238 | ,Sprint = true | |
239 | ,SprintSpeed = 20 | |
240 | ,SprintKey = "0" | |
241 | ,SprintSpreadIncrease = 40 | |
242 | ,SprintArmOffset = CFrame.new(0.25, 0.125, 0.25) * CFrame.Angles(math.rad(-30), math.rad(35), 0) | |
243 | --Other | |
244 | ,DropHats = false | |
245 | } | |
246 | ||
247 | --Do not edit below this lign-- | |
248 | ||
249 | local Orig_Spread = Settings.Spread | |
250 | local Orig_Grip = Tool.GripPos | |
251 | ||
252 | local Player = game.Players.LocalPlayer | |
253 | local Character = Player.Character | |
254 | ||
255 | local Camera = Workspace.CurrentCamera | |
256 | ||
257 | local Ammo, StoredAmmo = script.Ammo, script.StoredAmmo | |
258 | ||
259 | local Gui, CanUpdateGui = nil, true | |
260 | ||
261 | local Sprinting, Equipped | |
262 | ||
263 | function Update_Gui() | |
264 | if Gui and CanUpdateGui then | |
265 | Gui.Frame.AmmoDisplay.Text = Ammo.Value .. "|" .. StoredAmmo.Value | |
266 | end | |
267 | end | |
268 | ||
269 | local Welded | |
270 | if Settings.Weld then | |
271 | Delay(0, function() | |
272 | local weldC0s = {} | |
273 | for i, v in pairs(Tool:GetChildren()) do | |
274 | if v:IsA("BasePart") and v ~= Tool.Handle then | |
275 | table.insert(weldC0s, {v, Tool.Handle.CFrame:toObjectSpace(v.CFrame)}) | |
276 | v.Anchored = false | |
277 | end | |
278 | end | |
279 | Tool.Handle.Anchored = false | |
280 | local welds = {} | |
281 | Tool.Equipped:connect(function() | |
282 | for i, v in ipairs(welds) do | |
283 | v.Part1 = nil | |
284 | v:Destroy() | |
285 | end | |
286 | for i, v in ipairs(weldC0s) do | |
287 | if v[1] and v[2] then | |
288 | local w = Instance.new("Weld", Tool.Handle) | |
289 | w.Part0 = Tool.Handle | |
290 | w.Part1 = v[1] | |
291 | w.C0 = v[2] | |
292 | table.insert(welds, w) | |
293 | end | |
294 | end | |
295 | end) | |
296 | wait() | |
297 | Welded = true | |
298 | end) | |
299 | end | |
300 | ||
301 | local Left_Weld, Right_Weld | |
302 | ||
303 | Ammo.Changed:connect(Update_Gui) | |
304 | StoredAmmo.Changed:connect(Update_Gui) | |
305 | ||
306 | Settings.Range = math.min(Settings.Range, 999) | |
307 | ||
308 | local Ignore_Model = Workspace:FindFirstChild("Ray_Ignore") or Instance.new("Model", Workspace) | |
309 | Ignore_Model.Name = "Ray_Ignore" | |
310 | ||
311 | local Ray_Ignore = {Character, Ignore_Model, Camera} | |
312 | ||
313 | Character.Humanoid.Died:connect(function() | |
314 | Tool.Parent = Player.Backpack | |
315 | end) | |
316 | ||
317 | function Fire(Mouse) | |
318 | local Spread = CFrame.Angles(math.rad(math.random(-Settings.Spread, Settings.Spread)/10), math.rad(math.random(-Settings.Spread, Settings.Spread)/10), math.rad(math.random(-Settings.Spread, Settings.Spread)/10)) | |
319 | local Ray = Ray.new(Character.Head.Position, (CFrame.new(Character.Head.Position, Mouse.Hit.p) * Spread).lookVector.unit * Settings.Range) | |
320 | local Hit, Pos = Workspace:FindPartOnRayWithIgnoreList(Ray, Ray_Ignore) | |
321 | if Hit and Hit.Parent:FindFirstChild("Humanoid") then | |
322 | local Hit_Player = game.Players:GetPlayerFromCharacter(Hit.Parent) | |
323 | if Settings.AntiTK and not Hit_Player.Neutral and Hit_Player.TeamColor == Player.TeamColor then | |
324 | return | |
325 | end | |
326 | local Humanoid = Hit.Parent.Humanoid | |
327 | local c = Instance.new("ObjectValue") | |
328 | c.Name = "creator" | |
329 | c.Value = Player | |
330 | game.Debris:AddItem(c, 3) | |
331 | c.Parent = Humanoid | |
332 | if Hit.Name == "Head" then | |
333 | Humanoid.Health = 0 -- Kill Those God Mode Skids | |
334 | else | |
335 | - | Humanoid.Health = Humanoid.Health - math.random(Settings.HeadShotDamage[1], Settings.HeadShotDamage[2]) |
335 | + | Humanoid.Health = 0 |
336 | end | |
337 | - | Humanoid.Health = Humanoid.Health - math.random(Settings.Damage[1], Settings.Damage[2]) |
337 | + | |
338 | local Hit_Part = Instance.new("Part", Ignore_Model) | |
339 | Hit_Part.FormFactor = "Custom" | |
340 | Hit_Part.TopSurface = 0 | |
341 | Hit_Part.BottomSurface = 0 | |
342 | Hit_Part.Anchored = true | |
343 | Hit_Part.CanCollide = false | |
344 | Hit_Part.Size = Vector3.new() | |
345 | Hit_Part.CFrame = CFrame.new(Pos) * CFrame.Angles(math.random(0, 360), math.random(0, 360), math.random(0, 360)) | |
346 | Hit_Part.BrickColor = BrickColor.new("Really black") | |
347 | Hit_Part.Material = "Metal" | |
348 | Instance.new("BlockMesh", Hit_Part).Scale = Vector3.new(0.5, 0.5, 0.5) | |
349 | local brickcolor = BrickColor.new(Hit.BrickColor.Name) | |
350 | Instance.new("Smoke", Hit_Part).Opacity = .2 | |
351 | local Meta = Instance.new("Sound") | |
352 | Meta.Name = "Crack" | |
353 | Meta.SoundId = "rbxassetid://1" | |
354 | Meta.Volume = math.random(0.9,1) | |
355 | Meta.Pitch = math.random(1,1.2) | |
356 | Meta.Parent = Hit_Part | |
357 | Meta:play() | |
358 | local Cur = Instance.new("SpecialMesh",Hit_Part) | |
359 | Cur.MeshType = "Sphere" | |
360 | Cur.Scale = Vector3.new(0.5,0.5,0.5) | |
361 | ||
362 | game.Debris:AddItem(Hit_Part, Settings.ImpactDuration) | |
363 | if not Hit.Anchored then | |
364 | local w = Instance.new("Weld", Hit_Part) | |
365 | w.Part0 = Hit | |
366 | w.Part1 = Hit_Part | |
367 | w.C0 = Hit.CFrame:toObjectSpace(Hit_Part.CFrame) | |
368 | Hit_Part.Anchored = false | |
369 | end | |
370 | if Hit.Parent:IsA("Hat") and Settings.DropHats then | |
371 | Hit.Parent.Parent = workspace | |
372 | game.Debris:AddItem(Hit, 3) | |
373 | end | |
374 | end | |
375 | end | |
376 | ||
377 | ||
378 | local Can_Shoot = true | |
379 | local Reloading = false | |
380 | ||
381 | local First_Person = false | |
382 | ||
383 | local Mouse_Held | |
384 | ||
385 | Tool.Equipped:connect(function(Mouse) | |
386 | Equipped = true | |
387 | if Settings.Weld and not Welded then | |
388 | wait() | |
389 | Tool.Parent = Player.Backpack | |
390 | end | |
391 | Character = Player.Character | |
392 | if Gui then | |
393 | return | |
394 | end | |
395 | Ray_Ignore = {Character, Ignore_Model, Camera} | |
396 | Mouse.Icon = Settings.Icons.Idle | |
397 | Gui = script.Gui:Clone() | |
398 | Gui.Parent = Player.PlayerGui | |
399 | Gui.Frame.Position = UDim2.new(Settings.GuiPos.X, Gui.Frame.Position.X.Offset, 1.1, Gui.Frame.Position.Y.Offset) | |
400 | Gui.Frame:TweenPosition(UDim2.new(Settings.GuiPos.X, Gui.Frame.Position.X.Offset, Settings.GuiPos.Y, Gui.Frame.Position.Y.Offset), "Out", "Bounce", 1) | |
401 | CanUpdateGui = true | |
402 | Update_Gui() | |
403 | Mouse.Button1Down:connect(function() | |
404 | if Can_Shoot and Ammo.Value > 0 and Character.Humanoid.Health > 0 then | |
405 | Mouse_Held = true | |
406 | while true do | |
407 | Can_Shoot = false | |
408 | Delay(0, function() | |
409 | local t = math.min(Settings.FireMouseAnimTime/3, Settings.FireRate/3) | |
410 | if not Aiming then | |
411 | Mouse.Icon = Settings.Icons.Fire1 | |
412 | end | |
413 | wait(t) | |
414 | if not Aiming then | |
415 | if Reloading then return end | |
416 | Mouse.Icon = Settings.Icons.Fire2 | |
417 | end | |
418 | wait(t) | |
419 | if not Aiming then | |
420 | if Reloading then return end | |
421 | Mouse.Icon = Settings.Icons.Fire3 | |
422 | end | |
423 | wait(t) | |
424 | if not Aiming then | |
425 | if Reloading then return end | |
426 | Mouse.Icon = Settings.Icons.Idle | |
427 | end | |
428 | end) | |
429 | for _ = 1, Settings.Bullets do | |
430 | Delay(0, function() | |
431 | Fire(Mouse, RANGE, SPEED, DROP) | |
432 | end) | |
433 | end | |
434 | local bg = Instance.new("BillboardGui", Settings.SmokePart) | |
435 | bg.Adornee = Settings.SmokePart | |
436 | local flashsize = math.random(5, 15)/10 | |
437 | bg.Size = UDim2.new(flashsize, 0, flashsize, 0) | |
438 | local flashs = Instance.new("ImageLabel", bg) | |
439 | flashs.BackgroundTransparency = 1 | |
440 | flashs.Size = UDim2.new(math.random (0.2, 0.6), 0, math.random (0.2, 0.6), 0) | |
441 | flashs.Image = "rbxassetid://210355445" | |
442 | flashs.Rotation = math.random(0, 360) | |
443 | local g = Instance.new("PointLight", Settings.SmokePart) | |
444 | g.Color = Color3.new(255, 250, 167) | |
445 | g.Brightness = 5 | |
446 | g.Range = 5 | |
447 | g.Shadows = true | |
448 | local flash = Instance.new("ImageLabel", bg) | |
449 | flash.BackgroundTransparency = 1 | |
450 | flash.Size = UDim2.new(math.random (0.7, 1), 0, math.random (0.7, 1), 0) | |
451 | flash.Image = "rbxassetid://180072687" | |
452 | flash.Rotation = math.random(0, 360) | |
453 | game.Debris:AddItem(bg, 0.025) | |
454 | local flash1 = Instance.new("ImageLabel", bg) | |
455 | flash1.BackgroundTransparency = 1 | |
456 | flash1.Size = UDim2.new(math.random (0.5, 1), 0, math.random (0.5, 1), 0) | |
457 | flash1.Image = "rbxassetid://210355513" | |
458 | flash1.Rotation = math.random(0, 360) | |
459 | game.Debris:AddItem(bg, 0.025) | |
460 | delay(0, function() | |
461 | local r = math.abs(Settings.Recoil) | |
462 | local ran = math.random(-1, 1) | |
463 | Camera.CoordinateFrame = CFrame.new(Camera.Focus.p) * (Camera.CoordinateFrame - Camera.CoordinateFrame.p) * CFrame.Angles(r, r*ran, 0) * CFrame.new(0, 0, (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude) | |
464 | local c = -r/20 | |
465 | local cx = -(r*ran)/20 | |
466 | for i = 1, math.random(15, 25) do | |
467 | if EquipId == curId then | |
468 | Camera.CoordinateFrame = CFrame.new(Camera.Focus.p) * (Camera.CoordinateFrame - Camera.CoordinateFrame.p) * CFrame.Angles(c, cx, 0) * CFrame.new(0, 0, (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude) | |
469 | g:remove() | |
470 | wait() | |
471 | ||
472 | else | |
473 | break | |
474 | end | |
475 | end | |
476 | end) | |
477 | if Tool.Handle:FindFirstChild("Shoot") then | |
478 | Tool.Handle.Shoot:Play() | |
479 | end | |
480 | Ammo.Value = Ammo.Value - 1 | |
481 | --[[Tool.A1.Transparency = 1 | |
482 | Tool.A2.Transparency = 1 | |
483 | Tool.B1.Transparency = 0 | |
484 | Tool.B2.Transparency = 0]] | |
485 | ||
486 | wait(Settings.FireRate) | |
487 | --[[Tool.A1.Transparency = 0 | |
488 | Tool.A2.Transparency = 0 | |
489 | Tool.B1.Transparency = 1 | |
490 | Tool.B2.Transparency = 1]] | |
491 | ||
492 | if not Settings.Automatic or Ammo.Value <= 0 or Character.Humanoid.Health <= 0 or not Mouse_Held then | |
493 | break | |
494 | end | |
495 | end | |
496 | Can_Shoot = true | |
497 | elseif Can_Shoot and Character.Humanoid.Health > 0 and Tool.Handle:FindFirstChild("Click") then | |
498 | Tool.Handle.Click:Play() | |
499 | end | |
500 | end) | |
501 | Mouse.Button1Up:connect(function() | |
502 | Mouse_Held = false | |
503 | end) | |
504 | Mouse.KeyDown:connect(function(Key) | |
505 | if Key:upper() == Settings.ReloadKey:upper() and Can_Shoot and StoredAmmo.Value > 0 and not Aiming then | |
506 | if Settings.IncludeChamberedBullet and Ammo.Value == Settings.Ammo + 1 or not Settings.IncludeChamberedBullet and Ammo.Value == Settings.Ammo then | |
507 | return | |
508 | end | |
509 | Can_Shoot = false | |
510 | Reloading = true | |
511 | local TextLabel = Gui.Frame.AmmoDisplay | |
512 | Delay(0, function() | |
513 | CanUpdateGui = false | |
514 | TextLabel.Text = "0" | |
515 | wait(Settings.ReloadTime/3) | |
516 | if TextLabel then | |
517 | TextLabel.Text = "000" | |
518 | end | |
519 | wait(Settings.ReloadTime/3) | |
520 | if TextLabel then | |
521 | TextLabel.Text = "000" | |
522 | end | |
523 | end) | |
524 | Mouse.Icon = Settings.Icons.Reload | |
525 | -- (+Left to -Right, +Fward to -Bward, +Up to -Down) (+Up to -Down, +Left to -Right, +Counter to -Clock) | |
526 | Right_Weld.C1 = CFrame.new(-0.75, -0.2, 0.5) * CFrame.Angles(math.rad(-90), 0, 0.1) | |
527 | Left_Weld.C1 = CFrame.new(1.2, 0.6, 0.45) * CFrame.Angles(math.rad(-90), math.rad(45), math.rad(0), 0) | |
528 | wait(.02) | |
529 | Right_Weld.C1 = CFrame.new(-0.75, -0.15, 0.55) * CFrame.Angles(math.rad(-90), 0, 0.15) | |
530 | Left_Weld.C1 = CFrame.new(1.2, 0.5, 0.45) * CFrame.Angles(math.rad(-90), math.rad(50), math.rad(0), 0) | |
531 | wait(.02) | |
532 | Right_Weld.C1 = CFrame.new(-0.75, -0.1, 0.6) * CFrame.Angles(math.rad(-90), 0, 0.2) | |
533 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(0), 0) | |
534 | wait(0.02) | |
535 | ||
536 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.40) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(0), 0) | |
537 | Tool.Handle.MagOut:play() | |
538 | --Tool.Magazine.Transparency = 1 | |
539 | wait(0.03) | |
540 | Left_Weld.C1 = CFrame.new(1.2, 0.35, 0.35) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(5), 0) | |
541 | wait(0.03) | |
542 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.30) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(10), 0) | |
543 | wait(0.03) | |
544 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.25) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(15), 0) | |
545 | wait(0.03) | |
546 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.20) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(20), 0) | |
547 | wait(0.03) | |
548 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.15) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(25), 0) | |
549 | wait(0.03) | |
550 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.10) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(30), 0) | |
551 | wait(0.03) | |
552 | Left_Weld.C1 = CFrame.new(1.2, 0.25, 0.05) * CFrame.Angles(math.rad(-90), math.rad(60), math.rad(35), 0) | |
553 | wait(0.03) | |
554 | Left_Weld.C1 = CFrame.new(1.2, 0.2, 0) * CFrame.Angles(math.rad(-90), math.rad(65), math.rad(40), 0) | |
555 | wait(0.03) | |
556 | Left_Weld.C1 = CFrame.new(1.2, 0.15, 0) * CFrame.Angles(math.rad(-90), math.rad(70), math.rad(45), 0) | |
557 | wait(0.03) | |
558 | Left_Weld.C1 = CFrame.new(1.2, 0.1, 0) * CFrame.Angles(math.rad(-90), math.rad(75), math.rad(50), 0) | |
559 | wait(0.5) | |
560 | ||
561 | Left_Weld.C1 = CFrame.new(1.2, 0.1, 0.0) * CFrame.Angles(math.rad(-90), math.rad(75), math.rad(40), 0) | |
562 | Tool.Handle.MagIn:play() | |
563 | --Tool.Magazine.Transparency = 0 | |
564 | wait(0.03) | |
565 | Left_Weld.C1 = CFrame.new(1.2, 0.15, 0.05) * CFrame.Angles(math.rad(-90), math.rad(70), math.rad(35), 0) | |
566 | wait(0.03) | |
567 | Left_Weld.C1 = CFrame.new(1.2, 0.2, 0.10) * CFrame.Angles(math.rad(-90), math.rad(65), math.rad(30), 0) | |
568 | wait(0.03) | |
569 | Left_Weld.C1 = CFrame.new(1.2, 0.25, 0.15) * CFrame.Angles(math.rad(-90), math.rad(60), math.rad(25), 0) | |
570 | wait(0.03) | |
571 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.20) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(20), 0) | |
572 | wait(0.03) | |
573 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.25) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(15), 0) | |
574 | wait(0.03) | |
575 | Right_Weld.C1 = CFrame.new(-0.75, -0.1, 0.6) * CFrame.Angles(math.rad(-90), 0, 0.2) | |
576 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.30) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(10), 0) | |
577 | wait(0.03) | |
578 | Right_Weld.C1 = CFrame.new(-0.75, -0.15, 0.55) * CFrame.Angles(math.rad(-90), 0, 0.15) | |
579 | Left_Weld.C1 = CFrame.new(1.2, 0.35, 0.35) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(05), 0) | |
580 | wait(0.03) | |
581 | Right_Weld.C1 = CFrame.new(-0.75, -0.2, 0.5) * CFrame.Angles(math.rad(-90), 0, 0.1) | |
582 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.40) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(0), 0) | |
583 | wait(0.03) | |
584 | ||
585 | Right_Weld.C1 = CFrame.new(-0.75, -0.2, 0.4) * CFrame.Angles(math.rad(-90), 0, -0.05) | |
586 | wait(0.02) | |
587 | Right_Weld.C1 = CFrame.new(-0.76, -0.2, 0.3) * CFrame.Angles(math.rad(-90), 0, -0.1) | |
588 | wait(0.02) | |
589 | Right_Weld.C1 = CFrame.new(-0.77, -0.2, 0.2) * CFrame.Angles(math.rad(-90), 0, -0.15) | |
590 | wait(0.02) | |
591 | Right_Weld.C1 = CFrame.new(-0.78, -0.2, 0.1) * CFrame.Angles(math.rad(-90), 0, -0.20) | |
592 | wait(0.02) | |
593 | Right_Weld.C1 = CFrame.new(-0.79, -0.2, 0) * CFrame.Angles(math.rad(-90), 0, -0.25) | |
594 | wait(0.02) | |
595 | Right_Weld.C1 = CFrame.new(-0.8, -0.2, -0.1) * CFrame.Angles(math.rad(-90), 0, -0.30) | |
596 | wait(0.02) | |
597 | Right_Weld.C1 = CFrame.new(-0.81, -0.2, -0.15) * CFrame.Angles(math.rad(-90), 0, -0.35) | |
598 | wait(0.02) | |
599 | Right_Weld.C1 = CFrame.new(-0.82, -0.2, -0.20) * CFrame.Angles(math.rad(-90), 0, -0.40) | |
600 | wait(0.02) | |
601 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-05), 0) | |
602 | Right_Weld.C1 = CFrame.new(-0.83, -0.2, -0.25) * CFrame.Angles(math.rad(-90), 0, -0.45) | |
603 | wait(0.02) | |
604 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-10), 0) | |
605 | Right_Weld.C1 = CFrame.new(-0.84, -0.2, -0.3) * CFrame.Angles(math.rad(-90), 0, -0.50) | |
606 | wait(0.02) | |
607 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-15), 0) | |
608 | Right_Weld.C1 = CFrame.new(-0.85, -0.2, -0.35) * CFrame.Angles(math.rad(-90), 0, -0.55) | |
609 | wait(0.02) | |
610 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-20), 0) | |
611 | Right_Weld.C1 = CFrame.new(-0.86, -0.2, -0.4) * CFrame.Angles(math.rad(-90), 0, -0.60) | |
612 | wait(0.02) | |
613 | ||
614 | Right_Weld.C1 = CFrame.new(-0.87, -0.2, -0.45) * CFrame.Angles(math.rad(-90), 0, -0.65) | |
615 | Tool.Handle.Bolt:play() | |
616 | wait(0.02) | |
617 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-20), 0) | |
618 | Right_Weld.C1 = CFrame.new(-0.88, -0.2, -0.5) * CFrame.Angles(math.rad(-90), 0, -0.70) | |
619 | wait(0.02) | |
620 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.45) * CFrame.Angles(math.rad(-90), math.rad(60), math.rad(-20), 0) | |
621 | Right_Weld.C1 = CFrame.new(-0.89, -0.2, -0.55) * CFrame.Angles(math.rad(-90), 0, -0.75) | |
622 | wait(0.02) | |
623 | Left_Weld.C1 = CFrame.new(1.2, 0.2, 0.45) * CFrame.Angles(math.rad(-90), math.rad(65), math.rad(-20), 0) | |
624 | Right_Weld.C1 = CFrame.new(-0.9, -0.2, -0.6) * CFrame.Angles(math.rad(-90), 0, -0.80) | |
625 | wait(0.02) | |
626 | Left_Weld.C1 = CFrame.new(1.2, 0.1, 0.45) * CFrame.Angles(math.rad(-90), math.rad(70), math.rad(-20), 0) | |
627 | Right_Weld.C1 = CFrame.new(-0.91, -0.2, -0.65) * CFrame.Angles(math.rad(-90), 0, -0.85) | |
628 | wait(0.02) | |
629 | Left_Weld.C1 = CFrame.new(1.2, 0, 0.45) * CFrame.Angles(math.rad(-90), math.rad(75), math.rad(-20), 0) | |
630 | Right_Weld.C1 = CFrame.new(-0.92, -0.2, -0.7) * CFrame.Angles(math.rad(-90), 0, -0.90) | |
631 | wait(0.02) | |
632 | Left_Weld.C1 = CFrame.new(1.2, -0.5, 0.45) * CFrame.Angles(math.rad(-90), math.rad(80), math.rad(-20), 0) | |
633 | --[[Tool.A1.Transparency = 1 | |
634 | Tool.A2.Transparency = 1 | |
635 | ||
636 | Tool.B1.Transparency = 0 | |
637 | Tool.B2.Transparency = 0]] | |
638 | ||
639 | wait(0.02) | |
640 | Left_Weld.C1 = CFrame.new(1.2, 0.0, 0.45) * CFrame.Angles(math.rad(-90), math.rad(75), math.rad(-20), 0) | |
641 | wait(0.02) | |
642 | Left_Weld.C1 = CFrame.new(1.2, 0.1, 0.45) * CFrame.Angles(math.rad(-90), math.rad(70), math.rad(-20), 0) | |
643 | wait(0.02) | |
644 | Left_Weld.C1 = CFrame.new(1.2, 0.2, 0.45) * CFrame.Angles(math.rad(-90), math.rad(65), math.rad(-20), 0) | |
645 | wait(0.02) | |
646 | Left_Weld.C1 = CFrame.new(1.2, 0.3, 0.45) * CFrame.Angles(math.rad(-90), math.rad(60), math.rad(-20), 0) | |
647 | wait(0.02) | |
648 | Left_Weld.C1 = CFrame.new(1.2, 0.4, 0.45) * CFrame.Angles(math.rad(-90), math.rad(55), math.rad(-20), 0) | |
649 | --[[Tool.A1.Transparency = 0 | |
650 | Tool.A2.Transparency = 0 | |
651 | ||
652 | Tool.B1.Transparency = 1 | |
653 | Tool.B2.Transparency = 1]] | |
654 | ||
655 | wait(0.02) | |
656 | ||
657 | Right_Weld.C1 = CFrame.new(-0.86, -0.2, -0.4) * CFrame.Angles(math.rad(-90), 0, -0.60) | |
658 | wait(0.02) | |
659 | Right_Weld.C1 = CFrame.new(-0.85, -0.2, -0.35) * CFrame.Angles(math.rad(-90), 0, -0.55) | |
660 | wait(0.02) | |
661 | Right_Weld.C1 = CFrame.new(-0.84, -0.2, -0.3) * CFrame.Angles(math.rad(-90), 0, -0.50) | |
662 | wait(0.02) | |
663 | Right_Weld.C1 = CFrame.new(-0.83, -0.2, -0.25) * CFrame.Angles(math.rad(-90), 0, -0.45) | |
664 | wait(0.02) | |
665 | Right_Weld.C1 = CFrame.new(-0.82, -0.2, -0.20) * CFrame.Angles(math.rad(-90), 0, -0.40) | |
666 | wait(0.02) | |
667 | Right_Weld.C1 = CFrame.new(-0.81, -0.2, -0.15) * CFrame.Angles(math.rad(-90), 0, -0.35) | |
668 | wait(0.02) | |
669 | Right_Weld.C1 = CFrame.new(-0.8, -0.2, -0.1) * CFrame.Angles(math.rad(-90), 0, -0.30) | |
670 | wait(0.02) | |
671 | Right_Weld.C1 = CFrame.new(-0.79, -0.2, 0) * CFrame.Angles(math.rad(-90), 0, -0.25) | |
672 | wait(0.02) | |
673 | Right_Weld.C1 = CFrame.new(-0.78, -0.2, 0.1) * CFrame.Angles(math.rad(-90), 0, -0.20) | |
674 | wait(0.02) | |
675 | Right_Weld.C1 = CFrame.new(-0.77, -0.2, 0.2) * CFrame.Angles(math.rad(-90), 0, -0.15) | |
676 | wait(0.02) | |
677 | Right_Weld.C1 = CFrame.new(-0.76, -0.2, 0.3) * CFrame.Angles(math.rad(-90), 0, -0.1) | |
678 | wait(0.02) | |
679 | Right_Weld.C1 = CFrame.new(-0.75, -0.2, 0.4) * CFrame.Angles(math.rad(-90), 0, -0.05) | |
680 | wait(0.02) | |
681 | Right_Weld.C1 = CFrame.new(-0.75, -0.25, 0.4) * CFrame.Angles(math.rad(-90), 0, 0) | |
682 | Left_Weld.C1 = CFrame.new(0.8, 1.1, 0.02) * CFrame.Angles(math.rad(-100), math.rad(30), math.rad(0), 0) | |
683 | ||
684 | Mouse.Icon = Settings.Icons.Idle | |
685 | CanUpdateGui = true | |
686 | local m = Settings.Ammo | |
687 | if Ammo.Value > 0 and Settings.IncludeChamberedBullet then | |
688 | m = m + 1 | |
689 | end | |
690 | if (StoredAmmo.Value - (m - Ammo.Value)) <= 0 then | |
691 | Ammo.Value = Ammo.Value + StoredAmmo.Value | |
692 | StoredAmmo.Value = 0 | |
693 | else | |
694 | StoredAmmo.Value = StoredAmmo.Value - (m - Ammo.Value) | |
695 | Ammo.Value = m | |
696 | end | |
697 | Can_Shoot = true | |
698 | Reloading = false | |
699 | elseif Key:upper() == Settings.SprintKey:upper() and Settings.Sprint and not Aiming then | |
700 | Sprinting = true | |
701 | Character.Humanoid.WalkSpeed = Settings.SprintSpeed | |
702 | Settings.Spread = Settings.Spread + Settings.SprintSpreadIncrease | |
703 | end | |
704 | end) | |
705 | Mouse.KeyUp:connect(function(Key) | |
706 | if Key:upper() == Settings.SprintKey:upper() and Sprinting then | |
707 | Sprinting = false | |
708 | Character.Humanoid.WalkSpeed = 16 | |
709 | Settings.Spread = Settings.Spread - Settings.SprintSpreadIncrease | |
710 | Right_Weld.C0 = CFrame.new(0, -1.5, 0) | |
711 | end | |
712 | end) | |
713 | Mouse.Button2Down:connect(function() | |
714 | if not Reloading and not Sprinting and not Aiming and (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude < 1 then | |
715 | Aiming = true | |
716 | Mouse.Icon = Settings.Icons.Aim | |
717 | if Settings.AimAnim.Enabled then | |
718 | Right_Weld.C1 = CFrame.new() | |
719 | Right_Weld.C0 = CFrame.new() | |
720 | Delay(0, function() | |
721 | Tween_C0(Right_Weld, Settings.AimAnim.Frames, Settings.AimAnim.Time, Right_Weld.C0, Character.Head.CFrame:toObjectSpace(Settings.AimPart.CFrame)) | |
722 | end) | |
723 | Delay(0, function() | |
724 | Tween_C1(Left_Weld, Settings.AimAnim.Frames, Settings.AimAnim.Time, Left_Weld.C1, Settings.LeftAimPos) | |
725 | end) | |
726 | Delay(0, function() | |
727 | if Settings.ChangeFOV[1] then | |
728 | Camera.FieldOfView = 70 | |
729 | local Cam_Dif, T_F = 70 - Settings.ChangeFOV[2], Settings.AimAnim.Time * Settings.AimAnim.Frames | |
730 | for i = 1, T_F do | |
731 | local FOV = 70 - Cam_Dif/T_F * i | |
732 | Camera.FieldOfView = FOV | |
733 | wait(Settings.AimAnim.Time/Settings.AimAnim.Frames) | |
734 | if not Aiming then | |
735 | return | |
736 | end | |
737 | end | |
738 | Camera.FieldOfView = Settings.ChangeFOV[2] | |
739 | end | |
740 | end) | |
741 | else | |
742 | Right_Weld.C1 = CFrame.new() | |
743 | Right_Weld.C0 = CFrame.new() | |
744 | Right_Weld.C1 = Character.Head.CFrame:toObjectSpace(Settings.AimPart.CFrame) | |
745 | Left_Weld.C1 = Settings.LeftAimPos | |
746 | if Settings.ChangeFOV[1] then | |
747 | Camera.FieldOfView = Settings.ChangeFOV[2] | |
748 | end | |
749 | end | |
750 | Tool.GripPos = Orig_Grip + Settings.AimGripOffset | |
751 | Settings.Spread = Settings.Spread - Settings.SpreadReduction | |
752 | end | |
753 | end) | |
754 | Mouse.Button2Up:connect(function() | |
755 | if Aiming then | |
756 | Mouse.Icon = Settings.Icons.Idle | |
757 | Tool.GripPos = Orig_Grip | |
758 | if Settings.AimAnim.Enabled then | |
759 | Delay(0, function() | |
760 | Tween_C0(Right_Weld, Settings.AimAnim.Frames, Settings.AimAnim.Time, Right_Weld.C0, CFrame.new(0, -1.5, 0)) | |
761 | end) | |
762 | Delay(0, function() | |
763 | Tween_C1(Left_Weld, Settings.AimAnim.Frames, Settings.AimAnim.Time, Left_Weld.C1, Settings.LeftPos) | |
764 | end) | |
765 | else | |
766 | Right_Weld.C1 = Settings.RightPos | |
767 | Right_Weld.C0 = CFrame.new(0, -1.5, 0) | |
768 | Left_Weld.C1 = Settings.LeftPos | |
769 | end | |
770 | if Settings.ChangeFOV[1] then | |
771 | Camera.FieldOfView = 70 | |
772 | end | |
773 | Settings.Spread = Settings.Spread + Settings.SpreadReduction | |
774 | Character.Torso.Neck.C0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
775 | Character.Torso.Neck.C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
776 | wait(0.25) | |
777 | Aiming = false | |
778 | ||
779 | end | |
780 | end) | |
781 | wait() | |
782 | Camera.Changed:connect(function() | |
783 | if (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude < 1 and Equipped then | |
784 | Mouse.TargetFilter = workspace | |
785 | Character.Torso.Neck.C1 = CFrame.new() | |
786 | Character.Torso.Neck.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.asin((Mouse.Hit.p - Mouse.Origin.p).unit.y), 0, 0) | |
787 | end | |
788 | end) | |
789 | Mouse.Idle:connect(function() | |
790 | if (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude < 1 and Equipped then | |
791 | Mouse.TargetFilter = workspace | |
792 | Character.Torso.Neck.C1 = CFrame.new() | |
793 | Character.Torso.Neck.C0 = CFrame.new(0, 1.5, 0) * CFrame.Angles(math.asin((Mouse.Hit.p - Mouse.Origin.p).unit.y), 0, 0) | |
794 | end | |
795 | end) | |
796 | while wait() and Equipped do | |
797 | if Sprinting then | |
798 | Can_Shoot = false | |
799 | Right_Weld.C0 = CFrame.new(0, -1.5, 0) * Settings.SprintArmOffset | |
800 | Left_Weld.C0 = CFrame.new(0, -1.5, 0) * Settings.SprintArmOffset | |
801 | elseif not Aiming and not Sprinting then | |
802 | Can_Shoot = true | |
803 | Left_Weld.C0 = CFrame.new(0, -1.5, 0) | |
804 | end | |
805 | if (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude > 1 and Equipped then | |
806 | Mouse.TargetFilter = nil | |
807 | Character.Torso.Neck.C0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
808 | Character.Torso.Neck.C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
809 | end | |
810 | end | |
811 | end) | |
812 | ||
813 | local Arms_Made | |
814 | local Fake_Arm_Right, Fake_Arm_Left, Fake_Arm_Model | |
815 | ||
816 | Tool.Equipped:connect(function(Mouse) | |
817 | if Character and not Arms_Made then | |
818 | Arms_Made = true | |
819 | local Torso = Character.Torso | |
820 | Torso["Right Shoulder"].Part1 = nil | |
821 | Left_Weld = Instance.new("Weld", Torso) | |
822 | Left_Weld.Name = "Left_Weld" | |
823 | Left_Weld.Part0 = Character.Head | |
824 | Left_Weld.C0 = CFrame.new(0, -1.5, 0) | |
825 | if not Settings.OneHanded then | |
826 | Torso["Left Shoulder"].Part1 = nil | |
827 | Left_Weld.Part1 = Character["Left Arm"] | |
828 | end | |
829 | Right_Weld = Instance.new("Weld", Torso) | |
830 | Right_Weld.Name = "Right_Weld" | |
831 | Right_Weld.Part0 = Character.Head | |
832 | Right_Weld.Part1 = Character["Right Arm"] | |
833 | Right_Weld.C0 = CFrame.new(0, -1.5, 0) | |
834 | Left_Weld.C1 = Settings.LeftPos | |
835 | Right_Weld.C1 = Settings.RightPos | |
836 | end | |
837 | if Settings.FakeArms and not Fake_Arm_Right then | |
838 | Fake_Arm_Right, Fake_Arm_Left = Character["Right Arm"]:Clone(), Character["Left Arm"]:Clone() | |
839 | Fake_Arm_Right.FormFactor, Fake_Arm_Left.FormFactor = "Custom", "Custom" | |
840 | Fake_Arm_Right.Size, Fake_Arm_Left.Size = Vector3.new(), Vector3.new() | |
841 | local fakeArms = {Fake_Arm_Right, Fake_Arm_Left} | |
842 | for i = 1, 2 do | |
843 | local w = Instance.new("Weld", fakeArms[i]) | |
844 | w.Part0 = Character[fakeArms[i].Name] | |
845 | w.Part1 = fakeArms[i] | |
846 | fakeArms[i].Transparency = Settings.FakeArmTransparency | |
847 | end | |
848 | Fake_Arm_Model = Instance.new("Model", Camera) | |
849 | Fake_Arm_Right.Parent = Fake_Arm_Model | |
850 | if not Settings.OneHanded then | |
851 | Fake_Arm_Left.Parent = Fake_Arm_Model | |
852 | end | |
853 | Fake_Arm_Model.Name = "FakeArms" | |
854 | if Settings.CharacterMeshes then | |
855 | for i, v in pairs(Character:GetChildren()) do | |
856 | if v:IsA("CharacterMesh") and v.BodyPart == Enum.BodyPart.LeftArm or v:IsA("CharacterMesh") and v.BodyPart == Enum.BodyPart.RightArm then | |
857 | v:Clone().Parent = Fake_Arm_Model | |
858 | end | |
859 | end | |
860 | end | |
861 | if Character:FindFirstChild("Shirt") then | |
862 | Instance.new("Humanoid", Fake_Arm_Model) | |
863 | Character.Shirt:Clone().Parent = Fake_Arm_Model | |
864 | else | |
865 | local Arm_Mesh = Instance.new("SpecialMesh", Fake_Arm_Right) | |
866 | Arm_Mesh.MeshType, Arm_Mesh.Scale = "Brick", Vector3.new(1, 2, 1) | |
867 | local Arm_Mesh2 = Instance.new("SpecialMesh", Fake_Arm_Left) | |
868 | Arm_Mesh2.MeshType, Arm_Mesh2.Scale = "Brick", Vector3.new(1, 2, 1) | |
869 | end | |
870 | end | |
871 | end) | |
872 | ||
873 | Tool.Unequipped:connect(function() | |
874 | Equipped = false | |
875 | Tool.GripPos = Orig_Grip | |
876 | Aiming = false | |
877 | Settings.Spread = Orig_Spread | |
878 | if Settings.ChangeFOV[1] then | |
879 | Camera.FieldOfView = 70 | |
880 | end | |
881 | if Gui then | |
882 | Gui:Destroy() | |
883 | Gui = nil | |
884 | end | |
885 | for i, v in pairs(Tool.Handle:GetChildren()) do | |
886 | if v:IsA("Sound") then | |
887 | v:Stop() | |
888 | end | |
889 | end | |
890 | if Fake_Arm_Right and Fake_Arm_Left and Fake_Arm_Model then | |
891 | Fake_Arm_Model:Destroy() | |
892 | Fake_Arm_Right, Fake_Arm_Left, Fake_Arm_Model = nil, nil, nil | |
893 | end | |
894 | if Character and Left_Weld and Right_Weld then | |
895 | Arms_Made = false | |
896 | local Torso = Character.Torso | |
897 | Torso["Right Shoulder"].Part1, Torso["Left Shoulder"].Part1 = Character["Right Arm"], Character["Left Arm"] | |
898 | Left_Weld:Destroy() | |
899 | Right_Weld:Destroy() | |
900 | end | |
901 | Sprinting = false | |
902 | Character.Torso.Neck.C0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
903 | Character.Torso.Neck.C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
904 | Character.Humanoid.WalkSpeed = 16 | |
905 | end) | |
906 | end,o12) | |
907 | end)) | |
908 | o13.Name = "StoredAmmo" | |
909 | o13.Parent = o12 | |
910 | o13.Value = math.huge | |
911 | o14.Name = "Ammo" | |
912 | o14.Parent = o12 | |
913 | o14.Value = math.huge | |
914 | o15.Parent = o12 | |
915 | - | o14.Value = 30 |
915 | + | |
916 | o15.Color = Color3.new(0.807843, 0.807843, 0.807843) | |
917 | o15.Enabled = false | |
918 | o15.Opacity = 0.10000000149012 | |
919 | o15.RiseVelocity = 10 | |
920 | o16.Name = "Smoke1" | |
921 | o16.Parent = o12 | |
922 | o16.Size = 0.25 | |
923 | o16.Color = Color3.new(0.807843, 0.807843, 0.807843) | |
924 | o16.Enabled = false | |
925 | o16.Opacity = 0.10000000149012 | |
926 | o16.RiseVelocity = 10 | |
927 | o17.Name = "Smoke2" | |
928 | o17.Parent = o12 | |
929 | o17.Size = 0.25 | |
930 | o17.Color = Color3.new(0.807843, 0.807843, 0.807843) | |
931 | o17.Enabled = false | |
932 | o17.Opacity = 0.10000000149012 | |
933 | o17.RiseVelocity = 10 | |
934 | o18.Name = "MaxAmmo" | |
935 | o18.Parent = o12 | |
936 | o18.Value = 30 | |
937 | o19.Name = "Gui" | |
938 | o19.Parent = o12 | |
939 | o20.Name = "Box1" | |
940 | o20.Parent = o19 | |
941 | o20.Position = UDim2.new(1,-5,1,-120) | |
942 | o20.Rotation = 5 | |
943 | o20.Size = UDim2.new(-0.125,0,-0.03999999910593,0) | |
944 | o20.Position = UDim2.new(1,-5,1,-120) | |
945 | o20.BackgroundColor3 = Color3.new(0.0196078, 0.0196078, 0.0196078) | |
946 | o20.BackgroundTransparency = 0.30000001192093 | |
947 | o20.BorderColor3 = Color3.new(0, 0, 0) | |
948 | o20.BorderSizePixel = 0 | |
949 | o20.SizeConstraint = Enum.SizeConstraint.RelativeXX | |
950 | o21.Name = "GunName" | |
951 | o21.Parent = o20 | |
952 | o21.Position = UDim2.new(0.92500001192093,0,0,0) | |
953 | o21.Size = UDim2.new(-0.80000001192093,0,0.5,0) | |
954 | o21.Text = "MP5" | |
955 | o21.Position = UDim2.new(0.92500001192093,0,0,0) | |
956 | o21.BackgroundColor3 = Color3.new(0.501961, 0, 0) | |
957 | o21.BackgroundTransparency = 1 | |
958 | o21.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843) | |
959 | o21.ZIndex = 2 | |
960 | o21.FontSize = Enum.FontSize.Size14 | |
961 | o21.TextColor3 = Color3.new(1, 1, 1) | |
962 | o21.TextScaled = true | |
963 | o21.TextStrokeColor3 = Color3.new(0.647059, 0, 0.129412) | |
964 | o21.TextTransparency = 0.40000000596046 | |
965 | o21.TextWrapped = true | |
966 | o21.TextXAlignment = Enum.TextXAlignment.Right | |
967 | o22.Name = "GunTip" | |
968 | o22.Parent = o20 | |
969 | o22.Position = UDim2.new(0.92500001192093,0,0.44999998807907,0) | |
970 | o22.Size = UDim2.new(-0.80000001192093,0,0.5,0) | |
971 | o22.Text = "9x19mm" | |
972 | o22.Position = UDim2.new(0.92500001192093,0,0.44999998807907,0) | |
973 | o22.BackgroundColor3 = Color3.new(0.501961, 0, 0) | |
974 | o22.BackgroundTransparency = 1 | |
975 | o22.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843) | |
976 | o22.ZIndex = 2 | |
977 | o22.FontSize = Enum.FontSize.Size14 | |
978 | o22.TextColor3 = Color3.new(1, 1, 1) | |
979 | o22.TextScaled = true | |
980 | o22.TextStrokeColor3 = Color3.new(0.647059, 0, 0.129412) | |
981 | o22.TextTransparency = 0.40000000596046 | |
982 | o22.TextWrapped = true | |
983 | o22.TextXAlignment = Enum.TextXAlignment.Right | |
984 | o23.Parent = o19 | |
985 | o23.Position = UDim2.new(1,-5,1,-60) | |
986 | o23.Rotation = 5 | |
987 | o23.Size = UDim2.new(-0.125,0,-0.03999999910593,0) | |
988 | o23.Position = UDim2.new(1,-5,1,-60) | |
989 | o23.BackgroundColor3 = Color3.new(0.0196078, 0.0196078, 0.0196078) | |
990 | o23.BackgroundTransparency = 0.30000001192093 | |
991 | o23.BorderColor3 = Color3.new(0, 0, 0) | |
992 | o23.BorderSizePixel = 0 | |
993 | o23.SizeConstraint = Enum.SizeConstraint.RelativeXX | |
994 | o24.Name = "AmmoDisplay" | |
995 | o24.Parent = o23 | |
996 | o24.Position = UDim2.new(0.90399998426437,0,0.10000000149012,0) | |
997 | o24.Size = UDim2.new(-0.80000001192093,0,0.5,0) | |
998 | o24.Text = "" | |
999 | o24.Position = UDim2.new(0.90399998426437,0,0.10000000149012,0) | |
1000 | o24.BackgroundColor3 = Color3.new(0.501961, 0, 0) | |
1001 | o24.BackgroundTransparency = 1 | |
1002 | o24.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843) | |
1003 | o24.ZIndex = 2 | |
1004 | o24.FontSize = Enum.FontSize.Size14 | |
1005 | o24.TextColor3 = Color3.new(1, 1, 1) | |
1006 | o24.TextScaled = true | |
1007 | o24.TextStrokeColor3 = Color3.new(0.647059, 0, 0.129412) | |
1008 | o24.TextTransparency = 0.40000000596046 | |
1009 | o24.TextWrapped = true | |
1010 | o25.Name = "Ammobar" | |
1011 | o25.Parent = o23 | |
1012 | o25.Position = UDim2.new(0.050000000745058,0,0.8500000834465,0) | |
1013 | o25.Size = UDim2.new(0.89999997615814,0,-0.15000003576279,0) | |
1014 | o25.Position = UDim2.new(0.050000000745058,0,0.8500000834465,0) | |
1015 | o25.BackgroundColor3 = Color3.new(0.109804, 0.109804, 0.109804) | |
1016 | o25.BackgroundTransparency = 0.5 | |
1017 | o25.BorderColor3 = Color3.new(0.466667, 0.466667, 0.466667) | |
1018 | o26.Name = "Percentage" | |
1019 | o26.Parent = o25 | |
1020 | o26.Position = UDim2.new(0,1,0,1) | |
1021 | o26.Size = UDim2.new(1,-2,1,-2) | |
1022 | o26.Position = UDim2.new(0,1,0,1) | |
1023 | o26.BackgroundColor3 = Color3.new(1, 1, 1) | |
1024 | o26.BackgroundTransparency = 0.5 | |
1025 | o26.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843) | |
1026 | o26.BorderSizePixel = 0 | |
1027 | o27.Name = "AimPart" | |
1028 | o27.Parent = o1 | |
1029 | o27.Material = Enum.Material.SmoothPlastic | |
1030 | o27.BrickColor = BrickColor.new("Dark stone grey") | |
1031 | o27.Transparency = 1 | |
1032 | o27.Position = Vector3.new(10.2711039, -7.83736897, 11.0852327) | |
1033 | o27.Rotation = Vector3.new(0.289999992, -4.65999985, 0.0199999996) | |
1034 | o27.CanCollide = false | |
1035 | o27.FormFactor = Enum.FormFactor.Custom | |
1036 | o27.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
1037 | o27.CFrame = CFrame.new(10.2711039, -7.83736897, 11.0852327, 0.996697843, -0.000370679394, -0.0811730102, -3.23174536e-05, 0.999987721, -0.00496333977, 0.0811738521, 0.00494957436, 0.996685803) | |
1038 | o27.BackSurface = Enum.SurfaceType.SmoothNoOutlines | |
1039 | o27.BottomSurface = Enum.SurfaceType.SmoothNoOutlines | |
1040 | o27.FrontSurface = Enum.SurfaceType.SmoothNoOutlines | |
1041 | o27.LeftSurface = Enum.SurfaceType.SmoothNoOutlines | |
1042 | o27.RightSurface = Enum.SurfaceType.SmoothNoOutlines | |
1043 | o27.TopSurface = Enum.SurfaceType.SmoothNoOutlines | |
1044 | o27.Color = Color3.new(0.388235, 0.372549, 0.384314) | |
1045 | o27.Position = Vector3.new(10.2711039, -7.83736897, 11.0852327) | |
1046 | o28.Parent = o27 | |
1047 | o28.Scale = Vector3.new(0.141079962, 0.357402384, 0.141079962) | |
1048 | o29.Name = "SmokePart" | |
1049 | o29.Parent = o1 | |
1050 | o29.Material = Enum.Material.SmoothPlastic | |
1051 | o29.BrickColor = BrickColor.new("Dark stone grey") | |
1052 | o29.Transparency = 1 | |
1053 | o29.Position = Vector3.new(10.4959764, -8.10246754, 8.44621563) | |
1054 | o29.Rotation = Vector3.new(0.289999992, -4.65999985, 0.0199999996) | |
1055 | o29.CanCollide = false | |
1056 | o29.FormFactor = Enum.FormFactor.Custom | |
1057 | o29.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
1058 | o29.CFrame = CFrame.new(10.4959764, -8.10246754, 8.44621563, 0.996697843, -0.000370679394, -0.0811730102, -3.23174536e-05, 0.999987721, -0.00496333977, 0.0811738521, 0.00494957436, 0.996685803) | |
1059 | o29.BackSurface = Enum.SurfaceType.SmoothNoOutlines | |
1060 | o29.BottomSurface = Enum.SurfaceType.SmoothNoOutlines | |
1061 | o29.FrontSurface = Enum.SurfaceType.SmoothNoOutlines | |
1062 | o29.LeftSurface = Enum.SurfaceType.SmoothNoOutlines | |
1063 | o29.RightSurface = Enum.SurfaceType.SmoothNoOutlines | |
1064 | o29.TopSurface = Enum.SurfaceType.SmoothNoOutlines | |
1065 | o29.Color = Color3.new(0.388235, 0.372549, 0.384314) | |
1066 | o29.Position = Vector3.new(10.4959764, -8.10246754, 8.44621563) | |
1067 | o30.Parent = o29 | |
1068 | o30.Scale = Vector3.new(0.658373058, 0.658372879, 0.658373058) | |
1069 | mas.Parent = workspace | |
1070 | mas:MakeJoints() | |
1071 | local mas1 = mas:GetChildren() | |
1072 | for i=1,#mas1 do | |
1073 | mas1[i].Parent = workspace | |
1074 | ypcall(function() mas1[i]:MakeJoints() end) | |
1075 | end | |
1076 | mas:Destroy() | |
1077 | for i=1,#cors do | |
1078 | coroutine.resume(cors[i]) | |
1079 | end |