.bool m_entcs_private;
/** True when origin is available */
-// FIXME: it seems sometimes this is false when observing even though observers should be able to know about all players
-// easily reproducible on heart_v2 or The_Yard with bots - might be because they lack waypoints and bots stand still
-// it has happened in matches with players and no bots but much more rarely
.bool has_origin;
/** True when a recent server sent origin has been received */
void entcs_force_origin(entity player);
+ void entcs_update_players(entity player);
+
bool radar_showenemies;
#endif
* @param i zero indexed player
*/
.int frags;
+ .int wants_join;
const int ENTCS_SPEC_PURE = 1; // real spectator
const int ENTCS_SPEC_IN_SCOREBOARD = 2; // spectator but still in game (can be in a team)
#define entcs_IsSpectating(i) boolean(entcs_GetSpecState(i))
{
bool unconnected = !playerslots[i].gotscores;
entity e = entcs_receiver(i);
- int fr = ((e) ? e.frags : stof(getplayerkeyvalue(i, "frags")));
+ int fr = ((e) ? e.frags : 0);
if (unconnected || fr == FRAGS_SPECTATOR)
return ENTCS_SPEC_PURE;
int sol = ((e) ? e.sv_solid : SOLID_NOT);
/**
* @param i zero indexed player
+ */
+ int entcs_GetWantsJoin(int i)
+ {
+ entity e = entcs_receiver(i);
+ return e.wants_join;
+ }
+
+ /**
+ * @param i zero indexed player
*/
int entcs_GetClientColors(int i)
{
entity e = entcs_receiver(i);
- return e ? e.colormap : stof(getplayerkeyvalue(i, "colors"));
+ return e ? e.colormap : 0;
}
/**
string entcs_GetName(int i)
{
entity e = entcs_receiver(i);
- return ColorTranslateRGB(e ? e.netname : getplayerkeyvalue(i, "name"));
+ return e ? ColorTranslateRGB(e.netname) : "";
}
int entcs_GetCountryCode(int i)
entity e = entcs_receiver(i);
return e.countrycode;
}
+
+ string entcs_GetRank(int i)
+ {
+ entity e = entcs_receiver(i);
+ return e.rank;
+ }
/**
* @param i zero indexed player