]> git.pond.sub.org Git - empserver/blob - include/update.h
include: Move update stuff from prototypes.h to update.h
[empserver] / include / update.h
1 /*
2  *  Empire - A multi-player, client/server Internet based war game.
3  *  Copyright (C) 1986-2016, Dave Pare, Jeff Bailey, Thomas Ruschak,
4  *                Ken Stevens, Steve McClure, Markus Armbruster
5  *
6  *  Empire is free software: you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation, either version 3 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *  GNU General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
18  *
19  *  ---
20  *
21  *  See files README, COPYING and CREDITS in the root of the source
22  *  tree for related information and legal notices.  It is expected
23  *  that future projects/authors will amend these files as needed.
24  *
25  *  ---
26  *
27  *  update.h: Definitions related to the update
28  *
29  *  Known contributors to this file:
30  *     Ville Virrankoski, 1995
31  *     Markus Armbruster, 2004-2016
32  */
33
34 #ifndef UPDATE_H
35 #define UPDATE_H
36
37 #include "sect.h"
38
39 #define SCT_EFFIC (SCT_TYPE_MAX + 1)
40 #define SCT_MAINT (SCT_TYPE_MAX + 2)
41 #define SCT_BUDG_MAX SCT_MAINT
42
43 /* main.c */
44 extern int money[MAXNOC];
45 extern int pops[MAXNOC];
46 extern int sea_money[MAXNOC];
47 extern int lnd_money[MAXNOC];
48 extern int air_money[MAXNOC];
49 extern int tpops[MAXNOC];
50 /* nat.c */
51 extern float levels[MAXNOC][4];
52
53 /* age.c */
54 extern int age_people(int, int);
55 extern void age_levels(int);
56 /* anno.c */
57 extern void delete_old_announcements(void);
58 /* bp.c */
59 extern struct bp *bp_alloc(void);
60 extern void bp_set_from_sect(struct bp *, struct sctstr *);
61 extern void bp_to_sect(struct bp *, struct sctstr *);
62 /* deliver.c */
63 extern void dodeliver(struct sctstr *);
64 /* distribute.c */
65 extern int dodistribute(struct sctstr *, int, double);
66 /* finish.c */
67 extern void finish_sects(int);
68 /* human.c */
69 extern void do_feed(struct sctstr *, struct natstr *, int, int);
70 extern int feed_people(short *, int);
71 extern double food_needed(short *, int);
72 extern int famine_victims(short *, int);
73 /* land.c */
74 extern int prod_land(int, int, struct bp *, int);
75 /* main.c */
76 /* in server.h */
77 /* material.c */
78 extern int get_materials(struct sctstr *, short[], int);
79 /* mobility.c */
80 extern void mob_sect(void);
81 extern void mob_ship(void);
82 extern void mob_land(void);
83 extern void mob_plane(void);
84 extern void sct_do_upd_mob(struct sctstr *sp);
85 extern void shp_do_upd_mob(struct shpstr *sp);
86 extern void lnd_do_upd_mob(struct lndstr *lp);
87 extern void pln_do_upd_mob(struct plnstr *pp);
88 /* move_sat.c */
89 extern void move_sat(struct plnstr *);
90 /* nat.c */
91 extern void prod_nat(int);
92 /* nxtitemp.c */
93 /* in nsc.h */
94 /* plague.c */
95 extern void do_plague(struct sctstr *, int);
96 extern int plague_people(struct natstr *, short *, int *, int *, int);
97 /* plane.c */
98 extern int prod_plane(int, int, struct bp *, int);
99 /* populace.c */
100 extern void populace(struct sctstr *, int);
101 extern int total_work(int, int, int, int, int, int);
102 /* prepare.c */
103 extern void tax(struct sctstr *, int, int *, int *, int *, int *);
104 extern int upd_slmilcosts(natid, int);
105 extern void prepare_sects(int);
106 extern int bank_income(struct sctstr *, int);
107 /* produce.c */
108 extern int produce(struct natstr *, struct sctstr *, int *);
109 extern int prod_materials_cost(struct pchrstr *, short[], int *);
110 extern int prod_resource_limit(struct pchrstr *, unsigned char *);
111 extern double prod_eff(int, float);
112 /* removewants.c */
113 extern int update_removewants(void);
114 /* revolt.c */
115 extern void revolt(struct sctstr *);
116 extern void guerrilla(struct sctstr *);
117 /* sect.c */
118 extern double buildeff(struct sctstr *);
119 extern void do_fallout(struct sctstr *, int);
120 extern void spread_fallout(struct sctstr *, int);
121 extern void decay_fallout(struct sctstr *, int);
122 extern void produce_sect(struct natstr *, int, struct bp *, int[][2]);
123 /* ship.c */
124 extern int prod_ship(int, int, struct bp *, int);
125
126 #endif