- 追加された行はこの色です。
- 削除された行はこの色です。
*w_blocks() [#v5f205aa]
**書式 [#e7f4ee82]
worn.c, マクロ
int
w_blocks(
struct obj *o; // 判定するオブジェクトへのポインタ
long m; // 着脱する箇所のマスク
);
**パラメータ [#e2c0c62a]
:o|判定するオブジェクトへのポインタ
:m|着脱する箇所のマスク
**戻り値 [#kb2dcc07]
o が耐性・能力を阻害する機能を持つ場合、該当するプロパティの番号を返す。~
vanillaでは、mummy wrapping が INVIS を、cornuthaum が条件付きで CLAIRVOYANT を返している。
**解説 [#lb64e191]
u.uprops[].blocked に適切な値を設定するために、setworn(), setnotworn() から呼ばれる。w_blocks() が0以外を返すと、setworn()/setnotworn() によって objects[].oc_oprop のプロパティを u.uprops[].extrinsic に設定するのに加え、u.uprops[].blocked にも戻り値に対応した設定がなされる。(ただし、blockedが機能するのは現状でCLAIRVOYANT, INVIS, STEALTHのみ)
**対応情報 [#heeac333]
-NetHack 3.4.3
**関連項目 [#d7d3c6f1]
[[setworn]](), [[setnotworn]](), [[update_mon_intrinsic]]()