Creating by Aaron A. Reed, Sand-Dancer, Smelling problem.
I’m going through the book “Creating Interactive Fiction with Inform 7” and have hit a small snag with this bit of code:
[i]The smell of gasoline is fixed in place in Control Center. “[if player holds scent]You can clearly smell gasoline coming from under that [sheet of corrugated metal][otherwise]You catch a faint whiff of gasoline coming from somewhere[end if].”
Understand “faint/whiff” as smell of gasoline. Understand “gas” as smell of gasoline when gas can is not visible.
Instead of doing anything to smell of gasoline, say “[if player holds scent]It’s coming from beneath that [sheet of corrugated metal][else]You can’t tell where the smell is coming from[end if].”
Instead of smelling Control Center, try smelling smell of gasoline.[/i]
Yet in the game:
The Control Center
But hey, on one pile here’s a perfectly good can opener.
You catch a faint whiff of gasoline coming from somewhere.
smell
You smell nothing unexpected.
First I found the source code from his website and copied over that code to easily eliminate any transcription errors I might have made and that didn’t work. I have tried making it “the Control Center” which I don’t think is functionally different and I’ve tried “Instead of smelling when in Control Center, try smelling smell of gasoline.” as well as a “the” variant of that that line. I just can’t seem to figure out what I’m doing wrong.
I’m not sure what’s going on. I don’t have the book, but I tried fleshing your code out just enough to compile and run, and it seems to work.
[code]Control Center is a room. There is a sheet of corrugated metal in Control Center.
There is a gas can. Scent is a thing.
The smell of gasoline is fixed in place in Control Center. “[if player holds scent]You can clearly smell gasoline coming from under that [sheet of corrugated metal][otherwise]You catch a faint whiff of gasoline coming from somewhere[end if].”
Understand “faint/whiff” as smell of gasoline. Understand “gas” as smell of gasoline when gas can is not visible.
Instead of doing anything to smell of gasoline, say “[if player holds scent]It’s coming from beneath that [sheet of corrugated metal][else]You can’t tell where the smell is coming from[end if].”
Instead of smelling Control Center, try smelling smell of gasoline.[/code]
Using the source text from Aaron’s site, I also cannot reproduce the bug. You might try the commands “actions” and “rules on” (or possibly “rules all”) before smelling, to see what turns up.
Thank you. I need to use that a bit more habitually.
Problem: I was abstracting myself to the room in question and smelling. Actions revealed that I was still smelling the room the room I had been abstracted from. It appears the smell command does not properly read your location after an abstraction move. Same with listen.
This strikes me as a problem with the abstraction command.
I’ve run into similar problems when “looking” after using “abstract” to move to a location. It would seem that the “abstracting” process affects one’s senses in strange ways.