void ChatRoomMsg( ChatRoomMsg_t chatMsg )
{
byte[] msgData = new byte[ 1024 * 4 ];
EChatEntryType chatType = EChatEntryType.k_EChatEntryTypeInvalid;
ulong chatter = 0;
int len = getChatMsg ( clientFriends.Interface, chatMsg.m_ulSteamIDChat, ( int ) chatMsg.m_iChatID, ref chatter, msgData, msgData.Length, ref chatType );
len = Clamp ( len, 1, msgData.Length );
chewieBrain.IsGroupMsg = true;
chewieBrain.ChatRoom = chatMsg.m_ulSteamIDChat;
chewieBrain.ChatRoomName = getChatName ( clientFriends.Interface, chewieBrain.ChatRoom );
chewieBrain.Sender = new CSteamID ( chatMsg.m_ulSteamIDUser );
chewieBrain.SenderName = steamFriends.GetFriendPersonaName ( chewieBrain.Sender );
chewieBrain.Reciever = chewieBrain.Sender;
chewieBrain.RecieverName = chewieBrain.SenderName;
chewieBrain.Message = Encoding.UTF8.GetString ( msgData, 0, len );
chewieBrain.Message = chewieBrain.Message.Substring ( 0, chewieBrain.Message.Length - 1 );
chewieBrain.MessageType = chatType;
chewieBrain.MessageTime = DateTime.Now;
string webURL = "";
bool silent = false;
string roomMessage = ( "[" + chewieBrain.MessageTime + "] From " + chewieBrain.SenderName + " in " + chewieBrain.ChatRoomName + ": " + chewieBrain.Message );
Program.parsetoChewie ( roomMessage );
for ( int i = 0; i < 128; ++i )
{
//Program.parsetoChewie ( "CMD: " + log.roomCMDGET[ cnt, comval ] );
// Again, why bother with empty arrays?
if ( chewieBrain.cmdsfromfile[ i, 0 ] == null )
break;
if ( chewieBrain.cmdsfromfile[ i, 0 ].Equals ( chewieBrain.ChatRoomName ) && chewieBrain.cmdsfromfile[ i, 2 ].Equals ( chewieBrain.Message ) && chewieBrain.Message != "!commands" )
{
webURL = chewieBrain.cmdsfromfile[ i, 4 ];
if ( chewieBrain.cmdsfromfile[ i, 1 ] == "Yes" )
silent = true;
handleCommands ( silent, i, webURL, chewieBrain.cmdsfromfile[ i, 2 ] );
break;
}
else if ( chewieBrain.Message == "!commands" )
{
if ( DateTime.Now > sixtysec.AddSeconds ( 60 ) )
{
sixtysec = DateTime.Now;
handleCMDLIST ();
break;
}
}
}
}