You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In various places the word "rule" was formatted as if it was an Alan
keyword (i.e. styled as inline code, `Rule`), which it isn't.
Amend to it by replacing all occurrences with the word "rule" emphasized
(i.e. _rule_) to distinguish it from the general term "rules".
Closes#57.
Copy file name to clipboardExpand all lines: manual/manual_03.asciidoc
+5-5
Original file line number
Diff line number
Diff line change
@@ -2490,7 +2490,7 @@ End Verb.
2490
2490
If your `Verb` has multiple definitions (e.g. for various classes) applying `Meta` to any one of them will make the verb a meta verb, meaning that if the player uses that verb in any context and on any instance, it won't consume a tick, even if that particular definition did not have the `Meta` property explicitly expressed.
2491
2491
A library might decide that `'score'` was a meta verb and there is nothing you, as an author, can do to override that short of editing the library source.
2492
2492
2493
-
Furthermore, a `Meta` verb does not trigger evaluation of ``Rule``s and ``Event``s either, so they are genuinely "`outside`" the game and should only be used with verbs that are not considered part of the players progression inside the game.
2493
+
Furthermore, a `Meta` verb does not trigger evaluation of _rules_ and ``Event``s either, so they are genuinely "`outside`" the game and should only be used with verbs that are not considered part of the players progression inside the game.
A (((RULE))) `Rule` is an arbitrary expression, which, when true, results in the execution of some given statements.
2851
+
A (((RULE))) _rule_ is an arbitrary expression, which, when true, results in the execution of some given statements.
2852
2852
Rules can only be declared on the global level (not inside classes or instances).
2853
2853
The main intended use of rules is to detect particular situations and then trigger some action.
2854
2854
Typically they can be used to make things happen when certain situations arise, such as starting an actor when the hero enters the cave.
@@ -2886,7 +2886,7 @@ In the example above, the triggering of the `hunting` script for the monster wil
2886
2886
The use of parameters, `Current Actor`, `Current Location`, `Here` and `Nearby` is not allowed in rules conditionals or bodies.
2887
2887
2888
2888
Rules are executed at no location.
2889
-
Therefore, within ``Rule``s it's not possible to communicate directly with the player via output statements (since the hero cannot be where the rule is executing, see <<Output Statements>>).
2889
+
Therefore, within _rules_ it's not possible to communicate directly with the player via output statements (since the hero cannot be where the rule is executing, see <<Output Statements>>).
2890
2890
Triggering an `Event` that handles the output intended for the player is the recommended solution to this.
In this example the `Rule` conditional (i.e. `Count IsA actor, At kitchen = 1`) is using an aggregation (`count`, see <<Aggregates>>) over two filters (see <<Filters>>) that will count the number of ``actor``s at the `kitchen`, and when that number becomes one, the rule will trigger and execute the statements, in this case scheduling an event that handles the presentation of the output to the player.
2914
+
In this example the _rule_ conditional (i.e. `Count IsA actor, At kitchen = 1`) is using an aggregation (`count`, see <<Aggregates>>) over two filters (see <<Filters>>) that will count the number of ``actor``s at the `kitchen`, and when that number becomes one, the rule will trigger and execute the statements, in this case scheduling an event that handles the presentation of the output to the player.
2915
2915
2916
2916
Again, remember that rules are checked after each actor has moved.
2917
2917
What happens if there are more actors in play and they move in and out of the kitchen, is left as an exercise to the reader.
@@ -3616,7 +3616,7 @@ Schedule ringing At clock After 60 - minutes Of clock.
3616
3616
The number of moves can be zero, i.e. `After 0` means that the event will occur now (during this player turn, probably last, though).
3617
3617
If no location is specified, `Here` is assumed, i.e. it will be executed at the current location, the location where the statement itself was executed.
3618
3618
3619
-
An important case is when a `Schedule` statement without a *WHERE* clause is executed inside a `Rule`.
3619
+
An important case is when a `Schedule` statement without a *WHERE* clause is executed inside a _rule_.
3620
3620
Since rules are executed at nowhere so will the event.
3621
3621
This means that any printout will occur nowhere, and will thus be invisible to the player.
Copy file name to clipboardExpand all lines: manual/manual_05.asciidoc
+1-1
Original file line number
Diff line number
Diff line change
@@ -27,7 +27,7 @@ The player input is analysed according to the explicit and implicit `Syntax` rul
27
27
Global `Verb` ``Check``s and bodies are used for verbs taking no parameters, otherwise the verb bodies are found in the parameter instances or their classes.
28
28
In case the player typed a directional command the corresponding `Exit` check and code is executed.
29
29
30
-
After the (((player commands))) player's command has been taken care of, all ``Rule``s are evaluated and possibly executed.
30
+
After the (((player commands))) player's command has been taken care of, all _rules_ are evaluated and possibly executed.
31
31
Then each of the other ``actor``s executes one step in their ``Script``s (if active) and for each actor the rules are evaluated again.
32
32
Finally, each `Event` that is scheduled for this round is fired, and the rules evaluated yet again.
33
33
Finally the player is prompted for another command.
0 commit comments