-- Framework for custom HUD chat drawing. -- By teh catdaemonz0rs -- Call this like so: -- chat_send(red value,green value,blue value,text as string,userid(do not spesify to send to all)) -- K, you may begin. ctext={} ctext.red={} ctext.green={} ctext.blue={} ctext.text={} ctext.user={} CHAT_X=0.02 -- This is the x position for the chat box CHAT_Y=0.1 -- This is the Y position of the chat box CHAT_WIDTH=0.5 -- This is the width of the chat box, and it is added to the CHAT_X variable. CHAT_HEIGHT=0 -- This is the height of the chat box, and it is added to the CHAT_Y variable. for i=1,255 do ctext[i]={} ctext[i].red=0 ctext[i].green=0 ctext[i].blue=0 ctext[i].text="x" ctext[i].user=nil end function eventPlayerSay(userid,strText,bTeam) chat_send(0,255,0,strText) return false end function chat_send(red,green,blue,xtext,userid) local i=255 while i>2 do local f=i-1 ctext[i].text=ctext[f].text ctext[i].red=ctext[f].red ctext[i].green=ctext[f].green ctext[i].blue=ctext[f].blue ctext[i].user=ctext[f].user i=i-1 end ctext[1].text=xtext ctext[1].red=red ctext[1].green=green ctext[1].blue=blue ctext[1].user=userid chat_redrawhud() end function chat_redrawhud() for i=1, _MaxPlayers() do _GModRect_Start("vgui/hud/icon_commentary") _GModRect_SetColor(0,0,0,100) _GModRect_SetPos(CHAT_X,CHAT_Y,0.1,0.1) _GModRect_SetTime(9999,0,0) _GModRect_Send(i, 740) local numdrawn=0 local t=255 while t>2 do t=t-1 if ctext[t].user==i or ctext[t].user==nil then if numdrawn~=5 then _GModText_Start("ChatFont") _GModText_SetColor(ctext[t].red,ctext[t].green,ctext[t].blue,255) _GModText_SetTime(5,0,5) _GModText_SetText(ctext[t].text) _GModText_SetPos(CHAT_X,CHAT_Y+numdrawn/40) _GModText_Send(i,741+numdrawn) numdrawn=numdrawn+1 end else break end end end end