jcc@axis.fr (Jean-Christophe Collet) (05/20/88)
Hi folks,
Me again, with two minor bugs fixed :
1) I succeeded in getting the folowing inventory :
Armors
a - a +0 elven cloak (being worn)
x - a cursed +0 elven cloak (being worn)
...
When you only wear an elven cloak, you can wear another one on top
of the first ( One for the front & one for the back :-) )
Here is the fix :
do_wear.c : line 183 in doweararm()
was :
if(uarm) {
if(otmp->otyp != ELVEN_CLOAK || uarm2) {
pline("You are already wearing some armor.");
err++;
}
}
modify it to :
if(uarm) {
! if(otmp->otyp != ELVEN_CLOAK ||
+ uarm->otyp == ELVEN_CLOAK || uarm2) {
pline("You are already wearing some armor.");
err++;
}
}
2) Sometimes, here, our Archeologist (Ninja...) starts with 3 pick-axes
or 2 large boxes (3 blindfolds) etc...
It comes from the GRENADES code which, in mkobj.c, forces the
quantity to be different from 1 and in ini_inv (from u_init.c)
the exact nature (obj->otyp) of the generated object is set after
mkobj has been called...
so here is a possible fix :
in u_init.c, line 549 (here, probably different anywhere else) in ini_inv()
was :
if(obj->olet == WEAPON_SYM){
obj->quan = trop->trquan;
trop->trquan = 1;
}
modify it to :
if(obj->olet == WEAPON_SYM){
obj->quan = trop->trquan;
trop->trquan = 1;
! } else
+ obj->quan = 1;
Happy hacking
jcc
-------------------------------------------------------------------------------
jcc@axis.fr ! "An artificial intelligence is better than none !"
..!mcvax!inria!axis!jcc ! "Artificial intelligence matches natural stupidity !"
Collet jean-christophe ! "Objets inanimes avez vous donc une ame ?"
-------------------------------------------------------------------------------
Axis Digital |
135 rue d'aguesseau | <this space left intentionaly blank>
92100 Boulogne |
France |
-------------------------------------------------------------------------------mcgrath@tully.Berkeley.EDU.berkeley.edu (Roland McGrath) (05/21/88)
The first of these is not a bug. Leave it alone.