/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ * Copyright (C) 1986-2004, Dave Pare, Jeff Bailey, Thomas Ruschak,
* Ken Stevens, Steve McClure
*
* This program is free software; you can redistribute it and/or modify
#define N_MAXNUKE 15
-struct nukstr {
- short ef_type;
- natid nuk_own;
- short nuk_uid;
- coord nuk_x; /* current loc of device */
- coord nuk_y;
- s_char nuk_n; /* number of nukes in list */
- short nuk_ship; /* currently aboard ship */
- short nuk_trade; /* index into trade file */
- short nuk_types[N_MAXNUKE]; /* # of nukes in sector of given type */
- time_t nuk_timestamp; /* Last time this nuke was touched */
+struct nukstr {
+ short ef_type;
+ natid nuk_own;
+ short nuk_uid;
+ coord nuk_x; /* current loc of device */
+ coord nuk_y;
+ s_char nuk_n; /* number of nukes in list */
+ short nuk_ship; /* currently aboard ship (unused) */
+ short nuk_trade; /* index into trade file (unused) */
+ short nuk_types[N_MAXNUKE]; /* # of nukes in sector of given type */
+ time_t nuk_timestamp; /* Last time this nuke was touched */
};
struct nchrstr {
- s_char *n_name; /* warhead unit name */
- int n_lcm; /* costs to build */
- int n_hcm;
- int n_oil;
- int n_rad;
- int n_blast; /* blast radius */
- int n_dam; /* damage at center */
- int n_cost;
- int n_tech; /* tech needed to build */
- int n_weight;
- int n_flags; /* description of capability */
+ s_char *n_name; /* warhead unit name */
+ int n_lcm; /* costs to build */
+ int n_hcm;
+ int n_oil;
+ int n_rad;
+ int n_blast; /* blast radius */
+ int n_dam; /* damage at center */
+ int n_cost;
+ int n_tech; /* tech needed to build */
+ int n_weight;
+ int n_flags; /* description of capability */
};
#define N_NEUT bit(0) /* Neutron bomb (low damage, high fallout) */
#define getnuke(n, p) \
- ef_read(EF_NUKE, n, (caddr_t)p)
+ ef_read(EF_NUKE, n, p)
#define putnuke(n, p) \
- ef_write(EF_NUKE, n, (caddr_t)p)
+ ef_write(EF_NUKE, n, p)
#define getnukep(n) \
(struct nukstr *) ef_ptr(EF_NUKE, n)
-extern struct nchrstr nchr[];
+/* Work required for building */
+#define NUK_BLD_WORK(lcm, hcm, oil, rad) \
+ (((lcm) + 2 * (hcm) + (oil) + (rad) + 4) / 5)
-extern int nuk_maxno;
+extern struct nchrstr nchr[];
+
+extern int nuk_maxno;
#endif /* _NUKE_H_ */