Advertisement
Guest User

Untitled

a guest
Oct 25th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.12 KB | None | 0 0
  1. local rtbox = nil
  2. local isOpen = false
  3. local messages = ""
  4.  
  5. net.Receive("receiveMessage" , function()
  6.     local Timestamp = os.time()
  7.     local TimeS = os.date( "%H:%M:%S" , Timestamp )
  8.  
  9.     local message = net.ReadString()
  10.     local sender = net.ReadEntity()
  11.     messages = messages.."\n"..TimeS.."||"..sender:Name().." : "..message
  12.  
  13.     if isOpen == true then
  14.         rtbox:SetText(messages)
  15.     end
  16. end )
  17.  
  18. function OpenSocial()
  19.     isOpen = true
  20.    
  21.     local frame = vgui.Create("DFrame")
  22.     frame:SetSize( 500,500 )
  23.     frame:Center()
  24.     frame:MakePopup()
  25.     frame:SetTitle("")
  26.     frame.OnClose = function(s)
  27.         isOpen = false
  28.         s:Remove()
  29.     end
  30.     function frame:Paint( self, w )
  31.         surface.SetDrawColor( 255, 255, 255, 255 )
  32.         surface.DrawRect( 0, 0, 500, 500 )
  33.         surface.SetDrawColor(0, 0, 0, 255)
  34.         surface.DrawRect( 500, 500, 500, 75 )
  35.         surface.SetDrawColor( 178, 185, 186 )
  36.         surface.DrawRect( 10, 3, 145, 23)
  37.         draw.DrawText( "mafiachat.com", "Trebuchet24", 15, 5, Color( 0, 0, 0, 255 ), TEXT_ALIGN_LEFT )
  38.     end
  39.  
  40.     local panel = vgui.Create("DPanel", frame)
  41.     panel:SetPos(10,30)
  42.     panel:SetSize( 500-20 , 500-30-50)
  43.  
  44.     rtbox = vgui.Create("RichText" , panel)
  45.     rtbox:SetSize(500-20 , 500-30-50)
  46.     rtbox:SetText(messages)
  47.  
  48.     local entry = vgui.Create("DTextEntry", frame)
  49.     entry:SetPos(10,30+ (500-30-50) + 5)
  50.     entry:SetSize(500-20 , 40)
  51.     entry.OnEnter = function(s)
  52.         net.Start("sendMessage")
  53.         net.WriteString(s:GetText())
  54.         net.SendToServer()
  55.         s:SetText("")
  56.         s:RequestFocus()
  57.     end
  58. end
  59.  
  60. hook.Add("OnPlayerChat" , "OpenChatMenu" , function( ply , text )
  61.     if ply == LocalPlayer() then
  62.         if string.lower(text) == "!sendmafia" then
  63.             OpenSocial()
  64.             return true
  65.         end
  66.     end
  67. end )
  68.  
  69. -------SERVER SHIT --------------------------------------
  70.  
  71. util.AddNetworkString("sendMessage")
  72. util.AddNetworkString("receiveMessage")
  73. util.AddNetworkString("onlinePlayers")
  74.  
  75. net.Receive("sendMessage" , function( len , ply )
  76.     local message = net.ReadString()
  77.     if( string.len(message) == 0 ) then return end
  78.     net.Start("receiveMessage")
  79.     net.WriteString(message)
  80.     net.WriteEntity(ply)
  81.     net.Broadcast()
  82. end )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement