inform7: why won't my fogged unfogged work?

a container can be fogged or unfogged. a container is usually unfogged.

[code]Glass pieces are here. metal shelves are supporters in room of horrors. foggy container is a fogged container on metal shelves. a huge glass container is a container in room of horrors. dead horse is an animal in huge glass container. a wooden crate is here. wooden crate is a container. dead things are scenery in The Room of Horrors.
Understand “shelf” as shelves.

The description of foggy container is “[if fogged]You can’t see anything in the container its too fogged up.[otherwise if unfogged] you see something in there but what it is you dont know.”

wiping is an action applying to two things.
understand "wipe [something] "or “rub [something]” as wiping.
Check wiping:
If the noun is the player, say “I don’t need to be wiped.” instead;
If the noun is the glass wall, say "[if glass wall is closed] glass wall looks much cleaner now.[otherwise if glass wall is open] You can’t wipe what is not there."instead.
carry out wiping:
say “the [noun] is clean now.”

Rule for printing room description details of the metal shelves: omit contents in listing.

Instead of touching metal shelves, say “As cold as ice.”
Instead of eating dead things, say “Yuck! Why would you want to do that?”
Instead of touching dead things, say “Please respect the dead!”

crying is an action applying to nothing.
understand “cry” and “sob” and “weep” as crying.
Check crying:
If the player is in Room of Horrors, say "Tears run down your face as you mourn for the ones who died."instead.
carry out crying:
say “[if player is human]You cry loudly Wahhhh, Why so sad?[otherwise if player is goose] You put your head under your wing and cry.”

honking is an action applying to nothing.
Understand “honk” as honking.
Carry out honking:
say “[if player is goose]You let out a loud honk.[otherwise if player is human] You have no reason to honk.”

Instead of searching metal shelves, say “There are many glass containers on the metal shelves but the only one that interests you is a foggy container.”

Instead of examining metal shelves, say “There are many glass containers on the metal shelves but the only one that interests you is a foggy container.”

Instead of wiping foggy container: say “You wipe the fog off the outside of the container.”;now container is unfogged[/code]
Whenever i try to wipe the foggy container it says you achieve nothing by this.

“wipe” is already built-in; it maps to “rub.” (You can find this by looking at “commands A-Z” in the actions tab of the index, or by typing “actions” when you’re running the game to see what action it’s trying to take when you type “wipe foggy container.”) You have to eliminate the existing grammar for “wipe” before you redefine it. This is pretty simple; add the line

Understand the command "wipe" as something new.

before you define wiping. See section 16.3 of the documentation on overriding existing commands. And since you want to understand “rub” as wiping too, you’ll also have to add Understand the command “rub” as something new.

…except in this case, what you might want to do is take over the existing rubbing action, since it’s already defined for you, and change all your “Instead of wiping” rules to “Instead of rubbing” rules. If you do that, you’ll want to take out the “block rubbing” rule, which is what’s producing the message “You achieve nothing by this,” thus:

The block rubbing rule is not listed in the check rubbing rulebook.

And if you want an action that applies to two things, you should use a different sort of action name, like this:

Rubbing it with is an action applying to two things. Understand "wipe/rub [something] with [something] as rubbing it with.

The “it” tells you where the first noun goes when you talk about doing things, so you can write rules like this:

Instead of rubbing the player with the cloth, say "You're not sweaty."

In your code I didn’t see any provision for dealing with the second noun, so I wasn’t quite sure what you wanted to do there.

thanks all i needed to do is use the understand as something new.