Hengband
2.2.1
|
#include "floor.h"
データ構造 | |
struct | travel_type |
マクロ定義 | |
#define | TRAVEL |
#define | MPE_STAYING 0x00000001 |
#define | MPE_FORGET_FLOW 0x00000002 |
#define | MPE_HANDLE_STUFF 0x00000004 |
#define | MPE_ENERGY_USE 0x00000008 |
#define | MPE_DONT_PICKUP 0x00000010 |
#define | MPE_DO_PICKUP 0x00000020 |
#define | MPE_BREAK_TRAP 0x00000040 |
#define | MPE_DONT_SWAP_MON 0x00000080 |
#define | NOT_PATTERN_TILE -1 |
#define | PATTERN_TILE_START 0 |
#define | PATTERN_TILE_1 1 |
#define | PATTERN_TILE_2 2 |
#define | PATTERN_TILE_3 3 |
#define | PATTERN_TILE_4 4 |
#define | PATTERN_TILE_END 5 |
#define | PATTERN_TILE_OLD 6 |
#define | PATTERN_TILE_TELEPORT 7 |
#define | PATTERN_TILE_WRECKED 8 |
関数 | |
void | disturb (player_type *creature_ptr, bool stop_search, bool flush_output) |
void | move_player (player_type *creature_ptr, DIRECTION dir, bool do_pickup, bool break_trap) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す / Move player in the given direction, with the given "pickup" flag. [詳解] | |
void | run_step (DIRECTION dir) |
継続的なダッシュ処理 / Take one step along the current "run" path [詳解] | |
bool | move_player_effect (player_type *creature_ptr, POSITION ny, POSITION nx, BIT_FLAGS mpe_mode) |
移動に伴うプレイヤーのステータス変化処理 [詳解] | |
void | py_pickup_aux (OBJECT_IDX o_idx) |
プレイヤーがオブジェクトを拾った際のメッセージ表示処理 / Helper routine for py_pickup() and py_pickup_floor(). [詳解] | |
bool | pattern_seq (player_type *creature_ptr, POSITION c_y, POSITION c_x, POSITION n_y, POSITION n_x) |
パターンによる移動制限処理 [詳解] | |
bool | trap_can_be_ignored (player_type *creature_ptr, FEAT_IDX feat) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す [詳解] | |
void | search (player_type *creature_ptr) |
プレイヤーの探索処理判定 [詳解] | |
void | carry (bool pickup) |
プレイヤーがオブジェクト上に乗った際の表示処理 [詳解] | |
void | do_cmd_travel (player_type *creature_ptr) |
トラベル処理のメインルーチン [詳解] | |
void | travel_step (void) |
トラベル機能の実装 / Travel command [詳解] | |
変数 | |
travel_type | travel |
#define MPE_BREAK_TRAP 0x00000040 |
#define MPE_DO_PICKUP 0x00000020 |
#define MPE_DONT_PICKUP 0x00000010 |
#define MPE_DONT_SWAP_MON 0x00000080 |
#define MPE_ENERGY_USE 0x00000008 |
#define MPE_FORGET_FLOW 0x00000002 |
#define MPE_HANDLE_STUFF 0x00000004 |
#define MPE_STAYING 0x00000001 |
#define NOT_PATTERN_TILE -1 |
#define PATTERN_TILE_1 1 |
#define PATTERN_TILE_2 2 |
#define PATTERN_TILE_3 3 |
#define PATTERN_TILE_4 4 |
#define PATTERN_TILE_END 5 |
#define PATTERN_TILE_OLD 6 |
#define PATTERN_TILE_START 0 |
#define PATTERN_TILE_TELEPORT 7 |
#define PATTERN_TILE_WRECKED 8 |
#define TRAVEL |
void carry | ( | bool | pickup | ) |
プレイヤーがオブジェクト上に乗った際の表示処理
pickup | 自動拾い処理を行うならばTRUEとする |
Player "wants" to pick up an object or gold. Note that we ONLY handle things that can be picked up. See "move_player(p_ptr, )" for handling of other things.
void disturb | ( | player_type * | creature_ptr, |
bool | stop_search, | ||
bool | flush_output | ||
) |
void do_cmd_travel | ( | player_type * | creature_ptr | ) |
トラベル処理のメインルーチン
void move_player | ( | player_type * | creature_ptr, |
DIRECTION | dir, | ||
bool | do_pickup, | ||
bool | break_trap | ||
) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す / Move player in the given direction, with the given "pickup" flag.
dir | 移動方向ID |
do_pickup | 罠解除を試みながらの移動ならばTRUE |
break_trap | トラップ粉砕処理を行うならばTRUE |
Note that moving will always take a turn, and will always hit
any monster which might be in the destination grid. Previously,
moving into walls was "free" and did NOT hit invisible monsters.
bool move_player_effect | ( | player_type * | creature_ptr, |
POSITION | ny, | ||
POSITION | nx, | ||
BIT_FLAGS | mpe_mode | ||
) |
移動に伴うプレイヤーのステータス変化処理
ny | 移動先Y座標 |
nx | 移動先X座標 |
mpe_mode | 移動オプションフラグ |
bool pattern_seq | ( | player_type * | creature_ptr, |
POSITION | c_y, | ||
POSITION | c_x, | ||
POSITION | n_y, | ||
POSITION | n_x | ||
) |
パターンによる移動制限処理
c_y | プレイヤーの移動元Y座標 |
c_x | プレイヤーの移動元X座標 |
n_y | プレイヤーの移動先Y座標 |
n_x | プレイヤーの移動先X座標 |
void py_pickup_aux | ( | OBJECT_IDX | o_idx | ) |
プレイヤーがオブジェクトを拾った際のメッセージ表示処理 / Helper routine for py_pickup() and py_pickup_floor().
o_idx | 取得したオブジェクトの参照ID |
アイテムを拾った際に「2つのケーキを持っている」
"You have two cakes." とアイテムを拾った後の合計のみの表示がオリジナル
だが、違和感が
あるという指摘をうけたので、「~を拾った、~を持っている」という表示
にかえてある。そのための配列。
Add the given dungeon object to the character's p_ptr->inventory_list.
Delete the object afterwards.
void run_step | ( | DIRECTION | dir | ) |
継続的なダッシュ処理 / Take one step along the current "run" path
dir | 移動を試みる方向ID |
void search | ( | player_type * | creature_ptr | ) |
プレイヤーの探索処理判定
bool trap_can_be_ignored | ( | player_type * | creature_ptr, |
FEAT_IDX | feat | ||
) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す
feat | 地形ID |
void travel_step | ( | void | ) |
トラベル機能の実装 / Travel command
travel_type travel |