View difference between Paste ID: cRZ93mtF and 3wG63H41
SHOW: | | - or go back to the newest paste.
1
--MADE BY OneLegend (NOT THE SCRIPT) Credits to CyberFromLU for letting me publish REGULAR SCRIPT: Just hit CNTRL + H and where it says Find what type "RazorShockk" and where it says Replace with Put your name.
2
3
if script == nil then return end
4
5
6-
Player = script:FindFirstChild("Player") ~= nil and script.Player.Value or game:GetService("Players"):FindFirstChild("RazorShockk")
6+
Player = script:FindFirstChild("Player") ~= nil and script.Player.Value or game:GetService("Players"):FindFirstChild("timetodie23232223")
7
Name = "Spirit of Vengence"
8
-- Mechanics
9
WSPenalty = 50
10
Reliability = 75
11
Jammed = false
12
Mode = 0
13
Spread = 900000
14
-- Appearance
15
Reciever = 0
16
MC = BrickColor.new("White")
17
DC = BrickColor.new("White")
18
GC = BrickColor.new("White")
19
MR = 0
20
GR = 0
21
Magazine = "Beta-C"
22
Sight = 1
23
Grip = true
24
Attachment = true
25
Stock = 1
26
-- Stats/Abilities
27
selected = false
28
canDual = false
29
dual = false
30
Button1Down = false
31
damage = 40
32
canFire = true
33
canFire2 = false
34
readyTime = 0.09
35
automatic = false
36
burst = false
37
burstCount = 0
38
burstCountMax = 15
39
canSilence = true
40
silenced = false
41
canZoom = false
42
zoom = false
43
switchToSingle = true
44
switchToBurst = true
45
switchToAutomatic = true
46
47
48
ammoGui = Instance.new("ScreenGui")
49
ammoGui.Name = Name
50
local frame = Instance.new("Frame")
51
frame.Name = "Frame"
52
frame.Size = UDim2.new(0, 165, 0, 60)
53
frame.Position = UDim2.new(0, 0, 1, -400)
54
frame.BackgroundColor3 = Color3.new(1, 1, 1)
55
frame.BorderColor3 = Color3.new(0, 0, 0)
56
frame.Parent = ammoGui
57
local label = Instance.new("TextLabel")
58
label.Name = "Weapon"
59
label.Text = "Weapon: " ..Name
60
label.Size = UDim2.new(1, 0, 0, 20)
61
label.Position = UDim2.new(0, 0, 0, 0)
62
label.BackgroundColor3 = Color3.new(1, 0, 0)
63
label.BorderColor3 = Color3.new(0, 0, 0)
64
label.Parent = frame
65
local label = Instance.new("TextLabel")
66
label.Name = "MagazinePrefix"
67
label.Text = "    " ..Magazine.. " Magazine:"
68
label.TextXAlignment = "Left"
69
label.Size = UDim2.new(1, 0, 0, 20)
70
label.Position = UDim2.new(0, 0, 0, 20)
71
label.BackgroundColor3 = Color3.new(1, 1, 1)
72
label.BorderColor3 = Color3.new(0, 0, 0)
73
label.Parent = frame
74
local label = Instance.new("TextLabel")
75
label.Name = "Magazine"
76
label.Text = "0/0"
77
label.TextXAlignment = "Right"
78
label.Size = UDim2.new(1, 0, 0, 20)
79
label.Position = UDim2.new(0, -10, 0, 20)
80
label.BackgroundTransparency = 1
81
label.BorderSizePixel = 0
82
label.Parent = frame
83
local label = Instance.new("TextLabel")
84
label.Name = "AmmoPrefix"
85
label.Text = "    5.56x45mm NATO:"
86
label.TextXAlignment = "Left"
87
label.Size = UDim2.new(1, 0, 0, 20)
88
label.Position = UDim2.new(0, 0, 0, 40)
89
label.BackgroundColor3 = Color3.new(1, 1, 1)
90
label.BorderColor3 = Color3.new(0, 0, 0)
91
label.Parent = frame
92
local label = Instance.new("TextLabel")
93
label.Name = "Ammo"
94
label.Text = "0/0"
95
label.TextXAlignment = "Right"
96
label.Size = UDim2.new(1, 0, 0, 20)
97
label.Position = UDim2.new(0, -10, 0, 40)
98
label.BackgroundTransparency = 1
99
label.BorderSizePixel = 0
100
label.Parent = frame
101
102
103
function updateGui()
104
    if selected == false then return end
105
    if Player:FindFirstChild("PlayerGui") == nil then Instance.new("PlayerGui").Parent = Player end
106
    if Player.PlayerGui:FindFirstChild(Name) == nil then
107
        ammoGui:Clone().Parent = Player.PlayerGui
108
    end
109
    Player.PlayerGui[Name].Frame.Magazine.Text = tostring(magazine.Value).. "/" ..tostring(magazineMax.Value)
110
    Player.PlayerGui[Name].Frame.Ammo.Text = tostring(ammo.Value).. "/" ..tostring(ammoMax.Value)
111
end
112
113
114
function makeParts(format)
115
    local model = Instance.new("Model")
116
    model.Name = Name
117
    local pm = Instance.new("Part")
118
    pm.Name = "Handle"
119
    pm.formFactor = "Symmetric"
120
    pm.Size = Vector3.new(1, 1, 1)
121
    pm.BrickColor = MC
122
    pm.Reflectance = MR
123
    pm.CanCollide = false
124
    pm.Locked = true
125
    pm.TopSurface = 0
126
    pm.BottomSurface = 0
127
    pm.Parent = model
128
    local m = Instance.new("BlockMesh")
129
    m.Scale = Vector3.new(0.3, 1.1, 0.41)
130
    m.Offset = Vector3.new(0, -0.14, 0.07)
131
    m.Parent = pm
132
    if format ~= nil then
133
        local w = Instance.new("Weld")
134
        w.Part0 = pm
135
        if format == "RightHand" then
136
            w.Part1 = Player.Character:FindFirstChild("Right Arm")
137
            w.C0 = CFrame.new(0, 1.15, 0.7)
138
            w.C1 = CFrame.new()
139
        elseif format == "RightHolster" then
140
            w.Part1 = Player.Character:FindFirstChild("Torso")
141
            w.C0 = CFrame.new(-0.65, -0.6, 0.4) * CFrame.fromEulerAnglesXYZ(math.rad(40), math.rad(90), 0)
142
            w.C1 = CFrame.new()
143
            model.Name = Name.. " (Holstered)"
144
        end
145
        w.Parent = pm
146
        model.Parent = Player.Character
147
    end
148
    --[[
149
    sniper1  http://www.roblox.com/asset/?id=1868836
150
    equip    http://www.roblox.com/asset/?id=13510737
151
    fire1     http://www.roblox.com/asset/?id=2760979
152
    fire2    http://www.roblox.com/asset/?id=13510352
153
    fire3    http://www.roblox.com/asset/?id=2692806
154
    fire4    http://www.roblox.com/asset/?id=2691586
155
    fire5    http://www.roblox.com/asset/?id=2920959
156
    fire6    http://www.roblox.com/asset/?id=2697431
157
    fire7    http://www.roblox.com/asset/?id=2920959
158
    reload1   http://www.roblox.com/asset/?id=2691591
159
    reload2   http://www.roblox.com/asset/?id=2697432
160
    reload3  http://www.roblox.com/asset/?id=2920960
161
    reload4  http://www.roblox.com/asset/?id=2761842
162
    shotgun1 http://www.roblox.com/asset/?id=2697294
163
    --]]
164
    local s = Instance.new("Sound")
165
    s.Name = "Fire"
166
    s.SoundId = "http://www.roblox.com/Asset/?id=10209803" --"http://www.roblox.com/asset/?id=2920959"
167
    s.Volume = 1
168
    s.Pitch = 2
169
    s.Looped = false
170
    s.Parent = pm
171
    local s = Instance.new("Sound")
172
    s.Name = "Fire2"
173
    s.SoundId = "http://www.roblox.com/Asset/?id=10209633"
174
    s.Volume = 1
175
    s.Pitch = 3
176
    s.Looped = false
177
    s.Parent = pm
178
    local s = Instance.new("Sound")
179
    s.Name = "Jam"
180
    s.SoundId = "http://www.roblox.com/Asset/?id=10209636"
181
    s.Volume = 1
182
    s.Pitch = 2
183
    s.Looped = false
184
    s.Parent = pm	
185
    local s = Instance.new("Sound")
186
    s.Name = "Lock"
187
    s.SoundId = "http://www.roblox.com/Asset/?id=10209845"
188
    s.Volume = 1
189
    s.Pitch = 3
190
    s.Looped = false
191
    s.Parent = pm
192
    local s = Instance.new("Sound")
193
    s.Name = "Release"
194
    s.SoundId = "http://www.roblox.com/Asset/?id=10209813"
195
    s.Volume = 1
196
    s.Pitch = 2
197
    s.Looped = false
198
    s.Parent = pm
199
    local s = Instance.new("Sound")
200
    s.Name = "Reload"
201
    s.SoundId = "http://www.roblox.com/asset/?id=2697295"
202
    s.Volume = 1
203
    s.Pitch = 7.5
204
    s.Looped = false
205
    s.Parent = pm
206
    local s = Instance.new("Sound")
207
    s.Name = "Empty"
208
    s.SoundId = "http://www.roblox.com/asset/?id=2697295"
209
    s.Volume = 1
210
    s.Pitch = 5
211
    s.Looped = false
212
    s.Parent = pm
213
    local s = Instance.new("Sound")
214
    s.Name = "Switch"
215
    s.SoundId = "http://www.roblox.com/asset/?id=2697295"
216
    s.Volume = 1
217
    s.Pitch = 10
218
    s.Looped = false
219
    s.Parent = pm
220
    local s = Instance.new("Sound")
221
    s.Name = "Equip"
222
    s.SoundId = "http://www.roblox.com/Asset/?id=10209845"
223
    s.Volume = 1
224
    s.Pitch = 1.2
225
    s.Looped = false
226
    s.Parent = pm
227
    local p = Instance.new("Part")
228
    p.Name = "ShellOut"
229
    p.formFactor = "Symmetric"
230
    p.Size = Vector3.new(1, 1, 1)
231
    p.Transparency = 1
232
    p.Locked = true
233
    p.CanCollide = false
234
    p.TopSurface = 0
235
    p.BottomSurface = 0
236
    p.Parent = model
237
    local w = Instance.new("Weld")
238
    w.Part0 = p
239
    w.Part1 = pm
240
    w.C0 = CFrame.new(0, 0.4, 0.1) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
241
    w.C1 = CFrame.new()
242
    w.Parent = p	
243
    local p = Instance.new("Part")
244
    p.Name = "Grip"
245
    p.formFactor = "Symmetric"
246
    p.Size = Vector3.new(1, 1, 1)
247
    p.BrickColor = GC
248
    p.Reflectance = GR
249
    p.CanCollide = false
250
    p.Locked = true
251
    p.TopSurface = 0
252
    p.BottomSurface = 0
253
    p.Parent = model
254
    local m = Instance.new("BlockMesh")
255
    m.Scale = Vector3.new(0.29, 0.38, 0.8)
256
    m.Parent = p
257
    local w = Instance.new("Weld")
258
    w.Part0 = p
259
    w.Part1 = pm
260
    w.C0 = CFrame.new(0, -0.15, -0.5) * CFrame.fromEulerAnglesXYZ(math.rad(15), 0, 0)
261
    w.C1 = CFrame.new()
262
    w.Parent = p
263
    local p = Instance.new("Part")
264
    p.Name = "Magazine Housing"
265
    p.formFactor = "Symmetric"
266
    p.Size = Vector3.new(1, 1, 1)
267
    p.BrickColor = MC
268
    p.Reflectance = MR
269
    p.CanCollide = false
270
    p.Locked = true
271
    p.TopSurface = 0
272
    p.BottomSurface = 0
273
    p.Parent = model
274
    local m = Instance.new("BlockMesh")
275
    m.Scale = Vector3.new(0.3, 0.46, 0.4)
276
    m.Parent = p
277
    local w = Instance.new("Weld")
278
    w.Part0 = p
279
    w.Part1 = pm
280
    w.C0 = CFrame.new(0, 0.46, -0.21)
281
    w.C1 = CFrame.new()
282
    w.Parent = p
283
    local p = Instance.new("Part")
284
    p.Name = "BoltHole" --------------
285
    p.CanCollide = false
286
    p.formFactor = "Symmetric"
287
    p.Size = Vector3.new(1, 1, 1)
288
    p.BrickColor = BrickColor.new("Really black")
289
    p.Locked = true
290
    p.TopSurface = 0
291
    p.BottomSurface = 0
292
    p.Parent = model
293
    local m = Instance.new("CylinderMesh")
294
    m.Scale = Vector3.new(0.13, 0.29, 0.13)
295
    m.Parent = p
296
    local w = Instance.new("Weld")
297
    w.Part0 = p
298
    w.Part1 = pm
299
    w.C0 = CFrame.new(-0.1, 0.4, -0.04)
300
    w.C1 = CFrame.new()
301
    w.Parent = p	
302
    local p = Instance.new("Part")
303
    p.Name = "MagazineHole"
304
    p.formFactor = "Symmetric"
305
    p.Size = Vector3.new(1, 1, 1)
306
    p.BrickColor = BrickColor.new("Really black")
307
    p.CanCollide = false
308
    p.Locked = true
309
    p.TopSurface = 0
310
    p.BottomSurface = 0
311
    p.Parent = model
312
    local m = Instance.new("BlockMesh")
313
    m.Scale = Vector3.new(0.28, 0.44, 0.406)
314
    m.Parent = p
315
    local w = Instance.new("Weld")
316
    w.Part0 = p
317
    w.Part1 = pm
318
    w.C0 = CFrame.new(0, 0.46, -0.21)
319
    w.C1 = CFrame.new()
320
    w.Parent = p	
321
    if Magazine == "Beta-C" then
322
        local pm2 = Instance.new("Part")
323
        pm2.Name = "Magazine"
324
        pm2.formFactor = "Symmetric"
325
        pm2.Size = Vector3.new(1, 1, 1)
326
        pm2.BrickColor = BrickColor.new("Dark stone grey")
327
        pm2.Locked = true
328
        pm2.CanCollide = false
329
        pm2.TopSurface = 0
330
        pm2.BottomSurface = 0
331
        pm2.Parent = model
332
        local m = Instance.new("BlockMesh")
333
        m.Scale = Vector3.new(0.25, 0.43, 0.6)
334
        m.Parent = pm2
335
        local w = Instance.new("Weld")
336
        w.Part0 = pm2
337
        w.Part1 = pm
338
        w.C0 = CFrame.new(0, 0.425, -0.6) * CFrame.fromEulerAnglesXYZ(math.rad(-6), 0, 0)
339
        w.C1 = CFrame.new()
340
        w.Parent = p		
341
        local p = Instance.new("Part")
342
        p.Name = "MagPull1"
343
        p.formFactor = "Symmetric"
344
        p.Size = Vector3.new(1, 1, 1)
345
        p.BrickColor = BrickColor.new("Dark stone grey")
346
        p.Locked = true
347
        p.CanCollide = false
348
        p.TopSurface = 0
349
        p.BottomSurface = 0
350
        p.Parent = model
351
        local m = Instance.new("CylinderMesh")
352
        m.Scale = Vector3.new(0.5, 0.43, 0.5)
353
        m.Parent = p
354
        local w = Instance.new("Weld")
355
        w.Part0 = p
356
        w.Part1 = pm2
357
        w.C0 = CFrame.new(-0.26, 0, -0.12)
358
        w.C1 = CFrame.new()
359
        w.Parent = p
360
        local p = Instance.new("Part")
361
        p.Name = "MagPull2"
362
        p.formFactor = "Symmetric"
363
        p.Size = Vector3.new(1, 1, 1)
364
        p.BrickColor = BrickColor.new("Dark stone grey")
365
        p.Locked = true
366
        p.CanCollide = false
367
        p.TopSurface = 0
368
        p.BottomSurface = 0
369
        p.Parent = model
370
        local m = Instance.new("CylinderMesh")
371
        m.Scale = Vector3.new(0.5, 0.43, 0.5)
372
        m.Parent = p
373
        local w = Instance.new("Weld")
374
        w.Part0 = p
375
        w.Part1 = pm2
376
        w.C0 = CFrame.new(0.26, 0, -0.12)
377
        w.C1 = CFrame.new()
378
        w.Parent = p	
379
    elseif Magazine == "STANAG" then
380
        local pm2 = Instance.new("Part")
381
        pm2.Name = "Magazine"
382
        pm2.formFactor = "Symmetric"
383
        pm2.Size = Vector3.new(1, 1, 1)
384
        pm2.BrickColor = BrickColor.new("Dark stone grey")
385
        pm2.Locked = true
386
        pm2.CanCollide = false
387
        pm2.TopSurface = 0
388
        pm2.BottomSurface = 0
389
        pm2.Parent = model
390
        local m = Instance.new("BlockMesh")
391
        m.Scale = Vector3.new(0.25, 0.43, 0.8)
392
        m.Parent = pm2
393
        local w = Instance.new("Weld")
394
        w.Part0 = pm2
395
        w.Part1 = pm
396
        w.C0 = CFrame.new(0, 0.425, -0.6) * CFrame.fromEulerAnglesXYZ(math.rad(-6), 0, 0)
397
        w.C1 = CFrame.new()
398
        w.Parent = p			
399
        local p = Instance.new("Part")
400
        p.Name = "MagPull1"
401
        p.formFactor = "Symmetric"
402
        p.Size = Vector3.new(1, 1, 1)
403
        p.BrickColor = BrickColor.new("Sand green")
404
        p.Locked = true
405
        p.CanCollide = false
406
        p.TopSurface = 0
407
        p.BottomSurface = 0
408
        p.Parent = model
409
        local m = Instance.new("BlockMesh")
410
        m.Scale = Vector3.new(0.26, 0.44, 0.2)
411
        m.Parent = p
412
        local w = Instance.new("Weld")
413
        w.Part0 = p
414
        w.Part1 = pm2
415
        w.C0 = CFrame.new(0, 0, -0.15)
416
        w.C1 = CFrame.new()
417
        w.Parent = p
418
        local p = Instance.new("Part")
419
        p.Name = "MagPull2"
420
        p.formFactor = "Symmetric"
421
        p.Size = Vector3.new(1, 1, 1)
422
        p.BrickColor = BrickColor.new("Sand green")
423
        p.Locked = true
424
        p.CanCollide = false
425
        p.TopSurface = 0
426
        p.BottomSurface = 0
427
        p.Parent = model
428
        local m = Instance.new("BlockMesh")
429
        m.Scale = Vector3.new(0.26, 0.2, 0.3)
430
        m.Parent = p
431
        local w = Instance.new("Weld")
432
        w.Part0 = p
433
        w.Part1 = pm2
434
        w.C0 = CFrame.new(0, 0, -0.3)
435
        w.C1 = CFrame.new()
436
        w.Parent = p	
437
    else end		
438
    local p = Instance.new("Part")
439
    p.Name = "Trigger Housing"
440
    p.formFactor = "Symmetric"
441
    p.Size = Vector3.new(1, 1, 1)
442
    p.BrickColor = MC
443
    p.Reflectance = MR
444
    p.CanCollide = false
445
    p.Locked = true
446
    p.TopSurface = 0
447
    p.BottomSurface = 0
448
    p.Parent = model
449
    local m = Instance.new("BlockMesh")
450
    m.Scale = Vector3.new(0.1, 0.4, 0.025)
451
    m.Parent = p
452
    local w = Instance.new("Weld")
453
    w.Part0 = p
454
    w.Part1 = pm
455
    w.C0 = CFrame.new(0, 0.1, -0.38)
456
    w.C1 = CFrame.new()
457
    w.Parent = p
458
    local p = Instance.new("Part")
459
    p.Name = "Trigger"
460
    p.formFactor = "Symmetric"
461
    p.Size = Vector3.new(1, 1, 1)
462
    p.BrickColor = MC
463
    p.Reflectance = MR
464
    p.CanCollide = false
465
    p.Locked = true
466
    p.TopSurface = 0
467
    p.BottomSurface = 0
468
    p.Parent = model
469
    local m = Instance.new("BlockMesh")
470
    m.Scale = Vector3.new(0.1, 0.05, 0.15)
471
    m.Parent = p
472
    local w = Instance.new("Weld")
473
    w.Part0 = p
474
    w.Part1 = pm
475
    w.C0 = CFrame.new(0, 0.03, -0.275)
476
    w.C1 = CFrame.new()
477
    w.Parent = p
478
    local p = Instance.new("Part")
479
    p.Name = "Center" --------------
480
    p.CanCollide = false
481
    p.formFactor = "Symmetric"
482
    p.Size = Vector3.new(1, 1, 1)
483
    p.BrickColor = MC
484
    p.Reflectance = MR
485
    p.Locked = true
486
    p.TopSurface = 0
487
    p.BottomSurface = 0
488
    p.Parent = model
489
    local m = Instance.new("CylinderMesh")
490
    m.Scale = Vector3.new(0.32, 1.1, 0.32)
491
    m.Parent = p
492
    local w = Instance.new("Weld")
493
    w.Part0 = p
494
    w.Part1 = pm
495
    w.C0 = CFrame.new(0, 0.14, -0.04)
496
    w.C1 = CFrame.new()
497
    w.Parent = p
498
    local p = Instance.new("Part")
499
    p.Name = "CHandleC" --------------
500
    p.CanCollide = false
501
    p.formFactor = "Symmetric"
502
    p.Size = Vector3.new(1, 1, 1)
503
    p.BrickColor = DC
504
    p.Reflectance = MR
505
    p.Locked = true
506
    p.TopSurface = 0
507
    p.BottomSurface = 0
508
    p.Parent = model
509
    local m = Instance.new("CylinderMesh")
510
    m.Scale = Vector3.new(0.32, 0.1, 0.32)
511
    m.Parent = p
512
    local w = Instance.new("Weld")
513
    w.Part0 = p
514
    w.Part1 = pm
515
    w.C0 = CFrame.new(0, -0.08, -0.38) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, 0)
516
    w.C1 = CFrame.new()
517
    w.Parent = p
518
    local p = Instance.new("Part")
519
    p.Name = "CHandleB" --------------
520
    p.CanCollide = false
521
    p.formFactor = "Symmetric"
522
    p.Size = Vector3.new(1, 1, 1)
523
    p.BrickColor = DC
524
    p.Reflectance = MR
525
    p.Transparency = 1
526
    p.Locked = true
527
    p.TopSurface = 0
528
    p.BottomSurface = 0
529
    p.Parent = model
530
    local m = Instance.new("CylinderMesh")
531
    m.Scale = Vector3.new(0.32, 0.1, 0.32)
532
    m.Parent = p
533
    local w = Instance.new("Weld")
534
    w.Part0 = p
535
    w.Part1 = pm
536
    w.C0 = CFrame.new(0, -0.08, -0.72) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, 0)
537
    w.C1 = CFrame.new()
538
    w.Parent = p
539
    local p = Instance.new("Part")
540
    p.Name = "CHandleB1" --------------
541
    p.CanCollide = false
542
    p.formFactor = "Symmetric"
543
    p.Size = Vector3.new(1, 1, 1)
544
    p.BrickColor = DC
545
    p.Reflectance = MR
546
    p.Transparency = 1
547
    p.Locked = true
548
    p.TopSurface = 0
549
    p.BottomSurface = 0
550
    p.Parent = model
551
    local m = Instance.new("BlockMesh")
552
    m.Scale = Vector3.new(0.15, 0.8, 0.1)
553
    m.Parent = p
554
    local w = Instance.new("Weld")
555
    w.Part0 = p
556
    w.Part1 = pm
557
    w.C0 = CFrame.new(0, -0.3, 0.08)
558
    w.C1 = CFrame.new()
559
    w.Parent = p	
560
    local p = Instance.new("Part")
561
    p.Name = "Bolt" --------------
562
    p.CanCollide = false
563
    p.formFactor = "Symmetric"
564
    p.Size = Vector3.new(1, 1, 1)
565
    p.BrickColor = BrickColor.new("Dark stone grey")
566
    p.Locked = true
567
    p.TopSurface = 0
568
    p.BottomSurface = 0
569
    p.Parent = model
570
    local m = Instance.new("CylinderMesh")
571
    m.Name = "Mesh"
572
    m.Scale = Vector3.new(0.14, 0.3, 0.14)
573
    m.Offset = Vector3.new(0, 0, 0)
574
    m.Parent = p
575
    local w = Instance.new("Weld")
576
    w.Part0 = p
577
    w.Part1 = pm
578
    w.C0 = CFrame.new(-0.1, 0.4, -0.04)
579
    w.C1 = CFrame.new()
580
    w.Parent = p
581
    local p = Instance.new("Part")
582
    p.Name = "DustCover" --------------
583
    p.CanCollide = false
584
    p.formFactor = "Symmetric"
585
    p.Size = Vector3.new(1, 1, 1)
586
    p.BrickColor = DC
587
    p.Locked = true
588
    p.TopSurface = 0
589
    p.BottomSurface = 0
590
    p.Parent = model
591
    local m = Instance.new("BlockMesh")
592
    m.Name = "Mesh"
593
    m.Scale = Vector3.new(0.14, 0.34, 0.14)
594
    m.Offset = Vector3.new(0, 0, 0)
595
    m.Parent = p
596
    local s = Instance.new("Smoke")
597
    s.Enabled = false
598
    s.Name = "Smoke"
599
    s.RiseVelocity = 0
600
    s.Opacity = 0.1
601
    s.Color = Color3.new(90 / 225, 90 / 225, 90 / 225)
602
    s.Size = 0.2
603
    s.Parent = p	
604
    local w = Instance.new("Weld")
605
    w.Part0 = p
606
    w.Part1 = pm
607
    w.C0 = CFrame.new(0, 0, 1) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
608
    w.C1 = CFrame.new()
609
    w.Parent = p	
610
    local w = Instance.new("Weld")
611
    w.Part0 = p
612
    w.Part1 = pm
613
    w.C0 = CFrame.new(-0.105, 0.4, -0.06) * CFrame.fromEulerAnglesXYZ(0, math.rad(-6), 0)
614
    w.C1 = CFrame.new()
615
    w.Parent = p
616
    local p = Instance.new("Part")
617
    p.Name = "ForeBarrel"
618
    p.CanCollide = false
619
    p.formFactor = "Symmetric"
620
    p.Size = Vector3.new(1, 1, 1)
621
    p.BrickColor = GC
622
    p.Reflectance = GR
623
    p.Locked = true
624
    p.TopSurface = 0
625
    p.BottomSurface = 0
626
    p.Parent = model
627
    local m = Instance.new("CylinderMesh")
628
    m.Scale = Vector3.new(0.36, 0.8, 0.36)
629
    m.Parent = p
630
    local w = Instance.new("Weld")
631
    w.Part0 = p
632
    w.Part1 = pm
633
    w.C0 = CFrame.new(0, 1.08, -0.04)
634
    w.C1 = CFrame.new()
635
    w.Parent = p
636
    local p = Instance.new("Part")
637
    p.Name = "Rail" --------------
638
    p.CanCollide = false
639
    p.formFactor = "Symmetric"
640
    p.Size = Vector3.new(1, 1, 1)
641
    p.BrickColor = MC
642
    p.Reflectance = MR
643
    p.Locked = true
644
    p.TopSurface = 0
645
    p.BottomSurface = 0
646
    p.Parent = model
647
    local m = Instance.new("BlockMesh")
648
    m.Scale = Vector3.new(0.36, 0.7, 0.18)
649
    m.Parent = p
650
    local w = Instance.new("Weld")
651
    w.Part0 = p
652
    w.Part1 = pm
653
    w.C0 = CFrame.new(0, 1.08, -0.04)
654
    w.C1 = CFrame.new()
655
    w.Parent = p
656
    local p = Instance.new("Part")
657
    p.Name = "Rail" --------------
658
    p.CanCollide = false
659
    p.formFactor = "Symmetric"
660
    p.Size = Vector3.new(1, 1, 1)
661
    p.BrickColor = MC
662
    p.Reflectance = MR
663
    p.Locked = true
664
    p.TopSurface = 0
665
    p.BottomSurface = 0
666
    p.Parent = model
667
    local m = Instance.new("BlockMesh")
668
    m.Scale = Vector3.new(0.18, 0.7, 0.36)
669
    m.Parent = p
670
    local w = Instance.new("Weld")
671
    w.Part0 = p
672
    w.Part1 = pm
673
    w.C0 = CFrame.new(0, 1.08, -0.04)
674
    w.C1 = CFrame.new()
675
    w.Parent = p		
676
    if Reciever == 0 then
677
        local p = Instance.new("Part")
678
        p.Name = "Barrel 1"
679
        p.formFactor = "Symmetric"
680
        p.Size = Vector3.new(1, 1, 1)
681
        p.BrickColor = DC
682
        p.Reflectance = MR
683
        p.CanCollide = false
684
        p.Locked = true
685
        p.TopSurface = 0
686
        p.BottomSurface = 0
687
        p.Parent = model
688
        local m = Instance.new("CylinderMesh")
689
        m.Scale = Vector3.new(0.15, 0.8, 0.15)
690
        m.Parent = p
691
        local w = Instance.new("Weld")
692
        w.Part0 = p
693
        w.Part1 = pm
694
        w.C0 = CFrame.new(0, 1.6, -0.04)
695
        w.C1 = CFrame.new()
696
        w.Parent = p
697
        local p = Instance.new("Part")
698
        p.Name = "Hole"
699
        p.formFactor = "Symmetric"
700
        p.Size = Vector3.new(1, 1, 1)
701
        p.BrickColor = BrickColor.new("Really black")
702
        p.CanCollide = false
703
        p.Locked = true
704
        p.TopSurface = 0
705
        p.BottomSurface = 0
706
        p.Parent = model
707
        local m = Instance.new("CylinderMesh")
708
        m.Scale = Vector3.new(0.1, 0.4, 0.1)
709
        m.Offset = Vector3.new(0, 0.2, 0)
710
        m.Parent = p
711
        local w = Instance.new("Weld")
712
        w.Part0 = p
713
        w.Part1 = pm
714
        w.C0 = CFrame.new(0, 2.403, -0.04)
715
        w.C1 = CFrame.new()
716
        w.Parent = p	
717
        local p = Instance.new("Part")
718
        if silenced == false then
719
            p.Name = "Muzzle"
720
        else
721
            p.Name = "Muzzle 2"
722
        end
723
        p.formFactor = "Symmetric"
724
        p.Size = Vector3.new(1, 1, 1)
725
        p.BrickColor = DC
726
        p.Reflectance = MR
727
        p.CanCollide = false
728
        p.Locked = true
729
        p.TopSurface = 0
730
        p.BottomSurface = 0
731
        p.Parent = model
732
        local m = Instance.new("CylinderMesh")
733
        m.Scale = Vector3.new(0.18, 0.4, 0.18)
734
        m.Offset = Vector3.new(0, 0.2, 0)
735
        m.Parent = p
736
        local w = Instance.new("Weld")
737
        w.Part0 = p
738
        w.Part1 = pm
739
        w.C0 = CFrame.new(0, 2.4, -0.04)
740
        w.C1 = CFrame.new()
741
        w.Parent = p
742
        local s = Instance.new("Smoke")
743
        s.Enabled = false
744
        s.Name = "Smoke"
745
        s.RiseVelocity = -5
746
        s.Opacity = 0.3
747
        s.Color = Color3.new(75 / 225, 75 / 225, 75 / 225)
748
        s.Size = 1
749
        s.Parent = p
750
        local f = Instance.new("Fire")
751
        f.Enabled = false
752
        f.Name = "Fire"
753
        f.Heat = -35
754
        f.Size = 1
755
        f.Parent = p
756
        local p = Instance.new("Part")
757
        p.formFactor = "Symmetric"
758
        p.Size = Vector3.new(1, 1, 1)
759
        p.BrickColor = MC
760
        p.CanCollide = false
761
        if silenced == false then
762
            p.Name = "Silencer"
763
            p.Transparency = 1
764
        else	
765
            p.Name = "Muzzle"
766
            p.Transparency = 0
767
        end
768
        p.Locked = true
769
        p.TopSurface = 0
770
        p.BottomSurface = 0
771
        p.Parent = model
772
        local m = Instance.new("CylinderMesh")
773
        m.Scale = Vector3.new(0.25, 0.8, 0.25)
774
        m.Parent = p
775
        local w = Instance.new("Weld")
776
        w.Part0 = p
777
        w.Part1 = pm
778
        w.C0 = CFrame.new(0, 2.5, -0.04)
779
        w.C1 = CFrame.new()
780
        w.Parent = p
781
        local p = Instance.new("Part")
782
        p.Name = "Silencer1"
783
        p.formFactor = "Symmetric"
784
        p.Size = Vector3.new(1, 1, 1)
785
        p.BrickColor = BrickColor.new("Dark stone grey")
786
        p.CanCollide = false
787
        if silenced == false then
788
            p.Transparency = 1
789
        else	
790
            p.Transparency = 0
791
        end
792
        p.Locked = true
793
        p.TopSurface = 0
794
        p.BottomSurface = 0
795
        p.Parent = model
796
        local m = Instance.new("CylinderMesh")
797
        m.Scale = Vector3.new(0.255, 0.6, 0.255)
798
        m.Parent = p
799
        local w = Instance.new("Weld")
800
        w.Part0 = p
801
        w.Part1 = pm
802
        w.C0 = CFrame.new(0, 2.5, -0.04)
803
        w.C1 = CFrame.new()
804
        w.Parent = p
805
        local p = Instance.new("Part")
806
        p.Name = "Silencer2"
807
        p.formFactor = "Symmetric"
808
        p.Size = Vector3.new(1, 1, 1)
809
        p.BrickColor = BrickColor.new("Really black")
810
        p.CanCollide = false
811
        if silenced == false then
812
            p.Transparency = 1
813
        else	
814
            p.Transparency = 0
815
        end
816
        p.Locked = true
817
        p.TopSurface = 0
818
        p.BottomSurface = 0
819
        p.Parent = model
820
        local m = Instance.new("CylinderMesh")
821
        m.Scale = Vector3.new(0.1, 0.803, 0.1)
822
        m.Parent = p
823
        local w = Instance.new("Weld")
824
        w.Part0 = p
825
        w.Part1 = pm
826
        w.C0 = CFrame.new(0, 2.5, -0.04)
827
        w.C1 = CFrame.new()
828
        w.Parent = p		
829
        local p = Instance.new("Part") -- Gas Block
830
        p.Name = "Frontsight"
831
        p.formFactor = "Symmetric"
832
        p.Size = Vector3.new(1, 1, 1)
833
        p.BrickColor = DC
834
        p.Reflectance = MR
835
        p.CanCollide = false
836
        p.Locked = true
837
        p.TopSurface = 0
838
        p.BottomSurface = 0
839
        p.Parent = model
840
        local m = Instance.new("BlockMesh")
841
        m.Scale = Vector3.new(0.08, 0.1, 0.3)
842
        m.Parent = p
843
        local w = Instance.new("Weld")
844
        w.Part0 = p
845
        w.Part1 = pm
846
        w.C0 = CFrame.new(0, 1.7, 0.1)
847
        w.C1 = CFrame.new()
848
        w.Parent = p	
849
        local p = Instance.new("Part")
850
        p.Name = "Frontsight"
851
        p.formFactor = "Symmetric"
852
        p.Size = Vector3.new(1, 1, 1)
853
        p.BrickColor = DC
854
        p.Reflectance = MR
855
        p.CanCollide = false
856
        p.Locked = true
857
        p.TopSurface = 0
858
        p.BottomSurface = 0
859
        p.Parent = model
860
        local m = Instance.new("CylinderMesh")
861
        m.Scale = Vector3.new(0.1, 0.1, 0.1)
862
        m.Parent = p
863
        local w = Instance.new("Weld")
864
        w.Part0 = p
865
        w.Part1 = pm
866
        w.C0 = CFrame.new(0, 1.7, 0.28)
867
        w.C1 = CFrame.new()
868
        w.Parent = p
869
        local p = Instance.new("Part")
870
        p.Name = "FrontSight"
871
        p.CanCollide = false
872
        p.formFactor = "Symmetric"
873
        p.Size = Vector3.new(1, 1, 1)
874
        p.BrickColor = MC
875
        p.Reflectance = MR
876
        p.Locked = true
877
        p.TopSurface = 0
878
        p.BottomSurface = 0
879
        p.Parent = model
880
        local m = Instance.new("SpecialMesh")
881
        m.MeshType = "Wedge"
882
        m.Scale = Vector3.new(0.08, 0.45, 0.3)
883
        m.Parent = p
884
        local w = Instance.new("Weld")
885
        w.Part0 = p
886
        w.Part1 = pm
887
        w.C0 = CFrame.new(0, 1.45, 0.14)
888
        w.C1 = CFrame.new()
889
        w.Parent = p	
890
    elseif Reciever == 1 then
891
        local p = Instance.new("Part")
892
        p.Name = "Barrel 1"
893
        p.formFactor = "Symmetric"
894
        p.Size = Vector3.new(1, 1, 1)
895
        p.BrickColor = DC
896
        p.Reflectance = MR
897
        p.CanCollide = false
898
        p.Locked = true
899
        p.TopSurface = 0
900
        p.BottomSurface = 0
901
        p.Parent = model
902
        local m = Instance.new("CylinderMesh")
903
        m.Scale = Vector3.new(0.15, 0.8, 0.15)
904
        m.Parent = p
905
        local w = Instance.new("Weld")
906
        w.Part0 = p
907
        w.Part1 = pm
908
        w.C0 = CFrame.new(0, 1.4, -0.04)
909
        w.C1 = CFrame.new()
910
        w.Parent = p
911
        local p = Instance.new("Part")
912
        p.Name = "Hole"
913
        p.formFactor = "Symmetric"
914
        p.Size = Vector3.new(1, 1, 1)
915
        p.BrickColor = BrickColor.new("Really black")
916
        p.CanCollide = false
917
        p.Locked = true
918
        p.TopSurface = 0
919
        p.BottomSurface = 0
920
        p.Parent = model
921
        local m = Instance.new("CylinderMesh")
922
        m.Scale = Vector3.new(0.1, 0.4, 0.1)
923
        m.Offset = Vector3.new(0, 0.2, 0)
924
        m.Parent = p
925
        local w = Instance.new("Weld")
926
        w.Part0 = p
927
        w.Part1 = pm
928
        w.C0 = CFrame.new(0, 2.203, -0.04)
929
        w.C1 = CFrame.new()
930
        w.Parent = p	
931
        local p = Instance.new("Part")
932
        if silenced == false then
933
            p.Name = "Muzzle"
934
        else
935
            p.Name = "Muzzle 2"
936
        end
937
        p.formFactor = "Symmetric"
938
        p.Size = Vector3.new(1, 1, 1)
939
        p.BrickColor = DC
940
        p.Reflectance = MR
941
        p.CanCollide = false
942
        p.Locked = true
943
        p.TopSurface = 0
944
        p.BottomSurface = 0
945
        p.Parent = model
946
        local m = Instance.new("CylinderMesh")
947
        m.Scale = Vector3.new(0.18, 0.4, 0.18)
948
        m.Offset = Vector3.new(0, 0.2, 0)
949
        m.Parent = p
950
        local w = Instance.new("Weld")
951
        w.Part0 = p
952
        w.Part1 = pm
953
        w.C0 = CFrame.new(0, 2.2, -0.04)
954
        w.C1 = CFrame.new()
955
        w.Parent = p
956
        local s = Instance.new("Smoke")
957
        s.Enabled = false
958
        s.Name = "Smoke"
959
        s.RiseVelocity = -5
960
        s.Opacity = 0.3
961
        s.Color = Color3.new(75 / 225, 75 / 225, 75 / 225)
962
        s.Size = 1
963
        s.Parent = p
964
        local f = Instance.new("Fire")
965
        f.Enabled = false
966
        f.Name = "Fire"
967
        f.Heat = -35
968
        f.Size = 1
969
        f.Parent = p
970
        local p = Instance.new("Part")
971
        p.formFactor = "Symmetric"
972
        p.Size = Vector3.new(1, 1, 1)
973
        p.BrickColor = MC
974
        p.CanCollide = false
975
        if silenced == false then
976
            p.Name = "Silencer"
977
            p.Transparency = 1
978
        else	
979
            p.Name = "Muzzle"
980
            p.Transparency = 0
981
        end
982
        p.Locked = true
983
        p.TopSurface = 0
984
        p.BottomSurface = 0
985
        p.Parent = model
986
        local m = Instance.new("CylinderMesh")
987
        m.Scale = Vector3.new(0.25, 0.8, 0.25)
988
        m.Parent = p
989
        local w = Instance.new("Weld")
990
        w.Part0 = p
991
        w.Part1 = pm
992
        w.C0 = CFrame.new(0, 2.3, -0.04)
993
        w.C1 = CFrame.new()
994
        w.Parent = p
995
        local p = Instance.new("Part")
996
        p.Name = "Silencer1"
997
        p.formFactor = "Symmetric"
998
        p.Size = Vector3.new(1, 1, 1)
999
        p.BrickColor = BrickColor.new("Dark stone grey")
1000
        p.CanCollide = false
1001
        if silenced == false then
1002
            p.Transparency = 1
1003
        else	
1004
            p.Transparency = 0
1005
        end
1006
        p.Locked = true
1007
        p.TopSurface = 0
1008
        p.BottomSurface = 0
1009
        p.Parent = model
1010
        local m = Instance.new("CylinderMesh")
1011
        m.Scale = Vector3.new(0.255, 0.6, 0.255)
1012
        m.Parent = p
1013
        local w = Instance.new("Weld")
1014
        w.Part0 = p
1015
        w.Part1 = pm
1016
        w.C0 = CFrame.new(0, 2.3, -0.04)
1017
        w.C1 = CFrame.new()
1018
        w.Parent = p
1019
        local p = Instance.new("Part")
1020
        p.Name = "Silencer2"
1021
        p.formFactor = "Symmetric"
1022
        p.Size = Vector3.new(1, 1, 1)
1023
        p.BrickColor = BrickColor.new("Really black")
1024
        p.CanCollide = false
1025
        if silenced == false then
1026
            p.Transparency = 1
1027
        else	
1028
            p.Transparency = 0
1029
        end
1030
        p.Locked = true
1031
        p.TopSurface = 0
1032
        p.BottomSurface = 0
1033
        p.Parent = model
1034
        local m = Instance.new("CylinderMesh")
1035
        m.Scale = Vector3.new(0.1, 0.803, 0.1)
1036
        m.Parent = p
1037
        local w = Instance.new("Weld")
1038
        w.Part0 = p
1039
        w.Part1 = pm
1040
        w.C0 = CFrame.new(0, 2.3, -0.04)
1041
        w.C1 = CFrame.new()
1042
        w.Parent = p
1043
        local p = Instance.new("Part") -- Gas Block
1044
        p.Name = "GasBlock"
1045
        p.formFactor = "Symmetric"
1046
        p.Size = Vector3.new(1, 1, 1)
1047
        p.BrickColor = DC
1048
        p.Reflectance = MR
1049
        p.CanCollide = false
1050
        p.Locked = true
1051
        p.TopSurface = 0
1052
        p.BottomSurface = 0
1053
        p.Parent = model
1054
        local m = Instance.new("BlockMesh")
1055
        m.Scale = Vector3.new(0.14, 0.18, 0.15)
1056
        m.Parent = p
1057
        local w = Instance.new("Weld")
1058
        w.Part0 = p
1059
        w.Part1 = pm
1060
        w.C0 = CFrame.new(0, 1.55, 0.02)
1061
        w.C1 = CFrame.new()
1062
        w.Parent = p
1063
    else end
1064
    if Stock == 1 then
1065
        local p = Instance.new("Part")
1066
        p.Name = "StockHinge" 
1067
        p.CanCollide = false
1068
        p.formFactor = "Symmetric"
1069
        p.Size = Vector3.new(1, 1, 1)
1070
        p.BrickColor = DC
1071
        p.Reflectance = MR
1072
        p.Locked = true
1073
        p.TopSurface = 0
1074
        p.BottomSurface = 0
1075
        p.Parent = model
1076
        local m = Instance.new("CylinderMesh")
1077
        m.Scale = Vector3.new(0.1, 0.26, 0.1)
1078
        m.Parent = p
1079
        local w = Instance.new("Weld")
1080
        w.Part0 = p
1081
        w.Part1 = pm
1082
        w.C0 = CFrame.new(-0.14, 0.15, -0.4) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, 0)
1083
        w.C1 = CFrame.new()
1084
        w.Parent = p	
1085
        local ps = Instance.new("Part") -- Stock
1086
        ps.Name = "StockBase"
1087
        ps.CanCollide = false
1088
        ps.formFactor = "Symmetric"
1089
        ps.Size = Vector3.new(1, 1, 1)
1090
        ps.BrickColor = GC
1091
        ps.Reflectance = GR
1092
        ps.Locked = true
1093
        ps.TopSurface = 0
1094
        ps.BottomSurface = 0
1095
        ps.Parent = model
1096
        local m = Instance.new("BlockMesh")
1097
        m.Scale = Vector3.new(0.18, 0.6, 0.28)
1098
        m.Parent = ps
1099
        local w = Instance.new("Weld")
1100
        w.Part0 = ps
1101
        w.Part1 = pm
1102
        if selected == true then
1103
            w.C0 = CFrame.new(0, -0.65, -0.15)
1104
        else
1105
            w.C0 = CFrame.new(0.25, 0.1, -0.15) * CFrame.fromEulerAnglesXYZ(0, 0, math.rad(180))	
1106
        end
1107
        w.C1 = CFrame.new()
1108
        w.Parent = ps	
1109
        local p = Instance.new("Part")
1110
        p.Name = "Stock 1"
1111
        p.CanCollide = false
1112
        p.formFactor = "Symmetric"
1113
        p.Size = Vector3.new(1, 1, 1)
1114
        p.BrickColor = GC
1115
        p.Reflectance = GR
1116
        p.Locked = true
1117
        p.TopSurface = 0
1118
        p.BottomSurface = 0
1119
        p.Parent = model
1120
        local m = Instance.new("BlockMesh")
1121
        m.Scale = Vector3.new(0.18, 1, 0.28)
1122
        m.Parent = p
1123
        local w = Instance.new("Weld")
1124
        w.Part0 = p
1125
        w.Part1 = ps
1126
        w.C0 = CFrame.new(0, -0.38, 0)
1127
        w.C1 = CFrame.new()
1128
        w.Parent = p	
1129
        local p = Instance.new("Part")
1130
        p.Name = "Stock 2"
1131
        p.CanCollide = false
1132
        p.formFactor = "Symmetric"
1133
        p.Size = Vector3.new(1, 1, 1)
1134
        p.BrickColor = GC
1135
        p.Reflectance = GR
1136
        p.Locked = true
1137
        p.TopSurface = 0
1138
        p.BottomSurface = 0
1139
        p.Parent = model
1140
        local m = Instance.new("BlockMesh")
1141
        m.Scale = Vector3.new(0.18, 0.2, 0.58)
1142
        m.Parent = p
1143
        local w = Instance.new("Weld")
1144
        w.Part0 = p
1145
        w.Part1 = ps
1146
        w.C0 = CFrame.new(0, -0.775, -0.28)
1147
        w.C1 = CFrame.new()
1148
        w.Parent = p
1149
        local p = Instance.new("Part")
1150
        p.Name = "StockAngle1"
1151
        p.CanCollide = false
1152
        p.formFactor = "Symmetric"
1153
        p.Size = Vector3.new(1, 1, 1)
1154
        p.BrickColor = GC
1155
        p.Reflectance = GR
1156
        p.Locked = true
1157
        p.TopSurface = 0
1158
        p.BottomSurface = 0
1159
        p.Parent = model
1160
        local m = Instance.new("BlockMesh")
1161
        m.Scale = Vector3.new(0.18, 0.18, 0.65)
1162
        m.Parent = p
1163
        local w = Instance.new("Weld")
1164
        w.Part0 = p
1165
        w.Part1 = ps
1166
        w.C0 = CFrame.new(0, -0.12, -0.56) * CFrame.fromEulerAnglesXYZ(math.rad(48), 0, 0)
1167
        w.C1 = CFrame.new()
1168
        w.Parent = p
1169
    elseif Stock == 2 then
1170
        local p = Instance.new("Part") -- Standard Stock
1171
        p.Name = "StockC"
1172
        p.CanCollide = false
1173
        p.formFactor = "Symmetric"
1174
        p.Size = Vector3.new(1, 1, 1)
1175
        p.BrickColor = GC
1176
        p.Reflectance = GR
1177
        p.Locked = true
1178
        p.TopSurface = 0
1179
        p.BottomSurface = 0
1180
        p.Parent = model
1181
        local m = Instance.new("CylinderMesh")
1182
        m.Scale = Vector3.new(0.2, 1, 0.2)
1183
        m.Parent = p
1184
        local w = Instance.new("Weld")
1185
        w.Part0 = p
1186
        w.Part1 = pm
1187
        w.C0 = CFrame.new(0, -0.6, -0.1)
1188
        w.C1 = CFrame.new()
1189
        w.Parent = p	
1190
        local pt = Instance.new("Part")
1191
        pt.Name = "StockT"
1192
        pt.CanCollide = false
1193
        pt.formFactor = "Symmetric"
1194
        pt.Size = Vector3.new(1, 1, 1)
1195
        pt.BrickColor = GC
1196
        pt.Reflectance = GR
1197
        pt.Locked = true
1198
        pt.TopSurface = 0
1199
        pt.BottomSurface = 0
1200
        pt.Parent = model
1201
        local m = Instance.new("CylinderMesh")
1202
        m.Scale = Vector3.new(0.25, 0.8, 0.25)
1203
        m.Offset = Vector3.new(0, 0.4, 0)
1204
        m.Parent = pt
1205
        local w = Instance.new("Weld")
1206
        w.Part0 = pt
1207
        w.Part1 = pm
1208
        if selected == true then
1209
            w.C0 = CFrame.new(0, -0.8, -0.1)
1210
        else
1211
            w.C0 = CFrame.new(0, -0.4, -0.1)	
1212
        end
1213
        w.C1 = CFrame.new()
1214
        w.Parent = pt
1215
        local p = Instance.new("Part")
1216
        p.Name = "StockAngle1"
1217
        p.CanCollide = false
1218
        p.formFactor = "Symmetric"
1219
        p.Size = Vector3.new(1, 1, 1)
1220
        p.BrickColor = GC
1221
        p.Reflectance = GR
1222
        p.Locked = true
1223
        p.TopSurface = 0
1224
        p.BottomSurface = 0
1225
        p.Parent = model
1226
        local m = Instance.new("SpecialMesh")
1227
        m.MeshType = "Wedge"
1228
        m.Scale = Vector3.new(0.2, 0.5, 0.5)
1229
        m.Parent = p
1230
        local w = Instance.new("Weld")
1231
        w.Part0 = p
1232
        w.Part1 = pt
1233
        w.C0 = CFrame.new(0, -0.3, -0.55) * CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180))
1234
        w.C1 = CFrame.new()
1235
        w.Parent = p
1236
        local p = Instance.new("Part")
1237
        p.Name = "StockAngle2"
1238
        p.CanCollide = false
1239
        p.formFactor = "Symmetric"
1240
        p.Size = Vector3.new(1, 1, 1)
1241
        p.BrickColor = GC
1242
        p.Reflectance = GR
1243
        p.Locked = true
1244
        p.TopSurface = 0
1245
        p.BottomSurface = 0
1246
        p.Parent = model
1247
        local m = Instance.new("SpecialMesh")
1248
        m.MeshType = "Wedge"
1249
        m.Scale = Vector3.new(0.2, 0.4, 0.6)
1250
        m.Parent = p
1251
        local w = Instance.new("Weld")
1252
        w.Part0 = p
1253
        w.Part1 = pt
1254
        w.C0 = CFrame.new(0, -0.24, -0.3) * CFrame.fromEulerAnglesXYZ(math.rad(270), 0, math.rad(180))
1255
        w.C1 = CFrame.new()
1256
        w.Parent = p--]]
1257
    else end
1258
    if Sight == 0 then
1259
        local p = Instance.new("Part")
1260
        p.Name = "RearSight" 
1261
        p.CanCollide = false
1262
        p.formFactor = "Symmetric"
1263
        p.Size = Vector3.new(1, 1, 1)
1264
        p.BrickColor = MC
1265
        p.Reflectance = MR
1266
        p.Locked = true
1267
        p.TopSurface = 0
1268
        p.BottomSurface = 0
1269
        p.Parent = model
1270
        local m = Instance.new("CylinderMesh")
1271
        m.Scale = Vector3.new(0.2, 0.46, 0.2)
1272
        m.Parent = p
1273
        local w = Instance.new("Weld")
1274
        w.Part0 = p
1275
        w.Part1 = pm
1276
        w.C0 = CFrame.new(0, -0.06, -0.26) * CFrame.fromEulerAnglesXYZ(math.rad(100), 0, 0)
1277
        w.C1 = CFrame.new()
1278
        w.Parent = p
1279
        if Reciever == 1 then
1280
            local p = Instance.new("Part")
1281
            p.Name = "Frontsight"
1282
            p.formFactor = "Symmetric"
1283
            p.Size = Vector3.new(1, 1, 1)
1284
            p.BrickColor = DC
1285
            p.Reflectance = MR
1286
            p.CanCollide = false
1287
            p.Locked = true
1288
            p.TopSurface = 0
1289
            p.BottomSurface = 0
1290
            p.Parent = model
1291
            local m = Instance.new("BlockMesh")
1292
            m.Scale = Vector3.new(0.08, 0.1, 0.3)
1293
            m.Parent = p
1294
            local w = Instance.new("Weld")
1295
            w.Part0 = p
1296
            w.Part1 = pm
1297
            w.C0 = CFrame.new(0, 1.3, 0.1)
1298
            w.C1 = CFrame.new()
1299
            w.Parent = p	
1300
            local p = Instance.new("Part")
1301
            p.Name = "Frontsight"
1302
            p.formFactor = "Symmetric"
1303
            p.Size = Vector3.new(1, 1, 1)
1304
            p.BrickColor = DC
1305
            p.Reflectance = MR
1306
            p.CanCollide = false
1307
            p.Locked = true
1308
            p.TopSurface = 0
1309
            p.BottomSurface = 0
1310
            p.Parent = model
1311
            local m = Instance.new("CylinderMesh")
1312
            m.Scale = Vector3.new(0.1, 0.1, 0.1)
1313
            m.Parent = p
1314
            local w = Instance.new("Weld")
1315
            w.Part0 = p
1316
            w.Part1 = pm
1317
            w.C0 = CFrame.new(0, 1.3, 0.28)
1318
            w.C1 = CFrame.new()
1319
            w.Parent = p
1320
        else end
1321
    elseif Sight == 1 then
1322
        local p = Instance.new("Part") -------- RDS Attachment
1323
        p.Name = "Ring"
1324
        p.formFactor = "Symmetric"
1325
        p.Size = Vector3.new(1, 1, 1)
1326
        p.BrickColor = MC
1327
        p.Reflectance = MR
1328
        p.CanCollide = false
1329
        p.Locked = true
1330
        p.TopSurface = 0
1331
        p.BottomSurface = 0
1332
        p.Parent = model	
1333
        local m = Instance.new("SpecialMesh")
1334
        m.MeshType = "FileMesh"
1335
        m.MeshId = "http://www.roblox.com/asset/?id=3270017"
1336
        m.Scale = Vector3.new(0.25, 0.25, 0.8)
1337
        m.Parent = p
1338
        local w = Instance.new("Weld")
1339
        w.Part0 = p
1340
        w.Part1 = pm
1341
        w.C0 = CFrame.new(0, -0.25, 0.34) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, 0)
1342
        w.C1 = CFrame.new()
1343
        w.Parent = p
1344
        local p = Instance.new("Part")
1345
        p.Name = "SightBottom"
1346
        p.CanCollide = false
1347
        p.formFactor = "Symmetric"
1348
        p.Size = Vector3.new(1, 1, 1)
1349
        p.BrickColor = MC
1350
        p.Reflectance = MR
1351
        p.Locked = true
1352
        p.TopSurface = 0
1353
        p.BottomSurface = 0
1354
        p.Parent = model
1355
        local m = Instance.new("BlockMesh")
1356
        m.Scale = Vector3.new(0.25, 0.4, 0.18)
1357
        m.Parent = p
1358
        local w = Instance.new("Weld")
1359
        w.Part0 = p
1360
        w.Part1 = pm
1361
        w.C0 = CFrame.new(0, 0.2, 0.1)
1362
        w.C1 = CFrame.new()
1363
        w.Parent = p
1364
        local p = Instance.new("Part")
1365
        p.Name = "Image"
1366
        p.CanCollide = false
1367
        p.formFactor = "Symmetric"
1368
        p.Size = Vector3.new(1, 1, 1)
1369
        p.BrickColor = MC
1370
        p.Transparency = 1
1371
        p.Locked = true
1372
        p.TopSurface = 0
1373
        p.BottomSurface = 0
1374
        p.Parent = model
1375
        local d = Instance.new("Decal")
1376
        d.Face = "Top"
1377
        d.Texture = "http://www.roblox.com/asset/?id=29712167"
1378
        d.Parent = p
1379
        local m = Instance.new("BlockMesh")
1380
        m.Scale = Vector3.new(0.1, 0.001, 0.1)
1381
        m.Parent = p
1382
        local w = Instance.new("Weld")
1383
        w.Part0 = p
1384
        w.Part1 = pm
1385
        w.C0 = CFrame.new(0, 0.34, 0.25)
1386
        w.C1 = CFrame.new()
1387
        w.Parent = p
1388
    elseif Sight == 2 then
1389
        local c = Instance.new("Part")
1390
        c.Name = "SightCube"
1391
        c.CanCollide = false
1392
        c.formFactor = "Symmetric"
1393
        c.Size = Vector3.new(1, 1, 1)
1394
        c.BrickColor = DC
1395
        c.Reflectance = MR
1396
        c.Transparency = 0.8
1397
        c.Locked = true
1398
        c.TopSurface = 0
1399
        c.BottomSurface = 0
1400
        c.Parent = model
1401
        local m = Instance.new("BlockMesh")
1402
        m.Scale = Vector3.new(0.25, 0.25, 0.25)
1403
        m.Parent = c
1404
        local w = Instance.new("Weld")
1405
        w.Part0 = c
1406
        w.Part1 = pm
1407
        w.C0 = CFrame.new(0, 0.1, 0.25)
1408
        w.C1 = CFrame.new()
1409
        w.Parent = c
1410
        local p = Instance.new("Part")
1411
        p.Name = "SightBottom"
1412
        p.CanCollide = false
1413
        p.formFactor = "Symmetric"
1414
        p.Size = Vector3.new(1, 1, 1)
1415
        p.BrickColor = DC
1416
        p.Reflectance = MR
1417
        p.Locked = true
1418
        p.TopSurface = 0
1419
        p.BottomSurface = 0
1420
        p.Parent = model
1421
        local m = Instance.new("BlockMesh")
1422
        m.Scale = Vector3.new(0.2, 0.5, 0.18)
1423
        m.Parent = p
1424
        local w = Instance.new("Weld")
1425
        w.Part0 = p
1426
        w.Part1 = c
1427
        w.C0 = CFrame.new(0, 0.125, -0.12)
1428
        w.C1 = CFrame.new()
1429
        w.Parent = p		
1430
        local p = Instance.new("Part")
1431
        p.Name = "Image"
1432
        p.CanCollide = false
1433
        p.formFactor = "Symmetric"
1434
        p.Size = Vector3.new(1, 1, 1)
1435
        p.BrickColor = MC
1436
        p.Transparency = 1
1437
        p.Locked = true
1438
        p.TopSurface = 0
1439
        p.BottomSurface = 0
1440
        p.Parent = model
1441
        local d = Instance.new("Decal")
1442
        d.Face = "Top"
1443
        d.Texture = "http://www.roblox.com/asset/?id=29712167"
1444
        d.Parent = p
1445
        local m = Instance.new("BlockMesh")
1446
        m.Scale = Vector3.new(0.1, 0.001, 0.1)
1447
        m.Parent = p
1448
        local w = Instance.new("Weld")
1449
        w.Part0 = p
1450
        w.Part1 = c
1451
        w.C0 = CFrame.new(0, 0, 0)
1452
        w.C1 = CFrame.new()
1453
        w.Parent = p				
1454
        local p = Instance.new("Part")
1455
        p.Name = "SightBox"
1456
        p.CanCollide = false
1457
        p.formFactor = "Symmetric"
1458
        p.Size = Vector3.new(1, 1, 1)
1459
        p.BrickColor = DC
1460
        p.Reflectance = MR
1461
        p.Locked = true
1462
        p.TopSurface = 0
1463
        p.BottomSurface = 0
1464
        p.Parent = model
1465
        local m = Instance.new("BlockMesh")
1466
        m.Scale = Vector3.new(0.05, 0.25, 0.25)
1467
        m.Offset = Vector3.new(0.1, 0, 0)
1468
        m.Parent = p
1469
        local w = Instance.new("Weld")
1470
        w.Part0 = p
1471
        w.Part1 = c
1472
        w.C0 = CFrame.new(0, 0, 0)
1473
        w.C1 = CFrame.new()
1474
        w.Parent = p
1475
        local p = Instance.new("Part")
1476
        p.Name = "SightBox"
1477
        p.CanCollide = false
1478
        p.formFactor = "Symmetric"
1479
        p.Size = Vector3.new(1, 1, 1)
1480
        p.BrickColor = DC
1481
        p.Reflectance = MR
1482
        p.Locked = true
1483
        p.TopSurface = 0
1484
        p.BottomSurface = 0
1485
        p.Parent = model
1486
        local m = Instance.new("BlockMesh")
1487
        m.Scale = Vector3.new(0.05, 0.25, 0.25)
1488
        m.Offset = Vector3.new(-0.1, 0, 0)
1489
        m.Parent = p
1490
        local w = Instance.new("Weld")
1491
        w.Part0 = p
1492
        w.Part1 = c
1493
        w.C0 = CFrame.new(0, 0, 0)
1494
        w.C1 = CFrame.new()
1495
        w.Parent = p
1496
        local p = Instance.new("Part")
1497
        p.Name = "SightBox"
1498
        p.CanCollide = false
1499
        p.formFactor = "Symmetric"
1500
        p.Size = Vector3.new(1, 1, 1)
1501
        p.BrickColor = DC
1502
        p.Reflectance = MR
1503
        p.Locked = true
1504
        p.TopSurface = 0
1505
        p.BottomSurface = 0
1506
        p.Parent = model
1507
        local m = Instance.new("BlockMesh")
1508
        m.Scale = Vector3.new(0.25, 0.25, 0.05)
1509
        m.Offset = Vector3.new(0, 0, -0.1)
1510
        m.Parent = p
1511
        local w = Instance.new("Weld")
1512
        w.Part0 = p
1513
        w.Part1 = c
1514
        w.C0 = CFrame.new(0, 0, 0)
1515
        w.C1 = CFrame.new()
1516
        w.Parent = p
1517
        local p = Instance.new("Part")
1518
        p.Name = "SightBox"
1519
        p.CanCollide = false
1520
        p.formFactor = "Symmetric"
1521
        p.Size = Vector3.new(1, 1, 1)
1522
        p.BrickColor = DC
1523
        p.Reflectance = MR
1524
        p.Locked = true
1525
        p.TopSurface = 0
1526
        p.BottomSurface = 0
1527
        p.Parent = model
1528
        local m = Instance.new("BlockMesh")
1529
        m.Scale = Vector3.new(0.25, 0.25, 0.05)
1530
        m.Offset = Vector3.new(0, 0, 0.1)
1531
        m.Parent = p
1532
        local w = Instance.new("Weld")
1533
        w.Part0 = p
1534
        w.Part1 = c
1535
        w.C0 = CFrame.new(0, 0, 0)
1536
        w.C1 = CFrame.new()
1537
        w.Parent = p
1538
    elseif Sight == 3 then
1539
        local l = Instance.new("Part") -- Aimpoint Scope
1540
        l.Name = "SightBottom"
1541
        l.CanCollide = false
1542
        l.formFactor = "Symmetric"
1543
        l.Size = Vector3.new(1, 1, 1)
1544
        l.BrickColor = DC
1545
        l.Reflectance = MR
1546
        l.Locked = true
1547
        l.TopSurface = 0
1548
        l.BottomSurface = 0
1549
        l.Parent = model
1550
        local m = Instance.new("BlockMesh")
1551
        m.Scale = Vector3.new(0.2, 0.4, 0.18)
1552
        m.Parent = l
1553
        local w = Instance.new("Weld")
1554
        w.Part0 = l
1555
        w.Part1 = pm
1556
        w.C0 = CFrame.new(0, 0.26, 0.13)
1557
        w.C1 = CFrame.new()
1558
        w.Parent = l
1559
        canZoom = true
1560
        local p = Instance.new("Part")
1561
        p.Name = "Scope"
1562
        p.formFactor = "Symmetric"
1563
        p.Size = Vector3.new(1, 1, 1)
1564
        p.BrickColor = MC
1565
        p.Reflectance = MR
1566
        p.CanCollide = false
1567
        p.Locked = true
1568
        p.TopSurface = 0
1569
        p.BottomSurface = 0
1570
        p.Parent = model	
1571
        local m = Instance.new("CylinderMesh")
1572
        m.Scale = Vector3.new(0.28, 0.5, 0.28)
1573
        m.Parent = p
1574
        local w = Instance.new("Weld")
1575
        w.Part0 = p
1576
        w.Part1 = l
1577
        w.C0 = CFrame.new(0, 0, 0.16)
1578
        w.C1 = CFrame.new()
1579
        w.Parent = p
1580
        local p = Instance.new("Part")
1581
        p.Name = "ScopeInt"
1582
        p.formFactor = "Symmetric"
1583
        p.Size = Vector3.new(1, 1, 1)
1584
        p.BrickColor = BrickColor.new("White")
1585
        p.Reflectance = 0.3
1586
        p.CanCollide = false
1587
        p.Locked = true
1588
        p.TopSurface = 0
1589
        p.BottomSurface = 0
1590
        p.Parent = model	
1591
        local m = Instance.new("CylinderMesh")
1592
        m.Scale = Vector3.new(0.26, 0.604, 0.26)
1593
        m.Parent = p
1594
        local w = Instance.new("Weld")
1595
        w.Part0 = p
1596
        w.Part1 = l
1597
        w.C0 = CFrame.new(0, 0, 0.16)
1598
        w.C1 = CFrame.new()
1599
        w.Parent = p		
1600
        local p = Instance.new("Part")
1601
        p.Name = "Scope"
1602
        p.formFactor = "Symmetric"
1603
        p.Size = Vector3.new(1, 1, 1)
1604
        p.BrickColor = MC
1605
        p.Reflectance = MR
1606
        p.CanCollide = false
1607
        p.Locked = true
1608
        p.TopSurface = 0
1609
        p.BottomSurface = 0
1610
        p.Parent = model	
1611
        local m = Instance.new("CylinderMesh")
1612
        m.Scale = Vector3.new(0.3, 0.1, 0.3)
1613
        m.Parent = p
1614
        local w = Instance.new("Weld")
1615
        w.Part0 = p
1616
        w.Part1 = l
1617
        w.C0 = CFrame.new(0, -0.25, 0.16)
1618
        w.C1 = CFrame.new()
1619
        w.Parent = p
1620
        local p = Instance.new("Part")
1621
        p.Name = "Scope"
1622
        p.formFactor = "Symmetric"
1623
        p.Size = Vector3.new(1, 1, 1)
1624
        p.BrickColor = MC
1625
        p.Reflectance = MR
1626
        p.CanCollide = false
1627
        p.Locked = true
1628
        p.TopSurface = 0
1629
        p.BottomSurface = 0
1630
        p.Parent = model	
1631
        local m = Instance.new("CylinderMesh")
1632
        m.Scale = Vector3.new(0.3, 0.1, 0.3)
1633
        m.Parent = p
1634
        local w = Instance.new("Weld")
1635
        w.Part0 = p
1636
        w.Part1 = l
1637
        w.C0 = CFrame.new(0, 0.25, 0.16)
1638
        w.C1 = CFrame.new()
1639
        w.Parent = p				
1640
        local p = Instance.new("Part")
1641
        p.Name = "Scope"
1642
        p.formFactor = "Symmetric"
1643
        p.Size = Vector3.new(1, 1, 1)
1644
        p.BrickColor = MC
1645
        p.Reflectance = MR
1646
        p.CanCollide = false
1647
        p.Locked = true
1648
        p.TopSurface = 0
1649
        p.BottomSurface = 0
1650
        p.Parent = model	
1651
        local m = Instance.new("CylinderMesh")
1652
        m.Scale = Vector3.new(0.12, 0.5, 0.12)
1653
        m.Parent = p
1654
        local w = Instance.new("Weld")
1655
        w.Part0 = p
1656
        w.Part1 = l
1657
        w.C0 = CFrame.new(-0.12, 0, 0.24)
1658
        w.C1 = CFrame.new()
1659
        w.Parent = p
1660
        local p = Instance.new("Part")
1661
        p.Name = "Scope"
1662
        p.formFactor = "Symmetric"
1663
        p.Size = Vector3.new(1, 1, 1)
1664
        p.BrickColor = MC
1665
        p.Reflectance = MR
1666
        p.CanCollide = false
1667
        p.Locked = true
1668
        p.TopSurface = 0
1669
        p.BottomSurface = 0
1670
        p.Parent = model	
1671
        local m = Instance.new("CylinderMesh")
1672
        m.Scale = Vector3.new(0.13, 0.1, 0.13)
1673
        m.Parent = p
1674
        local w = Instance.new("Weld")
1675
        w.Part0 = p
1676
        w.Part1 = l
1677
        w.C0 = CFrame.new(-0.12, 0.25, 0.24)
1678
        w.C1 = CFrame.new()
1679
        w.Parent = p
1680
        local p = Instance.new("Part")
1681
        p.Name = "Scope"
1682
        p.formFactor = "Symmetric"
1683
        p.Size = Vector3.new(1, 1, 1)
1684
        p.BrickColor = MC
1685
        p.Reflectance = MR
1686
        p.CanCollide = false
1687
        p.Locked = true
1688
        p.TopSurface = 0
1689
        p.BottomSurface = 0
1690
        p.Parent = model	
1691
        local m = Instance.new("CylinderMesh")
1692
        m.Scale = Vector3.new(0.13, 0.1, 0.13)
1693
        m.Parent = p
1694
        local w = Instance.new("Weld")
1695
        w.Part0 = p
1696
        w.Part1 = l
1697
        w.C0 = CFrame.new(-0.12, -0.25, 0.24)
1698
        w.C1 = CFrame.new()
1699
        w.Parent = p								
1700
    else end
1701
    if Grip == true then
1702
        local p = Instance.new("Part") --------------- ForeGrip Attachment
1703
        p.Name = "ForeGrip"
1704
        p.formFactor = "Symmetric"
1705
        p.Size = Vector3.new(1, 1, 1)
1706
        p.BrickColor = BrickColor.new("Black")
1707
        p.CanCollide = false
1708
        p.Locked = true
1709
        p.TopSurface = 0
1710
        p.BottomSurface = 0
1711
        p.Parent = model
1712
        local m = Instance.new("CylinderMesh")
1713
        m.Scale = Vector3.new(0.25, 0.6, 0.25)
1714
        m.Parent = p
1715
        local w = Instance.new("Weld")
1716
        w.Part0 = p
1717
        w.Part1 = pm
1718
        w.C0 = CFrame.new(0, 0.4, 1.1) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, 0)
1719
        w.C1 = CFrame.new()
1720
        w.Parent = p
1721
    else end
1722
    if Attachment == true then
1723
        local p = Instance.new("Part")
1724
        p.Name = "LaserPod"
1725
        p.formFactor = "Symmetric"
1726
        p.Size = Vector3.new(1, 1, 1)
1727
        p.CanCollide = false
1728
        p.BrickColor = DC
1729
        p.Reflectance = MR
1730
        p.Locked = true
1731
        p.TopSurface = 0
1732
        p.BottomSurface = 0
1733
        p.Parent = model
1734
        local m = Instance.new("BlockMesh")
1735
        m.Scale = Vector3.new(0.1, 0.35, 0.25)
1736
        m.Parent = p
1737
        local w = Instance.new("Weld")
1738
        w.Part0 = p
1739
        w.Part1 = pm
1740
        w.C0 = CFrame.new(-0.22, 1.1, -0.04)
1741
        w.C1 = CFrame.new()
1742
        w.Parent = p--]]
1743
        local p = Instance.new("Part")
1744
        p.Name = "LaserPod"
1745
        p.formFactor = "Symmetric"
1746
        p.Size = Vector3.new(1, 1, 1)
1747
        p.CanCollide = false
1748
        p.BrickColor = DC
1749
        p.Reflectance = MR
1750
        p.Locked = true
1751
        p.TopSurface = 0
1752
        p.BottomSurface = 0
1753
        p.Parent = model
1754
        local m = Instance.new("CylinderMesh")
1755
        m.Scale = Vector3.new(0.12, 0.35, 0.12)
1756
        m.Parent = p
1757
        local w = Instance.new("Weld")
1758
        w.Part0 = p
1759
        w.Part1 = pm
1760
        w.C0 = CFrame.new(-0.22, 1.1, 0.1)
1761
        w.C1 = CFrame.new()
1762
        w.Parent = p
1763
        local p = Instance.new("Part")
1764
        p.Name = "Laser"
1765
        p.CanCollide = false
1766
        p.formFactor = "Symmetric"
1767
        p.Size = Vector3.new(1, 1, 1)
1768
        p.BrickColor = BrickColor.new("Bright red")
1769
        p.Locked = true
1770
        if selected == true and Mode == 1 then
1771
            p.Transparency = 0.4
1772
        else
1773
            p.Transparency = 1
1774
        end
1775
        p.TopSurface = 0
1776
        p.BottomSurface = 0
1777
        p.Parent = model
1778
        local m = Instance.new("BlockMesh")
1779
        m.Scale = Vector3.new(0.01, 500, 0.01)
1780
        m.Offset = Vector3.new(0, -250, 0)
1781
        m.Parent = p
1782
        local w = Instance.new("Weld")
1783
        w.Part0 = p
1784
        w.Part1 = pm
1785
        w.C0 = CFrame.new(-0.22, 1.1, 0.1)
1786
        w.C1 = CFrame.new()
1787
        w.Parent = p	
1788
        local p = Instance.new("Part")
1789
        p.Name = "LaserPod"
1790
        p.formFactor = "Symmetric"
1791
        p.Size = Vector3.new(1, 1, 1)
1792
        p.CanCollide = false
1793
        p.BrickColor = DC
1794
        p.Reflectance = MR
1795
        p.Locked = true
1796
        p.TopSurface = 0
1797
        p.BottomSurface = 0
1798
        p.Parent = model
1799
        local m = Instance.new("CylinderMesh")
1800
        m.Scale = Vector3.new(0.12, 0.35, 0.12)
1801
        m.Parent = p
1802
        local w = Instance.new("Weld")
1803
        w.Part0 = p
1804
        w.Part1 = pm
1805
        w.C0 = CFrame.new(-0.22, 1.1, -0.14)
1806
        w.C1 = CFrame.new()
1807
        w.Parent = p
1808
        local p = Instance.new("Part")
1809
        p.Name = "LightAttach"
1810
        p.formFactor = "Symmetric"
1811
        p.Size = Vector3.new(1, 1, 1)
1812
        p.CanCollide = false
1813
        p.BrickColor = DC
1814
        p.Reflectance = MR
1815
        p.Locked = true
1816
        p.TopSurface = 0
1817
        p.BottomSurface = 0
1818
        p.Parent = model
1819
        local m = Instance.new("CylinderMesh")
1820
        m.Scale = Vector3.new(0.2, 0.35, 0.2)
1821
        m.Parent = p
1822
        local w = Instance.new("Weld")
1823
        w.Part0 = p
1824
        w.Part1 = pm
1825
        w.C0 = CFrame.new(0.25, 1.1, -0.04)
1826
        w.C1 = CFrame.new()
1827
        w.Parent = p
1828
        local p = Instance.new("Part")
1829
        p.Name = "Light"
1830
        p.CanCollide = false
1831
        p.formFactor = "Custom"
1832
        p.Size = Vector3.new(0.2, 0.2, 0.2)
1833
        p.BrickColor = BrickColor.new("Bright yellow")
1834
        p.Locked = true
1835
        if selected == true and Mode == 2 and dual == false then
1836
            p.Transparency = 0.5
1837
        else
1838
            p.Transparency = 1
1839
        end
1840
        p.TopSurface = 0
1841
        p.BottomSurface = 0
1842
        p.Parent = model
1843
        local m = Instance.new("SpecialMesh")
1844
        m.MeshType = "FileMesh"
1845
        m.Scale = Vector3.new(2, 50, 2)
1846
        m.MeshId = "http://www.roblox.com/asset/?id=1033714"
1847
        m.Parent = p
1848
        local w = Instance.new("Weld")
1849
        w.Part0 = p
1850
        w.Part1 = pm
1851
        w.C0 = CFrame.new(0.25, 20, -0.04)
1852
        w.C1 = CFrame.new()
1853
        w.Parent = p			
1854
    else end	
1855
    return model
1856
end
1857
1858
1859
function removeParts(format)
1860
    if format == "RightHand" then
1861
        pcall(function() Player.Character[Name]:Remove() end)
1862
    elseif format == "LeftHand" then
1863
        pcall(function() Player.Character[Name.. " (Left)"]:Remove() end)
1864
    elseif format == "RightHolster" then
1865
        pcall(function() Player.Character[Name.. " (Holstered)"]:Remove() end)
1866
    elseif format == "LeftHolster" then
1867
        pcall(function() Player.Character[Name.. " (Holstered, Left)"]:Remove() end)
1868
    end
1869
end
1870
1871
1872
function SetAngle(Joint, Angle, Character)
1873
    if Character == nil then return false end
1874
    local Joints = {
1875
        Character.Torso:FindFirstChild("Right Shoulder 2"),
1876
        Character.Torso:FindFirstChild("Left Shoulder 2"),
1877
        Character.Torso:FindFirstChild("Right Hip 2"),
1878
        Character.Torso:FindFirstChild("Left Hip 2")
1879
    }
1880
    if Joints[Joint] == nil then return false end
1881
    if Joint == 1 or Joint == 3 then
1882
        Joints[Joint].DesiredAngle = Angle
1883
    end
1884
    if Joint == 2 or Joint == 4 then
1885
        Joints[Joint].DesiredAngle = -Angle
1886
    end
1887
end
1888
1889
1890
function ForceAngle(Joint, Angle, Character)
1891
    if Character == nil then return false end
1892
    local Joints = {
1893
        Character.Torso:FindFirstChild("Right Shoulder 2"),
1894
        Character.Torso:FindFirstChild("Left Shoulder 2"),
1895
        Character.Torso:FindFirstChild("Right Hip 2"),
1896
        Character.Torso:FindFirstChild("Left Hip 2")
1897
    }
1898
    if Joints[Joint] == nil then return false end
1899
    if Joint == 1 or Joint == 3 then
1900
        Joints[Joint].DesiredAngle = Angle
1901
        Joints[Joint].CurrentAngle = Angle
1902
    end
1903
    if Joint == 2 or Joint == 4 then
1904
        Joints[Joint].DesiredAngle = -Angle
1905
        Joints[Joint].CurrentAngle = -Angle
1906
    end
1907
end
1908
1909
1910
function SetSpeed(Joint, Speed, Character)
1911
    if Character == nil then return false end
1912
    local Joints = {
1913
        Character.Torso:FindFirstChild("Right Shoulder 2"),
1914
        Character.Torso:FindFirstChild("Left Shoulder 2"),
1915
        Character.Torso:FindFirstChild("Right Hip 2"),
1916
        Character.Torso:FindFirstChild("Left Hip 2")
1917
    }
1918
    if Joints[Joint] == nil then return false end
1919
    Joints[Joint].MaxVelocity = Speed
1920
end
1921
1922
1923
function DisableLimb(Limb, Character)
1924
    if Character == nil then return false end
1925
    if Character:FindFirstChild("Torso") == nil then return false end
1926
    local Joints = {
1927
        Character.Torso:FindFirstChild("Right Shoulder"),
1928
        Character.Torso:FindFirstChild("Left Shoulder"),
1929
        Character.Torso:FindFirstChild("Right Hip"),
1930
        Character.Torso:FindFirstChild("Left Hip")
1931
    }
1932
    local Limbs = {
1933
        Character:FindFirstChild("Right Arm"),
1934
        Character:FindFirstChild("Left Arm"),
1935
        Character:FindFirstChild("Right Leg"),
1936
        Character:FindFirstChild("Left Leg")
1937
    }
1938
    if Joints[Limb] == nil then return false end
1939
    if Limbs[Limb] == nil then return false end
1940
    local Joint = Instance.new("Motor")
1941
    Joint.Parent = Character.Torso
1942
    Joint.Part0 = Character.Torso
1943
    Joint.Part1 = Limbs[Limb]
1944
    if Limb == 1 then
1945
        Joint.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1946
        Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1947
        Joint.Name = "Right Shoulder 2"
1948
    elseif Limb == 2 then
1949
        Joint.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1950
        Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1951
        Joint.Name = "Left Shoulder 2"
1952
    elseif Limb == 3 then
1953
        Joint.C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1954
        Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1955
        Joint.Name = "Right Hip 2"
1956
    elseif Limb == 4 then
1957
        Joint.C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1958
        Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1959
        Joint.Name = "Left Hip 2"
1960
    end
1961
    Joint.MaxVelocity = Joints[Limb].MaxVelocity
1962
    Joint.CurrentAngle = Joints[Limb].CurrentAngle
1963
    Joint.DesiredAngle = Joints[Limb].DesiredAngle
1964
    Joints[Limb]:Remove()
1965
end
1966
1967
1968
function ResetLimbCFrame(Limb, Character)
1969
    if Character == nil then return false end
1970
    if Character.Parent == nil then return false end
1971
    if Character:FindFirstChild("Torso") == nil then return false end
1972
    local Joints = {
1973
        Character.Torso:FindFirstChild("Right Shoulder 2"),
1974
        Character.Torso:FindFirstChild("Left Shoulder 2"),
1975
        Character.Torso:FindFirstChild("Right Hip 2"),
1976
        Character.Torso:FindFirstChild("Left Hip 2")
1977
    }
1978
    local Limbs = {
1979
        Character:FindFirstChild("Right Arm"),
1980
        Character:FindFirstChild("Left Arm"),
1981
        Character:FindFirstChild("Right Leg"),
1982
        Character:FindFirstChild("Left Leg")
1983
    }
1984
    if Joints[Limb] == nil then return false end
1985
    if Limbs[Limb] == nil then return false end
1986
    if Limb == 1 then
1987
        Joints[Limb].C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1988
        Joints[Limb].C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1989
    elseif Limb == 2 then
1990
        Joints[Limb].C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1991
        Joints[Limb].C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1992
    elseif Limb == 3 then
1993
        Joints[Limb].C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1994
        Joints[Limb].C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
1995
    elseif Limb == 4 then
1996
        Joints[Limb].C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1997
        Joints[Limb].C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
1998
    end
1999
end
2000
2001
2002
function EnableLimb(Limb, Character)
2003
    if Character == nil then return false end
2004
    if Character:FindFirstChild("Torso") == nil then return false end
2005
    local Joints = {
2006
        Character.Torso:FindFirstChild("Right Shoulder 2"),
2007
        Character.Torso:FindFirstChild("Left Shoulder 2"),
2008
        Character.Torso:FindFirstChild("Right Hip 2"),
2009
        Character.Torso:FindFirstChild("Left Hip 2")
2010
    }
2011
    local Limbs = {
2012
        Character:FindFirstChild("Right Arm"),
2013
        Character:FindFirstChild("Left Arm"),
2014
        Character:FindFirstChild("Right Leg"),
2015
        Character:FindFirstChild("Left Leg")
2016
    }
2017
    if Joints[Limb] == nil then return false end
2018
    if Limbs[Limb] == nil then return false end
2019
    if Limb == 1 then
2020
        Joints[Limb].Name = "Right Shoulder"
2021
    elseif Limb == 2 then
2022
        Joints[Limb].Name = "Left Shoulder"
2023
    elseif Limb == 3 then
2024
        Joints[Limb].Name = "Right Hip"
2025
    elseif Limb == 4 then
2026
        Joints[Limb].Name = "Left Hip"
2027
    end
2028
    Animate = Character:FindFirstChild("Animate")
2029
    if Animate == nil then return false end
2030
    Animate = Animate:Clone()
2031
    Character.Animate:Remove()
2032
    Animate.Parent = Character
2033
end
2034
2035
2036
function playAnimation(format, mouse)
2037
    if format == "equip" then
2038
        Player.Character.Humanoid.WalkSpeed = WSPenalty
2039
        Player.Character[Name.. " (Holstered)"].Handle.Weld:Remove()
2040
        local w = Instance.new("Weld")
2041
        w.Part0 = Player.Character[Name.. " (Holstered)"].Handle
2042
        w.Part1 = Player.Character:FindFirstChild("Right Arm")
2043
        w.C0 = CFrame.new(0, 1.2, 0.7)
2044
        w.C1 = CFrame.new()
2045
        w.Parent = Player.Character[Name.. " (Holstered)"].Handle
2046
        for i = 0.01, 1, 0.1 do
2047
            if Player.Character:FindFirstChild("Torso") ~= nil then
2048
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2049
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2050
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new((-0.5 * i) + (1.5 * (1 - i)), 1.2 * i, 0.8 * i) * CFrame.fromEulerAnglesXYZ(math.rad(300 + ((1 - i) * 50)), math.rad(10), math.rad(-90) * i)
2051
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2052
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new((-0.9 * i) + (-1.5 * (1 - i)), -0.35 * i, 0.51 * i) * CFrame.fromEulerAnglesXYZ(math.rad(-90 * i), math.rad(-5 * i), 0)
2053
                    wait()
2054
                else return false end
2055
            else return false end
2056
        end
2057
        return playAnimation("hold")
2058
    end
2059
    if format == "unequip" then
2060
        Mode = 0
2061
        if Attachment == true then
2062
            Player.Character[Name].Laser.Transparency = 1
2063
            Player.Character[Name].Light.Transparency = 1			
2064
        end	
2065
        Player.Character.Humanoid.WalkSpeed = 16	
2066
        for i = 1, 0.01, -0.1 do
2067
            if Player.Character:FindFirstChild("Torso") ~= nil then
2068
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2069
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2070
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new((-0.5 * i) + (1.5 * (1 - i)), 1.2 * i, 0.8 * i) * CFrame.fromEulerAnglesXYZ(math.rad(300 + ((1 - i) * 50)), math.rad(10), math.rad(-90) * i)
2071
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2072
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new((-0.9 * i) + (-1.5 * (1 - i)), -0.35 * i, 0.51 * i) * CFrame.fromEulerAnglesXYZ(math.rad(-90 * i), math.rad(-5 * i), 0)
2073
                    wait()
2074
                else return false end
2075
            else return false end
2076
        end
2077
        return true
2078
    end
2079
    if format == "hold" then
2080
        if Player.Character:FindFirstChild("Torso") ~= nil then
2081
            if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2082
                Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2083
                Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10), math.rad(-90))
2084
                Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2085
                Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), 0)
2086
            else return false end
2087
        else return false end
2088
    end
2089
    if format == "reload" then
2090
        for i = 5, 0, -1 do
2091
            if Player.Character:FindFirstChild("Torso") ~= nil then
2092
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2093
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2094
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3, 0.75, 0.6) * CFrame.fromEulerAnglesXYZ(math.rad(315 + (i * 1.5)), math.rad(i * 4), math.rad(-90))
2095
                    wait()
2096
                else return false end
2097
            else return false end
2098
        end							
2099
        coroutine.resume(coroutine.create(function()
2100
            for i = 0, 25, 5 do
2101
                if Player.Character:FindFirstChild("Torso") ~= nil then
2102
                    if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2103
                        Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2104
                        Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 + i), math.rad(-5), 0)
2105
                        wait()
2106
                    else return false end
2107
                else return false end
2108
            end
2109
        end))
2110
        Player.Character[Name].Handle.Release:Play()
2111
        Player.Character[Name].Magazine.Transparency = 1
2112
        Player.Character[Name].MagPull1.Transparency = 1
2113
        Player.Character[Name].MagPull2.Transparency = 1	
2114
        local Mag = Instance.new("Model")
2115
        Mag.Name = "Spent Magazine"		
2116
        local source = Player.Character[Name]:FindFirstChild("Magazine")
2117
        if source == nil then return end
2118
        source = source:Clone()
2119
        source.CanCollide = true
2120
        source.Transparency = 0
2121
        source.Parent = Mag
2122
        coroutine.resume(coroutine.create(function() wait(4.5) for i = 0, 1, 0.1 do source.Transparency = i wait() end source:Remove() end))
2123
        for _, Part in pairs(Player.Character[Name]:GetChildren()) do
2124
            if Part.Name == "MagPull1" or Part.Name == "MagPull2" then
2125
                local new = Part:Clone()
2126
                new.Parent = Mag
2127
                new.Transparency = 0
2128
                new.CanCollide = true
2129
                local w = Instance.new("Weld", new)
2130
                w.Part0 = w.Parent
2131
                w.Part1 = source
2132
                w.C0 = Part.Weld.C0
2133
                w.C1 = Part.Weld.C1
2134
                coroutine.resume(coroutine.create(function() wait(4.5) for i = 0, 1, 0.1 do new.Transparency = i wait() end new:Remove() end))
2135
            else end
2136
        end
2137
        Mag.Parent = game.Workspace
2138
        for i = 0, 25, 5 do
2139
            if Player.Character:FindFirstChild("Torso") ~= nil then
2140
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2141
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2142
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 + (i / 60), 1.2 - (i / 20), 0.8 + (i / 35)) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 + -i * 3.5), math.rad(-90))
2143
                    wait()
2144
                else return false end
2145
            else return false end
2146
        end
2147
        magazineNew = Player.Character[Name].Magazine:Clone()
2148
        magazineNew.Name = "New Magazine" 
2149
        magazineNew.Transparency = 0
2150
        magazineNew.Parent = Player.Character[Name]
2151
        local w = Instance.new("Weld")
2152
        w.Part0 = magazineNew
2153
        w.Part1 = Player.Character:FindFirstChild("Left Arm")
2154
        w.C0 = CFrame.new(0, 1.1, 0)
2155
        w.C1 = CFrame.new() * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
2156
        w.Parent = magazineNew
2157
        wait(0.2)
2158
        for i = 25, 0, -5 do
2159
            if Player.Character:FindFirstChild("Torso") ~= nil then
2160
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2161
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2162
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3 + ((i + 10) / 60), 1.2 - ((i + 10) / 20), 0.8 + (i / 35)) * CFrame.fromEulerAnglesXYZ(math.rad(300 - (i - 10)), math.rad(10 + -i * 3.5), math.rad(-90))
2163
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2164
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9 + ((25 - i) / 30), -0.35, 0.51 + ((25 - i) / 25)) * CFrame.fromEulerAnglesXYZ(math.rad(-90 + i), math.rad(-5), math.rad((25 * 2) - (i * 2)))
2165
                    wait()
2166
                else return false end
2167
            else return false end
2168
        end
2169
        Player.Character[Name].Magazine.Transparency = 0
2170
        Player.Character[Name].MagPull1.Transparency = 0
2171
        Player.Character[Name].MagPull2.Transparency = 0
2172
        CamShake(1, 30000)	
2173
        CamShake(1, -30000)													
2174
        Player.Character[Name]["New Magazine"]:Remove()
2175
        wait(0.1)
2176
        if Player.Character:FindFirstChild("Torso") ~= nil then
2177
            if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2178
                Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2179
                Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10), math.rad(-90))
2180
                Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2181
                Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), 0)
2182
            else return false end
2183
        else return false end
2184
        Player.Character[Name].Handle.Reload:Play()	
2185
        Player.Character[Name].Handle.Jam:Play()				
2186
        wait(0.2)
2187
        if magazine.Value == 0 or Jammed == true then
2188
            playAnimation("charge")
2189
        end
2190
    end
2191
    if format == "charge" then
2192
        Player.Character[Name].Handle.Weld:Remove()
2193
        local w = Instance.new("Weld")
2194
        w.Part0 = Player.Character[Name].Handle
2195
        w.Part1 = Player.Character:FindFirstChild("Left Arm")
2196
        w.C0 = CFrame.new(-0.85, -0.3, 0.5) * CFrame.fromEulerAnglesXYZ(math.rad(15), math.rad(90), 0)
2197
        w.C1 = CFrame.new(0, 0.4, 0.6) * CFrame.fromEulerAnglesXYZ(math.rad(40), 0, 0)
2198
        w.Parent = Player.Character[Name].Handle
2199
        if Player.Character:FindFirstChild("Torso") ~= nil then
2200
            if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2201
                Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2202
                Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.4, 0.9, 0.6) * CFrame.fromEulerAnglesXYZ(math.rad(280), math.rad(-10), math.rad(-90))
2203
            else return false end
2204
        else return false end
2205
        wait(0.2)
2206
        Player.Character[Name].Handle.Equip:Play()
2207
        Player.Character[Name].CHandleC.Transparency = 1
2208
        Player.Character[Name].CHandleB.Transparency = 0
2209
        Player.Character[Name].CHandleB1.Transparency = 0	
2210
        Player.Character[Name].Bolt.Mesh.Offset = Vector3.new(0, 0.115, 0)
2211
        Player.Character[Name].Bolt.Mesh.Scale = Vector3.new(0.14, 0.1, 0.14)		
2212
        Player.Character[Name].DustCover.Mesh.Offset = Vector3.new(0, 0, 0.115)	
2213
        Jammed = false	
2214
        if magazine.Value ~= 0 then
2215
            makeShell(Player.Character[Name]:FindFirstChild("ShellOut"))	
2216
        else end					
2217
        for i = 0, 1, 0.25 do
2218
            if Player.Character:FindFirstChild("Torso") ~= nil then
2219
                if Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2220
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2221
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-1.2, 0 - (i / 1.5), 0.9) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), 0)
2222
                    wait()
2223
                else return false end
2224
            else return false end
2225
        end
2226
        wait(0.08)
2227
        Player.Character[Name].CHandleC.Transparency = 0
2228
        Player.Character[Name].CHandleB.Transparency = 1
2229
        Player.Character[Name].CHandleB1.Transparency = 1
2230
        Player.Character[Name].Bolt.Mesh.Offset = Vector3.new(0, 0, 0)
2231
        Player.Character[Name].Bolt.Mesh.Scale = Vector3.new(0.14, 0.3, 0.14)			
2232
        wait(0.02)
2233
        removeParts("RightHand")
2234
        makeParts("RightHand")	
2235
        Player.Character[Name].DustCover.Mesh.Offset = Vector3.new(0, 0, 0.115)			
2236
        playAnimation("hold")
2237
        return true
2238
    end
2239
    if format == "fire" then
2240
        Player.Character[Name].Bolt.Mesh.Offset = Vector3.new(0, 0.115, 0)
2241
        Player.Character[Name].Bolt.Mesh.Scale = Vector3.new(0.14, 0.1, 0.14)		
2242
        Player.Character[Name].DustCover.Mesh.Offset = Vector3.new(0, 0, 0.115)		
2243
        makeShell(Player.Character[Name]:FindFirstChild("ShellOut"))
2244
        if Player.Character[Name]:FindFirstChild("Handle") ~= nil then
2245
            if silenced then
2246
                Player.Character[Name].Handle.Fire2.Volume = math.random(8, 10) / 10
2247
                Player.Character[Name].Handle.Fire2.Pitch = math.random(1.8, 2)
2248
                Player.Character[Name].Handle.Fire2:Play()
2249
                CamShake(10, 40000)
2250
            else
2251
                Player.Character[Name].Handle.Fire.Volume = math.random(9, 10) / 10
2252
                Player.Character[Name].Handle.Fire.Pitch = math.random(1.6, 1.8)
2253
                Player.Character[Name].Handle.Fire:Play()
2254
                CamShake(10, 50000)
2255
            end
2256
        else return false end
2257
        if Player.Character[Name]:FindFirstChild("Muzzle") ~= nil then
2258
            if silenced == false then
2259
                coroutine.resume(coroutine.create(function() Player.Character[Name].DustCover.Smoke.Enabled = true Player.Character[Name].Muzzle.Smoke.Enabled = true Player.Character[Name].Muzzle.Fire.Enabled = true wait(0.1) Player.Character[Name].DustCover.Smoke.Enabled = false Player.Character[Name].Muzzle.Smoke.Enabled = false Player.Character[Name].Muzzle.Fire.Enabled = false end))
2260
            else end
2261
        else return false end
2262
        for i = 0, 6, 3 do
2263
            if Player.Character:FindFirstChild("Torso") ~= nil then
2264
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2265
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2266
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90))
2267
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2268
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0)
2269
                    wait()
2270
                else return false end
2271
            else return false end
2272
        end
2273
        if magazine.Value ~= 0 then
2274
            Player.Character[Name].Bolt.Mesh.Offset = Vector3.new(0, 0, 0)
2275
            Player.Character[Name].Bolt.Mesh.Scale = Vector3.new(0.14, 0.3, 0.14)				
2276
        elseif magazine.Value == 0 then
2277
            Player.Character[Name].Handle.Lock:Play()
2278
        end
2279
        if math.random(1, Reliability) == 1 then 
2280
            Jammed = true
2281
            Player.Character[Name].Handle.Jam:Play()			
2282
        end
2283
        for i = 6, 0, -3 do
2284
            if Player.Character:FindFirstChild("Torso") ~= nil then
2285
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2286
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2287
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.3, 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300), math.rad(10 + i), math.rad(-90))
2288
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2289
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.35, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90 - i), math.rad(-5), 0)
2290
                    wait()
2291
                else return false end
2292
            else return false end
2293
        end
2294
    end
2295
    if format == "silence" then
2296
        Player.Character[Name].Handle.Jam:Play()
2297
        if Player.Character:FindFirstChild("Torso") ~= nil then
2298
            if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2299
                Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2300
                Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-0.9, -0.6, 0.51) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), 0)
2301
            else return false end
2302
        else return false end		
2303
        for i = 0, 10, 1.5 do
2304
            if Player.Character:FindFirstChild("Torso") ~= nil then
2305
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then
2306
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2307
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 1.4 - (i / 25), 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
2308
                    wait()
2309
                end
2310
            end
2311
        end
2312
        for i = 10, 0, -1.5 do
2313
            if Player.Character:FindFirstChild("Torso") ~= nil then
2314
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then
2315
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2316
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.9, 1.4 - (i / 25), 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
2317
                    wait()
2318
                end
2319
            end
2320
        end
2321
        playAnimation("hold")
2322
        return
2323
    end
2324
    if format == "attachment" then
2325
        Player.Character[Name].Handle.Switch:Play()
2326
        for i = 0, 10, 5 do
2327
            if Player.Character:FindFirstChild("Torso") ~= nil then
2328
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then
2329
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2330
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90))
2331
                    wait()
2332
                end
2333
            end
2334
        end
2335
        for i = 10, 0, -5 do
2336
            if Player.Character:FindFirstChild("Torso") ~= nil then
2337
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil then
2338
                    Player.Character.Torso["Left Shoulder 2"].C0 = CFrame.new()
2339
                    Player.Character.Torso["Left Shoulder 2"].C1 = CFrame.new(-0.5 - (i / 25), 1.2, 0.8) * CFrame.fromEulerAnglesXYZ(math.rad(300 - i), math.rad(10 - i), math.rad(-90))
2340
                    wait()
2341
                end
2342
            end
2343
        end
2344
    end
2345
    if format == "switch" then
2346
        for i = 10, 0, -3 do
2347
            if Player.Character:FindFirstChild("Torso") ~= nil then
2348
                if Player.Character.Torso:FindFirstChild("Left Shoulder 2") ~= nil and Player.Character.Torso:FindFirstChild("Right Shoulder 2") ~= nil then
2349
                    Player.Character.Torso["Right Shoulder 2"].C0 = CFrame.new()
2350
                    Player.Character.Torso["Right Shoulder 2"].C1 =  CFrame.new(-1 + (i / 30), -0.35, 0.51 + (i / 25)) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-5), math.rad((25 * 2) - ((25 - i) * 2)))
2351
                    wait()
2352
                else return false end
2353
            else return false end
2354
        end	
2355
    end
2356
    return true
2357
end
2358
2359
2360
function CamShake(time, freq)
2361
    coroutine.resume(coroutine.create(function()
2362
        local cam = game:GetService("Workspace").CurrentCamera
2363
        local time = 10
2364
        local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0)
2365
        if math.random(1, 2) == 1 then seed = Vector3.new(-seed.x, seed.y, 0) end
2366
        if math.random(1, 2) == 1 then seed = Vector3.new(seed.x, -seed.y, 0) end
2367
        cam.CoordinateFrame = (CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(seed.x * time, seed.y * time, 0)) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
2368
        for i = 1, time do
2369
            cam.CoordinateFrame = (CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(-seed.x, -seed.y, 0)) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
2370
            wait()
2371
        end
2372
    end))
2373
end
2374
2375
2376
function makeShell(part)
2377
    if part == nil then return false end
2378
    local casing = Instance.new("Part")
2379
    casing.Name = "Shell"
2380
    casing.formFactor = "Custom"
2381
    casing.Size = Vector3.new(0.2, 0.25, 0.2)
2382
    casing.CFrame = CFrame.new(part.Position) * CFrame.fromEulerAnglesXYZ(math.rad(math.random(0, 360)), math.rad(math.random(0, 360)), math.rad(math.random(0, 360)))
2383
    casing.BrickColor = BrickColor.new("New Yeller")
2384
    local mesh = Instance.new("CylinderMesh")
2385
    mesh.Scale = Vector3.new(0.3, 1, 0.3)
2386
    mesh.Parent = casing
2387
    casing.Parent = game:GetService("Workspace")
2388
    casing:BreakJoints()
2389
    casing.Velocity = (part.CFrame.lookVector * 50) + Vector3.new(0, 10, 0)
2390
    coroutine.resume(coroutine.create(function() wait(4.5) for i = 0, 1, 0.1 do casing.Transparency = i wait() end casing:Remove() end))
2391
end
2392
2393
2394
function Weld(x, y)
2395
    local weld = Instance.new("Weld")
2396
    weld.Part0 = x
2397
    weld.Part1 = y
2398
    CJ = CFrame.new(x.Position)
2399
    C0 = x.CFrame:inverse() * CJ
2400
    C1 = y.CFrame:inverse() * CJ
2401
    weld.C0 = C0
2402
    weld.C1 = C1
2403
    weld.Parent = x
2404
end
2405
2406
2407
function tagHumanoid(humanoid)
2408
    local tag = Instance.new("ObjectValue")
2409
    tag.Name = "creator"
2410
    tag.Value = Player
2411
    tag.Parent = humanoid
2412
    local tag = Instance.new("StringValue")
2413
    tag.Name = "creatorType1"
2414
    tag.Value = Name
2415
    tag.Parent = humanoid
2416
    local tag = Instance.new("StringValue")
2417
    tag.Name = "creatorType2"
2418
    tag.Value = "shot"
2419
    tag.Parent = humanoid
2420
end
2421
2422
2423
function untagHumanoid(humanoid)
2424
    if humanoid ~= nil then
2425
        local tag = humanoid:FindFirstChild("creator")
2426
        if tag ~= nil then
2427
            tag:Remove()
2428
        end
2429
        local tag = humanoid:FindFirstChild("creatorType1")
2430
        if tag ~= nil then
2431
            tag:Remove()
2432
        end
2433
        local tag = humanoid:FindFirstChild("creatorType2")
2434
        if tag ~= nil then
2435
            tag:Remove()
2436
        end
2437
    end
2438
end
2439
2440
2441
function fire(startPoint, endPoint, hit)
2442
    local trail = Instance.new("Part")
2443
    trail.Name = "Bullet Trail"
2444
    trail.BrickColor = BrickColor.new("Dark stone grey")
2445
    trail.TopSurface = 0
2446
    trail.BottomSurface = 0
2447
    trail.formFactor = 0
2448
    trail.Size = Vector3.new(1, 1, 1)
2449
    trail.Transparency = 0.5
2450
    trail.Anchored = true
2451
    trail.CanCollide = false
2452
    trail.CFrame = CFrame.new((startPoint + endPoint) / 2, endPoint)
2453
    trail.Parent = game:GetService("Workspace")
2454
    local mesh = Instance.new("SpecialMesh")
2455
    mesh.MeshType = "Brick"
2456
    mesh.Scale = Vector3.new(0.1, 0.1, (startPoint - endPoint).magnitude)
2457
    mesh.Parent = trail
2458
    coroutine.resume(coroutine.create(function(part) for i = 1, 10 do part.Mesh.Scale = Vector3.new(part.Mesh.Scale.x - 0.01, part.Mesh.Scale.y - 0.01, part.Mesh.Scale.z) wait() end part:Remove() end), trail)
2459
    if hit ~= nil then
2460
        if hit.Parent == nil then return end
2461
        if hit.Parent.ClassName == "Hat" then
2462
            if hit.Parent.Parent.Humanoid ~= nil then
2463
                hit.Parent.Parent.Humanoid:TakeDamage(damage * 5)
2464
            end
2465
        end		
2466
        if hit.Parent:FindFirstChild("Humanoid") ~= nil then
2467
            tagHumanoid(hit.Parent.Humanoid)
2468
            if hit.Name == "Head" then
2469
                hit.Parent.Humanoid:TakeDamage(damage * 10)
2470
            elseif hit.Name == "Torso" then
2471
                hit.Parent.Humanoid:TakeDamage(damage * 2)
2472
            elseif hit.Name == "Left Leg" then
2473
                hit.Parent.Humanoid:TakeDamage(damage)	
2474
                hit.Parent.Humanoid.Sit = true	
2475
            elseif hit.Name == "Right Leg" then
2476
                hit.Parent.Humanoid:TakeDamage(damage)	
2477
                hit.Parent.Humanoid.Sit = true								
2478
            else
2479
                hit.Parent.Humanoid:TakeDamage(damage)
2480
            end
2481
            if math.random(1, 10) == 1 then
2482
                hit.Parent.Humanoid.Sit = true
2483
            end
2484
            delay(0.1, function() untagHumanoid(hit.Parent.Humanoid) end)
2485
        end
2486
        if hit.Anchored == false then
2487
            hit.Velocity = hit.Velocity + ((endPoint - startPoint).unit * (damage * 2))
2488
        end
2489
    end
2490
end
2491
2492
2493
function onButton1Down(mouse)
2494
    if selected == false then return end
2495
    if Player.Character:FindFirstChild(Name) ~= nil and Button1Down == false and canFire == true and (function() if dual == true then if Player.Character:FindFirstChild(Name.. " (Left)") ~= nil then return true else return false end else return true end end)() == true then
2496
        if Player.Character[Name]:FindFirstChild("Handle") == nil then return end
2497
        if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end
2498
        if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Handle") == nil then return end end
2499
        if dual == true then if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end end
2500
        mouse.Icon = "http://www.roblox.com/asset/?id=59125642"
2501
        Button1Down = true
2502
        canFire = false
2503
        canFire2 = true
2504
        while canFire2 == true do
2505
            local humanoid = Player.Character:FindFirstChild("Humanoid")
2506
            if humanoid == nil then
2507
                canFire2 = false
2508
                break
2509
            end
2510
            if humanoid.Health <= 0 then
2511
                canFire2 = false
2512
                break
2513
            end
2514
            local fireLeft = false
2515
            if automatic == false and burst == false then
2516
                canFire2 = false
2517
            elseif automatic == false and burst == true then
2518
                if burstCount >= burstCountMax then
2519
                    canFire2 = false
2520
                    burstCount = 0
2521
                    break
2522
                end
2523
                burstCount = burstCount + 1
2524
            elseif automatic == true and burst == false then
2525
                fireLeft = true
2526
            end
2527
            if Jammed ~= true then
2528
                if magazine.Value > 0 then
2529
                    magazine.Value = magazine.Value - 1
2530
                    updateGui()
2531
                    if silenced == true then
2532
                        CamShake(1, Spread)
2533
                    else end		
2534
                    fire(Player.Character[Name].Muzzle.Position, mouse.Hit.p, mouse.Target)
2535
                    coroutine.resume(coroutine.create(function()
2536
                        if dual == true then
2537
                            playAnimation("rightFire")
2538
                        elseif dual == false then
2539
                            playAnimation("fire")
2540
                        end
2541
                    end))
2542
                else
2543
                    Player.Character[Name].Handle.Empty:Play()
2544
                end
2545
            else
2546
                Player.Character[Name].Handle.Jam:Play()	
2547
            end
2548
            if fireLeft == true and dual == true and automatic == true then
2549
                if magazine.Value > 0 then
2550
                    coroutine.resume(coroutine.create(function()
2551
                        wait(readyTime / 2)
2552
                        magazine.Value = magazine.Value - 1
2553
                        updateGui()
2554
                        fire(Player.Character[Name.. " (Left)"].Muzzle.Position, mouse.Hit.p, mouse.Target)
2555
                        playAnimation("leftFire")
2556
                    end))
2557
                else
2558
                    coroutine.resume(coroutine.create(function()
2559
                        wait(readyTime / 2)
2560
                        Player.Character[Name].Handle.Empty:Play()
2561
                    end))
2562
                end
2563
            end
2564
            wait(readyTime)
2565
        end
2566
        if magazine.Value ~= 0 then
2567
            mouse.Icon = "http://www.roblox.com/asset/?id=59125633"
2568
        else end
2569
        canFire = true
2570
    end
2571
end
2572
2573
2574
function onButton1Up(mouse)
2575
    if selected == false then return end
2576
    Button1Down = false
2577
    canFire2 = false
2578
    burstCount = 0
2579
    while canFire == false do wait() end
2580
    if dual == true and automatic == false then
2581
        if Player.Character[Name.. " (Left)"]:FindFirstChild("Handle") == nil then return end
2582
        if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end
2583
        mouse.Icon = "http://www.roblox.com/asset/?id=59125642"
2584
        canFire = false
2585
        canFire2 = true
2586
        while canFire2 == true do
2587
            local humanoid = Player.Character:FindFirstChild("Humanoid")
2588
            if humanoid == nil then
2589
                canFire2 = false
2590
                break
2591
            end
2592
            if humanoid.Health <= 0 then
2593
                canFire2 = false
2594
                break
2595
            end
2596
            if burst == false then
2597
                canFire2 = false
2598
            elseif burst == true then
2599
                if burstCount >= burstCountMax then
2600
                    canFire2 = false
2601
                    burstCount = 0
2602
                    break
2603
                end
2604
                burstCount = burstCount + 1
2605
            end
2606
            if magazine.Value <= 0 then
2607
                Player.Character[Name].Handle.Empty:Play()
2608
            else
2609
                coroutine.resume(coroutine.create(function()
2610
                    playAnimation("leftFire")
2611
                end))
2612
                magazine.Value = magazine.Value - 1
2613
                updateGui()
2614
                fire(Player.Character[Name.. " (Left)"].Muzzle.Position, mouse.Hit.p, mouse.Target)
2615
            end
2616
            wait(readyTime)
2617
        end
2618
        if magazine.Value ~= 0 then
2619
            mouse.Icon = "http://www.roblox.com/asset/?id=59125633"
2620
        else end
2621
        canFire = true
2622
    end
2623
end
2624
2625
2626
function onKeyDown(key, mouse)
2627
    if selected == false then return end
2628
    key = key:lower()
2629
    if key == "q" and Button1Down == false and canFire == true then
2630
        if mouse.Target == nil then return end
2631
        if game:GetService("Players"):GetPlayerFromCharacter(mouse.Target.Parent) ~= nil then
2632
            if dual == true then onKeyDown("t", mouse) end
2633
            onDeselected(mouse)
2634
            removeParts("RightHolster")
2635
            script.Parent.Parent = game:GetService("Players"):GetPlayerFromCharacter(mouse.Target.Parent).Backpack
2636
        end
2637
    end
2638
    if key == "e" and Button1Down == false and canFire == true and canSilence == true then
2639
        canFire = false
2640
        if silenced then
2641
            playAnimation("silence")
2642
            silenced = false
2643
            if Player.Character:FindFirstChild(Name) == nil then return end
2644
            if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end
2645
            if Player.Character[Name]:FindFirstChild("Muzzle 2") == nil then return end
2646
            Player.Character[Name].Muzzle.Transparency = 1
2647
            Player.Character[Name].Silencer1.Transparency = 1
2648
            Player.Character[Name].Silencer2.Transparency = 1						
2649
            Player.Character[Name].Muzzle.Name = "Silencer"
2650
            Player.Character[Name]["Muzzle 2"].Name = "Muzzle"
2651
            if dual == true then
2652
                if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end
2653
                if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle 2") == nil then return end
2654
                Player.Character[Name.. " (Left)"].Muzzle.Transparency = 1
2655
                Player.Character[Name.. " (Left)"].Muzzle.Name = "Silencer"
2656
                Player.Character[Name.. " (Left)"]["Muzzle 2"].Name = "Muzzle"
2657
            end
2658
        else
2659
            playAnimation("silence")
2660
            silenced = true
2661
            if Player.Character:FindFirstChild(Name) == nil then return end
2662
            if Player.Character[Name]:FindFirstChild("Silencer") == nil then return end
2663
            if Player.Character[Name]:FindFirstChild("Muzzle") == nil then return end
2664
            Player.Character[Name].Silencer.Transparency = 0
2665
            Player.Character[Name].Silencer1.Transparency = 0
2666
            Player.Character[Name].Silencer2.Transparency = 0									
2667
            Player.Character[Name].Muzzle.Name = "Muzzle 2"
2668
            Player.Character[Name].Silencer.Name = "Muzzle"
2669
            if dual == true then
2670
                if Player.Character[Name.. " (Left)"]:FindFirstChild("Silencer") == nil then return end
2671
                if Player.Character[Name.. " (Left)"]:FindFirstChild("Muzzle") == nil then return end
2672
                Player.Character[Name.. " (Left)"].Silencer.Transparency = 0
2673
                Player.Character[Name.. " (Left)"].Muzzle.Name = "Muzzle 2"
2674
                Player.Character[Name.. " (Left)"].Silencer.Name = "Muzzle"
2675
            end
2676
        end
2677
        canFire = true
2678
    end
2679
    if key == "r" and Button1Down == false and canFire == true then
2680
        if ammo.Value > 0 and magazine.Value ~= magazineMax.Value + 1 then
2681
            canFire = false
2682
            burstCount = 0
2683
            mouse.Icon = "http://www.roblox.com/asset/?id=59125642"
2684
            if magazine.Value > 0 then magazine.Value = 1 end
2685
            updateGui()
2686
            if dual == true then
2687
                playAnimation("reloadDual")
2688
            elseif dual == false then
2689
                playAnimation("reload")
2690
            end
2691
            if ammo.Value - magazineMax.Value < 0 then
2692
                magazine.Value = ammo.Value
2693
                ammo.Value = 0
2694
            elseif ammo.Value - magazineMax.Value >= 0 then
2695
                ammo.Value = ammo.Value - magazineMax.Value
2696
                magazine.Value = magazine.Value + magazineMax.Value
2697
            end
2698
            updateGui()
2699
            mouse.Icon = "http://www.roblox.com/asset/?id=59125633"
2700
            canFire = true
2701
        end
2702
    end
2703
    if key == "t" and Button1Down == false and canFire == true and canDual == true then
2704
        canFire = false
2705
        if dual == false then
2706
            local weapon = nil
2707
            for _, p in pairs(Player.Backpack:GetChildren()) do
2708
                if p.Name == Name and p ~= script.Parent then weapon = p break end
2709
            end
2710
            if weapon ~= nil then
2711
                dual = true
2712
                weapon.Name = "Dual"
2713
                weapon.Parent = script
2714
                silenced = false
2715
                removeParts("RightHand")
2716
                makeParts("RightHand")
2717
                removeParts("RightHolster")
2718
                makeParts("LeftHolster")
2719
                playAnimation("leftEquip")
2720
                removeParts("LeftHolster")
2721
                makeParts("LeftHand")
2722
                magazineMax.Value = math.ceil(magazineMax.Value * 2)
2723
                ammoMax.Value = math.ceil(ammoMax.Value * 2)
2724
                magazine.Value = magazine.Value + weapon.Magazine.Value
2725
                ammo.Value = ammo.Value + weapon.Ammo.Value
2726
                updateGui()
2727
            end
2728
        elseif dual == true then
2729
            local weapon = script:FindFirstChild("Dual")
2730
            if weapon ~= nil then
2731
                dual = false
2732
                weapon.Name = Name
2733
                weapon.Parent = Player.Backpack
2734
                silenced = false
2735
                removeParts("RightHand")
2736
                makeParts("RightHand")
2737
                playAnimation("leftUnequip")
2738
                removeParts("LeftHand")
2739
                makeParts("RightHolster")
2740
                playAnimation("hold")
2741
                weapon.Magazine.Value = math.floor(magazine.Value / 2)
2742
                weapon.Ammo.Value = math.floor(ammo.Value / 2)
2743
                magazineMax.Value = math.ceil(magazineMax.Value / 2)
2744
                ammoMax.Value = math.ceil(ammoMax.Value / 2)
2745
                magazine.Value = math.ceil(magazine.Value / 2)
2746
                ammo.Value = math.ceil(ammo.Value / 2)
2747
                updateGui()
2748
            end
2749
        end
2750
        canFire = true
2751
    end
2752
    if key == "y" and canZoom == true then
2753
        if zoom == false then
2754
            zoom = true
2755
            local pos = mouse.Hit.p
2756
            local target = mouse.Target
2757
            local cam = game:GetService("Workspace").CurrentCamera
2758
            focus = Instance.new("Part", workspace)
2759
            focus.Anchored = true
2760
            focus.CanCollide = false
2761
            focus.Transparency = 1
2762
            focus.TopSurface = 0
2763
            focus.BottomSurface = 0
2764
            focus.formFactor = "Plate"
2765
            focus.Size = Vector3.new(0, 0, 0)
2766
            focus.CFrame = CFrame.new(pos) * (CFrame.new(Player.Character.Torso.CFrame.p, pos) - CFrame.new(Player.Character.Torso.CFrame.p, pos).p)
2767
            cam.CameraSubject = focus
2768
            cam.CameraType = "Attach"
2769
            while zoom == true and selected == true do
2770
                local set = false
2771
                if target ~= nil then
2772
                    if target.Parent ~= nil then
2773
                        if target.Anchored == false then
2774
                            focus.CFrame = CFrame.new(target.CFrame.p) * (CFrame.new(Player.Character.Torso.CFrame.p, target.CFrame.p) - CFrame.new(Player.Character.Torso.CFrame.p, target.CFrame.p).p)
2775
                            set = true
2776
                        end
2777
                    end
2778
                end
2779
                if set == false then
2780
                    focus.CFrame = CFrame.new(pos) * (CFrame.new(Player.Character.Torso.CFrame.p, pos) - CFrame.new(Player.Character.Torso.CFrame.p, pos).p)
2781
                end
2782
                wait()
2783
            end
2784
            if focus ~= nil then focus:Remove() focus = nil end
2785
            local cam = game:GetService("Workspace").CurrentCamera
2786
            cam.CameraSubject = Player.Character:FindFirstChild("Humanoid")
2787
            cam.CameraType = "Custom"
2788
        else
2789
            zoom = false
2790
        end
2791
    end
2792
    if key == "u" and Button1Down == false and canFire == true then
2793
        playAnimation("switch")
2794
        if automatic == false and burst == false then
2795
            if switchToBurst == true then
2796
                burst = true
2797
                local m = Instance.new("Message", Player)
2798
                m.Text = "Burst"
2799
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2800
                delay(2.5, function() m:Remove() end)
2801
            elseif switchToAutomatic == true then
2802
                automatic = true
2803
                local m = Instance.new("Message", Player)
2804
                m.Text = "Automatic"
2805
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2806
                delay(2.5, function() m:Remove() end)
2807
            end
2808
        elseif automatic == false and burst == true then
2809
            if switchToAutomatic == true then
2810
                automatic = true
2811
                burst = false
2812
                local m = Instance.new("Message", Player)
2813
                m.Text = "Automatic"
2814
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2815
                delay(2.5, function() m:Remove() end)
2816
            elseif switchToSingle == true then
2817
                burst = false
2818
                local m = Instance.new("Message", Player)
2819
                m.Text = "Single"
2820
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2821
                delay(2.5, function() m:Remove() end)
2822
            end
2823
        elseif automatic == true and burst == false then
2824
            if switchToSingle == true then
2825
                automatic = false
2826
                local m = Instance.new("Message", Player)
2827
                m.Text = "Single"
2828
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2829
                delay(2.5, function() m:Remove() end)
2830
            elseif switchToBurst == true then
2831
                automatic = false
2832
                burst = true
2833
                local m = Instance.new("Message", Player)
2834
                m.Text = "Burst"
2835
                pcall(function() Player.Character[Name].Handle.Switch:Play() end)
2836
                delay(2.5, function() m:Remove() end)
2837
            end
2838
        end
2839
    end
2840
    if key == "f" and Button1Down == false and canFire == true and Attachment == true and dual == false then
2841
        playAnimation("attachment")
2842
        if Mode == 1 and Mode ~= 2 and Mode ~= 0 then
2843
            Player.Character[Name].Handle.Switch:Play()
2844
            Player.Character[Name].Laser.Transparency = 1
2845
            Player.Character[Name].Light.Transparency = 0.5
2846
            Mode = 2
2847
        elseif Mode == 2 and Mode ~= 1 and Mode ~= 0 then
2848
            Player.Character[Name].Handle.Switch:Play()		
2849
            Player.Character[Name].Laser.Transparency = 1
2850
            Player.Character[Name].Light.Transparency = 1
2851
            Mode = 0
2852
        elseif Mode == 0 and Mode ~= 1 and Mode ~= 2 then
2853
            Player.Character[Name].Handle.Switch:Play()		
2854
            Player.Character[Name].Laser.Transparency = 0.4
2855
            Player.Character[Name].Light.Transparency = 1
2856
            Mode = 1
2857
        end
2858
    else end
2859
    if key == "c" and Button1Down == false and canFire == true then
2860
        if magazine.Value ~= 0 then
2861
            canFire = false
2862
            burstCount = 0
2863
            mouse.Icon = "http://www.roblox.com/asset/?id=59125642"
2864
            if magazine.Value ~= 0 then magazine.Value = magazine.Value - 1 end
2865
            updateGui()
2866
            playAnimation("charge")
2867
            mouse.Icon = "http://www.roblox.com/asset/?id=59125633"
2868
            canFire = true
2869
        end
2870
    end	
2871
end
2872
2873
2874
function onSelected(mouse)
2875
    if selected == true then return end
2876
    selected = true
2877
    canFire = false
2878
    mouse.Icon = "http://www.roblox.com/asset/?id=59125642"
2879
    while Player.Character:FindFirstChild("WeaponActivated") ~= nil do
2880
        if Player.Character.WeaponActivated.Value == nil then break end
2881
        if Player.Character.WeaponActivated.Value.Parent == nil then break end
2882
        wait()
2883
    end
2884
    updateGui()
2885
    local weapon = Instance.new("ObjectValue")
2886
    weapon.Name = "WeaponActivated"
2887
    weapon.Value = script.Parent
2888
    weapon.Parent = Player.Character
2889
    DisableLimb(1, Player.Character)
2890
    DisableLimb(2, Player.Character)
2891
    ForceAngle(1, 0, Player.Character)
2892
    ForceAngle(2, 0, Player.Character)
2893
    if dual == true then
2894
        coroutine.resume(coroutine.create(function() playAnimation("leftEquip") end))
2895
        playAnimation("rightEquip")
2896
        removeParts("LeftHolster")
2897
        makeParts("LeftHand")
2898
    else
2899
        playAnimation("equip")
2900
    end
2901
    removeParts("RightHolster")
2902
    makeParts("RightHand")
2903
    mouse.Button1Down:connect(function() onButton1Down(mouse) end)
2904
    mouse.Button1Up:connect(function() onButton1Up(mouse) end)
2905
    mouse.KeyDown:connect(function(key) onKeyDown(key, mouse) end)
2906
    mouse.Icon = "http://www.roblox.com/asset/?id=59125633"
2907
    canFire = true
2908
end
2909
2910
2911
function onDeselected(mouse)
2912
    if selected == false then return end
2913
    Button1Down = false
2914
    while canFire == false do
2915
        wait()
2916
    end
2917
    selected = false
2918
    if dual == true then
2919
        if math.random(1, 2) == 1 then
2920
            coroutine.resume(coroutine.create(function() playAnimation("leftUnequip") end))
2921
            wait(math.random(1, 10) / 10)
2922
            playAnimation("rightUnequip")
2923
        else
2924
            coroutine.resume(coroutine.create(function() playAnimation("rightUnequip") end))
2925
            wait(math.random(1, 10) / 10)
2926
            playAnimation("leftUnequip")
2927
        end
2928
        removeParts("LeftHand")
2929
        makeParts("LeftHolster")
2930
    else
2931
        playAnimation("unequip")
2932
    end
2933
    removeParts("RightHand")
2934
    makeParts("RightHolster")
2935
    ForceAngle(1, 0, Player.Character)
2936
    ForceAngle(2, 0, Player.Character)
2937
    ResetLimbCFrame(1, Player.Character)
2938
    ResetLimbCFrame(2, Player.Character)
2939
    EnableLimb(1, Player.Character)
2940
    EnableLimb(2, Player.Character)
2941
    if Player.PlayerGui:FindFirstChild(Name) ~= nil then Player.PlayerGui[Name]:Remove() end
2942
    if Player.Character:FindFirstChild("WeaponActivated") ~= nil then
2943
        if Player.Character.WeaponActivated.Value == script.Parent then
2944
            Player.Character.WeaponActivated:Remove()
2945
        end
2946
    end
2947
    while Player.Character:FindFirstChild("WeaponActivated") ~= nil do
2948
        if Player.Character.WeaponActivated.Value == nil then break end
2949
        if Player.Character.WeaponActivated.Value.Parent == nil then break end
2950
        wait()
2951
    end
2952
end
2953
2954
2955
if script.Parent.className ~= "HopperBin" then
2956
    if Player == nil then print("Error: Player not found!") return end
2957
    Tool = Instance.new("HopperBin")
2958
    Tool.Name = Name
2959
    Tool.Parent = Player.Backpack
2960
    script.Name = "Main"
2961
    script.Parent = Tool
2962
elseif script.Parent.className == "HopperBin" then
2963
    while script.Parent.Parent.className ~= "Backpack" do
2964
        wait()
2965
    end
2966
    if script.Parent:FindFirstChild("MagazineMax") == nil then
2967
        magazineMax = Instance.new("NumberValue")
2968
        magazineMax.Name = "MagazineMax"
2969
        if Magazine == "STANAG" then
2970
            magazineMax.Value = 30
2971
        elseif Magazine == "Beta-C" then
2972
            magazineMax.Value = 100
2973
        else end
2974
        magazineMax.Parent = script.Parent
2975
    else
2976
        magazineMax = script.Parent.MagazineMax
2977
    end
2978
    if script.Parent:FindFirstChild("Magazine") == nil then
2979
        magazine = Instance.new("NumberValue")
2980
        magazine.Name = "Magazine"
2981
        magazine.Value = 0
2982
        magazine.Parent = script.Parent
2983
    else
2984
        magazine = script.Parent.Magazine
2985
    end
2986
    if script.Parent:FindFirstChild("AmmoMax") == nil then
2987
        ammoMax = Instance.new("NumberValue")
2988
        ammoMax.Name = "AmmoMax"
2989
        if Magazine == "STANAG" then
2990
            ammoMax.Value = 180
2991
        elseif Magazine == "Beta-C" then
2992
            ammoMax.Value = 300
2993
        else end
2994
        ammoMax.Parent = script.Parent
2995
    else
2996
        ammoMax = script.Parent.AmmoMax
2997
    end
2998
    if script.Parent:FindFirstChild("Ammo") == nil then
2999
        ammo = Instance.new("NumberValue")
3000
        ammo.Name = "Ammo"
3001
        ammo.Value = script.Parent.AmmoMax.Value
3002
        ammo.Parent = script.Parent
3003
    else
3004
        ammo = script.Parent.Ammo
3005
    end
3006
    Player = script.Parent.Parent.Parent
3007
    makeParts("RightHolster")
3008
    script.Parent.Selected:connect(onSelected)
3009
    script.Parent.Deselected:connect(onDeselected)
3010
end
3011
--lego
3012
game.Workspace.RazorShockk.Humanoid.MaxHealth = math.huge  -----Replace RazorShockk with your name, it gives you INF health, enjoy. C:
3013
print(lego)