The Body Part BUG for EmberMUD
Fix Sheet by Rindar (Ron Cole)
The Bug: Ever try setting a MOB to have a tail, then later found it
had wings instead? Ever set a fish to have fins, then chopped off
its tentacle? The reason is because there is a bug in certain body
parts which makes them others.
The Check: Open up bit.c and look at the body parts to see if they
are in the proper order, or try setting a mob to have a tail.
The Bugfix: This bug is extremely easy to fix. Here's how:
1) Open bit.c
2) Go to the following line of code:
const struct flag_type part_flags[] =
3) Make sure the part name in "quotes" corresponds to
the correct PART_. If it doesn't, fix it.
4) Recompile. You are done.
That's it. For you coders and admins that don't want to hassle
with the switching of parts, I've included the proper settings
for part_flags below. Pop it in over the old settings in
bit.c
-= Rindar
clogar@concentric.net
** Note: This function is provided "as is" and may be used so long as
1) The author's name is kept at the top of the function (if requested) and
2) all other previous licensing aggreements are abided by. The author
assumes no responsibility for problems that occur through use or install-
ation, including lost wages, bugs, deletions, downtimes, etc... Use at
your own risk. All new code is copyrighted by its author.
Body part list:
const struct flag_type part_flags[] =
{
{ "head", PART_HEAD, TRUE },
{ "arms", PART_ARMS, TRUE },
{ "legs", PART_LEGS, TRUE },
{ "heart", PART_HEART, TRUE },
{ "brains", PART_BRAINS, TRUE },
{ "guts", PART_GUTS, TRUE },
{ "hands", PART_HANDS, TRUE },
{ "feet", PART_FEET, TRUE },
{ "fingers", PART_FINGERS, TRUE },
{ "ear", PART_EAR, TRUE },
{ "eye", PART_EYE, TRUE },
{ "long-tongue", PART_LONG_TONGUE, TRUE },
{ "eyestalks", PART_EYESTALKS, TRUE },
{ "tentacles", PART_TENTACLES, TRUE },
{ "fins", PART_FINS, TRUE },
{ "wings", PART_WINGS, TRUE },
{ "tail", PART_TAIL, TRUE },
{ "claws", PART_CLAWS, TRUE },
{ "fangs", PART_FANGS, TRUE },
{ "horns", PART_HORNS, TRUE },
{ "scales", PART_SCALES, TRUE },
{ "tusks", PART_TUSKS, TRUE },
{ "", 0, 0 }
};