On Thu, 24 Oct 1996, Johan Dustler wrote:
> The easy way to fix this is to not rearrange where, equipment_types,
> wear_bitvectors or already_wearing, just add at the end of the lists.
> Otherwise you will have to go in and edit all zone files.
>
> Then you can use a wear_pos[] array in the look at function to let the
> new eq positions show up where you want them to be.
Once again, I would NOT recommend doing this. It can cause problems
because the way the eq is displayed and how it is searched depends
on one another. Unless you're going to change generic_find() to use
the re-ordered array, you'll end up with problems.
To note, a problem will arise when you have a re-ordered display of eq
but the eq list is still traversed in the old order. The result would
be that if you are wielded a wooden training sword, with the keywords
"sword wooden training" and holding a small woodens shield, with the
keywords, "shield wooden small," the command <remove 2.wooden> won't
remove the one shown as the second. For instance, it displays:
<wielded> a wooden training sword
<held> a gnarled wooden staff
<worn as shield> a small, wooden shield
Now, each of these would have the keyword wooden. The reordered display
would show them like the above, when they would truthfully be organized
(and thus searched) as shield, held, wielded. So the player would think
that 3.wooden would point to the shield, but it actually finds the
sword. And remove wooden would remove your shield. In this case,
remove 2.wooden would still point to the staff.
So either avoid using this method or change all eq searches in the code
to use the reordered array for indexing.
Both methods shouldn't be too difficult, but since I don't see why you'd
want to change the order of the eq list anyway, the first sounds better.
-dak
+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://cspo.queensu.ca/~fletcher/Circle/list_faq.html |
+-----------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/18/00 PST