From e6d0a04ee4231400fe9cd4037bf89e2985a18bf3 Mon Sep 17 00:00:00 2001 From: Bardur Arantsson Date: Mon, 23 Feb 2015 09:11:58 +0100 Subject: Remove e_name, e_text, e_head --- src/cmd7.cc | 14 +++++--------- src/externs.h | 3 --- src/init1.cc | 21 ++++----------------- src/init2.cc | 14 +------------- src/object1.cc | 19 +++++++++---------- src/types.h | 3 +-- src/variable.cc | 3 --- src/wizard1.cc | 2 +- 8 files changed, 21 insertions(+), 58 deletions(-) (limited to 'src') diff --git a/src/cmd7.cc b/src/cmd7.cc index da51bdb4..36d8e8f9 100644 --- a/src/cmd7.cc +++ b/src/cmd7.cc @@ -2759,7 +2759,7 @@ void alchemist_display_recipe(int tval, int sval, int ego) else { /* Display the ego item name */ - strcpy(o_name, e_name + e_info[ego].name); + strcpy(o_name, e_info[ego].name); } /* Display a short message about it, and wait for a key. */ @@ -3025,7 +3025,7 @@ void alchemist_recipe_book(void) break; } } - strcat(names, e_name + e_ptr->name); + strcat(names, e_ptr->name); } else { @@ -3184,7 +3184,7 @@ int alchemist_recipe_select(int *tval, int sval, int ego, bool_ recipe) color = TERM_RED; /* add this ego to the list*/ - strip_and_print(e_name + e_info[i].name, color, num); + strip_and_print(e_info[i].name, color, num); validc[num] = color; choice[num++] = i; break; @@ -3355,7 +3355,6 @@ void alchemist_learn_all(int lev) void alchemist_learn_ego(int ego) { - char *name; int i; /* some Paranoia*/ @@ -3363,7 +3362,7 @@ void alchemist_learn_ego(int ego) return; /* Get the ego items name */ - name = e_name + e_info[ego].name; + const char *name = e_info[ego].name; while (strchr(name, ' ')) name = strchr(name, ' ') + 1; @@ -3372,7 +3371,6 @@ void alchemist_learn_ego(int ego) if (alchemist_exists(0, 0, ego, 0)) { alchemist_known_egos[ego / 32] |= (1 << (ego % 32)); - /* msg_format("You learn about '%s' ego items.",e_name+e_info[ego].name); */ } else { @@ -3388,13 +3386,11 @@ void alchemist_learn_ego(int ego) /* Look through all ego's for matching name */ /* Note that the original ego is marked here too */ for ( i = 0 ; i < max_e_idx ; i++ ) - if ( strstr(e_name + e_info[i].name, name) != NULL /*Last word of name exists in this ego's name*/ + if ( strstr(e_info[i].name, name) != NULL /*Last word of name exists in this ego's name*/ && alchemist_exists(0, 0, i, 0) /*There exists a recipe for this*/ && !(alchemist_known_egos[i / 32] & (1 << (i % 32)) ) ) /*Not already known*/ - /*&& (e_name+e_info[i].name)[0])non-blank name*/ { alchemist_known_egos[i / 32] |= (1 << (i % 32)); - /* msg_format("You learn about '%s' ego items.",e_name+e_info[i].name); */ } return; diff --git a/src/externs.h b/src/externs.h index 4c0c2154..351ff6ea 100644 --- a/src/externs.h +++ b/src/externs.h @@ -328,10 +328,7 @@ extern char *f_name; extern char *f_text; extern object_kind *k_info; extern artifact_type *a_info; -extern header *e_head; extern ego_item_type *e_info; -extern char *e_name; -extern char *e_text; extern header *ra_head; extern randart_part_type *ra_info; extern randart_gen_type ra_gen[30]; diff --git a/src/init1.cc b/src/init1.cc index 2c89736b..66ea59ab 100644 --- a/src/init1.cc +++ b/src/init1.cc @@ -6569,7 +6569,7 @@ errr init_e_info_txt(FILE *fp, char *buf) if (i < error_idx) return (4); /* Verify information */ - if (i >= e_head->info_num) return (2); + if (i >= max_e_idx) return (2); /* Save the index */ error_idx = i; @@ -6577,17 +6577,9 @@ errr init_e_info_txt(FILE *fp, char *buf) /* Point at the "info" */ e_ptr = &e_info[i]; - /* Hack -- Verify space */ - if (e_head->name_size + strlen(s) + 8 > FAKE_NAME_SIZE) return (7); - - /* Advance and Save the name index */ - if (!e_ptr->name) e_ptr->name = ++e_head->name_size; - - /* Append chars to the name */ - strcpy(e_name + e_head->name_size, s); - - /* Advance the index */ - e_head->name_size += strlen(s); + /* Copy name */ + assert(!e_ptr->name); + e_ptr->name = my_strdup(s); /* Needed hack */ e_ptr->power = -1; @@ -6876,11 +6868,6 @@ errr init_e_info_txt(FILE *fp, char *buf) } - /* Complete the "name" and "text" sizes */ - ++e_head->name_size; - ++e_head->text_size; - - /* No version yet */ if (!okay) return (2); diff --git a/src/init2.cc b/src/init2.cc index aff86014..6d3f28d8 100644 --- a/src/init2.cc +++ b/src/init2.cc @@ -680,20 +680,8 @@ static errr init_e_info(void) /* General buffer */ char buf[1024]; - - /*** Make the "header" ***/ - e_head = make_header(max_e_idx); - - - /*** Make the fake arrays ***/ - /* Allocate the "e_info" array */ - e_info = make_array(e_head->info_num); - - /* Hack -- make "fake" arrays */ - e_name = make_array(FAKE_NAME_SIZE); - e_text = make_array(FAKE_TEXT_SIZE); - + e_info = make_array(max_e_idx); /*** Load the ascii template file ***/ diff --git a/src/object1.cc b/src/object1.cc index 1abdf36b..6346a492 100644 --- a/src/object1.cc +++ b/src/object1.cc @@ -1620,11 +1620,11 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode) if (e_ptr->before) { - ego = e_ptr->name + e_name; + ego = e_ptr->name; } else if (e2_ptr->before) { - ego = e2_ptr->name + e_name; + ego = e2_ptr->name; } } @@ -1701,12 +1701,12 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode) if (e_ptr->before) { - t = object_desc_str(t, (e_name + e_ptr->name)); + t = object_desc_str(t, e_ptr->name); t = object_desc_chr(t, ' '); } if (e2_ptr->before) { - t = object_desc_str(t, (e_name + e2_ptr->name)); + t = object_desc_str(t, e2_ptr->name); t = object_desc_chr(t, ' '); } } @@ -1779,12 +1779,12 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode) if (e_ptr->before) { - t = object_desc_str(t, (e_name + e_ptr->name)); + t = object_desc_str(t, e_ptr->name); t = object_desc_chr(t, ' '); } if (e2_ptr->before) { - t = object_desc_str(t, (e_name + e2_ptr->name)); + t = object_desc_str(t, e2_ptr->name); t = object_desc_chr(t, ' '); } } @@ -1825,8 +1825,7 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode) if (known && o_ptr->name2) { ego_item_type *e_ptr = &e_info[o_ptr->name2]; - - t = object_desc_str(t, (e_name + e_ptr->name)); + t = object_desc_str(t, e_ptr->name); } } @@ -1922,12 +1921,12 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode) if (o_ptr->name2 && !e_ptr->before) { t = object_desc_chr(t, ' '); - t = object_desc_str(t, (e_name + e_ptr->name)); + t = object_desc_str(t, e_ptr->name); } if (o_ptr->name2b && !e2_ptr->before) { t = object_desc_chr(t, ' '); - t = object_desc_str(t, (e_name + e2_ptr->name)); + t = object_desc_str(t, e2_ptr->name); } } } diff --git a/src/types.h b/src/types.h index 08d5c318..f288214a 100644 --- a/src/types.h +++ b/src/types.h @@ -270,8 +270,7 @@ typedef struct ego_item_type ego_item_type; struct ego_item_type { - u32b name; /* Name (offset) */ - u32b text; /* Text (offset) */ + const char *name; /* Name (offset) */ bool_ before; /* Before or after the object name ? */ diff --git a/src/variable.cc b/src/variable.cc index 27ebb364..7909cc08 100644 --- a/src/variable.cc +++ b/src/variable.cc @@ -628,10 +628,7 @@ char *set_text; /* * The ego-item arrays */ -header *e_head; ego_item_type *e_info; -char *e_name; -char *e_text; /* * The randart arrays diff --git a/src/wizard1.cc b/src/wizard1.cc index a21b4d5b..f6790ce4 100644 --- a/src/wizard1.cc +++ b/src/wizard1.cc @@ -2511,7 +2511,7 @@ static void spoil_bateries(cptr fname) /* print item desc (ego (tval=1)or item)*/ if (ar_ptr->tval == 1) { - strcpy(o_name, e_name + e_info[ar_ptr->sval].name); + strcpy(o_name, e_info[ar_ptr->sval].name); } else { -- cgit v1.2.3