2010-08-08 10:06:34 +02:00
|
|
|
/*
|
|
|
|
Copyright (c) 1998-2010, Enno Rehling <enno@eressea.de>
|
|
|
|
Katja Zedel <katze@felidae.kn-bremen.de
|
|
|
|
Christian Schlittchen <corwin@amber.kn-bremen.de>
|
|
|
|
|
|
|
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
|
|
purpose with or without fee is hereby granted, provided that the above
|
|
|
|
copyright notice and this permission notice appear in all copies.
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
|
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
|
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
|
|
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
|
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
|
|
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
|
|
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
|
|
**/
|
|
|
|
|
|
|
|
#ifndef H_GC_LAWS
|
|
|
|
#define H_GC_LAWS
|
2014-11-03 08:33:07 +01:00
|
|
|
|
|
|
|
#include <kernel/types.h>
|
|
|
|
|
2010-08-08 10:06:34 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2014-11-01 13:10:22 +01:00
|
|
|
struct unit;
|
|
|
|
struct region;
|
|
|
|
struct building;
|
|
|
|
struct faction;
|
|
|
|
struct order;
|
|
|
|
struct attrib_type;
|
|
|
|
|
|
|
|
int writepasswd(void);
|
|
|
|
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 update_subscriptions(void);
|
|
|
|
void deliverMail(struct faction *f, struct region *r, struct unit *u,
|
|
|
|
const char *s, struct unit *receiver);
|
|
|
|
|
|
|
|
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);
|
|
|
|
int can_contact(const struct region *r, const struct unit *u, const struct unit *u2);
|
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);
|
|
|
|
|
|
|
|
/* eressea-specific. put somewhere else, please. */
|
2011-03-07 08:02:35 +01:00
|
|
|
void processorders(void);
|
|
|
|
extern struct attrib_type at_germs;
|
2010-08-08 10:06:34 +02:00
|
|
|
|
2011-03-07 08:02:35 +01:00
|
|
|
extern int dropouts[2];
|
|
|
|
extern int *age;
|
2010-08-08 10:06:34 +02:00
|
|
|
|
2012-06-14 08:25:20 +02:00
|
|
|
|
2012-06-07 18:47:02 +02:00
|
|
|
extern void new_units(void);
|
2012-07-24 09:16:25 +02:00
|
|
|
extern void defaultorders(void);
|
2012-06-07 18:47:02 +02:00
|
|
|
extern void quit(void);
|
2012-06-18 07:31:30 +02:00
|
|
|
extern void monthly_healing(void);
|
2012-06-17 08:31:25 +02:00
|
|
|
extern void renumber_factions(void);
|
|
|
|
extern void restack_units(void);
|
2012-06-14 08:25:20 +02:00
|
|
|
extern void update_long_order(struct unit *u);
|
2012-06-17 07:38:44 +02:00
|
|
|
extern void sinkships(struct region * r);
|
2012-06-24 08:04:12 +02:00
|
|
|
extern void do_enter(struct region *r, bool is_final_attempt);
|
2012-06-18 02:24:23 +02:00
|
|
|
|
2012-06-07 18:47:02 +02:00
|
|
|
extern int password_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int banner_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int email_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int send_cmd(struct unit *u, struct order *ord);
|
2012-06-10 14:28:19 +02:00
|
|
|
extern int ally_cmd(struct unit* u, struct order *ord);
|
|
|
|
extern int prefix_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int setstealth_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int status_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int display_cmd(struct unit *u, struct order *ord);
|
2012-06-07 18:47:02 +02:00
|
|
|
extern int group_cmd(struct unit *u, struct order *ord);
|
2012-06-10 14:28:19 +02:00
|
|
|
extern int origin_cmd(struct unit *u, struct order *ord);
|
2012-06-07 18:47:02 +02:00
|
|
|
extern int quit_cmd(struct unit *u, struct order *ord);
|
2012-06-10 14:28:19 +02:00
|
|
|
extern int name_cmd(struct unit *u, struct order *ord);
|
2012-06-13 07:36:29 +02:00
|
|
|
extern int use_cmd(struct unit *u, struct order *ord);
|
2012-06-17 04:14:23 +02:00
|
|
|
extern int siege_cmd(struct unit *u, struct order *ord);
|
2012-06-14 08:25:20 +02:00
|
|
|
extern int leave_cmd(struct unit *u, struct order *ord);
|
2012-06-17 07:38:44 +02:00
|
|
|
extern int pay_cmd(struct unit *u, struct order *ord);
|
2012-06-17 08:31:25 +02:00
|
|
|
extern int promotion_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int renumber_cmd(struct unit *u, struct order *ord);
|
2012-06-17 21:51:48 +02:00
|
|
|
extern int combatspell_cmd(struct unit *u, struct order *ord);
|
2012-06-18 02:24:23 +02:00
|
|
|
extern int contact_cmd(struct unit *u, struct order *ord);
|
2012-06-18 08:13:58 +02:00
|
|
|
extern int guard_on_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int guard_off_cmd(struct unit *u, struct order *ord);
|
2012-07-24 09:16:25 +02:00
|
|
|
extern int reshow_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int mail_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int reserve_cmd(struct unit *u, struct order *ord);
|
2014-07-20 06:19:21 +02:00
|
|
|
extern int reserve_self(struct unit *u, struct order *ord);
|
2012-07-24 09:16:25 +02:00
|
|
|
extern int claim_cmd(struct unit *u, struct order *ord);
|
|
|
|
extern int follow_cmd(struct unit *u, struct order *ord);
|
|
|
|
|
2014-11-01 12:09:56 +01:00
|
|
|
bool cansee(const struct faction *f, const struct region *r,
|
|
|
|
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);
|
2014-11-01 18:34:53 +01:00
|
|
|
int armedmen(const struct unit *u, bool siege_weapons);
|
2015-01-05 18:14:55 +01:00
|
|
|
void force_leave(struct region *r);
|
2014-11-01 12:09:56 +01:00
|
|
|
|
|
|
|
|
2010-08-08 10:06:34 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif
|