the-infocom-files / hitchhiker

The Hitchhiker’s Guide to the Galaxy
21 stars 4 forks source link

YES/NO inconsistency when talking to Eddie #18

Open eriktorbjorn opened 4 years ago

eriktorbjorn commented 4 years ago

One feature of the game is that when it asks you a question you can usually answer "YES" or "NO" on the next turn and get an appropriate response. E.g.

>EDDIE, JUMP
Eddie sighs deeply. "I can't talk right now. Do you know how difficult it is to
pilot a ship as complicated as this one?"

>EDDIE, YES
"Well, leave me alone then! I'm busy!"

There are two cases where EDDIE-F sets up a response like that. One obvious (the one above) and one... less so?

              (T
               <SETG AWAITING-REPLY 18>
               <ENABLE <QUEUE I-REPLY 2>>
               <TELL
"Eddie sighs deeply. \"I can't talk right now. Do you know how difficult it is
to pilot a ship as complicated as this one?\"" CR>
               <FUCKING-CLEAR>)>)
           (<AND <VERB? ASK-ABOUT>
             <PRSI? ,OBJECT-OF-GAME>>
        <SETG AWAITING-REPLY 19>
        <ENABLE <QUEUE I-REPLY 2>>
        <TELL
"\"To pilot " D ,HEART-OF-GOLD ", process data requests from the " D ,NUTRIMAT
" and keep the crew healthy. Read your manual! How do you expect to get
anywhere in life? But don't read unless there's enough light.\"" CR>)>>

But EDDIE-F only redirects "EDDIE, YES" and "EDDIE, NO" to V-YES and V-NOfor AWAITING-REPLY 18, not 19:

              (<AND <VERB? YES>
                <EQUAL? ,AWAITING-REPLY 18>>
               <V-YES>)
              (<AND <VERB? NO>
                <EQUAL? ,AWAITING-REPLY 18>>
               <V-NO>) 

Shouldn't it handle both the same way?

eriktorbjorn commented 4 years ago

Also, it seems like a missed opportunity that it doesn't set up an answer when Eddie asks you if you've brushed your teeth lately:

              (<AND <VERB? REPAIR OPEN>
                <PRSO? ,HATCH>
                ,LANDED>
               <TELL
"\"Not until I completely check out the safety of this planet. Please
wait approximately fourteen years. In the meantime, have you brushed
your teeth lately?\"" CR>)