Advertisement
Surhaykingtr

Spirit of revenge

Jan 14th, 2015
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 93.65 KB | None | 0 0
  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 "YOURNAMEHERE" 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("xxxGhostxxxx")
  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.xxxGhostxxxx.Humanoid.MaxHealth = math.huge -----Replace YOURNAMEHERE with your name, it gives you INF health, enjoy. C:
  3013. print(lego)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement