57#define city_counters_iterate(pcount) { \
59 struct counter *pcount; \
60 int _ccounter_count_##pcount = counters_get_city_counters_count(); \
61 for (_i_##pcount = 0; _i_##pcount < _ccounter_count_##pcount; _i_##pcount++) { \
62 pcount = counter_by_index(_i_##pcount, CTGT_CITY);
64#define city_counters_iterate_end } \
67#define counters_re_iterate(pcount) { \
69 struct counter *pcount; \
70 int _ccounter_count_##pcount = game.control.num_counters; { \
71 for (_i_##pcount = 0; _i_##pcount < _ccounter_count_##pcount; _i_##pcount++) { \
72 pcount = counter_by_id(_i_##pcount); \
73 if ( ! pcount -> ruledit_disabled ) {
75#define counters_re_iterate_end } \
struct counter * counter_by_index(int index, enum counter_target target)
int counter_index(const struct counter *pcount)
const char * counter_name_translation(const struct counter *counter)
struct counter * counter_by_rule_name(const char *name)
struct counter * counter_by_translated_name(const char *name)
const char * counter_rule_name(struct counter *pcount)
int counters_get_city_counters_count(void)
struct counter * counter_by_id(int id)
int counter_id(struct counter *pcount)
void attach_city_counter(struct counter *counter)
enum counter_target target
struct name_translation name
enum counter_behaviour type