*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]]()