]> git.pond.sub.org Git - empserver/commitdiff
(EF_RESOURCES, resources): New.
authorMarkus Armbruster <armbru@pond.sub.org>
Sat, 31 Dec 2005 10:29:32 +0000 (10:29 +0000)
committerMarkus Armbruster <armbru@pond.sub.org>
Sat, 31 Dec 2005 10:29:32 +0000 (10:29 +0000)
(empfile): Add it.
(pchr_ca): Use it.

include/file.h
include/nsc.h
src/lib/global/file.c
src/lib/global/nsc.c

index d3ba21fc96bfbb76d31e43c2a339eddfc4944635..da7be3360f21de29bbdd0525dc4e3a7ef2ca2a1b 100644 (file)
@@ -141,7 +141,8 @@ struct empfile {
 #define EF_AGREEMENT_STATUS    39
 #define EF_PLAGUE_STAGES       40
 #define EF_PACKING     41
-#define EF_MAX         42
+#define EF_RESOURCES   42
+#define EF_MAX         43
 
 #define EF_IS_GAME_STATE(type) (EF_SECTOR <= (type) && (type) <= EF_LOST)
 
index d0776f9f76ed0a61cd7c39b8a72a761592d32810..3bd91f3ecde8f82f37bb06629caf08093f9b7235 100644 (file)
@@ -233,6 +233,7 @@ extern struct symbol level[];
 extern struct symbol agreement_statuses[];
 extern struct symbol plague_stages[];
 extern struct symbol packing[];
+extern struct symbol resources[];
 
 /* src/lib/subs/nstr.c */
 extern int nstr_comp(struct nscstr *np, int len, int type, char *str);
index d8a0719f4d272e3a4fc85f880f8c4f18607fb779..a56c0fe1745d99fedaa2fcc9b8e785d9febd9085 100644 (file)
@@ -169,8 +169,7 @@ struct empfile empfile[] = {
      PTR_CACHE(meta_type, EFF_CFG)},
     {EF_META_FLAGS, "meta-flags", NULL, symbol_ca,
      PTR_CACHE(meta_flags, EFF_CFG)},
-    {EF_MISSIONS, "missions", NULL, symbol_ca,
-     PTR_CACHE(missions, EFF_CFG)},
+    {EF_MISSIONS, "missions", NULL, symbol_ca, PTR_CACHE(missions, EFF_CFG)},
     {EF_PLANE_FLAGS, "plane-flags", NULL, symbol_ca,
      PTR_CACHE(plane_flags, EFF_CFG)},
     {EF_RETREAT_FLAGS, "retreat-flags", NULL, symbol_ca,
@@ -184,8 +183,8 @@ struct empfile empfile[] = {
      PTR_CACHE(agreement_statuses, EFF_CFG)},
     {EF_PLAGUE_STAGES, "plague-stages", NULL, symbol_ca,
      PTR_CACHE(plague_stages, EFF_CFG)},
-    {EF_PACKING, "packing", NULL, symbol_ca,
-     PTR_CACHE(packing, EFF_CFG)},
+    {EF_PACKING, "packing", NULL, symbol_ca, PTR_CACHE(packing, EFF_CFG)},
+    {EF_RESOURCES, "resources", NULL, symbol_ca, PTR_CACHE(resources, EFF_CFG)},
 
     /* Sentinel */
     {EF_BAD, NULL, NULL, NULL, 0, 0, NULL, 0, 0, 0, 0, -1, NULL, NULL, NULL},
index f4d67adfdb1c9c11f691b5769af72b278249c5c7..5aa0c18247d37a5c57bd9d4bde1f5934002603db 100644 (file)
@@ -106,7 +106,7 @@ struct castr pchr_ca[] = {
      EF_ITEM},
     {NSC_INT, 0, 0, offsetof(struct pchrstr, p_level), "level", EF_LEVEL},
     {NSC_INT, 0, 0, offsetof(struct pchrstr, p_cost), "cost", EF_BAD},
-    {NSC_INT, 0, 0, offsetof(struct pchrstr, p_nrndx), "nrndx", EF_BAD},
+    {NSC_INT, 0, 0, offsetof(struct pchrstr, p_nrndx), "nrndx", EF_RESOURCES},
     {NSC_INT, 0, 0, offsetof(struct pchrstr, p_nrdep), "nrdep", EF_BAD},
     {NSC_INT, 0, 0, offsetof(struct pchrstr, p_nlndx), "nlndx", EF_BAD},
     {NSC_INT, 0, 0, offsetof(struct pchrstr, p_nlmin), "nlmin", EF_BAD},
@@ -748,3 +748,14 @@ struct symbol packing[] = {
     {BPKG, "bank"},
     {0, NULL}
 };
+
+struct symbol resources[] = {
+    /* names should match resource selector names in sect_ca[] */
+    {0, "none"},
+    {offsetof(struct sctstr, sct_min), "min"},
+    {offsetof(struct sctstr, sct_gmin), "gold"},
+    {offsetof(struct sctstr, sct_fertil), "fert"},
+    {offsetof(struct sctstr, sct_oil), "ocontent"},
+    {offsetof(struct sctstr, sct_uran), "uran"},
+    {0, NULL}
+};