Advertisement
BobMe

GlassCan

Jan 5th, 2018
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ----------------------------------------
  2.  -- Originally made by Alfederate :D --
  3.  -- And Edited By Memo1332 So Fucks Given--
  4. ----------------------------------------
  5.  
  6.  -- there's no time to explain! --
  7.  
  8. do
  9.     local filteredMessages = { ['___'] = '___' };
  10.     local onPropertyChanged = function (obj)  
  11.         if (obj:isDescendantOf (workspace)) then  
  12.             local objText = obj.Text;
  13.            
  14.             if (objText ~= '___' and objText:find '(%S)') then
  15.                 if (filteredMessages [objText] and filteredMessages [objText] ~= objText) then
  16.                     obj.Text = filteredMessages [objText];
  17.                 elseif (not filteredMessages [objText]) then
  18.                     obj.Text = '___';
  19.                    
  20.                     local filtered = game:service 'Chat':FilterStringForBroadcast (objText, game:service 'Players'.localPlayer);
  21.                    
  22.                     filteredMessages [objText] = filtered;
  23.                     filteredMessages [filtered] = filtered;
  24.                    
  25.                     obj.Text = filtered;
  26.                 end;
  27.             end;
  28.         end;
  29.     end;
  30.    
  31.     local newInstance = Instance.new;
  32.     Instance = {
  33.         new = function (class, parent)
  34.             local obj = newInstance (class, parent);
  35.            
  36.             if (pcall (function()return obj.Text;end)) then
  37.                 obj:getPropertyChangedSignal ('Parent'):connect (function () onPropertyChanged (obj) end);
  38.                 obj:getPropertyChangedSignal ('Text'):connect (function() onPropertyChanged (obj) end);
  39.             end;
  40.            
  41.             return obj;
  42.         end;
  43.     };
  44. end;
  45. --- THE ABOVE
  46.  
  47. local Mouse = game.Players.LocalPlayer:GetMouse()
  48. local Plr = game.Players.LocalPlayer
  49. local plr = game.Players.LocalPlayer
  50. local s = Instance.new("Sound")
  51.  
  52. base = Instance.new("ScreenGui",plr.PlayerGui)
  53. bbg = Instance.new("BillboardGui",plr.Character.Head)
  54. bbg.Size = UDim2.new(0,200,0,50)
  55. bbg.StudsOffset = Vector3.new(0,3,0)
  56. bbgTl = Instance.new("TextLabel",bbg)
  57. bbgTl.BackgroundTransparency = 1
  58. bbgTl.Size = UDim2.new(10,0,1,0)
  59. bbgTl.Position = UDim2.new(-4.5,0,0,0)
  60. bbgTl.Font = "Code"
  61. bbgTl.Text = " "
  62. bbgTl.TextSize = 25
  63. bbgTl.TextStrokeColor3 = Color3.new(0,0.3,0.85)
  64. bbgTl.TextColor3 = Color3.new(0,0,0.6)
  65. bbgTl.TextStrokeTransparency = 0
  66. bbgTl.TextWrapped = true
  67. plr.Chatted:connect(function(msg)
  68.     bbgTl.Text = msg
  69.     wait(5)
  70.     if bbgTl.Text == msg then
  71.         bbgTl.Text = " "
  72.     end
  73. end)
  74.  
  75. Mouse.KeyDown:connect(function(KeyDown)
  76. if KeyDown == "0" then
  77. s.Name = "Sound"
  78. s.SoundId = "http://www.roblox.com/asset/?id=732384930"
  79. s.Volume = 11
  80. s.Looped = true
  81. s.Archivable = false
  82. s.Looped = true
  83. s.Pitch = 1.3
  84. s.Parent = game.Workspace
  85. s:Play()
  86. Plr.Character.Humanoid.WalkSpeed = 135
  87. end
  88. end)
  89.  
  90. Mouse.KeyUp:connect(function(KeyUp)
  91. if KeyUp == "0" then
  92. Plr.Character.Humanoid.WalkSpeed = 16
  93. s:Stop()
  94. end
  95. end)
  96.  
  97. local new=Instance.new
  98. local rad=math.rad
  99. local cf=CFrame.new
  100. local v3=Vector3.new
  101. local ang=function(x,y,z)
  102. return CFrame.Angles(rad(x),rad(y),rad(z))
  103. end
  104. local player=game:service'Players'.LocalPlayer
  105. local char=player.Character
  106. local cam=workspace.Camera
  107. local mouse=player:GetMouse()
  108. local weld=function(a,b,c0,c1)
  109. m=Instance.new('Motor',a)
  110. m.Part0=a
  111. m.Part1=b
  112. m.C0=c0
  113. m.C1=c1
  114. return m
  115. end
  116.  
  117. snd='rbxassetid://262300125'
  118. beamm=Instance.new('Model',workspace)
  119. beamm.Name='beam'
  120.  
  121. laser=false
  122.  
  123. rs=Instance.new('Part',char)
  124. rs.Transparency=1
  125. rs.CanCollide=false
  126. rs.BrickColor=BrickColor.new('Forest green')
  127. rs.TopSurface,rs.BottomSurface=0,0
  128. rs.FormFactor=3
  129. rs.Size=Vector3.new(.5,.5,2)
  130.  
  131. ls=rs:Clone()
  132. ls.Parent=char
  133.  
  134. rsw=weld(rs,char.Torso,cf(-1,-.5,0),cf())
  135. lsw=weld(ls,char.Torso,cf(1,-.5,0),cf())
  136. raw=weld(char['Right Arm'],rs,cf(-.5,.6,-.14),ang(90,0,-8))
  137. law=weld(char['Left Arm'],ls,cf(-.3,1.5,-.14),ang(90,0,43))
  138.  
  139. s1=Instance.new('Sound',char)
  140. s1.Volume=20
  141. s1.Pitch=1.3
  142. s1.Looped=true
  143. s1.SoundId=snd
  144.  
  145. particles={}
  146.  
  147. local wep=new('Part',char)
  148. wep.FormFactor=3
  149. wep.CanCollide=false
  150. wep.Size=v3(1.3,6,1.3)
  151. wep.BrickColor=BrickColor.new('Dark blue')
  152. wep.Material='Glass'
  153. wep.Transparency = 0.6
  154. wep.TopSurface,wep.BottomSurface=0,0
  155. local wepw=weld(wep,char['Right Arm'],cf(.26,.4,.7),ang(0,0,8))
  156.  
  157. local beam=wep:Clone()
  158. beam:ClearAllChildren()
  159. beam.Material='Glass'
  160. beam.BrickColor=BrickColor.new('Deep blue')
  161. beam.Size=Vector3.new(3,3,1)
  162. beam.Transparency=.5
  163. beam.Anchored=true
  164. local ms=Instance.new('BlockMesh',beam)
  165. local inner=beam:Clone()
  166. inner.Transparency=0.3
  167. inner.Material='Neon'
  168. inner.BrickColor=BrickColor.new('Deep blue')
  169. local ms2=inner.Mesh
  170.  
  171. local expl=inner:Clone()
  172. expl.Mesh:Destroy()
  173. expl.Material='Glass'
  174. expl.BrickColor=BrickColor.new('Electric blue')
  175. expl.Size=Vector3.new(11,11,11)
  176. expl.Transparency=.55
  177. pl=Instance.new('PointLight',expl)
  178. pl.Color=expl.BrickColor.Color
  179. pl.Range=pl.Range*2
  180. pl.Name='light'
  181. local br=pl.Range
  182.  
  183. local exa=expl:Clone()
  184. exa.Size=Vector3.new(4,4,4)
  185. pl2=exa.light
  186.  
  187. local part=exa:Clone()
  188. part.Size=Vector3.new(1.5,1.5,1.5)
  189. pl3=part.light
  190. pms=Instance.new('BlockMesh',part)
  191.  
  192. char.Humanoid.Died:connect(function()
  193. laser=false
  194. beam.Parent=nil
  195. inner.Parent=nil
  196. expl.Parent=nil
  197. exa.Parent=nil
  198. s1:stop()
  199. end)
  200.  
  201. mouse.Button1Down:connect(function() if char.Humanoid.Health~=0 then
  202. laser=true
  203. s1.Volume=1.3
  204. s1:play()
  205. end end)
  206. mouse.Button1Up:connect(function()
  207. laser=false
  208. beam.Parent=nil
  209. inner.Parent=nil
  210. expl.Parent=nil
  211. exa.Parent=nil
  212. s1:stop()
  213. end)
  214.  
  215. parti=0
  216. game:service'RunService'.Stepped:connect(function()
  217. parti=parti+1
  218. for i,v in pairs(particles) do
  219. v.CFrame=v.CFrame*CFrame.new(0,0,-.3)
  220. v.Transparency=v.Transparency+.08
  221. if v.Transparency >= 1 then
  222. v:Destroy()
  223. table.remove(particles,i)
  224. else
  225. v.Parent=beamm
  226. end
  227. end
  228. a=cam.CoordinateFrame.p
  229. b=mouse.Hit.p
  230. mhitr=Ray.new(a,(b-a).unit*999)
  231. mhit,ps=workspace:FindPartOnRayWithIgnoreList(mhitr,{char,beamm})
  232. raw.C1=ang(90+(mouse.Hit.lookVector.y*90),0,-8)
  233. law.C1=ang(90+(mouse.Hit.lookVector.y*90),0,43)
  234. if not char.Humanoid.Sit and not char.Humanoid.PlatformStand then
  235. char.Torso.CFrame=CFrame.new(char.Torso.CFrame.p,Vector3.new(ps.x,char.Torso.CFrame.p.y,ps.z))
  236. end
  237. if laser then
  238. beamm.Parent=workspace
  239. beam.Parent=beamm
  240. inner.Parent=beamm
  241. expl.Parent=beamm
  242. exa.Parent=beamm
  243. s1.Volume=s1.Volume-0
  244.  
  245. ray=Ray.new((wep.CFrame*cf(0,-1.5,0)).p,((wep.CFrame*cf(0,-10,0)).p-(wep.CFrame*cf(0,-1.5,0)).p).unit*999)
  246. hit,pos=workspace:FindPartOnRayWithIgnoreList(ray,{char,beamm})
  247.  
  248. if hit and hit.Parent:findFirstChild('Humanoid') and s1.Volume > .3 and parti/8==math.floor(parti/8) then
  249. Instance.new('Explosion',workspace).Position=pos
  250. local soof = Instance.new("Sound",script.Parent)
  251. soof.Name = "Sound"
  252. soof.SoundId = "http://www.roblox.com/asset/?id=322832112"
  253. soof.Volume = 10
  254. soof.Looped = false
  255. soof.Pitch = 1.1+math.random()*.5
  256. soof.archivable = false
  257. wait()
  258. soof:play()
  259. end
  260. if hit and hit.Parent==workspace.Terrain or hit==workspace.Terrain and parti/8==math.floor(parti/8) then
  261. e=Instance.new('Explosion',workspace)
  262. e.Position=pos
  263. e.BlastRadius=14
  264. e.BlastPressure=1e4
  265. local soof = Instance.new("Sound",script.Parent)
  266. soof.Name = "Sound"
  267. soof.SoundId = "http://www.roblox.com/asset/?id=322832112"
  268. soof.Volume = 10
  269. soof.Looped = false
  270. soof.Pitch = 1.1+math.random()*.5
  271. soof.archivable = false
  272. wait()
  273. soof:play()
  274. end
  275. if hit and not hit.Anchored and not (hit:GetMass()>1e4) then
  276. hit.Velocity=hit.Velocity+beam.CFrame.lookVector*(1*s1.Volume*hit:GetMass())
  277. end
  278.  
  279. if parti==math.floor(parti) then
  280. par=part:Clone()
  281. table.insert(particles,par)
  282. par.Parent=beamm
  283. par.Transparency=1-s1.Volume
  284. par.light.Range=br*s1.Volume
  285. par.CFrame=cf(pos)*ang(math.random(-180,180),math.random(-180,180),math.random(-180,180))*cf(0,0,-10)
  286. end
  287.  
  288. mag=((wep.CFrame*cf(0,-1.5,0)).p-pos).magnitude
  289. ms.Scale=v3(s1.Volume,s1.Volume,mag)
  290. ms2.Scale=v3(ms.Scale.x/2,ms.Scale.y/2,mag-(.1/mag))
  291. beam.CFrame=cf((wep.CFrame*cf(0,-1.5,0)).p,pos)*cf(0,0,-mag/2)*ang(0,0,math.random(0,180))
  292. inner.CFrame=beam.CFrame
  293. pl.Range=br*s1.Volume
  294. pl2.Range=br*s1.Volume
  295. expl.Size=v3(math.random(9,13),math.random(9,13),math.random(9,13))*s1.Volume
  296. expl.Transparency=math.random(40,60)/100
  297. expl.CFrame=cf(pos)*ang(math.random(0,180),math.random(0,180),math.random(0,180))
  298. exa.Size=v3(4,4,4)*s1.Volume
  299. exa.CFrame=wep.CFrame*cf(0,-1.5,0)*ang(math.random(0,180),math.random(0,180),math.random(0,180))
  300. char.Torso.Velocity=char.Torso.Velocity-beam.CFrame.lookVector*(7*s1.Volume)
  301. end
  302. end)
  303.  
  304. local UserInputService = game:GetService("UserInputService")
  305. local localPlayer = game.Players.LocalPlayer
  306. local character
  307. local humanoid
  308.  
  309. local canDoubleJump = false
  310. local hasDoubleJumped = false
  311. local oldPower
  312. local TIME_BETWEEN_JUMPS = 0.2
  313. local DOUBLE_JUMP_POWER_MULTIPLIER = 2
  314. local s = Instance.new("Sound",script.Parent)
  315. function onJumpRequest()
  316.     if not character or not humanoid or not character:IsDescendantOf(workspace) or
  317.      humanoid:GetState() == Enum.HumanoidStateType.Dead then
  318.         return
  319.     end
  320.  
  321.     if canDoubleJump and not hasDoubleJumped then
  322.         hasDoubleJumped = true
  323.         humanoid.JumpPower = oldPower * DOUBLE_JUMP_POWER_MULTIPLIER
  324.         humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
  325.         s.Name = "Sound"
  326.         s.SoundId = "rbxassetid://192604675"
  327.         s.Volume = 50
  328.         s.Looped = false
  329.         s.Pitch = 1.1+math.random()*.3
  330.         s.archivable = false
  331.         wait()
  332.         s:Play()
  333.     end
  334. end
  335.  
  336. local function characterAdded(newCharacter)
  337.     character = newCharacter
  338.     humanoid = newCharacter:WaitForChild("Humanoid")
  339.     hasDoubleJumped = false
  340.     canDoubleJump = false
  341.     oldPower = humanoid.JumpPower
  342.  
  343.     humanoid.StateChanged:connect(function(old, new)
  344.         if new == Enum.HumanoidStateType.Landed then
  345.             canDoubleJump = false
  346.             hasDoubleJumped = false
  347.             humanoid.JumpPower = oldPower
  348.         elseif new == Enum.HumanoidStateType.Freefall then
  349.             wait(TIME_BETWEEN_JUMPS)
  350.             canDoubleJump = true
  351.         end
  352.     end)
  353. end
  354.  
  355. bbgTl.Text = "Oof Cannon Edit By Memo1332"
  356. wait(3)
  357. bbgTl.Text = " "
  358.  
  359. if localPlayer.Character then
  360.     characterAdded(localPlayer.Character)
  361. end
  362.  
  363. localPlayer.CharacterAdded:connect(characterAdded)
  364. UserInputService.JumpRequest:connect(onJumpRequest)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement