OSDN Git Service

[Refactor] #37353 travel 構造体と関連変数を player-move.c/h に移動.
[hengband/hengband.git] / src / player-move.h
1 #pragma once
2
3 extern void disturb(bool stop_search, bool flush_output);
4 extern void move_player(DIRECTION dir, bool do_pickup, bool break_trap);
5 extern void run_step(DIRECTION dir);
6 extern bool move_player_effect(POSITION ny, POSITION nx, BIT_FLAGS mpe_mode);
7 extern void py_pickup_aux(OBJECT_IDX o_idx);
8 extern bool pattern_seq(POSITION c_y, POSITION c_x, POSITION n_y, POSITION n_x);
9 extern bool trap_can_be_ignored(FEAT_IDX feat);
10 extern void search(void);
11 extern void carry(bool pickup);
12 #ifdef TRAVEL
13 extern void travel_step(void);
14 #endif
15
16 /* Types of pattern tiles */
17 #define NOT_PATTERN_TILE      -1
18 #define PATTERN_TILE_START    0
19 #define PATTERN_TILE_1        1
20 #define PATTERN_TILE_2        2
21 #define PATTERN_TILE_3        3
22 #define PATTERN_TILE_4        4
23 #define PATTERN_TILE_END      5
24 #define PATTERN_TILE_OLD      6
25 #define PATTERN_TILE_TELEPORT 7
26 #define PATTERN_TILE_WRECKED  8
27
28 /*
29  * Bit flags for move_player_effect()
30  */
31 #define MPE_STAYING       0x00000001
32 #define MPE_FORGET_FLOW   0x00000002
33 #define MPE_HANDLE_STUFF  0x00000004
34 #define MPE_ENERGY_USE    0x00000008
35 #define MPE_DONT_PICKUP   0x00000010
36 #define MPE_DO_PICKUP     0x00000020
37 #define MPE_BREAK_TRAP    0x00000040
38 #define MPE_DONT_SWAP_MON 0x00000080
39
40
41
42 #ifdef TRAVEL
43  /*
44   *  A structure type for travel command
45   */
46 typedef struct {
47         int run; /* Remaining grid number */
48         int cost[MAX_HGT][MAX_WID];
49         POSITION x; /* Target X */
50         POSITION y; /* Target Y */
51         DIRECTION dir; /* Running direction */
52 } travel_type;
53
54 /* for travel */
55 extern travel_type travel;
56 #endif
57