Hengband
2.2.1
|
#include "angband.h"
#include "util.h"
#include "autopick.h"
#include "term.h"
#include "bldg.h"
#include "core.h"
#include "files.h"
#include "world.h"
#include "quest.h"
#include "artifact.h"
#include "avatar.h"
#include "player-status.h"
#include "player-class.h"
#include "player-race.h"
#include "player-effects.h"
#include "player-inventory.h"
#include "monster.h"
#include "view-mainwindow.h"
#include "spells.h"
#include "realm-hex.h"
#include "realm-song.h"
#include "object-flavor.h"
#include "grid.h"
#include "dungeon.h"
#include "floor.h"
#include "floor-town.h"
#include "feature.h"
#include "objectkind.h"
#include "targeting.h"
マクロ定義 | |
#define | IS_ASCII_GRAPHICS(A) (!((A) & 0x80)) |
#define | ROW_RACE 1 |
#define | COL_RACE 0 /* <race name> */ |
#define | ROW_TITLE 2 |
#define | COL_TITLE 0 /* <title> or <mode> */ |
#define | ROW_DAY 21 |
#define | COL_DAY 0 /* day */ |
#define | ROW_DUNGEON 22 |
#define | COL_DUNGEON 0 /* dungeon */ |
#define | ROW_LEVEL 3 |
#define | COL_LEVEL 0 /* "LEVEL xxxxxx" */ |
#define | ROW_EXP 4 |
#define | COL_EXP 0 /* "EXP xxxxxxxx" */ |
#define | ROW_GOLD 5 |
#define | COL_GOLD 0 /* "AU xxxxxxxxx" */ |
#define | ROW_EQUIPPY 6 |
#define | COL_EQUIPPY 0 /* equippy chars */ |
#define | ROW_STAT 7 |
#define | COL_STAT 0 /* "xxx xxxxxx" */ |
#define | ROW_AC 13 |
#define | COL_AC 0 /* "Cur AC xxxxx" */ |
#define | ROW_HPMP 14 |
#define | COL_HPMP 0 |
#define | ROW_CURHP 14 |
#define | COL_CURHP 0 /* "Cur HP xxxxx" */ |
#define | ROW_CURSP 15 |
#define | COL_CURSP 0 /* "Cur SP xxxxx" */ |
#define | ROW_RIDING_INFO 16 |
#define | COL_RIDING_INFO 0 /* "xxxxxxxxxxxx" */ |
#define | ROW_INFO 17 |
#define | COL_INFO 0 /* "xxxxxxxxxxxx" */ |
#define | ROW_CUT 18 |
#define | COL_CUT 0 /* <cut> */ |
#define | ROW_STUN 19 |
#define | COL_STUN 0 /* <stun> */ |
#define | ROW_HUNGRY 20 |
#define | COL_HUNGRY 0 /* "Weak" / "Hungry" / "Full" / "Gorged" */ |
#define | ROW_STATE 20 |
#define | COL_STATE 7 /* <state> */ |
#define | ROW_SPEED (-1) |
#define | COL_SPEED (-24) /* "Slow (-NN)" or "Fast (+NN)" */ |
#define | ROW_STUDY (-1) |
#define | COL_STUDY (-13) /* "Study" */ |
#define | ROW_DEPTH (-1) |
#define | COL_DEPTH (-8) /* "Lev NNN" / "NNNN ft" */ |
#define | ROW_STATBAR (-1) |
#define | COL_STATBAR 0 |
#define | MAX_COL_STATBAR (-26) |
#define | BAR_TSUYOSHI 0 |
下部ステータス表示: オクレ兄さん状態 [詳解] | |
#define | BAR_HALLUCINATION 1 |
下部ステータス表示: 幻覚 [詳解] | |
#define | BAR_BLINDNESS 2 |
下部ステータス表示: 盲目 [詳解] | |
#define | BAR_PARALYZE 3 |
下部ステータス表示: 麻痺 [詳解] | |
#define | BAR_CONFUSE 4 |
下部ステータス表示: 混乱 [詳解] | |
#define | BAR_POISONED 5 |
下部ステータス表示: 毒 [詳解] | |
#define | BAR_AFRAID 6 |
下部ステータス表示: 恐怖 [詳解] | |
#define | BAR_LEVITATE 7 |
下部ステータス表示: 浮遊 [詳解] | |
#define | BAR_REFLECTION 8 |
下部ステータス表示: 反射 [詳解] | |
#define | BAR_PASSWALL 9 |
下部ステータス表示: 壁抜け [詳解] | |
#define | BAR_WRAITH 10 |
下部ステータス表示: 幽体化 [詳解] | |
#define | BAR_PROTEVIL 11 |
下部ステータス表示: 対邪悪結界 [詳解] | |
#define | BAR_KAWARIMI 12 |
下部ステータス表示: 変わり身 [詳解] | |
#define | BAR_MAGICDEFENSE 13 |
下部ステータス表示: 魔法の鎧 [詳解] | |
#define | BAR_EXPAND 14 |
下部ステータス表示: 横伸び [詳解] | |
#define | BAR_STONESKIN 15 |
下部ステータス表示: 石肌化 [詳解] | |
#define | BAR_MULTISHADOW 16 |
下部ステータス表示: 影分身 [詳解] | |
#define | BAR_REGMAGIC 17 |
下部ステータス表示: 魔法防御 [詳解] | |
#define | BAR_ULTIMATE 18 |
下部ステータス表示: 究極の耐性 [詳解] | |
#define | BAR_INVULN 19 |
下部ステータス表示: 無敵化 [詳解] | |
#define | BAR_IMMACID 20 |
下部ステータス表示: 酸免疫 [詳解] | |
#define | BAR_RESACID 21 |
下部ステータス表示: 酸耐性 [詳解] | |
#define | BAR_IMMELEC 22 |
下部ステータス表示: 電撃免疫 [詳解] | |
#define | BAR_RESELEC 23 |
下部ステータス表示: 電撃耐性 [詳解] | |
#define | BAR_IMMFIRE 24 |
下部ステータス表示: 火炎免疫 [詳解] | |
#define | BAR_RESFIRE 25 |
下部ステータス表示: 火炎耐性 [詳解] | |
#define | BAR_IMMCOLD 26 |
下部ステータス表示: 冷気免疫 [詳解] | |
#define | BAR_RESCOLD 27 |
下部ステータス表示: 冷気耐性 [詳解] | |
#define | BAR_RESPOIS 28 |
下部ステータス表示: 毒耐性 [詳解] | |
#define | BAR_RESNETH 29 |
下部ステータス表示: 地獄耐性 [詳解] | |
#define | BAR_RESTIME 30 |
下部ステータス表示: 時間逆転耐性 [詳解] | |
#define | BAR_DUSTROBE 31 |
下部ステータス表示: 破片オーラ [詳解] | |
#define | BAR_SHFIRE 32 |
下部ステータス表示: 火炎オーラ [詳解] | |
#define | BAR_TOUKI 33 |
下部ステータス表示: 闘気 [詳解] | |
#define | BAR_SHHOLY 34 |
下部ステータス表示: 聖なるオーラ [詳解] | |
#define | BAR_EYEEYE 35 |
下部ステータス表示: 目には目を [詳解] | |
#define | BAR_BLESSED 36 |
下部ステータス表示: 祝福 [詳解] | |
#define | BAR_HEROISM 37 |
下部ステータス表示: 士気高揚 [詳解] | |
#define | BAR_BERSERK 38 |
下部ステータス表示: 狂戦士化 [詳解] | |
#define | BAR_ATTKFIRE 39 |
下部ステータス表示: 焼棄スレイ [詳解] | |
#define | BAR_ATTKCOLD 40 |
下部ステータス表示: 冷凍スレイ [詳解] | |
#define | BAR_ATTKELEC 41 |
下部ステータス表示: 電撃スレイ [詳解] | |
#define | BAR_ATTKACID 42 |
下部ステータス表示: 溶解スレイ [詳解] | |
#define | BAR_ATTKPOIS 43 |
下部ステータス表示: 毒殺スレイ [詳解] | |
#define | BAR_ATTKCONF 44 |
下部ステータス表示: 混乱打撃 [詳解] | |
#define | BAR_SENSEUNSEEN 45 |
下部ステータス表示: 透明視 [詳解] | |
#define | BAR_TELEPATHY 46 |
下部ステータス表示: テレパシー [詳解] | |
#define | BAR_REGENERATION 47 |
下部ステータス表示: 急回復 [詳解] | |
#define | BAR_INFRAVISION 48 |
下部ステータス表示: 赤外線視力 [詳解] | |
#define | BAR_STEALTH 49 |
下部ステータス表示: 隠密 [詳解] | |
#define | BAR_SUPERSTEALTH 50 |
下部ステータス表示: 超隠密 [詳解] | |
#define | BAR_RECALL 51 |
下部ステータス表示: 帰還待ち [詳解] | |
#define | BAR_ALTER 52 |
下部ステータス表示: 現実変容待ち [詳解] | |
#define | BAR_SHCOLD 53 |
下部ステータス表示: 冷気オーラ [詳解] | |
#define | BAR_SHELEC 54 |
下部ステータス表示: 電撃オーラ [詳解] | |
#define | BAR_SHSHADOW 55 |
下部ステータス表示: 影のオーラ [詳解] | |
#define | BAR_MIGHT 56 |
下部ステータス表示: 腕力強化 [詳解] | |
#define | BAR_BUILD 57 |
下部ステータス表示: 肉体強化 [詳解] | |
#define | BAR_ANTIMULTI 58 |
下部ステータス表示: 反増殖 [詳解] | |
#define | BAR_ANTITELE 59 |
下部ステータス表示: 反テレポート [詳解] | |
#define | BAR_ANTIMAGIC 60 |
下部ステータス表示: 反魔法 [詳解] | |
#define | BAR_PATIENCE 61 |
下部ステータス表示: 我慢 [詳解] | |
#define | BAR_REVENGE 62 |
下部ステータス表示: 宣告 [詳解] | |
#define | BAR_RUNESWORD 63 |
下部ステータス表示: 魔剣化 [詳解] | |
#define | BAR_VAMPILIC 64 |
下部ステータス表示: 吸血 [詳解] | |
#define | BAR_CURE 65 |
下部ステータス表示: 回復 [詳解] | |
#define | BAR_ESP_EVIL 66 |
下部ステータス表示: 邪悪感知 [詳解] | |
#define | ADD_FLG(FLG) (bar_flags[FLG / 32] |= (1L << (FLG % 32))) |
32ビット変数配列の指定位置のビットフラグを1にする。 [詳解] | |
#define | IS_FLG(FLG) (bar_flags[FLG / 32] & (1L << (FLG % 32))) |
32ビット変数配列の指定位置のビットフラグが1かどうかを返す。 [詳解] | |
関数 | |
static void | prt_field (concptr info, TERM_LEN row, TERM_LEN col) |
画面左の能力値表示を行うために指定位置から13キャラ分を空白消去後指定のメッセージを明るい青で描画する / Print character info at given row, column in a 13 char field [詳解] | |
void | prt_time (void) |
ゲーム時刻を表示する / Print time [詳解] | |
concptr | map_name (void) |
現在のマップ名を返す / [詳解] | |
static void | prt_dungeon (void) |
現在のマップ名を描画する / Print dungeon [詳解] | |
static void | prt_stat (int stat) |
プレイヤー能力値を描画する / Print character stat in given row, column [詳解] | |
static void | prt_status (void) |
下部に状態表示を行う / Show status bar [詳解] | |
static void | prt_title (void) |
プレイヤーの称号を表示する / Prints "title", including "wizard" or "winner" as needed. [詳解] | |
static void | prt_level (void) |
プレイヤーのレベルを表示する / Prints level [詳解] | |
static void | prt_exp (void) |
プレイヤーの経験値を表示する / Display the experience [詳解] | |
static void | prt_gold (void) |
プレイヤーの所持金を表示する / Prints current gold [詳解] | |
static void | prt_ac (void) |
プレイヤーのACを表示する / Prints current AC [詳解] | |
static void | prt_hp (void) |
プレイヤーのHPを表示する / Prints Cur/Max hit points [詳解] | |
static void | prt_sp (void) |
プレイヤーのMPを表示する / Prints players max/cur spell points [詳解] | |
static void | prt_depth (void) |
現在のフロアの深さを表示する / Prints depth in stat area [詳解] | |
static void | prt_hunger (void) |
プレイヤーの空腹状態を表示する / Prints status of hunger [詳解] | |
static void | prt_state (void) |
プレイヤーの行動状態を表示する / Prints Searching, Resting, Paralysis, or 'count' status [詳解] | |
static void | prt_speed (void) |
プレイヤーの行動速度を表示する / Prints the speed of a character. [詳解] | |
static void | prt_study (void) |
プレイヤーの呪文学習可能状態を表示する [詳解] | |
static void | prt_imitation (void) |
プレイヤーのものまね可能状態を表示する [詳解] | |
static void | prt_cut (void) |
プレイヤーの負傷状態を表示する [詳解] | |
static void | prt_stun (void) |
プレイヤーの朦朧状態を表示する [詳解] | |
static void | health_redraw (bool riding) |
モンスターの体力ゲージを表示する [詳解] | |
static void | prt_frame_basic (void) |
プレイヤーのステータスを一括表示する(左側部分) / Display basic info (mostly left of map) [詳解] | |
static void | prt_frame_extra (void) |
プレイヤーのステータスを一括表示する(下部分) / Display extra info (mostly below map) [詳解] | |
static void | fix_inven (void) |
サブウィンドウに所持品一覧を表示する / Hack – display p_ptr->inventory_list in sub-windows [詳解] | |
static void | print_monster_line (TERM_LEN x, TERM_LEN y, monster_type *m_ptr, int n_same) |
モンスターの現在数を一行で表現する / Print monster info in line [詳解] | |
void | print_monster_list (TERM_LEN x, TERM_LEN y, TERM_LEN max_lines) |
モンスターの出現リストを表示する / Print monster info in line [詳解] | |
static void | fix_monster_list (void) |
出現中モンスターのリストをサブウィンドウに表示する / Hack – display monster list in sub-windows [詳解] | |
static void | fix_equip (void) |
現在の装備品をサブウィンドウに表示する / Hack – display equipment in sub-windows [詳解] | |
static void | fix_spell (void) |
現在の習得済魔法をサブウィンドウに表示する / Hack – display spells in sub-windows [詳解] | |
static void | fix_player (void) |
現在のプレイヤーステータスをサブウィンドウに表示する / Hack – display character in sub-windows [詳解] | |
static void | fix_message (void) |
ゲームメッセージ履歴をサブウィンドウに表示する / Hack – display recent messages in sub-windows Adjust for width and split messages [詳解] | |
static void | fix_overhead (void) |
簡易マップをサブウィンドウに表示する / Hack – display overhead view in sub-windows Adjust for width and split messages [詳解] | |
static void | display_dungeon (void) |
static void | fix_dungeon (void) |
ダンジョンの地形をサブウィンドウに表示する / Hack – display dungeon view in sub-windows [詳解] | |
static void | fix_monster (void) |
モンスターの思い出をサブウィンドウに表示する / Hack – display dungeon view in sub-windows [詳解] | |
static void | fix_object (void) |
ベースアイテム情報をサブウィンドウに表示する / Hack – display object recall in sub-windows [詳解] | |
bool | is_heavy_shoot (player_type *creature_ptr, object_type *o_ptr) |
射撃武器がプレイヤーにとって重すぎるかどうかの判定 / [詳解] | |
void | redraw_stuff (void) |
p_ptr->redraw のフラグに応じた更新をまとめて行う / Handle "p_ptr->redraw" [詳解] | |
void | window_stuff (void) |
p_ptr->window のフラグに応じた更新をまとめて行う / Handle "p_ptr->window" [詳解] | |
void | resize_map (void) |
コンソールのリサイズに合わせてマップを再描画する / Map resizing whenever the main term changes size [詳解] | |
void | redraw_window (void) |
コンソールを再描画する / Redraw a term when it is resized [詳解] | |
bool | change_panel (POSITION dy, POSITION dx) |
フォーカスを当てるべきマップ描画の基準座標を指定する(サブルーチン) [詳解] | |
void | print_equippy (void) |
プレイヤーの装備一覧シンボルを固定位置に表示する [詳解] | |
void | get_screen_size (TERM_LEN *wid_p, TERM_LEN *hgt_p) |
現在のコンソール表示の縦横を返す。 / Get term size and calculate screen size [詳解] | |
int | panel_col_of (int col) |
void | prt_map (void) |
static void | image_monster (TERM_COLOR *ap, SYMBOL_CODE *cp) |
モンスターの表示を幻覚状態に差し替える / Mega-Hack – Hallucinatory monster [詳解] | |
static void | image_object (TERM_COLOR *ap, SYMBOL_CODE *cp) |
オブジェクトの表示を幻覚状態に差し替える / Hallucinatory object [詳解] | |
static void | image_random (TERM_COLOR *ap, SYMBOL_CODE *cp) |
オブジェクト&モンスターの表示を幻覚状態に差し替える / Hack – Random hallucination [詳解] | |
void | apply_default_feat_lighting (TERM_COLOR f_attr[F_LIT_MAX], SYMBOL_CODE f_char[F_LIT_MAX]) |
調査中 [詳解] | |
void | map_info (POSITION y, POSITION x, TERM_COLOR *ap, SYMBOL_CODE *cp, TERM_COLOR *tap, SYMBOL_CODE *tcp) |
Mコマンドによる縮小マップの表示を行う / Extract the attr/char to display at the given (legal) map location [詳解] | |
static void | display_shortened_item_name (object_type *o_ptr, int y) |
void | display_map (floor_type *floor_ptr, int *cy, int *cx) |
void | do_cmd_view_map (void) |
void | health_track (MONSTER_IDX m_idx) |
void | move_cursor_relative (int row, int col) |
void | prt_path (POSITION y, POSITION x) |
void | monster_race_track (MONRACE_IDX r_idx) |
void | object_kind_track (KIND_OBJECT_IDX k_idx) |
void | update_playtime (void) |
実ゲームプレイ時間を更新する [詳解] | |
変数 | |
static int | feat_priority |
マップ縮小表示時に表示すべき地形の優先度を保管する [詳解] | |
static byte | display_autopick |
自動拾い状態の設定フラグ [詳解] | |
static int | match_autopick |
static object_type * | autopick_obj |
各種自動拾い処理時に使うオブジェクトポインタ [詳解] | |
POSITION | panel_row_min |
POSITION | panel_row_max |
POSITION | panel_col_min |
POSITION | panel_col_max |
POSITION | panel_col_prt |
POSITION | panel_row_prt |
struct { | |
TERM_COLOR attr | |
concptr sstr | |
concptr lstr | |
} | bar [] |
static char | image_monster_hack [] |
一般的にモンスターシンボルとして扱われる記号を定義する(幻覚処理向け) / Hack – Legal monster codes [詳解] | |
static char | image_object_hack [] = "?/|\\\"!$()_-=[]{},~" |
一般的にオブジェクトシンボルとして扱われる記号を定義する(幻覚処理向け) / Hack – Legal object codes [詳解] | |
static TERM_COLOR | lighting_colours [16][2] |
照明の表現を行うための色合いの関係を{暗闇時, 照明時} で定義する / This array lists the effects of "brightness" on various "base" colours. [詳解] | |
static concptr | simplify_list [][2] |
#define ADD_FLG | ( | FLG | ) | (bar_flags[FLG / 32] |= (1L << (FLG % 32))) |
32ビット変数配列の指定位置のビットフラグを1にする。
FLG | フラグ位置(ビット) |
#define BAR_AFRAID 6 |
下部ステータス表示: 恐怖
#define BAR_ALTER 52 |
下部ステータス表示: 現実変容待ち
#define BAR_ANTIMAGIC 60 |
下部ステータス表示: 反魔法
#define BAR_ANTIMULTI 58 |
下部ステータス表示: 反増殖
#define BAR_ANTITELE 59 |
下部ステータス表示: 反テレポート
#define BAR_ATTKACID 42 |
下部ステータス表示: 溶解スレイ
#define BAR_ATTKCOLD 40 |
下部ステータス表示: 冷凍スレイ
#define BAR_ATTKCONF 44 |
下部ステータス表示: 混乱打撃
#define BAR_ATTKELEC 41 |
下部ステータス表示: 電撃スレイ
#define BAR_ATTKFIRE 39 |
下部ステータス表示: 焼棄スレイ
#define BAR_ATTKPOIS 43 |
下部ステータス表示: 毒殺スレイ
#define BAR_BERSERK 38 |
下部ステータス表示: 狂戦士化
#define BAR_BLESSED 36 |
下部ステータス表示: 祝福
#define BAR_BLINDNESS 2 |
下部ステータス表示: 盲目
#define BAR_BUILD 57 |
下部ステータス表示: 肉体強化
#define BAR_CONFUSE 4 |
下部ステータス表示: 混乱
#define BAR_CURE 65 |
下部ステータス表示: 回復
#define BAR_DUSTROBE 31 |
下部ステータス表示: 破片オーラ
#define BAR_ESP_EVIL 66 |
下部ステータス表示: 邪悪感知
#define BAR_EXPAND 14 |
下部ステータス表示: 横伸び
#define BAR_EYEEYE 35 |
下部ステータス表示: 目には目を
#define BAR_HALLUCINATION 1 |
下部ステータス表示: 幻覚
#define BAR_HEROISM 37 |
下部ステータス表示: 士気高揚
#define BAR_IMMACID 20 |
下部ステータス表示: 酸免疫
#define BAR_IMMCOLD 26 |
下部ステータス表示: 冷気免疫
#define BAR_IMMELEC 22 |
下部ステータス表示: 電撃免疫
#define BAR_IMMFIRE 24 |
下部ステータス表示: 火炎免疫
#define BAR_INFRAVISION 48 |
下部ステータス表示: 赤外線視力
#define BAR_INVULN 19 |
下部ステータス表示: 無敵化
#define BAR_KAWARIMI 12 |
下部ステータス表示: 変わり身
#define BAR_LEVITATE 7 |
下部ステータス表示: 浮遊
#define BAR_MAGICDEFENSE 13 |
下部ステータス表示: 魔法の鎧
#define BAR_MIGHT 56 |
下部ステータス表示: 腕力強化
#define BAR_MULTISHADOW 16 |
下部ステータス表示: 影分身
#define BAR_PARALYZE 3 |
下部ステータス表示: 麻痺
#define BAR_PASSWALL 9 |
下部ステータス表示: 壁抜け
#define BAR_PATIENCE 61 |
下部ステータス表示: 我慢
#define BAR_POISONED 5 |
下部ステータス表示: 毒
#define BAR_PROTEVIL 11 |
下部ステータス表示: 対邪悪結界
#define BAR_RECALL 51 |
下部ステータス表示: 帰還待ち
#define BAR_REFLECTION 8 |
下部ステータス表示: 反射
#define BAR_REGENERATION 47 |
下部ステータス表示: 急回復
#define BAR_REGMAGIC 17 |
下部ステータス表示: 魔法防御
#define BAR_RESACID 21 |
下部ステータス表示: 酸耐性
#define BAR_RESCOLD 27 |
下部ステータス表示: 冷気耐性
#define BAR_RESELEC 23 |
下部ステータス表示: 電撃耐性
#define BAR_RESFIRE 25 |
下部ステータス表示: 火炎耐性
#define BAR_RESNETH 29 |
下部ステータス表示: 地獄耐性
#define BAR_RESPOIS 28 |
下部ステータス表示: 毒耐性
#define BAR_RESTIME 30 |
下部ステータス表示: 時間逆転耐性
#define BAR_REVENGE 62 |
下部ステータス表示: 宣告
#define BAR_RUNESWORD 63 |
下部ステータス表示: 魔剣化
#define BAR_SENSEUNSEEN 45 |
下部ステータス表示: 透明視
#define BAR_SHCOLD 53 |
下部ステータス表示: 冷気オーラ
#define BAR_SHELEC 54 |
下部ステータス表示: 電撃オーラ
#define BAR_SHFIRE 32 |
下部ステータス表示: 火炎オーラ
#define BAR_SHHOLY 34 |
下部ステータス表示: 聖なるオーラ
#define BAR_SHSHADOW 55 |
下部ステータス表示: 影のオーラ
#define BAR_STEALTH 49 |
下部ステータス表示: 隠密
#define BAR_STONESKIN 15 |
下部ステータス表示: 石肌化
#define BAR_SUPERSTEALTH 50 |
下部ステータス表示: 超隠密
#define BAR_TELEPATHY 46 |
下部ステータス表示: テレパシー
#define BAR_TOUKI 33 |
下部ステータス表示: 闘気
#define BAR_TSUYOSHI 0 |
下部ステータス表示: オクレ兄さん状態
#define BAR_ULTIMATE 18 |
下部ステータス表示: 究極の耐性
#define BAR_VAMPILIC 64 |
下部ステータス表示: 吸血
#define BAR_WRAITH 10 |
下部ステータス表示: 幽体化
#define COL_AC 0 /* "Cur AC xxxxx" */ |
#define COL_CURHP 0 /* "Cur HP xxxxx" */ |
#define COL_CURSP 0 /* "Cur SP xxxxx" */ |
#define COL_CUT 0 /* <cut> */ |
#define COL_DAY 0 /* day */ |
#define COL_DEPTH (-8) /* "Lev NNN" / "NNNN ft" */ |
#define COL_DUNGEON 0 /* dungeon */ |
#define COL_EQUIPPY 0 /* equippy chars */ |
#define COL_EXP 0 /* "EXP xxxxxxxx" */ |
#define COL_GOLD 0 /* "AU xxxxxxxxx" */ |
#define COL_HPMP 0 |
#define COL_HUNGRY 0 /* "Weak" / "Hungry" / "Full" / "Gorged" */ |
#define COL_INFO 0 /* "xxxxxxxxxxxx" */ |
#define COL_LEVEL 0 /* "LEVEL xxxxxx" */ |
#define COL_RACE 0 /* <race name> */ |
#define COL_RIDING_INFO 0 /* "xxxxxxxxxxxx" */ |
#define COL_SPEED (-24) /* "Slow (-NN)" or "Fast (+NN)" */ |
#define COL_STAT 0 /* "xxx xxxxxx" */ |
#define COL_STATBAR 0 |
#define COL_STATE 7 /* <state> */ |
#define COL_STUDY (-13) /* "Study" */ |
#define COL_STUN 0 /* <stun> */ |
#define COL_TITLE 0 /* <title> or <mode> */ |
#define IS_ASCII_GRAPHICS | ( | A | ) | (!((A) & 0x80)) |
#define IS_FLG | ( | FLG | ) | (bar_flags[FLG / 32] & (1L << (FLG % 32))) |
32ビット変数配列の指定位置のビットフラグが1かどうかを返す。
FLG | フラグ位置(ビット) |
#define MAX_COL_STATBAR (-26) |
#define ROW_AC 13 |
#define ROW_CURHP 14 |
#define ROW_CURSP 15 |
#define ROW_CUT 18 |
#define ROW_DAY 21 |
#define ROW_DEPTH (-1) |
#define ROW_DUNGEON 22 |
#define ROW_EQUIPPY 6 |
#define ROW_EXP 4 |
#define ROW_GOLD 5 |
#define ROW_HPMP 14 |
#define ROW_HUNGRY 20 |
#define ROW_INFO 17 |
#define ROW_LEVEL 3 |
#define ROW_RACE 1 |
#define ROW_RIDING_INFO 16 |
#define ROW_SPEED (-1) |
#define ROW_STAT 7 |
#define ROW_STATBAR (-1) |
#define ROW_STATE 20 |
#define ROW_STUDY (-1) |
#define ROW_STUN 19 |
#define ROW_TITLE 2 |
void apply_default_feat_lighting | ( | TERM_COLOR | f_attr[F_LIT_MAX], |
SYMBOL_CODE | f_char[F_LIT_MAX] | ||
) |
調査中
フォーカスを当てるべきマップ描画の基準座標を指定する(サブルーチン)
dy | 変更先のフロアY座標 |
dx | 変更先のフロアX座標 Handle a request to change the current panel Return TRUE if the panel was changed. Also used in do_cmd_locate |
|
static |
void display_map | ( | floor_type * | floor_ptr, |
int * | cy, | ||
int * | cx | ||
) |
|
static |
void do_cmd_view_map | ( | void | ) |
|
static |
ダンジョンの地形をサブウィンドウに表示する / Hack – display dungeon view in sub-windows
|
static |
現在の装備品をサブウィンドウに表示する / Hack – display equipment in sub-windows
|
static |
サブウィンドウに所持品一覧を表示する / Hack – display p_ptr->inventory_list in sub-windows
|
static |
ゲームメッセージ履歴をサブウィンドウに表示する / Hack – display recent messages in sub-windows Adjust for width and split messages
|
static |
モンスターの思い出をサブウィンドウに表示する / Hack – display dungeon view in sub-windows
|
static |
出現中モンスターのリストをサブウィンドウに表示する / Hack – display monster list in sub-windows
|
static |
ベースアイテム情報をサブウィンドウに表示する / Hack – display object recall in sub-windows
|
static |
簡易マップをサブウィンドウに表示する / Hack – display overhead view in sub-windows Adjust for width and split messages
Note that the "player" symbol does NOT appear on the map.
|
static |
現在のプレイヤーステータスをサブウィンドウに表示する / Hack – display character in sub-windows
|
static |
現在の習得済魔法をサブウィンドウに表示する / Hack – display spells in sub-windows
現在のコンソール表示の縦横を返す。 / Get term size and calculate screen size
wid_p | コンソールの表示幅文字数を返す |
hgt_p | コンソールの表示行数を返す |
|
static |
モンスターの体力ゲージを表示する
riding | TRUEならば騎乗中のモンスターの体力、FALSEならターゲットモンスターの体力を表示する。表示位置は固定。 |
Redraw the "monster health bar" -DRS- Rather extensive modifications by -BEN-
The "monster health bar" provides visual feedback on the "health" of the monster currently being "tracked". There are several ways to "track" a monster, including targetting it, attacking it, and affecting it (and nobody else) with a ranged attack.
Display the monster health bar (affectionately known as the "health-o-meter"). Clear health bar if nothing is being tracked. Auto-track current target monster when bored. Note that the health-bar stops tracking any monster that "disappears".
void health_track | ( | MONSTER_IDX | m_idx | ) |
|
static |
モンスターの表示を幻覚状態に差し替える / Mega-Hack – Hallucinatory monster
ap | 本来の色 |
cp | 本来のシンボル |
|
static |
オブジェクトの表示を幻覚状態に差し替える / Hallucinatory object
ap | 本来の色 |
cp | 本来のシンボル |
|
static |
オブジェクト&モンスターの表示を幻覚状態に差し替える / Hack – Random hallucination
ap | 本来の色 |
cp | 本来のシンボル |
bool is_heavy_shoot | ( | player_type * | creature_ptr, |
object_type * | o_ptr | ||
) |
射撃武器がプレイヤーにとって重すぎるかどうかの判定 /
o_ptr | 判定する射撃武器のアイテム情報参照ポインタ |
void map_info | ( | POSITION | y, |
POSITION | x, | ||
TERM_COLOR * | ap, | ||
SYMBOL_CODE * | cp, | ||
TERM_COLOR * | tap, | ||
SYMBOL_CODE * | tcp | ||
) |
Mコマンドによる縮小マップの表示を行う / Extract the attr/char to display at the given (legal) map location
Basically, we "paint" the chosen attr/char in several passes, starting
with any known "terrain features" (defaulting to darkness), then adding
any known "objects", and finally, adding any known "monsters". This
is not the fastest method but since most of the calls to this function
are made for grids with no monsters or objects, it is fast enough.
Note that this function, if used on the grid containing the "player",
will return the attr/char of the grid underneath the player, and not
the actual player attr/char itself, allowing a lot of optimization
in various "display" functions.
Note that the "zero" entry in the feature/object/monster arrays are
used to provide "special" attr/char codes, with "monster zero" being
used for the player attr/char, "object zero" being used for the "stack"
attr/char, and "feature zero" being used for the "nothing" attr/char,
though this function makes use of only "feature zero".
Note that monsters can have some "special" flags, including "ATTR_MULTI",
which means their color changes, and "ATTR_CLEAR", which means they take
the color of whatever is under them, and "CHAR_CLEAR", which means that
they take the symbol of whatever is under them. Technically, the flag
"CHAR_MULTI" is supposed to indicate that a monster looks strange when
examined, but this flag is currently ignored.
Currently, we do nothing with multi-hued objects, because there are
not any. If there were, they would have to set "shimmer_objects"
when they were created, and then new "shimmer" code in "dungeon.c"
would have to be created handle the "shimmer" effect, and the code
in "p_ptr->current_floor_ptr->grid_array.c" would have to be updated to create the shimmer effect.
Note the effects of hallucination. Objects always appear as random
"objects", monsters as random "monsters", and normal grids occasionally
appear as random "monsters" or "objects", but note that these random
"monsters" and "objects" are really just "colored ascii symbols".
Note that "floors" and "invisible traps" (and "zero" features) are
drawn as "floors" using a special check for optimization purposes,
and these are the only features which get drawn using the special
lighting effects activated by "view_special_lite".
Note the use of the "mimic" field in the "terrain feature" processing,
which allows any feature to "pretend" to be another feature. This is
used to "hide" secret doors, and to make all "doors" appear the same,
and all "walls" appear the same, and "hidden" treasure stay hidden.
It is possible to use this field to make a feature "look" like a floor,
but the "special lighting effects" for floors will not be used.
Note the use of the new "terrain feature" information. Note that the
assumption that all interesting "objects" and "terrain features" are
memorized allows extremely optimized processing below. Note the use
of separate flags on objects to mark them as memorized allows a grid
to have memorized "terrain" without granting knowledge of any object
which may appear in that grid.
Note the efficient code used to determine if a "floor" grid is
"memorized" or "viewable" by the player, where the test for the
grid being "viewable" is based on the facts that (1) the grid
must be "lit" (torch-lit or perma-lit), (2) the grid must be in
line of sight, and (3) the player must not be blind, and uses the
assumption that all torch-lit grids are in line of sight.
Note that floors (and invisible traps) are the only grids which are
not memorized when seen, so only these grids need to check to see if
the grid is "viewable" to the player (if it is not memorized). Since
most non-memorized grids are in fact walls, this induces massive
efficiency, at the cost of forcing the memorization of non-floor
grids when they are first seen. Note that "invisible traps" are
always treated exactly like "floors", which prevents "cheating".
Note the "special lighting effects" which can be activated for floor
grids using the "view_special_lite" option (for "white" floor grids),
causing certain grids to be displayed using special colors. If the
player is "blind", we will use "dark gray", else if the grid is lit
by the torch, and the "view_yellow_lite" option is set, we will use
"yellow", else if the grid is "dark", we will use "dark gray", else
if the grid is not "viewable", and the "view_bright_lite" option is
set, and the we will use "slate" (gray). We will use "white" for all
other cases, in particular, for illuminated viewable floor grids.
Note the "special lighting effects" which can be activated for wall
grids using the "view_granite_lite" option (for "white" wall grids),
causing certain grids to be displayed using special colors. If the
player is "blind", we will use "dark gray", else if the grid is lit
by the torch, and the "view_yellow_lite" option is set, we will use
"yellow", else if the "view_bright_lite" option is set, and the grid
is not "viewable", or is "dark", or is glowing, but not when viewed
from the player's current location, we will use "slate" (gray). We
will use "white" for all other cases, in particular, for correctly
illuminated viewable wall grids.
Note that, when "view_granite_lite" is set, we use an inline version
of the "player_can_see_bold()" function to check the "viewability" of
grids when the "view_bright_lite" option is set, and we do NOT use
any special colors for "dark" wall grids, since this would allow the
player to notice the walls of illuminated rooms from a hallway that
happened to run beside the room. The alternative, by the way, would
be to prevent the generation of hallways next to rooms, but this
would still allow problems when digging towards a room.
Note that bizarre things must be done when the "attr" and/or "char"
codes have the "high-bit" set, since these values are used to encode
various "special" pictures in some versions, and certain situations,
such as "multi-hued" or "clear" monsters, cause the attr/char codes
to be "scrambled" in various ways.
Note that eventually we may use the "&" symbol for embedded treasure,
and use the "*" symbol to indicate multiple objects, though this will
have to wait for Angband 2.8.0 or later. Note that currently, this
is not important, since only one object or terrain feature is allowed
in each grid. If needed, "k_info[0]" will hold the "stack" attr/char.
Note the assumption that doing "x_ptr = &x_info[x]" plus a few of
"x_ptr->xxx", is quicker than "x_info[x].xxx", if this is incorrect
then a whole lot of code should be changed... XXX XXX
concptr map_name | ( | void | ) |
現在のマップ名を返す /
void monster_race_track | ( | MONRACE_IDX | r_idx | ) |
void move_cursor_relative | ( | int | row, |
int | col | ||
) |
void object_kind_track | ( | KIND_OBJECT_IDX | k_idx | ) |
int panel_col_of | ( | int | col | ) |
void print_equippy | ( | void | ) |
プレイヤーの装備一覧シンボルを固定位置に表示する
|
static |
モンスターの現在数を一行で表現する / Print monster info in line
x | 表示列 |
y | 表示行 |
m_ptr | 思い出を表示するモンスター情報の参照ポインタ |
n_same | モンスターの数の現在数 |
nnn X LV name nnn : number or unique(U) or wanted unique(W) X : symbol of monster LV : monster lv if known name: name of monster
モンスターの出現リストを表示する / Print monster info in line
x | 表示列 |
y | 表示行 |
max_lines | 最大何行描画するか |
|
static |
プレイヤーのACを表示する / Prints current AC
|
static |
プレイヤーの負傷状態を表示する
|
static |
現在のフロアの深さを表示する / Prints depth in stat area
|
static |
現在のマップ名を描画する / Print dungeon
|
static |
プレイヤーの経験値を表示する / Display the experience
画面左の能力値表示を行うために指定位置から13キャラ分を空白消去後指定のメッセージを明るい青で描画する / Print character info at given row, column in a 13 char field
info | 表示文字列 |
row | 描画列 |
col | 描画行 |
|
static |
プレイヤーのステータスを一括表示する(左側部分) / Display basic info (mostly left of map)
|
static |
プレイヤーのステータスを一括表示する(下部分) / Display extra info (mostly below map)
|
static |
プレイヤーの所持金を表示する / Prints current gold
|
static |
プレイヤーのHPを表示する / Prints Cur/Max hit points
|
static |
プレイヤーの空腹状態を表示する / Prints status of hunger
|
static |
プレイヤーのものまね可能状態を表示する
|
static |
プレイヤーのレベルを表示する / Prints level
void prt_map | ( | void | ) |
|
static |
プレイヤーのMPを表示する / Prints players max/cur spell points
|
static |
プレイヤーの行動速度を表示する / Prints the speed of a character.
-CJS-
|
static |
プレイヤー能力値を描画する / Print character stat in given row, column
stat | 描画するステータスのID |
|
static |
プレイヤーの行動状態を表示する / Prints Searching, Resting, Paralysis, or 'count' status
Display is always exactly 10 characters wide (see below) This function was a major bottleneck when resting, so a lot of the text formatting code was optimized in place below.
|
static |
下部に状態表示を行う / Show status bar
|
static |
プレイヤーの呪文学習可能状態を表示する
|
static |
プレイヤーの朦朧状態を表示する
void prt_time | ( | void | ) |
ゲーム時刻を表示する / Print time
|
static |
プレイヤーの称号を表示する / Prints "title", including "wizard" or "winner" as needed.
void redraw_stuff | ( | void | ) |
p_ptr->redraw のフラグに応じた更新をまとめて行う / Handle "p_ptr->redraw"
更新処理の対象はゲーム中の全描画処理
void redraw_window | ( | void | ) |
コンソールを再描画する / Redraw a term when it is resized
void resize_map | ( | void | ) |
コンソールのリサイズに合わせてマップを再描画する / Map resizing whenever the main term changes size
void update_playtime | ( | void | ) |
実ゲームプレイ時間を更新する
void window_stuff | ( | void | ) |
p_ptr->window のフラグに応じた更新をまとめて行う / Handle "p_ptr->window"
更新処理の対象はサブウィンドウ全般
TERM_COLOR attr |
|
static |
各種自動拾い処理時に使うオブジェクトポインタ
struct { ... } bar[] |
|
static |
自動拾い状態の設定フラグ
|
static |
マップ縮小表示時に表示すべき地形の優先度を保管する
|
static |
一般的にモンスターシンボルとして扱われる記号を定義する(幻覚処理向け) / Hack – Legal monster codes
|
static |
一般的にオブジェクトシンボルとして扱われる記号を定義する(幻覚処理向け) / Hack – Legal object codes
|
static |
照明の表現を行うための色合いの関係を{暗闇時, 照明時} で定義する / This array lists the effects of "brightness" on various "base" colours.
This is used to do dynamic lighting effects in ascii :-)
At the moment, only the various "floor" tiles are affected.
The layout of the array is [x][0] = light and [x][1] = dark.
concptr lstr |
|
static |
POSITION panel_col_max |
POSITION panel_col_min |
POSITION panel_col_prt |
POSITION panel_row_max |
POSITION panel_row_min |
POSITION panel_row_prt |
|
static |
concptr sstr |