OSDN Git Service

[Refactor] #37353 ウィザードモードフラグ を player_type 構造体から world_type 構造体へ移動.
[hengband/hengband.git] / src / view-mainwindow.h
1 #pragma once
2 #include "feature.h"
3
4 extern void get_screen_size(TERM_LEN *wid_p, TERM_LEN *hgt_p);
5 extern int panel_col_of(int col);
6 extern void apply_default_feat_lighting(TERM_COLOR f_attr[F_LIT_MAX], SYMBOL_CODE f_char[F_LIT_MAX]);
7 extern void prt_map(void);
8 extern void map_info(POSITION y, POSITION x, TERM_COLOR *ap, SYMBOL_CODE *cp, TERM_COLOR *tap, SYMBOL_CODE *tcp);
9 extern void display_map(int *cy, int *cx);
10 extern void do_cmd_view_map(void);
11
12 extern void health_track(MONSTER_IDX m_idx);
13 extern void prt_time(void);
14 extern concptr map_name(void);
15 extern void print_monster_list(TERM_LEN x, TERM_LEN y, TERM_LEN max_lines);
16 extern void move_cursor_relative(int row, int col);
17 extern void prt_path(POSITION y, POSITION x);
18 extern void monster_race_track(MONRACE_IDX r_idx);
19 extern void object_kind_track(KIND_OBJECT_IDX k_idx);
20 extern void resize_map(void);
21 extern void redraw_window(void);
22 extern bool change_panel(POSITION dy, POSITION dx);
23
24 extern void window_stuff(void);
25
26 #define ROW_MAP                 0
27 #define COL_MAP                 12
28
29 /*
30  * Bit flags for the "window" variable (etc)
31  */
32 #define PW_INVEN        0x00000001L     /*!<サブウィンドウ描画フラグ: 所持品-装備品 / Display inven/equip */
33 #define PW_EQUIP        0x00000002L     /*!<サブウィンドウ描画フラグ: 装備品-所持品 / Display equip/inven */
34 #define PW_SPELL        0x00000004L     /*!<サブウィンドウ描画フラグ: 魔法一覧 / Display spell list */
35 #define PW_PLAYER       0x00000008L     /*!<サブウィンドウ描画フラグ: プレイヤーのステータス / Display character */
36 #define PW_MONSTER_LIST 0x00000010L     /*!<サブウィンドウ描画フラグ: 視界内モンスターの一覧 / Display monster list */
37  /* xxx */
38  /* xxx */
39 #define PW_MESSAGE      0x00000040L     /*!<サブウィンドウ描画フラグ: メッセージログ / Display messages */
40 #define PW_OVERHEAD     0x00000080L     /*!<サブウィンドウ描画フラグ: 周辺の光景 / Display overhead view */
41 #define PW_MONSTER      0x00000100L     /*!<サブウィンドウ描画フラグ: モンスターの思い出 / Display monster recall */
42 #define PW_OBJECT       0x00000200L     /*!<サブウィンドウ描画フラグ: アイテムの知識 / Display object recall */
43 #define PW_DUNGEON      0x00000400L     /*!<サブウィンドウ描画フラグ: ダンジョンの地形 / Display dungeon view */
44 #define PW_SNAPSHOT     0x00000800L     /*!<サブウィンドウ描画フラグ: 記念写真 / Display snap-shot */
45 /* xxx */
46 /* xxx */
47 #define PW_BORG_1       0x00004000L     /*!<サブウィンドウ描画フラグ: ボーグメッセージ / Display borg messages */
48 #define PW_BORG_2       0x00008000L     /*!<サブウィンドウ描画フラグ: ボーグステータス / Display borg status */
49
50
51 /*
52  * Bit flags for the "redraw" variable
53  */
54 #define PR_MISC         0x00000001L     /*!< 再描画フラグ: 種族と職業 / Display Race/Class */
55 #define PR_TITLE        0x00000002L     /*!< 再描画フラグ: 称号 / Display Title */
56 #define PR_LEV          0x00000004L     /*!< 再描画フラグ: レベル / Display Level */
57 #define PR_EXP          0x00000008L     /*!< 再描画フラグ: 経験値 / Display Experience */
58 #define PR_STATS        0x00000010L     /*!< 再描画フラグ: ステータス /  Display Stats */
59 #define PR_ARMOR        0x00000020L     /*!< 再描画フラグ: AC / Display Armor */
60 #define PR_HP           0x00000040L     /*!< 再描画フラグ: HP / Display Hitpoints */
61 #define PR_MANA         0x00000080L     /*!< 再描画フラグ: MP / Display Mana */
62 #define PR_GOLD         0x00000100L     /*!< 再描画フラグ: 所持金 / Display Gold */
63 #define PR_DEPTH        0x00000200L     /*!< 再描画フラグ: ダンジョンの階 / Display Depth */
64 #define PR_EQUIPPY      0x00000400L     /*!< 再描画フラグ: 装備シンボル / Display equippy chars */
65 #define PR_HEALTH       0x00000800L     /*!< 再描画フラグ: モンスターのステータス / Display Health Bar */
66 #define PR_CUT          0x00001000L     /*!< 再描画フラグ: 負傷度 / Display Extra (Cut) */
67 #define PR_STUN         0x00002000L     /*!< 再描画フラグ: 朦朧度 / Display Extra (Stun) */
68 #define PR_HUNGER       0x00004000L     /*!< 再描画フラグ: 空腹度 / Display Extra (Hunger) */
69 #define PR_STATUS       0x00008000L     /*!< 再描画フラグ: プレイヤーの付与状態 /  Display Status Bar */
70 #define PR_XXX0         0x00010000L     /*!< (unused) */
71 #define PR_UHEALTH      0x00020000L     /*!< 再描画フラグ: ペットのステータス / Display Uma Health Bar */
72 #define PR_XXX1         0x00040000L     /*!< (unused) */
73 #define PR_XXX2         0x00080000L     /*!< (unused) */
74 #define PR_STATE        0x00100000L     /*!< 再描画フラグ: プレイヤーの行動状態 / Display Extra (State) */
75 #define PR_SPEED        0x00200000L     /*!< 再描画フラグ: 加速 / Display Extra (Speed) */
76 #define PR_STUDY        0x00400000L     /*!< 再描画フラグ: 学習 / Display Extra (Study) */
77 #define PR_IMITATION    0x00800000L     /*!< 再描画フラグ: ものまね / Display Extra (Imitation) */
78 #define PR_EXTRA        0x01000000L     /*!< 再描画フラグ: 拡張ステータス全体 / Display Extra Info */
79 #define PR_BASIC        0x02000000L     /*!< 再描画フラグ: 基本ステータス全体 / Display Basic Info */
80 #define PR_MAP          0x04000000L     /*!< 再描画フラグ: ゲームマップ / Display Map */
81 #define PR_WIPE         0x08000000L     /*!< 再描画フラグ: 画面消去 / Hack -- Total Redraw */
82 extern void redraw_stuff(void);
83
84 extern POSITION panel_row_min, panel_row_max;
85 extern POSITION panel_col_min, panel_col_max;
86 extern POSITION panel_col_prt, panel_row_prt;
87
88 /*
89  * Determines if a map location is currently "on screen" -RAK-
90  * Note that "panel_contains(Y,X)" always implies "in_bounds2(Y,X)".
91  */
92 #define panel_contains(Y,X) \
93   (((Y) >= panel_row_min) && ((Y) <= panel_row_max) && \
94    ((X) >= panel_col_min) && ((X) <= panel_col_max))
95