🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

2 total messages Started by ab Fri, 24 May 1985 16:26
minor bug fix for the look command
#702
Author: ab
Date: Fri, 24 May 1985 16:26
79 lines
2999 bytes
There is a minor bug in hack.pager.c: When you are blind and want to know
what is lying on the floor, you get the message:

      "You try to feel what is lying here on the floor."

but if there is more than one item, the list of objects follows
immediately without a "--more--".

Here is the fix (add the starred lines):

--- hack.pager.c, line 220:
>       /* --- now we really do it --- */
>       if(mode == 2 && linect == 1)                        /* topline only */
>               pline(texthead->line_text);
>       else
>       if(mode == 2) {
>           register int curline, lth;
>
*           if(flags.toplin == 1) more();
*           remember_topl();
>           lth = CO - maxlen - 2;                 /* Use full screen width */
>           if (linect < LI && lth >= 10) {                  /* in a corner */
>               home ();
>               cl_end ();
>               flags.toplin = 0;
>               curline = 1;
---

Also if you are levitated and blind you shouldn't be able to
feel the things lying on the floor. The fix follows:

*** hack.invent.c.orig  Mon Apr 15 15:11:48 1985
--- hack.invent.c       Fri May 24 13:36:41 1985
***************
*** 625,630
      char *verb = Blind ? "feel" : "see";
      int       ct = 0;
  
      if(!u.uswallow) {
	otmp0 = o_at(u.ux, u.uy);
	gold = g_at(u.ux, u.uy);

--- 625,637 -----
      char *verb = Blind ? "feel" : "see";
      int ct = 0;
  
+     if(Blind) {
+       pline("You try to feel what is lying here on the floor.");
+       if(Levitation) {
+           pline("You cannot reach the floor!");
+           return(1);
+       }
+     }
      if(!u.uswallow) {
	otmp0 = o_at(u.ux, u.uy);
	gold = g_at(u.ux, u.uy);
***************
*** 633,640
	pline("You %s no objects here.", verb);
	return(!!Blind);
      }
- 
-     if(Blind) pline("You try to feel what is lying here on the floor.");
      cornline(0, "Things that are here:");
      for(otmp = otmp0; otmp; otmp = otmp->nobj) {
	if(otmp->ox == u.ux && otmp->oy == u.uy) {

--- 640,645 -----
	pline("You %s no objects here.", verb);
	return(!!Blind);
      }
      cornline(0, "Things that are here:");
      for(otmp = otmp0; otmp; otmp = otmp->nobj) {
	if(otmp->ox == u.ux && otmp->oy == u.uy) {

--
Andreas Bormann                 ab@unido.UUCP
University of Dortmund          N 51 29' 05"   E 07 24' 42"
West Germany
Re: minor bug fix for the look command
#700
Author: ab
Date: Tue, 28 May 1985 13:00
50 lines
1967 bytes
Sorry... the levitation fix should be as follows:

*** hack.invent.c.orig  Mon Apr 15 15:11:48 1985
--- hack.invent.c       Tue May 28 09:23:41 1985
***************
*** 626,631
      int ct = 0;
  
      if(!u.uswallow) {
	otmp0 = o_at(u.ux, u.uy);
	gold = g_at(u.ux, u.uy);
      }

--- 626,638 -----
      int ct = 0;
  
      if(!u.uswallow) {
+       if(Blind) {
+           pline("You try to feel what is lying here on the floor.");
+           if(Levitation) {
+               pline("You cannot reach the floor!");
+               return(1);
+           }
+       }
	otmp0 = o_at(u.ux, u.uy);
	gold = g_at(u.ux, u.uy);
      }
***************
*** 633,640
	pline("You %s no objects here.", verb);
	return(!!Blind);
      }
- 
-     if(Blind) pline("You try to feel what is lying here on the floor.");
      cornline(0, "Things that are here:");
      for(otmp = otmp0; otmp; otmp = otmp->nobj) {
	if(otmp->ox == u.ux && otmp->oy == u.uy) {

--- 640,645 -----
	pline("You %s no objects here.", verb);
	return(!!Blind);
      }
      cornline(0, "Things that are here:");
      for(otmp = otmp0; otmp; otmp = otmp->nobj) {
	if(otmp->ox == u.ux && otmp->oy == u.uy) {

--
Andreas Bormann                 ab@unido.UUCP
University of Dortmund          N 51 29' 05"   E 07 24' 42"
West Germany
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads