Advertisement
TheUnknownDiscord

c4

Jul 6th, 2022
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.77 KB | None | 0 0
  1. detonating = false
  2. local det = Instance.new("Tool",owner.Backpack)
  3. det.Name = "Detonator"
  4. det.Grip = CFrame.new(0,0.2,0.2) * CFrame.Angles(math.rad(-90),0,0)
  5. local part2 = Instance.new("Part",det)
  6. part2.Name = "Handle"
  7. part2.Size = Vector3.new(0.206, 0.845, 1.455)
  8. local m = Instance.new("SpecialMesh",part2)
  9. m.MeshId = "rbxassetid://8890151805"
  10. m.TextureId = "rbxassetid://8890151861"
  11. m.Scale = Vector3.new(0.05,0.05,0.05)
  12. local c4 = Instance.new("Tool",owner.Backpack)
  13. c4.Name = "C4"
  14. c4.Grip = CFrame.new(0.45,0,-0.5) * CFrame.Angles(0,math.rad(90),0)
  15. local part = Instance.new("Part",c4)
  16. part.Size = Vector3.new(1.34, 0.659, 2.023)
  17. part.Name = "Handle"
  18. local m = Instance.new("SpecialMesh",part)
  19. m.MeshId = "rbxassetid://454801145"
  20. m.TextureId = "rbxassetid://454801149"
  21. m.Scale = Vector3.new(0.002,0.002,0.002)
  22. local c4out = false
  23. local weld = Instance.new("Weld",owner.Character.Torso)
  24. weld.Part0 = owner.Character["Right Arm"]
  25. weld.Part1 = owner.Character.Torso
  26. weld.C1 = CFrame.new(1.5,0.5,0)
  27. weld.C0 = CFrame.new(0,0.5,0) * CFrame.Angles(math.rad(-90),0,0)
  28. weld.Enabled = false
  29. local tweenService = game:GetService("TweenService")
  30. local timeToFade = 0.2
  31. local object = weld
  32. local tweenInfo = TweenInfo.new(timeToFade,Enum.EasingStyle.Back,Enum.EasingDirection.Out)
  33. local goal = {}
  34. goal.C0 = CFrame.new(0,0.5,0) * CFrame.Angles(math.rad(-70),math.rad(-30),math.rad(10))
  35. local throw1 = tweenService:Create(object, tweenInfo, goal)
  36. local timeToFade = 0.15
  37. local tweenInfo = TweenInfo.new(timeToFade,Enum.EasingStyle.Sine,Enum.EasingDirection.Out)
  38. local goal = {}
  39. goal.C0 = CFrame.new(0,0.5,0) * CFrame.Angles(math.rad(-100),math.rad(15),math.rad(10))
  40. local throw2 = tweenService:Create(object, tweenInfo, goal)
  41. local z = Instance.new("Part")
  42. local timeToFade = 0.1
  43. local tweenInfo = TweenInfo.new(timeToFade,Enum.EasingStyle.Sine,Enum.EasingDirection.Out)
  44. local goal = {}
  45. goal.CFrame = CFrame.new(0,0.5,0) * CFrame.Angles(math.rad(-95),math.rad(10),math.rad(5))
  46. local throwwai = tweenService:Create(z, tweenInfo, goal)
  47. local timeToFade = 0.2
  48. local tweenInfo = TweenInfo.new(timeToFade,Enum.EasingStyle.Sine,Enum.EasingDirection.Out)
  49. local goal = {}
  50. goal.C0 = CFrame.new(0,0.5,0) * CFrame.Angles(math.rad(-90),0,0)
  51. local throw3 = tweenService:Create(object, tweenInfo, goal)
  52. local timeToFade = 1
  53. local tweenInfo = TweenInfo.new(timeToFade,Enum.EasingStyle.Sine,Enum.EasingDirection.Out)
  54. local goal = {}
  55. goal.Transparency = 0
  56. local trans = tweenService:Create(part, tweenInfo, goal)
  57. e = Instance.new("RemoteEvent",owner.Character)
  58. local clic = Instance.new("Sound")
  59. clic.SoundId = "rbxassetid://6884595870"
  60. clic.PlayOnRemove = true
  61. clic.TimePosition = 0.02
  62. local c4slanded = {}
  63. det.Activated:Connect(function()
  64. clic.Parent = part2
  65. clic.Parent = nil
  66. for i,v in pairs(c4slanded) do
  67. if v:FindFirstChild("BOOM") then
  68. v:FindFirstChild("BOOM").Value = true
  69. end
  70. end
  71. for i,v in pairs(c4slanded) do
  72. if v:FindFirstChild("BOOM") then
  73. table.remove(c4slanded,table.find(c4slanded,v))
  74. end
  75. end
  76. end)
  77. e.OnServerEvent:Connect(function(_,what,who,cf)
  78. coroutine.wrap(function()
  79. pcall(function()
  80. if what:FindFirstAncestorWhichIsA("Model") and game:GetService("Players"):GetPlayerFromCharacter(what:FindFirstAncestorWhichIsA("Model")) then
  81. what:SetNetworkOwner(game:GetService("Players"):GetPlayerFromCharacter(what:FindFirstAncestorWhichIsA("Model")))
  82. what:FindFirstChild("gaming"):SetNetworkOwner(game:GetService("Players"):GetPlayerFromCharacter(what:FindFirstAncestorWhichIsA("Model")))
  83. end
  84. end)
  85. end)()
  86. local weldt = Instance.new("Weld",who)
  87. weldt.Part0 = what
  88. weldt.Part1 = who
  89. weldt.C1 = cf
  90. e:FireClient(owner,what)
  91. what.Anchored = false
  92. local kablooey = Instance.new("BoolValue",what)
  93. kablooey.Value = false
  94. kablooey.Name = "BOOM"
  95. table.insert(c4slanded,what)
  96. what.CanCollide = false
  97. coroutine.wrap(function()
  98. local billboard = Instance.new("BillboardGui", what)
  99. billboard.Brightness = 3
  100. billboard.Adornee = what
  101. billboard.Size = UDim2.new(2,0,2,0)
  102. billboard.StudsOffsetWorldSpace = Vector3.new(0.215,0.4,0.05)
  103. local frame = Instance.new("ImageLabel",billboard)
  104. frame.Size = UDim2.new(2,0,2,0)
  105. frame.BackgroundTransparency = 1
  106. frame.Position = UDim2.new(0.5, 0, 0.5, 0)
  107. frame.AnchorPoint = Vector2.new(0.5, 0.5)
  108. frame.Image = "rbxassetid://6991253900"
  109. frame.ImageColor3 = Color3.new(255/255, 43/255, 43/255)
  110. frame.ImageTransparency = 1
  111. frame.ZIndex = 2
  112. local frame2 = Instance.new("ImageLabel",billboard)
  113. frame2.Size = UDim2.new(0.5,0,0.5,0)
  114. frame2.BackgroundTransparency = 1
  115. frame2.Position = UDim2.new(0.5, 0, 0.5, 0)
  116. frame2.AnchorPoint = Vector2.new(0.5, 0.5)
  117. frame2.Image = "rbxassetid://162595515"
  118. frame2.ImageColor3 = Color3.new(255/255, 22/255, 22/255)
  119. frame2.ImageTransparency = 1
  120. frame2.ZIndex = 1
  121. local open = Instance.new("Sound",what)
  122. open.SoundId = "rbxassetid://5833216142"
  123. open:Play()
  124. local beep = Instance.new("Sound")
  125. beep.SoundId = "rbxassetid://7818577205"
  126. beep.Volume = 0.5
  127. beep.PlayOnRemove = true
  128. wait(0.37)
  129. frame.ImageTransparency = 0.4
  130. frame2.ImageTransparency = 0.4
  131. wait(0.1)
  132. frame.ImageTransparency = 1
  133. frame2.ImageTransparency = 1
  134. wait(0.05)
  135. frame.ImageTransparency = 0.4
  136. frame2.ImageTransparency = 0.4
  137. wait(0.1)
  138. frame.ImageTransparency = 1
  139. frame2.ImageTransparency = 1
  140. while what ~= nil do
  141. if what:FindFirstChild("BOOM").Value ~= true then
  142. wait(1.37)
  143. beep.Parent = what
  144. beep.Parent = nil
  145. frame.ImageTransparency = 0.4
  146. frame2.ImageTransparency = 0.4
  147. wait(0.1)
  148. frame.ImageTransparency = 1
  149. frame2.ImageTransparency = 1
  150. else
  151. for i = 1,0.1,-0.05 do
  152. wait(0.27 * i)
  153. beep.Parent = what
  154. beep.Parent = nil
  155. frame.ImageTransparency = 0.4
  156. frame2.ImageTransparency = 0.4
  157. wait(0.1)
  158. frame.ImageTransparency = 1
  159. frame2.ImageTransparency = 1
  160. end
  161. local attach = Instance.new("Attachment",workspace.Terrain)
  162. attach.WorldPosition = what.Position
  163. local boom2 = Instance.new("ParticleEmitter",attach)
  164. boom2.ZOffset = -10
  165. boom2.LightEmission = 0
  166. boom2.LightInfluence = 1
  167. boom2.Drag = 0.5
  168. boom2.Enabled = false
  169. boom2.Lifetime = NumberRange.new(1, 1.05)
  170. boom2.Rate = 1000
  171. boom2.RotSpeed = NumberRange.new(500,500)
  172. boom2.Rotation = NumberRange.new(100,100)
  173. boom2.SpreadAngle = Vector2.new(360,360)
  174. boom2.Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0, 0.587), NumberSequenceKeypoint.new(0.703, 0.563), NumberSequenceKeypoint.new(1, 1)}
  175. boom2.Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 0, 0)), ColorSequenceKeypoint.new(0.499, Color3.fromRGB(138, 138, 138)), ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0))}
  176. boom2.Texture = "rbxassetid://284205403"
  177. boom2.Speed = NumberRange.new(15,35)
  178. boom2.Size = NumberSequence.new{NumberSequenceKeypoint.new(0, 4.973 * 0.5), NumberSequenceKeypoint.new(0.502, 10 * 0.5), NumberSequenceKeypoint.new(0.921, 2.787 * 0.5), NumberSequenceKeypoint.new(1, 0.5 * 0.5)}
  179. local boom = Instance.new("ParticleEmitter",attach)
  180. boom.LightEmission = 1
  181. boom.LightInfluence = 1
  182. boom.Drag = 2
  183. boom.Enabled = false
  184. boom.Lifetime = NumberRange.new(0.875, 0.9)
  185. boom.Rate = 1000
  186. boom.RotSpeed = NumberRange.new(100,100)
  187. boom.Rotation = NumberRange.new(100,100)
  188. boom.SpreadAngle = Vector2.new(5000,5000)
  189. boom.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0),NumberSequenceKeypoint.new(0.8,0),NumberSequenceKeypoint.new(1,0)})
  190. boom.Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(153, 69, 20)), ColorSequenceKeypoint.new(0.499, Color3.fromRGB(204, 106, 41)), ColorSequenceKeypoint.new(1, Color3.fromRGB(22, 22, 22))}
  191. boom.Texture = "rbxassetid://284205403"
  192. boom.Speed = NumberRange.new(15,25)
  193. boom.Size = NumberSequence.new{NumberSequenceKeypoint.new(0, 4.098 * 0.5), NumberSequenceKeypoint.new(0.491, 8.033 * 0.5), NumberSequenceKeypoint.new(0.914, 2.186 * 0.5), NumberSequenceKeypoint.new(1, 0.5 * 0.5)}
  194. local boom3 = Instance.new("ParticleEmitter",attach)
  195. boom3.LightEmission = 0.5
  196. boom3.LightInfluence = 1
  197. boom3.Drag = 1
  198. boom3.Enabled = false
  199. boom3.Lifetime = NumberRange.new(1.075, 1.1)
  200. boom3.Rate = 1000
  201. boom3.RotSpeed = NumberRange.new(100,100)
  202. boom3.Rotation = NumberRange.new(100,100)
  203. boom3.SpreadAngle = Vector2.new(5000,5000)
  204. boom3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0),NumberSequenceKeypoint.new(0.8,0),NumberSequenceKeypoint.new(1,0)})
  205. boom3.Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(153, 69, 20)), ColorSequenceKeypoint.new(0.499, Color3.fromRGB(204, 106, 41)), ColorSequenceKeypoint.new(1, Color3.fromRGB(22, 22, 22))}
  206. boom3.Texture = "rbxassetid://284205403"
  207. boom3.Speed = NumberRange.new(15,25)
  208. boom3.Size = NumberSequence.new{NumberSequenceKeypoint.new(0, 6.175 * 0.5), NumberSequenceKeypoint.new(0.494, 10 * 0.5), NumberSequenceKeypoint.new(0.916, 3.443 * 0.5), NumberSequenceKeypoint.new(1, 0.5 * 0.5)}
  209. boom3:Emit(300)
  210. boom:Emit(300)
  211. boom2:Emit(300)
  212. local explod = Instance.new("Explosion")
  213. explod.BlastRadius = 25
  214. explod.DestroyJointRadiusPercent = 0
  215. explod.BlastPressure = 1000
  216. explod.Visible = false
  217. explod.Position = what.Position
  218. local modelsHit = {}
  219.  
  220. explod.Hit:Connect(function(whatp, distance)
  221. local parentModel = whatp.Parent
  222. if parentModel then
  223. if modelsHit[parentModel] then
  224. return
  225. end
  226. modelsHit[parentModel] = true
  227.  
  228. local humanoid = parentModel:FindFirstChild("Humanoid")
  229. if humanoid then
  230. local distanceFactor = distance / explod.BlastRadius
  231. distanceFactor = 1 - distanceFactor
  232. humanoid.Health = humanoid.Health - (250 * distanceFactor)
  233. end
  234. end
  235. end)
  236. explod.Parent = workspace
  237. game:GetService("Debris"):AddItem(attach,3)
  238. task.wait()
  239. what:Destroy()
  240. break
  241. end
  242. end
  243. end)()
  244. end)
  245. c4.Activated:Connect(function()
  246. if not c4out then
  247. c4out = true
  248. weld.Enabled = true
  249. throw1:Play()
  250. throw1.Completed:Wait()
  251. throw2:Play()
  252. throw2.Completed:Wait()
  253. part.Transparency = 1
  254. part.Material = "ForceField"
  255. local yeec4 = Instance.new("Part",script)
  256. yeec4.Size = Vector3.new(1.34, 0.659, 2.023)
  257. yeec4.CFrame = owner.Character.Head.CFrame * CFrame.new(0,-owner.Character.Head.Size.Y,-owner.Character.Head.Size.Z * 3)
  258. yeec4.Material = "Fabric"
  259. local yeec42 = Instance.new("Part",yeec4)
  260. yeec42.Name = "gaming"
  261. yeec42.Size = Vector3.new(2.34, 1.659, 3.023)
  262. yeec42.CFrame = owner.Character.Head.CFrame * CFrame.new(0,-owner.Character.Head.Size.Y,-owner.Character.Head.Size.Z * 3)
  263. yeec42.CanCollide = false
  264. yeec42.Transparency = 1
  265. yeec42.Massless = true
  266. local bom = Instance.new("Sound",yeec4)
  267. bom.SoundId = "rbxassetid://577577319"
  268. bom.Volume = 2
  269. bom.PlayOnRemove = true
  270. local w = Instance.new("Weld",yeec4)
  271. w.Part0 = yeec42
  272. w.Part1 = yeec4
  273. yeec4:SetNetworkOwner(owner)
  274. yeec42:SetNetworkOwner(owner)
  275. local m = Instance.new("SpecialMesh",yeec4)
  276. m.MeshId = "rbxassetid://454801145"
  277. m.TextureId = "rbxassetid://454801149"
  278. m.Scale = Vector3.new(0.002,0.002,0.002)
  279. task.wait()
  280. e:FireClient(owner,yeec4)
  281. throw3:Play()
  282. throw3.Completed:Wait()
  283. weld.Enabled = false
  284. wait(1)
  285. trans:Play()
  286. trans.Completed:Wait()
  287. c4out = false
  288. part.Material = "Fabric"
  289. end
  290. end)
  291. NLS([[
  292. e = script.Parent
  293. e.OnClientEvent:Connect(function(what)
  294. if not what.Anchored == true then
  295. local yeec4 = what
  296. local yeec42 = what:WaitForChild("gaming")
  297. yeec4:ApplyImpulse(owner.Character.Head.CFrame.lookVector * (50 * (yeec4:GetMass() + yeec42:GetMass())) + Vector3.new(0,(30 * (yeec4:GetMass() + yeec42:GetMass())),0))
  298. yeec4:ApplyAngularImpulse(owner.Character.Head.CFrame.upVector * (-5 * ((yeec4:GetMass() + yeec42:GetMass()))) + owner.Character.Head.CFrame.lookVector * (-2 * (yeec4:GetMass() + yeec42:GetMass())))
  299. local s
  300. local touched = false
  301. yeec42.Touched:Connect(function(a)
  302. if (a ~= owner.Character and a:FindFirstAncestorWhichIsA("Model") ~= owner.Character) and (a.Parent ~= what.Parent and a.Parent.Parent ~= what.Parent) then
  303. touched = true
  304. end
  305. end)
  306. s = game:GetService("RunService").RenderStepped:Connect(function()
  307. if what ~= nil then
  308. if touched then
  309. local params = RaycastParams.new()
  310. params.FilterDescendantsInstances = {owner.Character,what.Parent}
  311. params.FilterType = Enum.RaycastFilterType.Blacklist
  312. local res = workspace:Raycast(what.Position, CFrame.new(what.Position, what.Position + what.Velocity).lookVector * 5, params)
  313. if res then
  314. local wha = res.Instance
  315. local currentRightVector = wha.CFrame.RightVector
  316. local upVector = res.Normal
  317. local newFacialVector = currentRightVector:Cross(upVector)
  318. local c = CFrame.fromMatrix(res.Position, currentRightVector, upVector, newFacialVector) * CFrame.new(0,0.25,0) * CFrame.Angles(0,math.rad(math.random(-80,80)),0)
  319. what.CFrame = c
  320. what.Anchored = true
  321. task.wait()
  322. e:FireServer(what,wha,wha.CFrame:Inverse() * c)
  323. s:Disconnect()
  324. end
  325. end
  326. else
  327. s:Disconnect()
  328. end
  329. end)
  330. else
  331. what.Anchored = false
  332. end
  333. end)
  334. ]],e)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement