Merge branch 'NetHack-3.7' into to500

This commit is contained in:
nhmall
2026-04-28 16:05:26 -04:00
2 changed files with 9 additions and 19 deletions
+7 -17
View File
@@ -1897,27 +1897,17 @@ struct obj *
pick_obj(struct obj *otmp)
{
struct obj *result;
int ox, oy;
boolean robshop = FALSE;
coordxy ox, oy;
boolean robshop, fromfloor = otmp->where == OBJ_FLOOR;
if (otmp->ox == 0 && otmp->oy == 0) {
if (u.uswallow && u.ustuck && otmp->where == OBJ_MINVENT
&& otmp->ocarry == u.ustuck) {
otmp->ox = u.ustuck->mx;
otmp->oy = u.ustuck->my;
} else {
/* this will be a problem for newsym below */
impossible("otmp has no location coordinates <%d, %d> where=%d.",
otmp->ox, otmp->oy, otmp->where);
}
}
/* otmp is either on the floor or in an engulfer's inventory; for the
latter, its <ox,oy> probably won't be set */
(void) get_obj_location(otmp, &ox, &oy, 0);
ox = otmp->ox;
oy = otmp->oy;
robshop = (!u.uswallow && otmp != uball && costly_spot(ox, oy));
obj_extract_self(otmp);
newsym(ox, oy);
if (fromfloor)
newsym(ox, oy);
/* for shop items, addinv() needs to be after addtobill() (so that
object merger can take otmp->unpaid into account) but before
+2 -2
View File
@@ -3120,17 +3120,17 @@ default_checkinput(
if (dwWait == WAIT_FAILED)
return '\033';
#endif
#ifdef INSURANCE
if (iflags.idlecheckpoint
&& dwWait == WAIT_TIMEOUT && !done_a_checkpoint) {
/* no input for 30 seconds, so let's take
* advantage and do a game checkpoint,
* then resume the wait.
*/
#ifdef INSURANCE
save_currentstate();
#endif /* INSURANCE */
done_a_checkpoint = TRUE;
} else
#endif /* INSURANCE */
{
ReadConsoleInput(hConIn, ir, 1, count);
if (mode == 0) {