]> git.pond.sub.org Git - empserver/blobdiff - include/item.h
COPYING duplicates information from README. Remove. Move GPL from
[empserver] / include / item.h
index 953d6cb62abb329ad0f5ada7f0aa656e3b2d538a..6392f840b0daf9a124c60f9cc37bb3965c48b74b 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2006, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                           Ken Stevens, Steve McClure
  *
  *  This program is free software; you can redistribute it and/or modify
@@ -19,9 +19,9 @@
  *
  *  ---
  *
- *  See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
- *  related information and legal notices. It is expected that any future
- *  projects/authors will amend these files as needed.
+ *  See files README, COPYING and CREDITS in the root of the source
+ *  tree for related information and legal notices.  It is expected
+ *  that future projects/authors will amend these files as needed.
  *
  *  ---
  *
  *  
  */
 
-#ifndef _ITEM_H_
-#define _ITEM_H_
+#ifndef ITEM_H
+#define ITEM_H
 
-#define        NUMPKG  4               /* number of different kinds of packaging */
+#include "misc.h"
+
+typedef enum {
+    IPKG,                      /* "inefficient" packaging (eff<60) */
+    NPKG,                      /* no special packaging */
+    WPKG,                      /* "warehouse" packaging */
+    UPKG,                      /* "urban" packaging */
+    BPKG                       /* "bank" packaging */
+} i_packing;
+
+enum {
+    NUMPKG = BPKG + 1
+};
+
+typedef enum {
+       I_NONE = -1,
+       I_CIVIL,
+       I_MILIT,
+       I_SHELL,
+       I_GUN,
+       I_PETROL,
+       I_IRON,
+       I_DUST,
+       I_BAR,
+       I_FOOD,
+       I_OIL,
+       I_LCM,
+       I_HCM,
+       I_UW,
+       I_RAD,
+       I_MAX = I_RAD
+} ATTRIBUTE((packed)) i_type;
 
 struct ichrstr {
     int i_mnem;                        /* usually the initial letter */
-    int i_vtype;               /* var type */
+    i_type i_vtype;            /* var type */
     int i_value;               /* mortgage value */
     int i_sell;                        /* can this be sold? */
     int i_lbs;                 /* how hard to move */
     int i_pkg[NUMPKG];         /* units for reg, ware, urb, bank */
-    s_char *i_name;            /* full name of item */
+    int i_melt_denom;          /* fallout meltdown denominator */
+    char *i_name;              /* full name of item */
 };
 
 /* variables using this structure */
 
-extern struct ichrstr ichr[];
-extern int maxitem;
+extern struct ichrstr ichr[I_MAX + 2];
 
 /* procedures using/returning this struct */
 
-extern struct ichrstr *whatitem(s_char *ptr, s_char *prompt);
+extern struct ichrstr *whatitem(char *, char *);
+extern struct ichrstr *item_by_name(char *);
 
-#endif /* _ITEM_H_ */
+#endif