2 * Empire - A multi-player, client/server Internet based war game.
3 * Copyright (C) 1986-2014, Dave Pare, Jeff Bailey, Thomas Ruschak,
4 * Ken Stevens, Steve McClure, Markus Armbruster
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.
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.
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/>.
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.
27 * comm.c: Do a commodity report
29 * Known contributors to this file:
38 static void prthresh(int val);
47 struct nstr_sect nstr;
49 if (!snxtsct(&nstr, player->argp[1]))
52 (void)strcpy(dirstr, ". $");
53 for (n = 1; n <= 6; n++)
56 while (nxtsct(&nstr, §)) {
62 pr("COMMODITIES deliver-- distribute\n");
65 pr(" sect sgpidbolhr sgpidbolhr sh gun pet iron dust bar oil lcm hcm rad\n");
68 pr("%3d", sect.sct_own);
69 prxy("%4d,%-4d", nstr.x, nstr.y);
70 pr(" %c", dchr[sect.sct_type].d_mnem);
71 pr(" %c", dirstr[sect.sct_del[I_SHELL] & 0x7]);
72 pr("%c", dirstr[sect.sct_del[I_GUN] & 0x7]);
73 pr("%c", dirstr[sect.sct_del[I_PETROL] & 0x7]);
74 pr("%c", dirstr[sect.sct_del[I_IRON] & 0x7]);
75 pr("%c", dirstr[sect.sct_del[I_DUST] & 0x7]);
76 pr("%c", dirstr[sect.sct_del[I_BAR] & 0x7]);
77 pr("%c", dirstr[sect.sct_del[I_OIL] & 0x7]);
78 pr("%c", dirstr[sect.sct_del[I_LCM] & 0x7]);
79 pr("%c", dirstr[sect.sct_del[I_HCM] & 0x7]);
80 pr("%c ", dirstr[sect.sct_del[I_RAD] & 0x7]);
81 prthresh(sect.sct_dist[I_SHELL]);
82 prthresh(sect.sct_dist[I_GUN]);
83 prthresh(sect.sct_dist[I_PETROL]);
84 prthresh(sect.sct_dist[I_IRON]);
85 prthresh(sect.sct_dist[I_DUST]);
86 prthresh(sect.sct_dist[I_BAR]);
87 prthresh(sect.sct_dist[I_OIL]);
88 prthresh(sect.sct_dist[I_LCM]);
89 prthresh(sect.sct_dist[I_HCM]);
90 prthresh(sect.sct_dist[I_RAD]);
91 pr("%4d", sect.sct_item[I_SHELL]);
92 pr("%4d", sect.sct_item[I_GUN]);
93 pr("%5d", sect.sct_item[I_PETROL]);
94 pr("%5d", sect.sct_item[I_IRON]);
95 pr("%5d", sect.sct_item[I_DUST]);
96 pr("%4d", sect.sct_item[I_BAR]);
97 pr("%5d", sect.sct_item[I_OIL]);
98 pr("%5d", sect.sct_item[I_LCM]);
99 pr("%5d", sect.sct_item[I_HCM]);
100 pr("%4d", sect.sct_item[I_RAD]);
105 pr("%s: No sector(s)\n", player->argp[1]);
107 pr("%s: No sector(s)\n", "");
110 pr("%d sector%s\n", nsect, splur(nsect));
120 val = val / 100 + '0';