summaryrefslogtreecommitdiff
path: root/protocols/Steam/src/steam_contacts.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Steam/src/steam_contacts.cpp')
-rw-r--r--protocols/Steam/src/steam_contacts.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/protocols/Steam/src/steam_contacts.cpp b/protocols/Steam/src/steam_contacts.cpp
index 4cd9ffc563..63e4c05905 100644
--- a/protocols/Steam/src/steam_contacts.cpp
+++ b/protocols/Steam/src/steam_contacts.cpp
@@ -19,6 +19,11 @@ void CSteamProto::SetContactStatus(MCONTACT hContact, WORD status)
// Special handling of some statuses
switch (status) {
+ case ID_STATUS_FREECHAT:
+ // Contact is looking to play, save it to as status message
+ db_set_ws(hContact, "CList", "StatusMsg", TranslateT("Looking to play"));
+ break;
+
case ID_STATUS_OFFLINE:
// if contact is offline, remove played game info
delSetting(hContact, "GameID");
@@ -162,7 +167,7 @@ void CSteamProto::UpdateContactDetails(MCONTACT hContact, const JSONNode &data)
if (stateflags == PersonaStateFlag::None) {
// nothing special, either standard client or in different status (only online, I want to play, I want to trade statuses support this flags)
WORD status = getWord(hContact, "Status", ID_STATUS_OFFLINE);
- if (status == ID_STATUS_ONLINE)
+ if (status == ID_STATUS_ONLINE || status == ID_STATUS_FREECHAT)
setWString(hContact, "MirVer", L"Steam");
}
else if (contains_flag(stateflags, PersonaStateFlag::InJoinableGame)) {