]> git.pond.sub.org Git - empserver/blobdiff - include/update.h
Update copyright notice
[empserver] / include / update.h
index a81684e33a4cfb536434df2437d6aeac89df8b5a..5797b6c7d48185baa89dfa97755f536421d0289f 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2016, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2021, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                Ken Stevens, Steve McClure, Markus Armbruster
  *
  *  Empire is free software: you can redistribute it and/or modify
@@ -28,7 +28,7 @@
  *
  *  Known contributors to this file:
  *     Ville Virrankoski, 1995
- *     Markus Armbruster, 2004-2016
+ *     Markus Armbruster, 2004-2020
  */
 
 #ifndef UPDATE_H
@@ -59,7 +59,9 @@ struct budg_item {
 /* A nation's budget for an update */
 struct budget {
     /* production by sector type */
-    struct budg_item prod[SCT_TYPE_MAX + 1];
+    struct budg_item prod[ARRAY_SIZE(dchr) - 1];
+    /* level production output */
+    float level[4];
     /* building and maintenance */
     struct budg_item bm[BUDG_BLD_MAX + 1];
     /* population, taxes, military payroll, bank interest */
@@ -67,14 +69,13 @@ struct budget {
     /* treasury */
     int start_money;           /* at beginning of update */
     double money;              /* current */
+    /* population before growth */
+    int oldowned_civs;
 };
 
 /* main.c */
+extern int update_running;
 extern struct budget nat_budget[MAXNOC];
-extern int pops[MAXNOC];
-extern int tpops[MAXNOC];
-/* nat.c */
-extern float levels[MAXNOC][4];
 
 /* age.c */
 extern int age_people(int, int);
@@ -83,12 +84,17 @@ extern void age_levels(int);
 extern void delete_old_announcements(void);
 /* bp.c */
 extern struct bp *bp_alloc(void);
+extern int bp_skip_sect(struct bp *, struct sctstr *);
+extern int bp_skip_unit(struct bp *, struct empobj *);
+extern void bp_consider_unit(struct bp *, struct empobj *);
 extern void bp_set_from_sect(struct bp *, struct sctstr *);
 extern void bp_to_sect(struct bp *, struct sctstr *);
 /* deliver.c */
 extern void dodeliver(struct sctstr *);
 /* distribute.c */
 extern int dodistribute(struct sctstr *, int, double);
+/* fallout.c */
+extern void fallout(int);
 /* finish.c */
 extern void finish_sects(int);
 /* human.c */
@@ -97,20 +103,19 @@ extern int feed_people(short *, int);
 extern double food_needed(short *, int);
 extern int famine_victims(short *, int);
 /* land.c */
-extern void prod_land(int, int, struct bp *, int);
+extern void prep_lands(int, struct bp *);
+extern void prod_land(int, struct bp *, int);
 /* main.c */
 /* in server.h */
 /* material.c */
 extern int get_materials(struct sctstr *, short[], int);
 /* mobility.c */
-extern void mob_sect(void);
-extern void mob_ship(void);
-extern void mob_land(void);
-extern void mob_plane(void);
-extern void sct_do_upd_mob(struct sctstr *sp);
-extern void shp_do_upd_mob(struct shpstr *sp);
-extern void lnd_do_upd_mob(struct lndstr *lp);
-extern void pln_do_upd_mob(struct plnstr *pp);
+extern void mob_inc_all(int);
+extern void mob_inc_sect(struct sctstr *, int);
+extern void mob_inc_ship(struct shpstr *, int);
+extern void mob_inc_plane(struct plnstr *, int);
+extern void mob_inc_land(struct lndstr *, int);
+extern void mob_access_all(void);
 /* move_sat.c */
 extern void move_sat(struct plnstr *);
 /* nat.c */
@@ -120,16 +125,17 @@ extern void prod_nat(int);
 /* plague.c */
 extern void do_plague(struct sctstr *, int);
 extern int plague_people(struct natstr *, short *, int *, int *, int);
+extern void plague_report(natid, int, int, int, int, char *, char *);
 /* plane.c */
-extern void prod_plane(int, int, struct bp *, int);
+extern void prep_planes(int, struct bp *);
+extern void prod_plane(int, struct bp *, int);
 /* populace.c */
+extern void check_pop_loss(struct sctstr *);
 extern void populace(struct sctstr *, int);
 extern int total_work(int, int, int, int, int, int);
 /* prepare.c */
-extern void prepare_sects(int);
-extern void tax(struct sctstr *, int, int *);
-extern void upd_slmilcosts(int, natid);
-extern void bank_income(struct sctstr *, int);
+extern void prepare_sects(int, struct bp *);
+extern void prep_one_sect(struct sctstr *, int, struct bp *);
 extern void pay_reserve(struct natstr *, int);
 /* produce.c */
 extern void produce(struct natstr *, struct sctstr *);
@@ -144,11 +150,9 @@ extern void revolt(struct sctstr *);
 extern void guerrilla(struct sctstr *);
 /* sect.c */
 extern double buildeff(struct sctstr *);
-extern void do_fallout(struct sctstr *, int);
-extern void spread_fallout(struct sctstr *, int);
-extern void decay_fallout(struct sctstr *, int);
-extern void produce_sect(struct natstr *, int, struct bp *);
+extern void produce_sect(int, struct bp *);
 /* ship.c */
-extern void prod_ship(int, int, struct bp *, int);
+extern void prep_ships(int, struct bp *);
+extern void prod_ship(int, struct bp *, int);
 
 #endif