27#define MAX_NUM_TEAM_SLOTS (MAX_NUM_PLAYER_SLOTS + 1)
72#define team_slots_iterate(_tslot) \
73 if (team_slots_initialised()) { \
74 struct team_slot *_tslot = team_slot_first(); \
75 for (; NULL != _tslot; _tslot = team_slot_next(_tslot)) {
77#define team_slots_iterate_end \
82#define teams_iterate(_pteam) \
83 team_slots_iterate(_tslot) { \
84 struct team *_pteam = team_slot_get_team(_tslot); \
87#define teams_iterate_end \
89 } team_slots_iterate_end;
void team_destroy(struct team *pteam) fc__attribute((nonnull(1)))
int team_index(const struct team *pteam)
struct team * team_by_number(const int team_id)
const char * team_name_translation(const struct team *pteam)
struct team_slot * team_slot_by_number(int team_id)
void team_slots_free(void)
const char * team_rule_name(const struct team *pteam)
struct team * team_slot_get_team(const struct team_slot *tslot)
const char * team_slot_name_translation(const struct team_slot *tslot)
struct team_slot * team_slot_first(void)
const char * team_slot_defined_name(const struct team_slot *tslot)
int team_number(const struct team *pteam)
bool team_slots_initialised(void)
struct team_slot * team_slot_next(struct team_slot *tslot)
bool team_add_player(struct player *pplayer, struct team *pteam)
struct team * team_new(struct team_slot *tslot)
int team_pretty_name(const struct team *pteam, char *buf, size_t buf_len)
int team_slot_index(const struct team_slot *tslot)
struct team_slot * team_slot_by_rule_name(const char *team_name)
const struct player_list * team_members(const struct team *pteam)
void team_slots_init(void)
void team_remove_player(struct player *pplayer)
int team_slot_count(void)
bool team_slot_is_used(const struct team_slot *tslot)
void team_slot_set_defined_name(struct team_slot *tslot, const char *team_name)
const char * team_slot_rule_name(const struct team_slot *tslot)