dobjFor(LookIn) Not functioning properly!(?)

I am very new to TADS3, so I am trying to follow the examples in the guide “Getting Started in TADS3” by Eric Eve. So far it has been pretty easy to follow and understand, but I have run into a snag.
I am working on the task of hiding a diamond ring inside a bird’s nest, and I am using the action “dobjFor(LookIn)” to creat a special message that is supposed to appear when a game player types in either “Look in nest” or “Search nest”. According to the guide I am reading, the definition for the class “Thing”, which is the class the nest belongs to, includes instructions for the action “dobjFor(LookIn)” to refer the verb “Search” back to the “LookIn” action so the two verbs behave the same. (I hope that made sense…) However, if I run & compile and play the game up to the apropriate place and type in “look in nest”, the program runs like it is supposed to, but if I type in “Search nest” it finds the hidden object in the nest and bypasses the whole puzzle. This is very problematic, as I am supposed to elaborate on this puzzle in the next section of the guide to include finding a stick and moving the nest with the stick. If the player simply has to type “search nest” to bypass this entire process, it is not worth it! There must be some way I can get dobjFor(LookIn) and dobjFor(Search) to both execute on this object. I have tried adding "dobjFor(LookIn) asDobjFor(Search) and many other variations along those lines, but it wont compile and run that way; it just tells me there should be brackets and/or property names (the results vary) in places where they are currently not…(LOL)
Sorry if this is making your head(s) spin… it is just not working the way my, so far true and faithful, guide is telling me it is supposed to work and it is causing big loopholes in my game. I don’t want to run into this problem when I am constructing my own games.
Thank you for any help you can offer!

Without seeing your code I can’t say for sure what is happening; I have the Getting Started guide in front of me, so if we could compare what you have to what’s in the guide we could narrow down the problem. If they are indeed the same, then we could go from there.

edit: one other thing, I’m a little confused by your wording. Shouldn’t ‘look in nest’ and ‘search nest’ in this example both find the ring? So when you say things go ‘as they ought to’ with look in, what do you mean by that?

Congratulations, you’ve found a bug in Heidi!

The problem is that the library is only remapping dobjFor(Search) { action() {} } to LookIn. If you type SEARCH NEST, it does Search verify and check, then LookIn action.

The simplest fix is to change this:

  dobjFor(LookIn)
  {
    
    check()
    {
      if(!isHeldBy(gActor))
      {
        "You really need to hold the nest to take a good look at what's inside. ";
        exit;
      }
    }
    action()    
    {
       if(ring.moved)
       {
         "You find nothing else of interest in the nest. ";
         exit;
       }
       ring.makePresent();
       "A closer examination of the nest reveals a diamond ring inside! ";
       addToScore(1, 'finding the ring');
    }
  }

to this:

  dobjFor(LookIn)
  {
    action()    
    {
      if(!isHeldBy(gActor))
      {
        "You really need to hold the nest to take a good look at what's inside. ";
        exit;
      }

       if(ring.moved)
       {
         "You find nothing else of interest in the nest. ";
         exit;
       }
       ring.makePresent();
       "A closer examination of the nest reveals a diamond ring inside! ";
       addToScore(1, 'finding the ring');
    }
  }

You should probably also email Eric and let him know about the bug.

[size=200]Thank You!!![/size]

I cannot thank you enough for helping me! I was so stuck! LOL
I switched “verify()” to “action()” and it worked like a charm. I am sorry - to the other fellow/gal who replied- about my confusing description! It felt like I was typing in circles while I was typing it, but I did not know how else to describe my problem! LOL

I will email Eric Eve and tell him what I found… I can’t imagine that I am the first to run into this problem though!

Thanks Again!