It begins to be annoying. One n00b question after the other.
Here my most recent one. This is a code snippet I have:
Instead of pushing the Activation-Key:
Say "The screen flickers up and displays this:[paragraph break]";
Now the command prompt is "Please enter the password to access this terminal: ";
Continue the action.
The result is this:
So quite obviously the âNothing obvious happens.â is a blatant lie. What am I doing wrong or how do I get rid of the lie?
You donât want to continue the action, because that means that the default behaviour will take place after your special behaviour. Instead of âcontinue the actionâ, you want its opposite, âstop the actionâ.
Though in this case you donât need âstop the action,â because itâs an instead rule; every Instead rule by default stops the action unless you tell it to continue.
And if you want the action to register as succesful (which is one of the reasons youâd use âcontinue the actionâ), you should use an after rule, not an instead rule.
Thank you for helping me with this. The solution was blindingly obvious! Thanks a bundle.
Generally I know the difference between âinsteadâ and âafterâ. Just in this case I am uncertain whether there is any difference. I am sure there is, but I canât discern it.
Test Lab is a room. The description of Test Lab is âA plain, white room with a terminal in the middle of the room.â.
A terminal is a thing in Test Lab. The description of terminal is âAn old machine with a keyboard and monitor. On the terminal keyboard there is an activation-key that stands out from the rest.â.
Activation-Key is a part of terminal.
Instead of pushing the Activation-Key:
Say âThe screen flickers up and displays this:[paragraph break]â;
Now the command prompt is "Please enter the password to access this terminal: ";
Continue the action.
Report pushing the Activation-Key:
do nothing instead.[/code]
(Note the last bit of code referring to reporting the action)
Before (default continue the action) Instead (default stop the action) Check (default continue the action) Carry Out (should ALWAYS continue the action) After (default stop the action, but counts as success) Report (default continue the action)
As you see, the Check rules run before the After rules, so itâs useful to use After if you donât want to interfere with rules that would normally stop the action. However, if Iâm not mistaken, the pushing action is always stopped by a check rule, so if you ever want it to work, you must use an Instead rule. If I remember correctly, you can end the Instead rule with ârule succeedsâ to make it count as success, although Iâm not positive.
An additional thing to note is that Check, Carry Out and Report rules can only handle one action, which is why the action name is part of their rulebook name. Before, Instead, and After rules can work for descriptions of actions (âdoing anythingâ) and kinds of action (âpushing is technical work. Instead of technical workâŚâ)
I know this is an old post, but this is a great presentation of the different rulebooks for actions so I wanted to reply to it. Thanks for this incredibly useful summary!
FYI, the pushing action doesnât have a blocking check rule on it, but for those actions that do have blocking check rules, you donât have to use an Instead rule. Another option is unlisting the blocking check rule, which gives you full access to all the stages of the action again. Using the waking action as an example â it does have a blocking check rule â you can type:
The block waking up rule is not listed in the check waking up rulebook.