ES2 MUD LIB :: 東方故事二(ES2) 天朝帝國 mudlib 瀏覽展示
/doc/efuns/process_string
pppprrrroooocccceeeessssssss____ssssttttrrrriiiinnnngggg((((3333)))) MMMMuuuuddddOOOOSSSS ((((5555 SSSSeeeepppp 1111999999994444)))) pppprrrroooocccceeeessssssss____ssssttttrrrriiiinnnngggg((((3333))))
NNNNAAAAMMMMEEEE
process_string() - give a string with replaced
calldescriptions
SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
string process_string( string combinestring );
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
Processes a string by replacing specific syntactic patterns
with what is returned when the pattern is interpreted as a
function call description.
The syntactic patterns are on the form:
"@@function[:filename][|arg1|arg2....|argN]@@"
This is interpreted as a call:
filename->function(arg1, arg2, ....., argN)
Note that process_string does not recurse over returned
replacement values. If a function returns another syntactic
pattern, that description will not be replaced.
All such occurrences in 'combinestring' is processed and
replaced if the return value is a string. If the return
value is not a string the pattern will remain unreplaced.
Note that both object and arguments are marked optional with
the brackets and that the brackets are not included in the
actual pattern.
SSSSEEEEEEEE AAAALLLLSSSSOOOO
process_value(3)
CCCCAAAAVVVVEEEEAAAATTTT
This is usually used to support 'value by function call' in
the mudlib. It is wise to set the effuserid of the object
to 0 before using process_value as any function in any
object can be called with almost any arguments.
EEEEXXXXAAAAMMMMPPPPLLLLEEEE
A string:
"You are chased by @@query_the_name:/obj/monster#123@@ eastward."
is replaced by:
"You are chased by the orc eastward."
Page 1 (printed 3/16/95)
pppprrrroooocccceeeessssssss____ssssttttrrrriiiinnnngggg((((3333)))) MMMMuuuuddddOOOOSSSS ((((5555 SSSSeeeepppp 1111999999994444)))) pppprrrroooocccceeeessssssss____ssssttttrrrriiiinnnngggg((((3333))))
Assuming that query_the_name in monster#123 returns "the orc".
Page 2 (printed 3/16/95)