2010-08-08 10:06:34 +02:00
|
|
|
#ifndef H_GC_LAWS
|
|
|
|
#define H_GC_LAWS
|
2014-11-03 08:33:07 +01:00
|
|
|
|
2017-01-10 16:31:05 +01:00
|
|
|
#include <stdbool.h>
|
2014-11-03 08:33:07 +01:00
|
|
|
|
2010-08-08 10:06:34 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
2018-09-29 19:32:39 +02:00
|
|
|
enum param_t;
|
2010-08-08 10:06:34 +02:00
|
|
|
|
2018-09-29 19:32:39 +02:00
|
|
|
struct locale;
|
2014-11-01 13:10:22 +01:00
|
|
|
struct unit;
|
|
|
|
struct region;
|
|
|
|
struct building;
|
|
|
|
struct faction;
|
|
|
|
struct order;
|
|
|
|
struct attrib_type;
|
|
|
|
|
2015-08-15 20:25:36 +02:00
|
|
|
extern struct attrib_type at_germs;
|
2015-11-24 19:32:52 +01:00
|
|
|
|
2015-08-15 20:25:36 +02:00
|
|
|
extern int dropouts[2];
|
|
|
|
extern int *age;
|
|
|
|
|
2014-11-01 13:10:22 +01:00
|
|
|
void demographics(void);
|
2014-12-15 09:48:43 +01:00
|
|
|
void immigration(void);
|
2014-11-01 13:10:22 +01:00
|
|
|
void update_guards(void);
|
|
|
|
void deliverMail(struct faction *f, struct region *r, struct unit *u,
|
2015-01-30 20:37:14 +01:00
|
|
|
const char *s, struct unit *receiver);
|
2014-11-01 13:10:22 +01:00
|
|
|
|
|
|
|
bool renamed_building(const struct building * b);
|
|
|
|
int rename_building(struct unit * u, struct order * ord, struct building * b, const char *name);
|
|
|
|
void get_food(struct region * r);
|
2011-03-09 06:16:47 +01:00
|
|
|
|
2014-11-21 17:13:45 +01:00
|
|
|
int enter_building(struct unit *u, struct order *ord, int id, bool report);
|
|
|
|
int enter_ship(struct unit *u, struct order *ord, int id, bool report);
|
|
|
|
|
2017-02-27 19:35:14 +01:00
|
|
|
void turn_begin(void);
|
|
|
|
void turn_process(void);
|
|
|
|
void turn_end(void);
|
2015-01-30 20:37:14 +01:00
|
|
|
|
2017-03-11 20:03:49 +01:00
|
|
|
int checkunitnumber(const struct faction * f, int add);
|
2015-08-05 14:45:46 +02:00
|
|
|
void new_units(void);
|
|
|
|
void defaultorders(void);
|
|
|
|
void quit(void);
|
|
|
|
void monthly_healing(void);
|
|
|
|
void restack_units(void);
|
|
|
|
void update_long_order(struct unit *u);
|
|
|
|
void sinkships(struct region * r);
|
|
|
|
void do_enter(struct region *r, bool is_final_attempt);
|
2018-07-14 15:56:44 +02:00
|
|
|
bool long_order_allowed(const struct unit *u);
|
2019-09-22 16:31:02 +02:00
|
|
|
bool password_wellformed(const char *password);
|
2015-01-30 20:37:14 +01:00
|
|
|
|
2015-08-15 20:25:36 +02:00
|
|
|
int password_cmd(struct unit *u, struct order *ord);
|
|
|
|
int banner_cmd(struct unit *u, struct order *ord);
|
|
|
|
int email_cmd(struct unit *u, struct order *ord);
|
|
|
|
int send_cmd(struct unit *u, struct order *ord);
|
|
|
|
int ally_cmd(struct unit* u, struct order *ord);
|
|
|
|
int prefix_cmd(struct unit *u, struct order *ord);
|
|
|
|
int setstealth_cmd(struct unit *u, struct order *ord);
|
|
|
|
int status_cmd(struct unit *u, struct order *ord);
|
|
|
|
int display_cmd(struct unit *u, struct order *ord);
|
|
|
|
int group_cmd(struct unit *u, struct order *ord);
|
|
|
|
int origin_cmd(struct unit *u, struct order *ord);
|
|
|
|
int quit_cmd(struct unit *u, struct order *ord);
|
|
|
|
int name_cmd(struct unit *u, struct order *ord);
|
|
|
|
int use_cmd(struct unit *u, struct order *ord);
|
|
|
|
int leave_cmd(struct unit *u, struct order *ord);
|
|
|
|
int pay_cmd(struct unit *u, struct order *ord);
|
|
|
|
int promotion_cmd(struct unit *u, struct order *ord);
|
|
|
|
int combatspell_cmd(struct unit *u, struct order *ord);
|
|
|
|
int contact_cmd(struct unit *u, struct order *ord);
|
|
|
|
int guard_on_cmd(struct unit *u, struct order *ord);
|
|
|
|
int guard_off_cmd(struct unit *u, struct order *ord);
|
|
|
|
int reshow_cmd(struct unit *u, struct order *ord);
|
|
|
|
int mail_cmd(struct unit *u, struct order *ord);
|
|
|
|
int reserve_cmd(struct unit *u, struct order *ord);
|
|
|
|
int reserve_self(struct unit *u, struct order *ord);
|
|
|
|
int claim_cmd(struct unit *u, struct order *ord);
|
2019-07-04 20:44:11 +02:00
|
|
|
void transfer_faction(struct faction *fsrc, struct faction *fdst);
|
2019-08-03 15:12:07 +02:00
|
|
|
void peasant_migration(struct region * r);
|
2015-08-15 20:25:36 +02:00
|
|
|
|
|
|
|
void nmr_warnings(void);
|
2018-12-06 20:04:45 +01:00
|
|
|
bool nmr_death(const struct faction * f, int turn, int timeout);
|
2015-01-30 20:37:14 +01:00
|
|
|
|
2017-10-10 20:09:39 +02:00
|
|
|
bool cansee(const struct faction * f, const struct region * r,
|
2015-01-30 20:37:14 +01:00
|
|
|
const struct unit *u, int modifier);
|
|
|
|
bool cansee_durchgezogen(const struct faction *f, const struct region *r,
|
|
|
|
const struct unit *u, int modifier);
|
|
|
|
bool cansee_unit(const struct unit *u, const struct unit *target,
|
|
|
|
int modifier);
|
|
|
|
bool seefaction(const struct faction *f, const struct region *r,
|
|
|
|
const struct unit *u, int modifier);
|
|
|
|
int armedmen(const struct unit *u, bool siege_weapons);
|
2015-02-01 19:14:06 +01:00
|
|
|
int peasant_luck_effect(int peasants, int luck, int maxp, double variance);
|
2014-11-01 12:09:56 +01:00
|
|
|
|
2015-06-19 07:53:11 +02:00
|
|
|
#define FORCE_LEAVE_POSTCOMBAT 1
|
|
|
|
#define FORCE_LEAVE_ALL 2
|
|
|
|
bool rule_force_leave(int flag);
|
2016-11-16 22:46:01 +01:00
|
|
|
bool LongHunger(const struct unit *u);
|
|
|
|
int NMRTimeout(void);
|
|
|
|
int NewbieImmunity(void);
|
|
|
|
bool IsImmune(const struct faction *f);
|
2015-09-12 22:49:43 +02:00
|
|
|
bool help_enter(struct unit *uo, struct unit *u);
|
2015-06-19 07:53:11 +02:00
|
|
|
|
2018-09-29 19:32:39 +02:00
|
|
|
enum param_t findparam_ex(const char *s, const struct locale * lang);
|
|
|
|
|
2019-07-31 08:31:19 +02:00
|
|
|
#define QUIT_WITH_TRANSFER
|
|
|
|
|
2010-08-08 10:06:34 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif
|