Next: 12.4 [TECFAMOO] Multiownership and
Up: [TECFAMOO] ProgrammingWhat's different
Previous: 12.2 [TECFAMOO] Local Core
Janus added support for blocked verbs (aka non-overridable verbs).
A blocked verb is said to be '+b', a non-blocked (the default) is said
to be '-b'.
You can change the b bit of a verb by using @chmod
or
set_verb_info()
. You can check the b bit of a verb through
verb_info()
.
Basically when a verb is made +b, the following happens:
-
it prevents to add (on the object or its descendants) any verbs
that have in their names one of the names of the verb you made +b.
-
it prevents to add (to verb on the object or its descendants)
aliases that are one of the names of the verb you made +b.
-
it prevents objects to be chparented in the following situation.
Any object (or a descendant of the object):
-
has a verb, of which one of its names is one of the names of the verb
you made +b (on the potential new parent)
-
Technical note:
The 'b' flag for verbs behave a bit like the 'c' for properties.
Also note:
- When you make a verb +b on an object, if that object (or its
descendants) has a verb have which one of the names is one of the
names of the verb you make +b, there will be no problem and no
warning. It will NOT make any other verb (than the one one you make
+b) +b. If you want to be sure no descendants has a verb which names
... you have to use
@check-b*locked-verbs <object>:<verb_I_want_to_make_+b>.
That means you can also make +b
verbs on ancestors of objects that have those verbs +b.
- The support for the 'b' flag requires extensive checking when
adding a verb, renaming a verb or chparenting an object. This
overhead can cause lags in some cases.
- The support for blocked verbs is done COMPLETELY in-db without any
server hack.
E_NACC
(Move refused by destination) is raised by
chparent()
, add_verb()
and set_verb_info()
if
chparenting an object, adding a verb or renaming a verb would cause to
override some blocked verbs defined on the object or its ancestors.
Next: 12.4 [TECFAMOO] Multiownership and
Up: [TECFAMOO] ProgrammingWhat's different
Previous: 12.2 [TECFAMOO] Local Core
Daniel K. Schneider
Thu Apr 17 12:43:52 MET DST 1997