📄 shadow.html
字号:
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=bg2312">
<META NAME="Author" CONTENT="Spock">
<META NAME="GENERATOR" CONTENT="Mozilla/4.01 [en] (Win95; I) [Netscape]">
<TITLE>MudOS v21c2 参考文件 - efuns - calls - shadow</TITLE>
</HEAD>
<BODY TEXT="#CCFFFF" BGCOLOR="#000000" LINK="#33FF33" VLINK="#FF0000" ALINK="#33CCFF" BACKGROUND="../../../image/ff/fftitleback.jpg" NOSAVE>
<CENTER><FONT COLOR="#FF99FF"><FONT SIZE=+3>shadow(3) MudOS v21c2 (5
Sep 1994)</FONT></FONT></CENTER>
<HR WIDTH="100%">
<BR><FONT COLOR="#FFFFCC"> 名称:</FONT>
<UL> shadow() - 作为一些物件的一个或多个函数的投影 (shadow).</UL>
<FONT COLOR="#FFFFCC"> 语法:</FONT>
<UL> object shadow( object ob, int flag );
<P> 物件 shadow( 物件 ob, 整数 flag );</UL>
<FONT COLOR="#FFFFCC"> 用法:</FONT>
<UL> 如果 flag 是 1, 或是不指定 flag , 则目前的物件将会作为 ob 的投影.
如果 flag 是 0, 则不是返回 0, 就是返回早已作为 ob 投影的物件.
<P> valid_shadow() 函数由主控物件定义. 如果 valid_shadow() 返回 1,
目标物件就无法投影, shadow() 函数会返回 0 而不是 ob.
<BR>
<BR> 如果物件 a 作为物件 b 的投影, 则所有对 b 的 call_other(func)
将会重新导向 (redirect) 到 a. 如果物件 a 没有定义 func 函数, 则 call_other(func)
会向 b 调用 func (等于没有 a 作为投影). 只有 a 可以用 call_other()
调用 b 的函数. b 无法以 call_other() 调用自己. 所有 b 内部的函数调用仅限于
b 自己本身.
<P> 有两个方法可以取消投影. 摧毁作为投影的物件, 或是摧毁被投影的物件.
后者被摧毁之后, 作为其投影的物件也会自动销毁.
<P> 利用投影, 可以使一个物件遮盖另一个物件, 而运作时又似乎像是没有遮住.
shadow() 可以在不更动原始物件源代码的情形下, 改变一个物件的行为. 举例来说,
shadow() 可以为玩家增加一些职业上的特殊能力, 像是贼、战士、魔法师等等的特殊能力.
这样一来, 可以使玩家的物件不会因为各种职业而变得太复杂.</UL>
<FONT COLOR="#FFFFCC"> 参考:</FONT>
<UL> <A HREF="../objects/destruct.html">destruct(3)</A>, <A HREF="shadowp.html">shadowp(3)</A>,
<A HREF="query_shadowing.html">query_shadowing(3)</A>, <A HREF="../../applies/master/valid_shadow.html">valid_shadow(4)</A></UL>
<FONT COLOR="#FFFFCC"> 翻译:</FONT>
<UL> Spock @ FF 97.Jul.22. (printed 3/16/95)</UL>
<CENTER>
<HR WIDTH="100%"></CENTER>
<CENTER><A HREF="../calls.html">回到上一页</A></CENTER>
<CENTER>
<HR WIDTH="100%"></CENTER>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -