The roster shows what everyone is bringing, all of it

The setup-page roster listed each player's name and vehicle; Cyd wants
the loadout: colour and badge for a race, team and position for
football. It is what the host is about to commit everyone AS, and the
host should see it before pressing the button - a member who left their
team unset in football reads '(no team)' right where the commit decision
is being made.

All of it was already on the wire - colour, badge, team and position
ride each member's lobby row for the egg builder's sake - the roster
line just never printed them. A camera member still reads LIVE CAM
alone: it brings none of the above, the pick replaces the lot. A 'None'
badge prints as nothing rather than as the word None.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Cyd
2026-08-11 23:17:21 -05:00
co-authored by Claude Opus 5
parent 50399e016e
commit bdc5df087e
+30 -8
View File
@@ -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;
}