Good news 1:
matt w wrote:
Code:
Report entering the bed: say "You slide under the covers and wrap your legs in them. Careful not to wake up Terry."; rule succeeds.
What "rule succeeds" means is that, when this rule runs, the "report entering" rulebook stops. (See section 18.10 of the rulebook.) So the standard reporting rule doesn't run. This rule runs before the standard report entering rule because it's more specific; it's about entering the bed rather than entering just anything.
Make that
Code:
After entering the bed: say "You slide under the covers and wrap your legs in them. Careful not to wake up Terry."
After rules run before any report rules, and they automatically stop the action.
Good news 2:
matt w wrote:
The tricky thing is that you can't write "Report exiting the bed" because "exiting" isn't an action that applies to a thing; it just means exiting whatever the player is in. But you can't write "Report exiting when the player is in the bed" because, by the time the report rule runs, the player isn't in the bed anymore. What I did was to look up "exiting" in the Index (under the "Actions" tab) and see, when I clicked on the magnifying glass, that it had a "named value" called the "container exited from." That's what I needed to use here -- whenever you exit, "container exited from" stores, well, the container you exited from, which is exactly what we need here.
Using the Index is good advice! As it happens, Inform (nowadays) lets authors write thing like
Code:
After exiting from the bed
in their rules – though it won't let players write commands like "EXIT FROM BED"!
Good news 3:
matt w wrote:
I don't think there's a way to make all appliancey things scenery
Yes, there actually is:
Code:
An appliancey thing is usually scenery.