diff --git a/RP_L4/RPL4LOBBY.cpp b/RP_L4/RPL4LOBBY.cpp index 48c7289..7e1f1ba 100644 --- a/RP_L4/RPL4LOBBY.cpp +++ b/RP_L4/RPL4LOBBY.cpp @@ -1402,16 +1402,11 @@ int int count = CollectMembers(members); int written = 0; + Logical football = FootballLobby(); + for (int i = 0; i < count && written < max_lines; ++i) { const char *name = members[i].name[0] ? members[i].name : "(joining...)"; - - // - // What they are bringing. A camera brings no vehicle - the pick - // replaces it outright, in the egg and so on this line. - // - const char *bring = - members[i].camera ? "LIVE CAM" : members[i].vehicle; const char *note = ""; if (strcmp(members[i].build, RP412_VERSION) != 0) @@ -1422,7 +1417,34 @@ int { note = " ..."; } - _snprintf(lines[written], 47, "%-14s %s%s", name, bring, note); + + // + // The whole loadout, not just the ride: colour and badge for a + // race, team and position for football - what the host is about + // to commit everyone AS, visible before the commit. A camera + // brings none of it; the pick replaces the lot. + // + if (members[i].camera && !football) + { + _snprintf(lines[written], 47, "%-12s LIVE CAM%s", name, note); + } + else if (football) + { + _snprintf(lines[written], 47, "%-12s %s %s %s%s", + name, members[i].vehicle, + members[i].team[0] ? members[i].team : "(no team)", + members[i].position[0] ? members[i].position : "", + note); + } + else + { + _snprintf(lines[written], 47, "%-12s %s %s %s%s", + name, members[i].vehicle, members[i].color, + (members[i].badge[0] && + _stricmp(members[i].badge, "None") != 0) + ? members[i].badge : "", + note); + } lines[written][47] = '\0'; ++written; }