]> git.pond.sub.org Git - empserver/commitdiff
(empfile,mdchr_ca,meta_type,meta_flags):
authorRon Koenderink <rkoenderink@yahoo.ca>
Tue, 25 Oct 2005 00:37:59 +0000 (00:37 +0000)
committerRon Koenderink <rkoenderink@yahoo.ca>
Tue, 25 Oct 2005 00:37:59 +0000 (00:37 +0000)
Add meta table and associated symbol tables.

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

index 8eb292831b289574b2130438f32277faae4dbd97..301a0ca79102f692217aa0aee4c79425023ace52 100644 (file)
@@ -124,6 +124,9 @@ struct empfile {
 #define EF_PLANE_CHR_FLAGS     26
 #define EF_LAND_CHR_FLAGS      27
 #define EF_NUKE_CHR_FLAGS      28
+#define EF_META                29
+#define EF_META_TYPE   30
+#define EF_META_FLAGS  31
 
 struct fileinit {
     int ef_type;
index a80b632792e04fa52f4aaafd32e78479d3268e6c..f5efcd260b8806739d4ca224a516e5e10468ffec 100644 (file)
@@ -219,6 +219,9 @@ extern struct lookup ship_chr_flags[];
 extern struct lookup plane_chr_flags[];
 extern struct lookup land_chr_flags[];
 extern struct lookup nuke_chr_flags[];
+extern struct castr mdchr_ca[];
+extern struct lookup meta_type[];
+extern struct lookup meta_flags[];
 
 /* src/lib/subs/nstr.c */
 extern int nstr_comp(struct nscstr *np, int len, int type, char *str);
index f41a9878451ebd825d1633e27ec62894a6c67419..e2a05331650cf55c504c8678a4494ded0dcda619 100644 (file)
@@ -152,6 +152,15 @@ struct empfile empfile[] = {
     {EF_NUKE_CHR_FLAGS, "nuke chr flags", NULL, EFF_CFG,
      sizeof(nuke_chr_flags[0]), NULL, NULL, NULL,
      -1, -1, 0, 0, (char *)nuke_chr_flags, 0, lookup_ca},
+    {EF_META, "meta", NULL, EFF_CFG,
+     sizeof(mdchr_ca[0]), NULL, NULL, NULL,
+     -1, -1, 0, 0, (char *)mdchr_ca, 0, mdchr_ca},
+    {EF_META_TYPE, "meta type", NULL, EFF_CFG,
+     sizeof(meta_type[0]), NULL, NULL, NULL,
+     -1, -1, 0, 0, (char *)meta_type, 0, lookup_ca},
+    {EF_META_FLAGS, "meta flags", NULL, EFF_CFG,
+     sizeof(meta_flags[0]), NULL, NULL, NULL,
+     -1, -1, 0, 0, (char *)meta_flags, 0, lookup_ca},
 
     /* Sentinel */
     {EF_BAD, NULL, NULL, 0,
index c58dfabb2658925bd42ea5ed028ed895aa3317d0..814216cc60bb94a0907bfcf49ca37931812be03a 100644 (file)
@@ -579,3 +579,35 @@ struct lookup nuke_chr_flags[] = {
     {0, 0}
 };
 
+struct castr mdchr_ca[] = {
+    {NSC_STRING, 0, 0, offsetof(struct castr, ca_name), "name", EF_BAD},
+    {NSC_CHAR, 0, 0, offsetof(struct castr, ca_type), "type", EF_META_TYPE},
+    {NSC_UCHAR, 0, 0, offsetof(struct castr, ca_flags), "flags", EF_META_FLAGS},
+    {NSC_USHORT, 0, 0, offsetof(struct castr, ca_len), "len", EF_BAD},
+    {NSC_INT, 0, 0, offsetof(struct castr, ca_table), "table", EF_BAD},
+    {NSC_NOTYPE, 0, 0, 0, NULL, EF_BAD}
+};
+
+struct lookup meta_flags[] = {
+    {NSC_DEITY, "DEITY"},
+    {NSC_EXTRA, "EXTRA"},
+    {0, ""}
+};
+    
+struct lookup meta_type[]  = {
+    {NSC_LONG, "d"},
+    {NSC_DOUBLE, "g"},
+    {NSC_STRING, "s"},
+    {NSC_TYPEID, "d"},
+    {NSC_CHAR, "d"},
+    {NSC_UCHAR, "d"},
+    {NSC_SHORT, "d"},
+    {NSC_USHORT, "d"},
+    {NSC_INT, "d"},
+    {NSC_XCOORD, "d"},
+    {NSC_YCOORD, "d"},
+    {NSC_TIME, "t"},
+    {NSC_FLOAT, "g"},
+    {NSC_STRINGY,"c"},
+    {0 ,""}
+};