- if(race_nextbestname)
- strunzone(race_nextbestname);
- race_nextbestname = strzone(ReadString());
- break;
-
- case RACE_NET_CHECKPOINT_NEXT_SELF_QUALIFYING:
- race_nextcheckpoint = ReadByte();
-
- race_nextbesttime = ReadInt24_t();
- if(race_nextbestname)
- strunzone(race_nextbestname);
- race_nextbestname = strzone(""); // handled by MakeRaceString
+ if(b != RACE_NET_CHECKPOINT_NEXT_SPEC_QUALIFYING) // not while spectating (matches server)
+ race_mybesttime = ReadInt24_t();
+ string newname = ReadString();
+ if(autocvar_cl_race_cptimes_onlyself && b != RACE_NET_CHECKPOINT_NEXT_SPEC_QUALIFYING)
+ {
+ race_nextbesttime = race_mybesttime;
+ race_mybesttime = 0;
+ strcpy(race_nextbestname, "");
+ }
+ else
+ strcpy(race_nextbestname, newname);