🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.games.hack
Article #718

Hack 1.0.2 fix for mellow shopkeepers.

#718
From: Latitudinarian Lobster
Date: Tue, 04 Jun 1985 23:47
86 lines
3240 bytes
I've always thought it a bit funny that shopkeepers didn't mind you having
a box or pickaxe IN the shop -- you are only checked when you enter.  It
was recently pointed out that you can currently always get in the front door
with a pickaxe if you are patient enough.

Below is a context diff for a patch (with a couple of older ones included)
which will cause the shopkeeper to become angry if you are ever in his shop
with a box or a pickaxe (aside from standing on the front door).

*** hack.shk.c.old	Mon Apr 29 18:42:44 1985
--- hack.shk.c	Tue Jun  4 18:16:25 1985
***************
*** 233,239
  		if(ANGRY(shopkeeper) &&
  		   strncmp(ESHK(shopkeeper)->customer,plname,PL_NSIZ))
  			NOTANGRY(shopkeeper) = 1;
- 		billobjs = 0;
  		return;
  	}
  	shopkeeper = 0;

--- 233,238 -----
  		if(ANGRY(shopkeeper) &&
  		   strncmp(ESHK(shopkeeper)->customer,plname,PL_NSIZ))
  			NOTANGRY(shopkeeper) = 1;
  		return;
  	}
  	shopkeeper = 0;
***************
*** 816,821
  		else {
  		  uondoor = (u.ux == ESHK(shkp)->shd.x &&
  				u.uy == ESHK(shkp)->shd.y);
  		  if(uondoor) {
  		    if(ESHK(shkp)->billct)
  			pline("Hello %s! Will you please pay before leaving?",

--- 815,821 -----
  		else {
  		  uondoor = (u.ux == ESHK(shkp)->shd.x &&
  				u.uy == ESHK(shkp)->shd.y);
+ 		  badinv = (carrying(PICK_AXE) || carrying(ICE_BOX));
  		  if(uondoor) {
  		    if(ESHK(shkp)->billct)
  			pline("Hello %s! Will you please pay before leaving?",
***************
*** 820,826
  		    if(ESHK(shkp)->billct)
  			pline("Hello %s! Will you please pay before leaving?",
  				plname);
- 		    badinv = (carrying(PICK_AXE) || carrying(ICE_BOX));
  		    if(satdoor && badinv)
  			return(0);
  		    avoid = !badinv;

--- 820,825 -----
  		    if(ESHK(shkp)->billct)
  			pline("Hello %s! Will you please pay before leaving?",
  				plname);
  		    if(satdoor && badinv)
  			return(0);
  		    avoid = !badinv;
***************
*** 824,832
  		    if(satdoor && badinv)
  			return(0);
  		    avoid = !badinv;
! 		  } else {
! 		    avoid = (u.uinshop && dist(gx,gy) > 8);
! 		    badinv = FALSE;
  		  }
  
  		  if(((!ESHK(shkp)->robbed && !ESHK(shkp)->billct) || avoid)

--- 823,833 -----
  		    if(satdoor && badinv)
  			return(0);
  		    avoid = !badinv;
! 		  } else {			/* uwmacc!myers; get angry  */
! 		    if(u.uinshop && badinv) {	/* if you're not in doorway */
! 			avoid = FALSE;
! 			setmangry(shkp);
! 		    } else avoid = (u.uinshop && dist(gx,gy) > 8);
  		  }
  
  		  if(((!ESHK(shkp)->robbed && !ESHK(shkp)->billct) || avoid)
Technical Details
Message-ID: <1185@uwmacc.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!bonnie!akgua!whuxlm!harpo!decvax!mcnc!philabs!cmcl2!seismo!uwvax!uwmacc!myers

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/5/84; site uwmacc.UUCP
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!bonnie!akgua!whuxlm!harpo!decvax!mcnc!philabs!cmcl2!seismo!uwvax!uwmacc!myers
From: myers@uwmacc.UUCP (Latitudinarian Lobster)
Newsgroups: net.games.hack
Subject: Hack 1.0.2 fix for mellow shopkeepers.
Message-ID: <1185@uwmacc.UUCP>
Date: Tue, 4-Jun-85 19:47:16 EDT
Article-I.D.: uwmacc.1185
Posted: Tue Jun  4 19:47:16 1985
Date-Received: Thu, 6-Jun-85 06:50:20 EDT
Distribution: net
Organization: UWisconsin-Madison Academic Comp Center
Lines: 86