*m_move() [#e9936c2e] **書式 [#r86aaec8] monmove.c, 関数 int m_move( struct monst *mtmp; // 移動させる怪物 int after; // 未使用? ); **パラメータ [#bdd9e4bc] :mtmp|移動させる怪物 :after|未使用? dog_move() に渡されるパラメータだが、m_move() が呼ばれるときには 0 が渡されている **戻り値 [#nddecbe6] |戻り値|意味|h |0|移動せず。まだ攻撃など他の行動が可能| |1|移動した。攻撃など他の行動が可能(※近接攻撃以外)| |2|死亡した| |3|移動せず。他の行動は不可| **解説 [#tfeea7d4] マップ上の怪物を移動させる。 m_move() ├ mintrap() 罠を起動 ├ set_apparxy() 怪物がプレイヤーをどこに居ると思っているか決める ├ dog_move() (ペット) ├ shk_move() (店主) ├ gd_move() (vault guard) ├ mattackm() (怪物同士のアーティファクト争奪) ├ pri_move() (priest) ├ プレイヤーに近づく/遠ざかる/ランダム移動 のどれにするか決める │ ├ can_track() プレイヤーが怪物の視界内にいない場合、 │ └ get_track() プレイヤーの移動軌跡(新しい座標優先)が隣接するマスにあればそこに移動 ├ 物を拾うかどうか決める ├ 拾うものを探す ├ mfndpos() 移動できる場所を探す ├ mattackm() 偶然による怪物の同士討ち ├ remove_monster() 位置更新 ├ place_monster() 位置更新 ├ worm_move() ├ mintrap() 罠を起動(移動後) ├ meatmetal() (rock mole, xorn) ├ mpickgold() ├ meatobj() (gelatinous cube) ├ mpickstuff() 物を拾う ├ 移動後の処理 掘る・ドア開ける・ドア壊す・ドア/格子を通り抜けたメッセージ └ after_shk_move() (店主) **対応情報 [#ba5cb2fe] -NetHack 3.4.3 **関連項目 [#s7e1e8d6] [[dochug]](), [[dog_move]](), [[shk_move]](), [[gd_move]](), [[pri_move]](), [[worm_move]](), [[after_shk_move]]()