Make shopkeepers bill hero for burying merchandise
This commit is contained in:
@@ -471,6 +471,7 @@ charisma affects the leeway in demon lord bribes
|
||||
make Vlad slightly tougher
|
||||
reduce the amount of gold laying on the floor
|
||||
locked chests and large boxes contain more stuff
|
||||
make shopkeepers bill hero for burying merchandise
|
||||
|
||||
|
||||
Fixes to Post-3.6.0 Problems that Were Exposed Via git Repository
|
||||
|
||||
19
src/dig.c
19
src/dig.c
@@ -1863,16 +1863,33 @@ bury_objs(x, y)
|
||||
int x, y;
|
||||
{
|
||||
struct obj *otmp, *otmp2;
|
||||
struct monst *shkp;
|
||||
long loss = 0L;
|
||||
boolean costly;
|
||||
|
||||
costly = ((shkp = shop_keeper(*in_rooms(x, y, SHOPBASE)))
|
||||
&& costly_spot(x, y));
|
||||
|
||||
if (level.objects[x][y] != (struct obj *) 0) {
|
||||
debugpline2("bury_objs: at <%d,%d>", x, y);
|
||||
}
|
||||
for (otmp = level.objects[x][y]; otmp; otmp = otmp2)
|
||||
for (otmp = level.objects[x][y]; otmp; otmp = otmp2) {
|
||||
if (costly) {
|
||||
loss += stolen_value(otmp, x, y, (boolean) shkp->mpeaceful, TRUE);
|
||||
if (otmp->oclass != COIN_CLASS)
|
||||
otmp->no_charge = 1;
|
||||
}
|
||||
otmp2 = bury_an_obj(otmp, (boolean *) 0);
|
||||
}
|
||||
|
||||
/* don't expect any engravings here, but just in case */
|
||||
del_engr_at(x, y);
|
||||
newsym(x, y);
|
||||
|
||||
if (costly && loss) {
|
||||
You("owe %s %ld %s for burying merchandise.", mon_nam(shkp), loss,
|
||||
currency(loss));
|
||||
}
|
||||
}
|
||||
|
||||
/* move objects from buriedobjlist to fobj/nexthere lists */
|
||||
|
||||
Reference in New Issue
Block a user