Exemple #1
0
        public void HandleCallback(CallbackMsg msg)
        {
            if (!msg.IsType <SteamFriends.FriendMsgCallback>())
            {
                return;
            }

            msg.Handle <SteamFriends.FriendMsgCallback>(friendMsg =>
            {
                EChatEntryType type = friendMsg.EntryType;

                if (type == EChatEntryType.ChatMsg || type == EChatEntryType.Emote || type == EChatEntryType.InviteGame)
                {
                    ChatDialog cd = GetChat(friendMsg.Sender);
                    cd.HandleChat(friendMsg);
                }
            });

            msg.Handle <SteamFriends.PersonaStateCallback>(personaState =>
            {
                if (personaState.FriendID == Steam3.SteamClient.SteamID)
                {
                    return;
                }

                ChatDialog cd = GetChat(personaState.FriendID);
                cd.HandleState(personaState);
            });
        }
Exemple #2
0
        public ChatDialog GetChat( SteamID steamId )
        {
            if ( chatMap.ContainsKey( steamId ) )
                return chatMap[ steamId ];


            ChatDialog cd = new ChatDialog( steamId );
            chatMap[ steamId ] = cd;

            cd.Show();
            return cd;
        }
Exemple #3
0
        public ChatDialog GetChat(SteamID steamId)
        {
            if (chatMap.ContainsKey(steamId))
            {
                return(chatMap[steamId]);
            }


            ChatDialog cd = new ChatDialog(steamId);

            chatMap[steamId] = cd;

            cd.Show();
            return(cd);
        }