The next commit will get rid of SCT_TYPE_MAX. Prepare.
Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
*
* Known contributors to this file:
* Ville Virrankoski, 1995
- * Markus Armbruster, 2004-2016
+ * Markus Armbruster, 2004-2020
*/
#ifndef UPDATE_H
/* 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 */
* Thomas Ruschak, 1992
* Ville Virrankoski, 1995
* Steve McClure, 1997-2000
- * Markus Armbruster, 2004-2016
+ * Markus Armbruster, 2004-2020
*/
#include <config.h>
{ "Sector building", "sector" },
{ "Sector maintenance", "sector" }
};
- int i;
+ unsigned i;
struct budget *budget;
int income, expenses, taxes;
struct natstr *np;
income = expenses = 0;
pr("Sector Type\t\t\tProduction\t\t\t Cost\n");
- for (i = 0; i <= SCT_TYPE_MAX; i++) {
+ for (i = 0; i < ARRAY_SIZE(budget->prod); i++) {
if (!budget->prod[i].money)
continue;
pr("%-17s\t\t", dchr[i].d_name);
* Known contributors to this file:
* Ken Stevens, 1995
* Steve McClure, 1998
- * Markus Armbruster, 2004-2011
+ * Markus Armbruster, 2004-2020
* Ron Koenderink, 2006
*/
static char
map_char(int type, natid own, int owner_or_god)
{
- if (CANT_HAPPEN(type > SCT_TYPE_MAX || !dchr[type].d_mnem))
+ if (CANT_HAPPEN((unsigned)type >= ARRAY_SIZE(dchr) - 1
+ || !dchr[type].d_mnem))
return '?';
if (owner_or_god
|| type == SCT_WATER || type == SCT_MOUNT || type == SCT_WASTE