the-infocom-files / deadline

Deadline
4 stars 3 forks source link

Baxter's description is supposed to change after Dunbar dies #62

Open eriktorbjorn opened 5 years ago

eriktorbjorn commented 5 years ago

From BAXTER-F:

           (<VERB? EXAMINE>
        <COND (,SHOT-FIRED
               <COND (<IN? ,BAXTER ,DUNBAR-ROOM>
                  <TELL
"Baxter seems out of breath. His hair is disheveled and his hands are
somewhat soiled." CR>)
                 (T
                  <TELL
"Mr. Baxter has recovered his composure and looks calm. His hair is a bit
disheveled and his hands are dirty." CR>)>)>) 

But SHOT-FIRED is the wrong variable to check. It's set when you hear the shot, but only if you're close enough. From I-BAXTER-SEQ:

               <COND (<==? <GETP ,HERE ,P?LINE> ,TOP-OF-THE-LINE-C>
                  <SETG SHOT-FIRED T>
                  <TELL
"You hear a pistol shot close by." CR>)
                 (<==? <GETP ,HERE ,P?LINE> ,OUTSIDE-LINE-C>
                  <TELL
"You hear what sounds like a pistol shot from inside the house." CR>)
                 (T
                  <TELL
"From upstairs, you hear a single explosion like a pistol shot." CR>)>

The only purpose of SHOT-FIRED seems to be that if you were close when the shot was fired, you can catch a glimpse of Baxter running away in I-BAXTER-ESCAPE. The flag is then cleared.

The proper way to check if Dunbar is dead seems to be to check <IN? ,CORPSE ,DUNBAR-ROOM>. Though ideally, we should check both if Dunbar is dead and if Baxter has returned to Dunbar's room after the murder. He shouldn't regain his composure until after he leaves again, right?

eriktorbjorn commented 5 years ago

You can also check the DUNBAR-DEAD variable, but that's not used much.

eriktorbjorn commented 5 years ago

If we want to track that Baxter has seen Dunbar's corpse and then left the room, I guess I-BAXTER-END-1 would be the right place for it.