Angband(変愚蛮怒)基本関数、グローバル変数ヘッダファイル / extern declarations (variables and functions) [詳細]
関数 | |
void | autopick_load_pref (bool disp_mes) |
errr | process_autopick_file_command (char *buf) |
cptr | autopick_line_from_entry (autopick_type *entry) |
int | is_autopick (object_type *o_ptr) |
void | autopick_alter_item (int item, bool destroy) |
void | autopick_delayed_alter (void) |
void | autopick_pickup_items (cave_type *c_ptr) |
bool | autopick_autoregister (object_type *o_ptr) |
void | do_cmd_edit_autopick (void) |
void | add_history_from_pref_line (cptr t) |
生い立ちメッセージの内容をバッファに加える。 / Hook function for reading the histpref.prf file. [詳細] | |
void | player_birth (void) |
プレイヤー作成処理のメインルーチン/ Create a new character. [詳細] | |
void | get_max_stats (void) |
プレイヤーの限界ステータスを決める。 [詳細] | |
void | get_height_weight (void) |
プレイヤーの身長体重を決める / Get character's height and weight [詳細] | |
void | determine_random_questor (quest_type *q_ptr) |
ランダムクエストの討伐ユニークを決める / Determine the random quest uniques [詳細] | |
void | player_outfit (void) |
種族/職業/性格などに基づき初期所持アイテムを設定するメインセット関数。 / Init players with some belongings [詳細] | |
void | dump_yourself (FILE *fff) |
プレイヤー作成処理中のステータス表示処理 [詳細] | |
int | distance (int y1, int x1, int y2, int x2) |
2点間の距離をニュートン・ラプソン法で算出する / Distance between two points via Newton-Raphson technique [詳細] | |
bool | is_trap (int feat) |
地形が罠持ちであるかの判定を行う。 / Return TRUE if the given feature is a trap [詳細] | |
bool | is_known_trap (cave_type *c_ptr) |
マスに看破済みの罠があるかの判定を行う。 / Return TRUE if the given grid is a known trap [詳細] | |
bool | is_closed_door (int feat) |
地形が閉じたドアであるかの判定を行う。 / Return TRUE if the given grid is a closed door [詳細] | |
bool | is_hidden_door (cave_type *c_ptr) |
マスに隠されたドアがあるかの判定を行う。 / Return TRUE if the given grid is a hidden closed door [詳細] | |
bool | los (int y1, int x1, int y2, int x2) |
LOS(Line Of Sight / 視線が通っているか)の判定を行う。 [詳細] | |
void | update_local_illumination (int y, int x) |
指定された座標の照明状態を更新する / Update "local" illumination [詳細] | |
bool | player_can_see_bold (int y, int x) |
指定された座標をプレイヤーが視覚に収められるかを返す。 / Can the player "see" the given grid in detail? [詳細] | |
bool | cave_valid_bold (int y, int x) |
指定された座標が地震や階段生成の対象となるマスかを返す。 / Determine if a given location may be "destroyed" [詳細] | |
bool | no_lite (void) |
指定された座標をプレイヤー収められていない状態かどうか / Returns true if the player's grid is dark [詳細] | |
void | apply_default_feat_lighting (byte f_attr[F_LIT_MAX], byte f_char[F_LIT_MAX]) |
調査中 [詳細] | |
void | map_info (int y, int x, byte *ap, char *cp, byte *tap, char *tcp) |
Mコマンドによる縮小マップの表示を行う / Extract the attr/char to display at the given (legal) map location. [詳細] | |
void | move_cursor_relative (int row, int col) |
void | print_rel (char c, byte a, int y, int x) |
void | note_spot (int y, int x) |
void | display_dungeon (void) |
void | lite_spot (int y, int x) |
void | prt_map (void) |
void | prt_path (int y, int x) |
void | display_map (int *cy, int *cx) |
void | do_cmd_view_map (void) |
void | forget_lite (void) |
void | update_lite (void) |
void | forget_view (void) |
void | update_view (void) |
void | update_mon_lite (void) |
void | clear_mon_lite (void) |
void | delayed_visual_update (void) |
void | forget_flow (void) |
void | update_flow (void) |
void | update_smell (void) |
void | map_area (int range) |
void | wiz_lite (bool ninja) |
void | wiz_dark (void) |
void | cave_set_feat (int y, int x, int feat) |
int | conv_dungeon_feat (int newfeat) |
int | feat_state (int feat, int action) |
void | cave_alter_feat (int y, int x, int action) |
void | remove_mirror (int y, int x) |
bool | is_mirror_grid (cave_type *c_ptr) |
bool | is_glyph_grid (cave_type *c_ptr) |
bool | is_explosive_rune_grid (cave_type *c_ptr) |
void | mmove2 (int *y, int *x, int y1, int x1, int y2, int x2) |
bool | projectable (int y1, int x1, int y2, int x2) |
void | scatter (int *yp, int *xp, int y, int x, int d, int mode) |
void | health_track (int m_idx) |
void | monster_race_track (int r_idx) |
void | object_kind_track (int k_idx) |
void | disturb (int stop_search, int flush_output) |
void | glow_deep_lava_and_bldg (void) |
bool | test_hit_fire (int chance, monster_type *m_ptr, int vis, char *o_name) |
プレイヤーからモンスターへの射撃命中判定 / Determine if the player "hits" a monster (normal combat). [詳細] | |
bool | test_hit_norm (int chance, int ac, int vis) |
プレイヤーからモンスターへの打撃命中判定 / Determine if the player "hits" a monster (normal combat). [詳細] | |
s16b | critical_shot (int weight, int plus_ammo, int plus_bow, int dam) |
プレイヤーからモンスターへの射撃クリティカル判定 / Critical hits (from objects thrown by player) Factor in item weight, total plusses, and player level. [詳細] | |
s16b | critical_norm (int weight, int plus, int dam, s16b meichuu, int mode) |
プレイヤーからモンスターへの打撃クリティカル判定 / Critical hits (by player) Factor in weapon weight, total plusses, player melee bonus [詳細] | |
s16b | tot_dam_aux (object_type *o_ptr, int tdam, monster_type *m_ptr, int mode, bool thrown) |
ダメージにスレイ要素を加える総合処理ルーチン / Extract the "total damage" from a given object hitting a given monster. [詳細] | |
void | search (void) |
プレイヤーの探索処理判定 [詳細] | |
void | py_pickup_aux (int o_idx) |
プレイヤーがオブジェクトを拾った際のメッセージ表示処理 / Helper routine for py_pickup() and py_pickup_floor(). [詳細] | |
void | carry (bool pickup) |
プレイヤーがオブジェクト上に乗った際の表示処理 [詳細] | |
bool | py_attack (int y, int x, int mode) |
プレイヤーの打撃処理メインルーチン [詳細] | |
bool | pattern_seq (int c_y, int c_x, int n_y, int n_x) |
パターンによる移動制限処理 [詳細] | |
bool | player_can_enter (s16b feature, u16b mode) |
プレイヤーが地形踏破可能かを返す [詳細] | |
bool | move_player_effect (int ny, int nx, u32b mpe_mode) |
移動に伴うプレイヤーのステータス変化処理 [詳細] | |
bool | trap_can_be_ignored (int feat) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す [詳細] | |
void | move_player (int dir, bool do_pickup, bool break_trap) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す / Move player in the given direction, with the given "pickup" flag. [詳細] | |
void | run_step (int dir) |
継続的なダッシュ処理 / Take one step along the current "run" path [詳細] | |
void | forget_travel_flow (void) |
bool | confirm_leave_level (bool down_stair) |
フロア脱出時に出戻りが不可能だった場合に警告を加える処理 [詳細] | |
void | do_cmd_go_up (void) |
階段を使って階層を昇る処理 / Go up one level [詳細] | |
void | do_cmd_go_down (void) |
階段を使って階層を降りる処理 / Go down one level [詳細] | |
void | do_cmd_search (void) |
探索コマンドのメインルーチン / Simple command to "search" for one turn [詳細] | |
void | do_cmd_open (void) |
「開ける」コマンドのメインルーチン / Open a closed/locked/jammed door or a closed/locked chest. [詳細] | |
void | do_cmd_close (void) |
「閉じる」コマンドのメインルーチン / Close an open door. [詳細] | |
void | do_cmd_tunnel (void) |
「掘る」動作コマンドのメインルーチン / Tunnels through "walls" (including rubble and closed doors) [詳細] | |
void | do_cmd_disarm (void) |
箱、床のトラップ解除処理双方の統合メインルーチン / Disarms a trap, or chest [詳細] | |
void | do_cmd_bash (void) |
「打ち破る」動作コマンドのメインルーチン / Bash open a door, success based on character strength [詳細] | |
void | do_cmd_alter (void) |
特定のマスに影響を及ぼすための汎用的コマンド [詳細] | |
void | do_cmd_spike (void) |
「くさびを打つ」動作コマンドのメインルーチン / Jam a closed door with a spike [詳細] | |
void | do_cmd_walk (bool pickup) |
「歩く」動作コマンドのメインルーチン / Support code for the "Walk" and "Jump" commands [詳細] | |
void | do_cmd_stay (bool pickup) |
「留まる」動作コマンドのメインルーチン / Stay still. [詳細] | |
void | do_cmd_run (void) |
「走る」動作コマンドのメインルーチン / Start running. [詳細] | |
void | do_cmd_rest (void) |
「休む」動作コマンドのメインルーチン / Resting allows a player to safely restore his hp -RAK- [詳細] | |
void | do_cmd_fire (void) |
射撃処理のメインルーチン [詳細] | |
void | do_cmd_fire_aux (int item, object_type *j_ptr) |
射撃処理のサブルーチン / Fire an object from the pack or floor. [詳細] | |
void | do_cmd_throw (void) |
投射処理のメインルーチン / Throw an object from the pack or floor. [詳細] | |
bool | do_cmd_throw_aux (int mult, bool boomerang, int shuriken) |
投射処理のサブルーチン / Throw an object from the pack or floor. [詳細] | |
void | do_cmd_inven (void) |
持ち物一覧を表示するコマンドのメインルーチン / Display inventory [詳細] | |
void | do_cmd_equip (void) |
装備一覧を表示するコマンドのメインルーチン / Display equipment [詳細] | |
void | do_cmd_wield (void) |
装備するコマンドのメインルーチン / Wield or wear a single item from the pack or floor [詳細] | |
void | do_cmd_takeoff (void) |
装備を外すコマンドのメインルーチン / Take off an item [詳細] | |
void | do_cmd_drop (void) |
アイテムを落とすコマンドのメインルーチン / Drop an item [詳細] | |
void | do_cmd_destroy (void) |
アイテムを破壊するコマンドのメインルーチン / Destroy an item [詳細] | |
void | do_cmd_observe (void) |
アイテムを調査するコマンドのメインルーチン / Observe an item which has been identify-ed [詳細] | |
void | do_cmd_uninscribe (void) |
アイテムの銘を消すコマンドのメインルーチン Remove the inscription from an object XXX Mention item (when done)? [詳細] | |
void | do_cmd_inscribe (void) |
アイテムの銘を刻むコマンドのメインルーチン Inscribe an object with a comment [詳細] | |
void | do_cmd_refill (void) |
燃料を補充するコマンドのメインルーチン Refill the players lamp, or restock his torches [詳細] | |
void | do_cmd_target (void) |
ターゲットを設定するコマンドのメインルーチン Target command [詳細] | |
void | do_cmd_look (void) |
周囲を見渡すコマンドのメインルーチン Look command [詳細] | |
void | do_cmd_locate (void) |
位置を確認するコマンドのメインルーチン Allow the player to examine other sectors on the map [詳細] | |
void | do_cmd_query_symbol (void) |
モンスターの思い出を見るコマンドのメインルーチン Identify a character, allow recall of monsters [詳細] | |
void | kamaenaoshi (int item) |
持ち替え処理 [詳細] | |
bool | ang_sort_comp_hook (vptr u, vptr v, int a, int b) |
モンスター種族情報を特定の基準によりソートするための比較処理 Sorting hook – Comp function – see below [詳細] | |
void | ang_sort_swap_hook (vptr u, vptr v, int a, int b) |
モンスター種族情報を特定の基準によりソートするためのスワップ処理 Sorting hook – Swap function – see below [詳細] | |
cptr | get_ordinal_number_suffix (int num) |
Return suffix of ordinal number. [詳細] | |
errr | do_cmd_write_nikki (int type, int num, cptr note) |
日記にメッセージを追加する / Take note to the diary. [詳細] | |
void | do_cmd_nikki (void) |
日記コマンド [詳細] | |
void | do_cmd_redraw (void) |
画面を再描画するコマンドのメインルーチン Hack – redraw the screen [詳細] | |
void | do_cmd_change_name (void) |
名前を変更するコマンドのメインルーチン Hack – change name [詳細] | |
void | do_cmd_message_one (void) |
最近表示されたメッセージを再表示するコマンドのメインルーチン Recall the most recent message [詳細] | |
void | do_cmd_messages (int num_now) |
メッセージのログを表示するコマンドのメインルーチン Recall the most recent message [詳細] | |
void | do_cmd_options_aux (int page, cptr info) |
標準オプションを変更するコマンドのサブルーチン / Interact with some options [詳細] | |
void | do_cmd_options (void) |
標準オプションを変更するコマンドのメインルーチン / Set or unset various options. [詳細] | |
void | do_cmd_pref (void) |
prefファイルを選択して処理する / Ask for a "user pref line" and process it [詳細] | |
void | do_cmd_reload_autopick (void) |
自動拾い設定ファイルをロードするコマンドのメインルーチン / [詳細] | |
void | do_cmd_macros (void) |
マクロを設定するコマンドのメインルーチン / Interact with "macros" [詳細] | |
void | do_cmd_visuals (void) |
void | do_cmd_colors (void) |
void | do_cmd_note (void) |
void | do_cmd_version (void) |
void | do_cmd_feeling (void) |
void | do_cmd_load_screen (void) |
void | do_cmd_save_screen_html_aux (char *filename, int message) |
void | do_cmd_save_screen (void) |
void | do_cmd_knowledge_quests_completed (FILE *fff, int quest_num[]) |
void | do_cmd_knowledge_quests_failed (FILE *fff, int quest_num[]) |
bool | ang_sort_comp_quest_num (vptr u, vptr v, int a, int b) |
void | ang_sort_swap_quest_num (vptr u, vptr v, int a, int b) |
void | do_cmd_knowledge (void) |
void | plural_aux (char *Name) |
英単語、句、説を複数形を変換する / Pluralize a monster name [詳細] | |
void | do_cmd_checkquest (void) |
void | do_cmd_time (void) |
cptr | spell_category_name (int tval) |
領域魔法に応じて技能の名称を返す。 [詳細] | |
void | do_cmd_browse (void) |
プレイヤーの魔法と技能を閲覧するコマンドのメインルーチン / Peruse the spells/prayers in a book [詳細] | |
void | do_cmd_study (void) |
魔法を学習するコマンドのメインルーチン / Study a book to gain a new spell/prayer [詳細] | |
void | do_cmd_cast (void) |
魔法を詠唱するコマンドのメインルーチン / Cast a spell [詳細] | |
bool | rakuba (int dam, bool force) |
プレイヤーの落馬判定処理 [詳細] | |
bool | do_riding (bool force) |
ペットから騎乗/下馬するコマンドのメインルーチン / [詳細] | |
void | check_pets_num_and_align (monster_type *m_ptr, bool inc) |
ペットの善悪属性に応じた維持コストの途中計算処理 [詳細] | |
int | calculate_upkeep (void) |
ペットの維持コスト計算 [詳細] | |
void | do_cmd_pet_dismiss (void) |
ペットを開放するコマンドのメインルーチン [詳細] | |
void | do_cmd_pet (void) |
ペットに関するコマンドリストのメインルーチン / Issue a pet command [詳細] | |
void | do_cmd_eat_food (void) |
食料を食べるコマンドのメインルーチン / Eat some food (from the pack or floor) [詳細] | |
void | do_cmd_quaff_potion (void) |
薬を飲むコマンドのメインルーチン / Quaff some potion (from the pack or floor) [詳細] | |
void | do_cmd_read_scroll (void) |
読むコマンドのメインルーチン / Eat some food (from the pack or floor) [詳細] | |
void | do_cmd_aim_wand (void) |
魔法棒を使うコマンドのメインルーチン / [詳細] | |
void | do_cmd_use_staff (void) |
杖を使うコマンドのメインルーチン / [詳細] | |
void | do_cmd_zap_rod (void) |
ロッドを使うコマンドのメインルーチン / [詳細] | |
void | do_cmd_activate (void) |
装備を発動するコマンドのメインルーチン / [詳細] | |
void | do_cmd_rerate_aux (void) |
プレイヤーのヒットダイスを振り直す / Roll the hitdie – aux of do_cmd_rerate() [詳細] | |
void | do_cmd_rerate (bool display) |
プレイヤーのヒットダイスを振り直した後明示を行う / Hack – Rerate Hitpoints [詳細] | |
void | ring_of_power (int dir) |
『一つの指輪』の効果処理 / Hack – activate the ring of power [詳細] | |
void | do_cmd_use (void) |
アイテムを汎用的に「使う」コマンドのメインルーチン / Use an item [詳細] | |
bool | do_cmd_magic_eater (bool only_browse, bool powerful) |
取り込んだ魔力を利用するコマンドのメインルーチン / Use eaten rod, wand or staff [詳細] | |
void | stop_singing (void) |
歌の停止を処理する / Stop singing if the player is a Bard [詳細] | |
cptr | do_spell (int realm, int spell, int mode) |
魔法処理のメインルーチン [詳細] | |
void | leave_quest_check (void) |
クエスト階層から離脱する際の処理 [詳細] | |
void | leave_tower_check (void) |
「塔」クエストの各階層から離脱する際の処理 [詳細] | |
void | extract_option_vars (void) |
ビットセットからゲームオプションを展開する / Extract option variables from bit sets [詳細] | |
void | determine_bounty_uniques (void) |
賞金首となるユニークを確定する / Determine bounty uniques [詳細] | |
void | determine_today_mon (bool conv_old) |
今日の賞金首を確定する / Determine today's bounty monster [詳細] | |
void | play_game (bool new_game) |
1ゲームプレイの主要ルーチン / Actually play a game [詳細] | |
bool | psychometry (void) |
超能力者のサイコメトリー処理/ Forcibly pseudo-identify an object in the inventory (or on the floor) [詳細] | |
void | leave_level (int level) |
void | enter_level (int level) |
s32b | turn_real (s32b hoge) |
ゲームターンからの実時間換算を行うための補正をかける [詳細] | |
void | prevent_turn_overflow (void) |
ターンのオーバーフローに対する対処 [詳細] | |
void | safe_setuid_drop (void) |
ファイルのドロップパーミッションチェック / Hack – drop permissions [詳細] | |
void | safe_setuid_grab (void) |
ファイルのグラブパーミッションチェック / Hack – grab permissions [詳細] | |
s16b | tokenize (char *buf, s16b num, char **tokens, int mode) |
各種データテキストをトークン単位に分解する / Extract the first few "tokens" from a buffer [詳細] | |
void | display_player (int mode) |
プレイヤーのステータス表示メイン処理 Display the character on the screen (various modes) [詳細] | |
errr | make_character_dump (FILE *fff) |
ダンプ出力のメインルーチン Output the character dump to a file [詳細] | |
errr | file_character (cptr name) |
プレイヤーステータスをファイルダンプ出力する Hack – Dump a character description file [詳細] | |
errr | process_pref_file_command (char *buf) |
設定ファイルの各行から各種テキスト情報を取得する / Parse a sub-file of the "extra info" (format shown below) [詳細] | |
cptr | process_pref_file_expr (char **sp, char *fp) |
process_pref_fileのサブルーチンとして条件分岐処理の解釈と結果を返す / Helper function for "process_pref_file()" [詳細] | |
errr | process_pref_file (cptr name) |
pref設定ファイルを読み込み設定を反映させる / Process the "user pref file" with the given name [詳細] | |
errr | process_autopick_file (cptr name) |
自動拾いファイルを読み込む / [詳細] | |
errr | process_histpref_file (cptr name) |
プレイヤーの生い立ちファイルを読み込む / Process file for player's history editor. [詳細] | |
void | print_equippy (void) |
プレイヤーの装備一覧シンボルを固定位置に表示する [詳細] | |
errr | check_time_init (void) |
Angbandプレイ禁止時刻の初期化 / Initialize CHECK_TIME. [詳細] | |
errr | check_load_init (void) |
Angbandプレイ禁止ホストの設定初期化 / Initialize CHECK_LOAD. [詳細] | |
errr | check_time (void) |
Angbandプレイ禁止時刻をチェック / Handle CHECK_TIME. [詳細] | |
errr | check_load (void) |
Angbandプレイ禁止ホストのチェック / Handle CHECK_LOAD. [詳細] | |
bool | show_file (bool show_version, cptr name, cptr what, int line, int mode) |
ファイル内容をコンソールに出力する Recursive file perusal. [詳細] | |
void | do_cmd_help (void) |
ヘルプを表示するコマンドのメインルーチン Peruse the On-Line-Help [詳細] | |
void | process_player_name (bool sf) |
プレイヤーの名前をチェックして修正する Process the player name. [詳細] | |
void | get_name (void) |
プレイヤーの名前を変更するコマンドのメインルーチン Gets a name for the character, reacting to name changes. [詳細] | |
void | do_cmd_suicide (void) |
自殺するコマンドのメインルーチン Hack – commit suicide [詳細] | |
void | do_cmd_save_game (int is_autosave) |
セーブするコマンドのメインルーチン Save the game [詳細] | |
void | do_cmd_save_and_exit (void) |
セーブ後にゲーム中断フラグを立てる/ Save the game and exit [詳細] | |
long | total_points (void) |
スコアを計算する / Hack – Calculates the total number of points earned -JWT- [詳細] | |
void | close_game (void) |
ゲーム終了処理 / Close up the current game (player may or may not be dead) [詳細] | |
void | exit_game_panic (void) |
異常発生時のゲーム緊急終了処理 / Handle abrupt death of the visual system [詳細] | |
void | signals_ignore_tstp (void) |
OSからのSIGTSTPシグナルを無視する関数 / Ignore SIGTSTP signals (keyboard suspend) [詳細] | |
void | signals_handle_tstp (void) |
OSからのSIGTSTPシグナルハンドラ / Handle SIGTSTP signals (keyboard suspend) [詳細] | |
void | signals_init (void) |
OSからのシグナルハンドルを初期化する / Prepare to handle the relevant signals. [詳細] | |
errr | get_rnd_line (cptr file_name, int entry, char *output) |
ファイルからランダムに行を一つ取得する / Get a random line from a file [詳細] | |
errr | counts_write (int where, u32b count) |
ファイル位置に書き込む / [詳細] | |
u32b | counts_read (int where) |
ファイル位置を読み込む [詳細] | |
bool | object_is_quest_target (object_type *o_ptr) |
オブジェクトがクエストの達成目的か否かを返す。 [詳細] | |
void | get_table_name_aux (char *out_string) |
各種語彙からランダムな名前を作成する / Create a name from random parts. [詳細] | |
void | get_table_name (char *out_string) |
ランダムな名前をアーティファクト銘として整形する。 / Create a name from random parts with quotes. [詳細] | |
void | get_table_sindarin_aux (char *out_string) |
ランダムなシンダリン銘を作成する / Make random Sindarin name [詳細] | |
void | get_table_sindarin (char *out_string) |
シンダリン銘をアーティファクト用に整形する。 / Make random Sindarin name with quotes [詳細] | |
void | flavor_init (void) |
ゲーム開始時に行われるベースアイテムの初期化ルーチン / Prepare the "variable" part of the "k_info" array. [詳細] | |
char * | object_desc_kosuu (char *t, object_type *o_ptr) |
void | object_desc (char *buf, object_type *o_ptr, u32b mode) |
オブジェクトの各表記を返すメイン関数 / Creates a description of the item "o_ptr", and stores it in "out_val". [詳細] | |
void | init_saved_floors (bool force) |
保存フロア配列を初期化する / Initialize saved_floors array. [詳細] | |
void | clear_saved_floor_files (void) |
保存フロア用テンポラリファイルを削除する / Kill temporal files [詳細] | |
saved_floor_type * | get_sf_ptr (s16b floor_id) |
保存フロアIDから参照ポインタを得る / Get a pointer for an item of the saved_floors array. [詳細] | |
s16b | get_new_floor_id (void) |
新規に利用可能な保存フロアを返す / Initialize new saved floor and get its floor id. [詳細] | |
void | prepare_change_floor_mode (u32b mode) |
フロア切り替え時の処理フラグを追加する / Prepare mode flags of changing floor [詳細] | |
void | precalc_cur_num_of_pet (void) |
フロア移動時にペットを伴った場合の準備処理 / Pre-calculate the racial counters of preserved pets [詳細] | |
void | leave_floor (void) |
現在のフロアを離れるに伴って行なわれる保存処理 / Maintain quest monsters, mark next floor_id at stairs, save current floor, and prepare to enter next floor. [詳細] | |
void | change_floor (void) |
フロアの切り替え処理 / Enter new floor. [詳細] | |
void | stair_creation (void) |
プレイヤーの手による能動的な階段生成処理 / Create stairs at or move previously created stairs into the player location. [詳細] | |
bool | place_quest_monsters (void) |
クエストに関わるモンスターの配置を行う / Place quest monsters [詳細] | |
void | wipe_generate_cave_flags (void) |
フロアに存在する全マスの記憶状態を初期化する / Wipe all unnecessary flags after cave generation [詳細] | |
void | clear_cave (void) |
フロアの全情報を初期化する / Clear and empty the cave [詳細] | |
void | generate_cave (void) |
ダンジョンのランダムフロアを生成する / Generates a random dungeon level -RAK- [詳細] | |
byte | color_char_to_attr (char c) |
シンボル1文字をカラーIDに変更する / Convert a "color letter" into an "actual" color The colors are: dwsorgbuDWvyRGBU, as shown below [詳細] | |
s16b | f_tag_to_index (cptr str) |
地形タグからIDを得る / Convert a fake tag to a real feat index [詳細] | |
errr | process_dungeon_file (cptr name, int ymin, int xmin, int ymax, int xmax) |
クエスト用固定ダンジョン生成時のメインルーチン Helper function for "process_dungeon_file()" [詳細] | |
void | init_file_paths (char *path) |
各データファイルを読み取るためのパスを取得する Find the default paths to all of our important sub-directories. [詳細] | |
errr | init_v_info (void) |
Vault情報読み込みのメインルーチン / Initialize the "v_info" array. [詳細] | |
errr | init_buildings (void) |
店情報初期化のメインルーチン / Initialize buildings [詳細] | |
s16b | f_tag_to_index_in_init (cptr str) |
地形タグからIDを得る / Initialize quest array [詳細] | |
void | init_angband (void) |
全ゲームデータ読み込みのメインルーチン / Hack – main Angband initialization entry point [詳細] | |
cptr | get_check_sum (void) |
サムチェック情報を出力 / Get check sum in string form [詳細] | |
errr | rd_savefile_new (void) |
ロード処理全体のメイン関数 / Actually read the savefile [詳細] | |
bool | load_floor (saved_floor_type *sf_ptr, u32b mode) |
一時保存フロア情報を読み込む / Attempt to load the temporally saved-floor data [詳細] | |
bool | make_attack_normal (int m_idx) |
モンスターからプレイヤーへの打撃処理 / Attack the player via physical attacks. [詳細] | |
void | process_monsters (void) |
全モンスターのターン管理メインルーチン / Process all the "live" monsters, once per game turn. [詳細] | |
int | get_mproc_idx (int m_idx, int mproc_type) |
モンスターの時限ステータスを取得する [詳細] | |
void | mproc_init (void) |
モンスターの時限ステータスリストを初期化する / Initialize monster process [詳細] | |
bool | set_monster_csleep (int m_idx, int v) |
モンスターの睡眠状態値をセットする / Set "m_ptr->mtimed[MTIMED_CSLEEP]", notice observable changes [詳細] | |
bool | set_monster_fast (int m_idx, int v) |
モンスターの加速状態値をセット / Set "m_ptr->mtimed[MTIMED_FAST]", notice observable changes [詳細] | |
bool | set_monster_slow (int m_idx, int v) |
bool | set_monster_stunned (int m_idx, int v) |
モンスターの朦朧状態値をセット / Set "m_ptr->mtimed[MTIMED_STUNNED]", notice observable changes [詳細] | |
bool | set_monster_confused (int m_idx, int v) |
モンスターの混乱状態値をセット / Set "m_ptr->mtimed[MTIMED_CONFUSED]", notice observable changes [詳細] | |
bool | set_monster_monfear (int m_idx, int v) |
モンスターの恐慌状態値をセット / Set "m_ptr->mtimed[MTIMED_MONFEAR]", notice observable changes [詳細] | |
bool | set_monster_invulner (int m_idx, int v, bool energy_need) |
モンスターの無敵状態値をセット / Set "m_ptr->mtimed[MTIMED_INVULNER]", notice observable changes [詳細] | |
void | process_monsters_mtimed (int mtimed_idx) |
全モンスターの各種状態値を時間経過により更新するメインルーチン [詳細] | |
void | dispel_monster_status (int m_idx) |
モンスターへの魔力消去処理 [詳細] | |
u32b | get_curse (int power, object_type *o_ptr) |
モンスターのボール型&ブレス型魔法処理 / [詳細] | |
void | curse_equipment (int chance, int heavy_chance) |
装備への呪い付加判定と付加処理 / [詳細] | |
void | mon_take_hit_mon (int m_idx, int dam, bool *fear, cptr note, int who) |
モンスターが敵モンスターに行う打撃処理 / Hack, based on mon_take_hit... [詳細] | |
bool | process_the_world (int num, int who, bool vs_player) |
モンスターの時間停止処理 [詳細] | |
void | monster_gain_exp (int m_idx, int s_idx) |
モンスターの経験値取得処理 [詳細] | |
void | roff_top (int r_idx) |
モンスター情報のヘッダを記述する Hack – Display the "name" and "attr/chars" of a monster race [詳細] | |
void | screen_roff (int r_idx, int mode) |
モンスター情報の表示と共に画面を一時消去するサブルーチン / Hack – describe the given monster race at the top of the screen [詳細] | |
void | display_roff (int r_idx) |
モンスター情報の現在のウィンドウに表示する / Hack – describe the given monster race in the current "term" window [詳細] | |
void | output_monster_spoiler (int r_idx, void(*roff_func)(byte attr, cptr str)) |
モンスター詳細情報を自動スポイラー向けに出力する / Hack – output description of the given monster race [詳細] | |
void | create_name (int type, char *name) |
bool | mon_hook_dungeon (int r_idx) |
モンスターがダンジョンに出現するかどうかを返す [詳細] | |
monster_hook_type | get_monster_hook (void) |
プレイヤーの現在の広域マップ座標から得た地勢を元にモンスターの生成条件関数を返す [詳細] | |
monster_hook_type | get_monster_hook2 (int y, int x) |
指定された広域マップ座標の地勢を元にモンスターの生成条件関数を返す [詳細] | |
void | set_friendly (monster_type *m_ptr) |
モンスターを友好的にする [詳細] | |
void | set_pet (monster_type *m_ptr) |
モンスターをペットにする [詳細] | |
void | set_hostile (monster_type *m_ptr) |
モンスターを敵に回す Makes the monster hostile towards the player [詳細] | |
void | anger_monster (monster_type *m_ptr) |
モンスターを怒らせる Anger the monster [詳細] | |
bool | monster_can_cross_terrain (s16b feat, monster_race *r_ptr, u16b mode) |
モンスターが地形を踏破できるかどうかを返す Check if monster can cross terrain [詳細] | |
bool | monster_can_enter (int y, int x, monster_race *r_ptr, u16b mode) |
指定された座標の地形をモンスターが踏破できるかどうかを返す Strictly check if monster can enter the grid [詳細] | |
bool | are_enemies (monster_type *m_ptr1, monster_type *m_ptr2) |
モンスターの属性の基づいた敵対関係の有無を返す Check if two monsters are enemies [詳細] | |
bool | monster_has_hostile_align (monster_type *m_ptr, int pa_good, int pa_evil, monster_race *r_ptr) |
モンスターがプレイヤーに対して敵意を抱くかどうかを返す Check if this monster race has "hostile" alignment [詳細] | |
bool | monster_living (monster_race *r_ptr) |
モンスターが生命体かどうかを返す Is the monster "alive"? [詳細] | |
bool | no_questor_or_bounty_uniques (int r_idx) |
モンスターが特殊能力上、賞金首から排除する必要があるかどうかを返す。 Is the monster "alive"? / Is this monster declined to be questor or bounty? [詳細] | |
void | dice_to_string (int base_damage, int dice_num, int dice_side, int dice_mult, int dice_div, char *msg) |
ダイス目を文字列に変換する [詳細] | |
void | set_target (monster_type *m_ptr, int y, int x) |
モンスターの目標地点をセットする / Set the target of counter attack [詳細] | |
void | reset_target (monster_type *m_ptr) |
モンスターの目標地点をリセットする / Reset the target of counter attack [詳細] | |
monster_race * | real_r_ptr (monster_type *m_ptr) |
モンスターの真の種族を返す / Extract monster race pointer of a monster's true form [詳細] | |
void | delete_monster_idx (int i) |
モンスター配列からモンスターを消去する / Delete a monster by index. [詳細] | |
void | delete_monster (int y, int x) |
指定位置に存在するモンスターを削除する / Delete the monster, if any, at a given location [詳細] | |
void | compact_monsters (int size) |
モンスター情報配列を圧縮する / Compact and Reorder the monster list [詳細] | |
void | wipe_m_list (void) |
プレイヤーのフロア離脱に伴う全モンスター配列の消去 / Delete/Remove all the monsters when the player leaves the level [詳細] | |
s16b | m_pop (void) |
モンスター配列の空きを探す / Acquires and returns the index of a "free" monster. [詳細] | |
errr | get_mon_num_prep (monster_hook_type monster_hook, monster_hook_type monster_hook2) |
モンスター生成制限関数最大2つから / Apply a "monster restriction function" to the "monster allocation table" [詳細] | |
s16b | get_mon_num (int level) |
生成モンスター種族を1種生成テーブルから選択する [詳細] | |
void | monster_desc (char *desc, monster_type *m_ptr, int mode) |
モンスターの呼称を作成する / Build a string describing a monster in some way. [詳細] | |
int | lore_do_probe (int r_idx) |
モンスターの調査による思い出補完処理 / Learn about a monster (by "probing" it) [詳細] | |
void | lore_treasure (int m_idx, int num_item, int num_gold) |
モンスターの撃破に伴うドロップ情報の保管処理 / Take note that the given monster just dropped some treasure [詳細] | |
void | sanity_blast (monster_type *m_ptr, bool necro) |
ELDRITCH_HORRORによるプレイヤーの精神破壊処理 [詳細] | |
void | update_mon (int m_idx, bool full) |
モンスターの各情報を更新する / This function updates the monster record of the given monster [詳細] | |
void | update_monsters (bool full) |
単純に生存している全モンスターの更新処理を行う / This function simply updates all the (non-dead) monsters (see above). [詳細] | |
bool | place_monster_aux (int who, int y, int x, int r_idx, u32b mode) |
一般的なモンスター生成処理のサブルーチン / Attempt to place a monster of the given race at the given location [詳細] | |
bool | place_monster (int y, int x, u32b mode) |
一般的なモンスター生成処理のメインルーチン / Attempt to place a monster of the given race at the given location [詳細] | |
bool | alloc_horde (int y, int x) |
指定地点に1種類のモンスター種族による群れを生成する [詳細] | |
bool | alloc_guardian (bool def_val) |
ダンジョンの主生成を試みる / Put the Guardian [詳細] | |
bool | alloc_monster (int dis, u32b mode) |
ダンジョンの初期配置モンスターを生成1回生成する / Attempt to allocate a random monster in the dungeon. [詳細] | |
bool | summon_specific (int who, int y1, int x1, int lev, int type, u32b mode) |
モンスターを召喚により配置する / Place a monster (of the specified "type") near the given location. [詳細] | |
bool | summon_named_creature (int who, int oy, int ox, int r_idx, u32b mode) |
特定モンスター種族を召喚により生成する / A "dangerous" function, creates a pet of the specified type [詳細] | |
bool | multiply_monster (int m_idx, bool clone, u32b mode) |
モンスターを増殖生成する / Let the given monster attempt to reproduce. [詳細] | |
void | update_smart_learn (int m_idx, int what) |
SMART(適格に攻撃を行う)モンスターの学習状況を更新する / Learn about an "observed" resistance. [詳細] | |
void | choose_new_monster (int m_idx, bool born, int r_idx) |
モンスターの変身処理 [詳細] | |
byte | get_mspeed (monster_race *r_ptr) |
モンスターの個体加速を設定する / Get initial monster speed [詳細] | |
bool | player_place (int y, int x) |
プレイヤーを指定座標に配置する / Place the player in the dungeon XXX XXX [詳細] | |
void | monster_drop_carried_objects (monster_type *m_ptr) |
モンスターが盗みや拾いで確保していたアイテムを全てドロップさせる / Drop all items carried by a monster [詳細] | |
s16b | m_bonus (int max, int level) |
上質以上のオブジェクトに与えるための各種ボーナスを正規乱数も加えて算出する。 Help determine an "enchantment bonus" for an object. [詳細] | |
void | reset_visuals (void) |
オブジェクト、地形の表示シンボルなど初期化する / Reset the "visual" lists [詳細] | |
void | object_flags (object_type *o_ptr, u32b flgs[TR_FLAG_SIZE]) |
オブジェクトのフラグ類を配列に与える Obtain the "flags" for an item [詳細] | |
void | object_flags_known (object_type *o_ptr, u32b flgs[TR_FLAG_SIZE]) |
オブジェクトの明示されているフラグ類を取得する Obtain the "flags" for an item which are known to the player [詳細] | |
cptr | item_activation (object_type *o_ptr) |
オブジェクトの発動効果名称を返す(メインルーチン) / Determine the "Activation" (if any) for an artifact Return a string, or NULL for "no activation" [詳細] | |
bool | screen_object (object_type *o_ptr, u32b mode) |
オブジェクトの*鑑定*内容を詳述して表示する / Describe a "fully identified" item [詳細] | |
char | index_to_label (int i) |
オブジェクト選択時の選択アルファベットラベルを返す / Convert an inventory index into a one character label [詳細] | |
s16b | label_to_inven (int c) |
選択アルファベットラベルからプレイヤーの所持オブジェクトIDを返す / Convert a label into the index of an item in the "inven" [詳細] | |
s16b | label_to_equip (int c) |
選択アルファベットラベルからプレイヤーの装備オブジェクトIDを返す / Convert a label into the index of a item in the "equip" [詳細] | |
s16b | wield_slot (object_type *o_ptr) |
オブジェクトの該当装備部位IDを返す / Determine which equipment slot (if any) an item likes [詳細] | |
cptr | mention_use (int i) |
所持/装備オブジェクトIDの部位表現を返す / Return a string mentioning how a given item is carried [詳細] | |
cptr | describe_use (int i) |
所持/装備オブジェクトIDの現在の扱い方の状態表現を返す / Return a string describing how a given item is being worn. [詳細] | |
bool | check_book_realm (const byte book_tval, const byte book_sval) |
tval/sval指定のベースアイテムがプレイヤーの使用可能な魔法書かどうかを返す / Hack: Check if a spellbook is one of the realms we can use. [詳細] | |
bool | item_tester_okay (object_type *o_ptr) |
アイテムがitem_tester_hookグローバル関数ポインタの条件を満たしているかを返す汎用関数 Check an item against the item tester info [詳細] | |
void | display_inven (void) |
所持アイテム一覧を表示する / Choice window "shadow" of the "show_inven()" function [詳細] | |
void | display_equip (void) |
装備アイテム一覧を表示する / Choice window "shadow" of the "show_equip()" function [詳細] | |
int | show_inven (int target_item) |
所持アイテムの表示を行う / Display the inventory. [詳細] | |
int | show_equip (int target_item) |
装備アイテムの表示を行う / Display the equipment. [詳細] | |
void | toggle_inven_equip (void) |
サブウィンドウに所持品、装備品リストの表示を行う / Flip "inven" and "equip" in any sub-windows [詳細] | |
bool | can_get_item (void) |
プレイヤーがオブジェクトを拾うことができる状態かを返す / Determine whether get_item() can get some item or not [詳細] | |
bool | get_item (int *cp, cptr pmt, cptr str, int mode) |
オブジェクト選択の汎用関数 / Let the user select an item, save its "index" [詳細] | |
void | excise_object_idx (int o_idx) |
床上、モンスター所持でスタックされたアイテムを削除しスタックを補完する / Excise a dungeon object from any stacks [詳細] | |
void | delete_object_idx (int o_idx) |
オブジェクトを削除する / Delete a dungeon object [詳細] | |
void | delete_object (int y, int x) |
フロアにマスに落ちているオブジェクトを全て削除する / Deletes all objects at given location Delete a dungeon object [詳細] | |
void | compact_objects (int size) |
グローバルオブジェクト配列から優先度の低いものを削除し、データを圧縮する。 / Compact and Reorder the object list. [詳細] | |
void | wipe_o_list (void) |
グローバルオブジェクト配列を初期化する / Delete all the items when player leaves the level [詳細] | |
s16b | o_pop (void) |
グローバルオブジェクト配列から空きを取得する / Acquires and returns the index of a "free" object. [詳細] | |
s16b | get_obj_num (int level) |
オブジェクト生成テーブルからアイテムを取得する / Choose an object kind that seems "appropriate" to the given level [詳細] | |
void | object_known (object_type *o_ptr) |
オブジェクトを鑑定済にする / Known is true when the "attributes" of an object are "known". [詳細] | |
void | object_aware (object_type *o_ptr) |
オブジェクトを*鑑定*済にする / The player is now aware of the effects of the given object. [詳細] | |
void | object_tried (object_type *o_ptr) |
オブジェクトを試行済にする / Something has been "sampled" [詳細] | |
s32b | object_value (object_type *o_ptr) |
オブジェクト価格算出のメインルーチン / Return the price of an item including plusses (and charges) [詳細] | |
s32b | object_value_real (object_type *o_ptr) |
オブジェクトの真の価格を算出する / Return the value of the flags the object has... [詳細] | |
bool | can_player_destroy_object (object_type *o_ptr) |
破壊可能なアイテムかを返す / Determines whether an object can be destroyed, and makes fake inscription. [詳細] | |
void | distribute_charges (object_type *o_ptr, object_type *q_ptr, int amt) |
魔法棒やロッドのスロット分割時に使用回数を分配する / Distribute charges of rods or wands. [詳細] | |
void | reduce_charges (object_type *o_ptr, int amt) |
魔法棒やロッドの使用回数を減らす / [詳細] | |
int | object_similar_part (object_type *o_ptr, object_type *j_ptr) |
両オブジェクトをスロットに重ね合わせ可能な最大数を返す。 Determine if an item can partly absorb a second item. [詳細] | |
bool | object_similar (object_type *o_ptr, object_type *j_ptr) |
両オブジェクトをスロットに重ねることができるかどうかを返す。 Determine if an item can absorb a second item. [詳細] | |
void | object_absorb (object_type *o_ptr, object_type *j_ptr) |
両オブジェクトをスロットに重ね合わせる。 Allow one item to "absorb" another, assuming they are similar [詳細] | |
s16b | lookup_kind (int tval, int sval) |
tvalとsvalに対応するベースアイテムのIDを返す。 Find the index of the object_kind with the given tval and sval [詳細] | |
void | object_wipe (object_type *o_ptr) |
オブジェクトを初期化する Wipe an object clean. [詳細] | |
void | object_prep (object_type *o_ptr, int k_idx) |
オブジェクト構造体にベースアイテムを作成する Prepare an object based on an object kind. [詳細] | |
void | object_copy (object_type *o_ptr, object_type *j_ptr) |
オブジェクトを複製する Wipe an object clean. [詳細] | |
void | apply_magic (object_type *o_ptr, int lev, u32b mode) |
生成されたベースアイテムに魔法的な強化を与えるメインルーチン Complete the "creation" of an object by applying "magic" to the item [詳細] | |
bool | make_object (object_type *j_ptr, u32b mode) |
生成階に応じたベースアイテムの生成を行う。 Attempt to make an object (normal or good/great) [詳細] | |
void | place_object (int y, int x, u32b mode) |
フロアの指定位置に生成階に応じたベースアイテムの生成を行う。 Attempt to place an object (normal or good/great) at the given location. [詳細] | |
bool | make_gold (object_type *j_ptr) |
生成階に応じた財宝オブジェクトの生成を行う。 Make a treasure object [詳細] | |
void | place_gold (int y, int x) |
フロアの指定位置に生成階に応じた財宝オブジェクトの生成を行う。 Places a treasure (Gold or Gems) at given location [詳細] | |
s16b | drop_near (object_type *o_ptr, int chance, int y, int x) |
生成済のオブジェクトをフロアの所定の位置に落とす。 Let an object fall to the ground at or near a location. [詳細] | |
void | acquirement (int y1, int x1, int num, bool great, bool special, bool known) |
獲得ドロップを行う。 Scatter some "great" objects near the player [詳細] | |
void | amusement (int y1, int x1, int num, bool known) |
誰得ドロップを行う。 [詳細] | |
void | init_normal_traps (void) |
タグに従って、基本トラップテーブルを初期化する / Initialize arrays for normal traps [詳細] | |
s16b | choose_random_trap (void) |
基本トラップをランダムに選択する / Get random trap [詳細] | |
void | disclose_grid (int y, int x) |
マスに存在するトラップを秘匿する / Disclose an invisible trap [詳細] | |
void | place_trap (int y, int x) |
マスをトラップを配置する / The location must be a legal, naked, floor grid. [詳細] | |
void | inven_item_charges (int item) |
魔道具の使用回数の残量を示すメッセージを表示する / Describe the charges on an item in the inventory. [詳細] | |
void | inven_item_describe (int item) |
アイテムの残り所持数メッセージを表示する / Describe an item in the inventory. [詳細] | |
void | inven_item_increase (int item, int num) |
アイテムの残り所持数メッセージを表示する / Increase the "number" of an item in the inventory [詳細] | |
void | inven_item_optimize (int item) |
所持アイテムスロットから所持数のなくなったアイテムを消去する / Erase an inventory slot if it has no more items [詳細] | |
void | floor_item_charges (int item) |
床上の魔道具の残り残量メッセージを表示する / Describe the charges on an item on the floor. [詳細] | |
void | floor_item_describe (int item) |
床上のアイテムの残り数メッセージを表示する / Describe the charges on an item on the floor. [詳細] | |
void | floor_item_increase (int item, int num) |
床上のアイテムの数を増やす / Increase the "number" of an item on the floor [詳細] | |
void | floor_item_optimize (int item) |
床上の数の無くなったアイテムスロットを消去する / Optimize an item on the floor (destroy "empty" items) [詳細] | |
bool | inven_carry_okay (object_type *o_ptr) |
アイテムを拾う際にザックから溢れずに済むかを判定する / Check if we have space for an item in the pack without overflow [詳細] | |
bool | object_sort_comp (object_type *o_ptr, s32b o_value, object_type *j_ptr) |
オブジェクトを定義された基準に従いソートするための関数 / Check if we have space for an item in the pack without overflow [詳細] | |
s16b | inven_carry (object_type *o_ptr) |
オブジェクトをプレイヤーが拾って所持スロットに納めるメインルーチン / Add an item to the players inventory, and return the slot used. [詳細] | |
s16b | inven_takeoff (int item, int amt) |
装備スロットからオブジェクトを外すメインルーチン / Take off (some of) a non-cursed equipment item [詳細] | |
void | inven_drop (int item, int amt) |
所持スロットから床下にオブジェクトを落とすメインルーチン / Drop (some of) a non-cursed inventory/equipment item [詳細] | |
void | combine_pack (void) |
プレイヤーの所持スロットに存在するオブジェクトをまとめなおす / Combine items in the pack [詳細] | |
void | reorder_pack (void) |
プレイヤーの所持スロットに存在するオブジェクトを並び替える / Reorder items in the pack [詳細] | |
void | display_koff (int k_idx) |
現在アクティブになっているウィンドウにオブジェクトの詳細を表示する / Hack – display an object kind in the current window [詳細] | |
object_type * | choose_warning_item (void) |
警告を放つアイテムを選択する / Choose one of items that have warning flag Calculate spell damages [詳細] | |
bool | process_warning (int xx, int yy) |
プレイヤーが特定地点へ移動した場合に警告を発する処理 / Examine the grid (xx,yy) and warn the player if there are any danger [詳細] | |
void | do_cmd_kaji (bool only_browse) |
鍛冶コマンドのメインルーチン [詳細] | |
void | torch_flags (object_type *o_ptr, u32b *flgs) |
投擲時たいまつに投げやすい/焼棄/アンデッドスレイの特別効果を返す。 Torches have special abilities when they are flaming. [詳細] | |
void | torch_dice (object_type *o_ptr, int *dd, int *ds) |
投擲時たいまつにダイスを与える。 Torches have special abilities when they are flaming. [詳細] | |
void | torch_lost_fuel (object_type *o_ptr) |
投擲時命中したたいまつの寿命を縮める。 Torches have special abilities when they are flaming. [詳細] | |
bool | gain_magic (void) |
魔道具術師の魔力取り込み処理 [詳細] | |
void | do_cmd_racial_power (void) |
レイシャル・パワーコマンドのメインルーチン / Allow user to choose a power (racial / mutation) to activate [詳細] | |
bool | save_player (void) |
セーブデータ書き込みのメインルーチン / Attempt to save the player in a savefile [詳細] | |
bool | load_player (void) |
セーブデータ読み込みのメインルーチン / Attempt to Load a "savefile" [詳細] | |
void | remove_loc (void) |
ファイルロック処理 [詳細] | |
bool | save_floor (saved_floor_type *sf_ptr, u32b mode) |
ゲームプレイ中のフロア一時保存出力処理メインルーチン / Attempt to save the temporally saved-floor data [詳細] | |
bool | in_disintegration_range (int y1, int x1, int y2, int x2) |
void | breath_shape (u16b *path_g, int dist, int *pgrids, byte *gx, byte *gy, byte *gm, int *pgm_rad, int rad, int y1, int x1, int y2, int x2, int typ) |
int | take_hit (int damage_type, int damage, cptr kb_str, int monspell) |
u16b | bolt_pict (int y, int x, int ny, int nx, int typ) |
始点から終点にかけた方向毎にボルトのキャラクタを返す / Find the attr/char pair to use for a spell effect [詳細] | |
sint | project_path (u16b *gp, int range, int y1, int x1, int y2, int x2, int flg) |
始点から終点への経路を返す / Determine the path taken by a projection. [詳細] | |
int | dist_to_line (int y, int x, int y1, int x1, int y2, int x2) |
bool | project (int who, int rad, int y, int x, int dam, int typ, int flg, int monspell) |
汎用的なビーム/ボルト/ボール系処理のルーチン Generic "beam"/"bolt"/"ball" projection routine. [詳細] | |
bool | binding_field (int dam) |
鏡魔法「封魔結界」の効果処理 [詳細] | |
void | seal_of_mirror (int dam) |
鏡魔法「鏡の封印」の効果処理 [詳細] | |
void | message_pain (int m_idx, int dam) |
ダメージを受けたモンスターの様子を記述する / Dump a message describing a monster's reaction to damage [詳細] | |
void | self_knowledge (void) |
自己分析処理(Nethackからのアイデア) / self-knowledge... [詳細] | |
bool | detect_traps (int range, bool known) |
プレイヤー周辺のトラップを感知する / Detect all traps on current panel [詳細] | |
bool | detect_doors (int range) |
プレイヤー周辺のドアを感知する / Detect all doors on current panel [詳細] | |
bool | detect_stairs (int range) |
プレイヤー周辺の階段を感知する / Detect all stairs on current panel [詳細] | |
bool | detect_treasure (int range) |
プレイヤー周辺の地形財宝を感知する / Detect any treasure on the current panel [詳細] | |
bool | detect_objects_gold (int range) |
プレイヤー周辺のアイテム財宝を感知する / Detect all "gold" objects on the current panel [詳細] | |
bool | detect_objects_normal (int range) |
通常のアイテムオブジェクトを感知する / Detect all "normal" objects on the current panel [詳細] | |
bool | detect_objects_magic (int range) |
魔法効果のあるのアイテムオブジェクトを感知する / Detect all "magic" objects on the current panel. [詳細] | |
bool | detect_monsters_normal (int range) |
一般のモンスターを感知する / Detect all "normal" monsters on the current panel [詳細] | |
bool | detect_monsters_invis (int range) |
不可視のモンスターを感知する / Detect all "invisible" monsters around the player [詳細] | |
bool | detect_monsters_evil (int range) |
邪悪なモンスターを感知する / Detect all "evil" monsters on current panel [詳細] | |
bool | detect_monsters_xxx (int range, u32b match_flag) |
flags3に対応するモンスターを感知する / A "generic" detect monsters routine, tagged to flags3 [詳細] | |
bool | detect_monsters_string (int range, cptr) |
該当シンボルのモンスターを感知する / Detect all (string) monsters on current panel [詳細] | |
bool | detect_monsters_nonliving (int range) |
無生命のモンスターを感知する(アンデッド、悪魔系を含む) / Detect all "nonliving", "undead" or "demonic" monsters on current panel [詳細] | |
bool | detect_monsters_mind (int range) |
精神のあるモンスターを感知する / Detect all monsters it has mind on current panel [詳細] | |
bool | detect_all (int range) |
全感知処理 / Detect everything [詳細] | |
bool | wall_stone (void) |
壁生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | speed_monsters (void) |
視界内モンスターを加速する処理 / Speed monsters [詳細] | |
bool | slow_monsters (int power) |
視界内モンスターを加速する処理 / Slow monsters [詳細] | |
bool | sleep_monsters (int power) |
視界内モンスターを眠らせる処理 / Sleep monsters [詳細] | |
void | aggravate_monsters (int who) |
視界内モンスターを怒らせる処理 / Wake up all monsters, and speed up "los" monsters. [詳細] | |
bool | genocide_aux (int m_idx, int power, bool player_cast, int dam_side, cptr spell_name) |
モンスターへの単体抹殺処理サブルーチン / Delete a non-unique/non-quest monster [詳細] | |
bool | symbol_genocide (int power, bool player_cast) |
モンスターへのシンボル抹殺処理ルーチン / Delete all non-unique/non-quest monsters of a given "type" from the level [詳細] | |
bool | mass_genocide (int power, bool player_cast) |
モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) monsters [詳細] | |
bool | mass_genocide_undead (int power, bool player_cast) |
アンデッド・モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) undead [詳細] | |
bool | probing (void) |
周辺モンスターを調査する / Probe nearby monsters [詳細] | |
bool | banish_evil (int dist) |
視界内の邪悪なモンスターをテレポート・アウェイさせる処理 / Banish evil monsters [詳細] | |
bool | dispel_evil (int dam) |
視界内の邪悪なモンスターにダメージを与える処理 / Dispel evil monsters [詳細] | |
bool | dispel_good (int dam) |
視界内の善良なモンスターにダメージを与える処理 / Dispel good monsters [詳細] | |
bool | dispel_undead (int dam) |
視界内のアンデッド・モンスターにダメージを与える処理 / Dispel undead monsters [詳細] | |
bool | dispel_monsters (int dam) |
視界内のあらゆるモンスターにダメージを与える処理 / Dispel all monsters [詳細] | |
bool | dispel_living (int dam) |
視界内の生命のあるモンスターにダメージを与える処理 / Dispel 'living' monsters [詳細] | |
bool | dispel_demons (int dam) |
視界内の悪魔系モンスターにダメージを与える処理 / Dispel 'living' monsters [詳細] | |
bool | crusade (void) |
視界内のモンスターに「聖戦」効果を与える処理 [詳細] | |
bool | turn_undead (void) |
視界内のアンデッド・モンスターを恐怖させる処理 / Turn undead [詳細] | |
bool | destroy_area (int y1, int x1, int r, bool in_generate) |
*破壊*処理を行う / The spell of destruction [詳細] | |
bool | earthquake_aux (int cy, int cx, int r, int m_idx) |
地震処理(サブルーチン) / Induce an "earthquake" of the given radius at the given location. [詳細] | |
bool | earthquake (int cy, int cx, int r) |
地震処理(プレイヤーの中心発動) / Induce an "earthquake" of the given radius at the given location. [詳細] | |
void | lite_room (int y1, int x1) |
指定された部屋内を照らす / Illuminate any room containing the given location. [詳細] | |
void | unlite_room (int y1, int x1) |
指定された部屋内を暗くする / Darken all rooms containing the given location [詳細] | |
bool | lite_area (int dam, int rad) |
プレイヤー位置を中心にLITE_WEAK属性を通じた照明処理を行う / Hack – call light around the player Affect all monsters in the projection radius [詳細] | |
bool | unlite_area (int dam, int rad) |
プレイヤー位置を中心にLITE_DARK属性を通じた消灯処理を行う / Hack – call light around the player Affect all monsters in the projection radius [詳細] | |
bool | fire_ball (int typ, int dir, int dam, int rad) |
ボール系スペルの発動 / Cast a ball spell [詳細] | |
bool | fire_rocket (int typ, int dir, int dam, int rad) |
ロケット系スペルの発動(詳細な差は確認中) / Cast a ball spell [詳細] | |
bool | fire_ball_hide (int typ, int dir, int dam, int rad) |
ボール(ハイド)系スペルの発動 / Cast a ball spell [詳細] | |
bool | fire_meteor (int who, int typ, int x, int y, int dam, int rad) |
メテオ系スペルの発動 / Cast a meteor spell [詳細] | |
bool | fire_bolt (int typ, int dir, int dam) |
ボルト系スペルの発動 / Cast a bolt spell. [詳細] | |
bool | fire_blast (int typ, int dir, int dd, int ds, int num, int dev) |
ブラスト系スペルの発動 / Cast a blast spell [詳細] | |
void | call_chaos (void) |
混沌招来処理 [詳細] | |
bool | fire_beam (int typ, int dir, int dam) |
ビーム系スペルの発動 / Cast a beam spell. [詳細] | |
bool | fire_bolt_or_beam (int prob, int typ, int dir, int dam) |
確率に応じたボルト系/ビーム系スペルの発動 / Cast a bolt spell, or rarely, a beam spell. [詳細] | |
bool | lite_line (int dir, int dam) |
LITE_WEAK属性による光源ビーム処理 [詳細] | |
bool | drain_life (int dir, int dam) |
吸血ボルト処理 [詳細] | |
bool | death_ray (int dir, int plev) |
死の光線処理 [詳細] | |
bool | wall_to_mud (int dir, int dam) |
岩石溶解処理 [詳細] | |
bool | destroy_door (int dir) |
ドア破壊処理 [詳細] | |
bool | disarm_trap (int dir) |
トラップ解除処理 [詳細] | |
bool | wizard_lock (int dir) |
魔法の施錠処理 [詳細] | |
bool | heal_monster (int dir, int dam) |
モンスター回復処理 [詳細] | |
bool | speed_monster (int dir, int power) |
モンスター加速処理 [詳細] | |
bool | slow_monster (int dir, int power) |
モンスター減速処理 [詳細] | |
bool | sleep_monster (int dir, int power) |
モンスター催眠処理 [詳細] | |
bool | stasis_monster (int dir) |
モンスター拘束(STASIS)処理 [詳細] | |
bool | stasis_evil (int dir) |
邪悪なモンスター拘束(STASIS)処理 [詳細] | |
bool | confuse_monster (int dir, int plev) |
モンスター混乱処理 [詳細] | |
bool | stun_monster (int dir, int plev) |
モンスター朦朧処理 [詳細] | |
bool | fear_monster (int dir, int plev) |
モンスター恐慌処理 [詳細] | |
bool | poly_monster (int dir, int power) |
チェンジモンスター処理 [詳細] | |
bool | clone_monster (int dir) |
クローンモンスター処理 [詳細] | |
bool | teleport_monster (int dir, int distance) |
モンスター用テレポート処理 [詳細] | |
bool | door_creation (void) |
ドア生成処理(プレイヤー中心に周囲1マス) / Hooks – affect adjacent grids (radius 1 ball attack) [詳細] | |
bool | trap_creation (int y, int x) |
トラップ生成処理(起点から周囲1マス) [詳細] | |
bool | tree_creation (void) |
森林生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | glyph_creation (void) |
魔法のルーン生成処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | destroy_doors_touch (void) |
ドア破壊処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | disarm_traps_touch (void) |
トラップ解除処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | animate_dead (int who, int y, int x) |
死者復活処理(起点より周囲5マス) [詳細] | |
bool | sleep_monsters_touch (void) |
スリープモンスター処理(プレイヤー中心に周囲1マス) [詳細] | |
bool | activate_ty_curse (bool stop_ty, int *count) |
TY_CURSE処理発動 / Activate the evil Topi Ylinen curse. [詳細] | |
int | activate_hi_summon (int y, int x, bool can_pet) |
HI_SUMMON(上級召喚)処理発動 [詳細] | |
int | summon_cyber (int who, int y, int x) |
サイバーデーモンの召喚 [詳細] | |
void | wall_breaker (void) |
周辺破壊効果(プレイヤー中心) [詳細] | |
bool | confuse_monsters (int dam) |
パニック・モンスター効果(プレイヤー視界範囲内) / Confuse monsters [詳細] | |
bool | charm_monsters (int dam) |
チャーム・モンスター効果(プレイヤー視界範囲内) / Charm monsters [詳細] | |
bool | charm_animals (int dam) |
動物魅了効果(プレイヤー視界範囲内) / Charm Animals [詳細] | |
bool | stun_monsters (int dam) |
モンスター朦朧効果(プレイヤー視界範囲内) / Stun monsters [詳細] | |
bool | stasis_monsters (int dam) |
モンスター停止効果(プレイヤー視界範囲内) / Stasis monsters [詳細] | |
bool | banish_monsters (int dist) |
モンスター追放効果(プレイヤー視界範囲内) / Banish all monsters [詳細] | |
bool | turn_monsters (int dam) |
全モンスター退散効果(プレイヤー視界範囲内) / Turn everyone [詳細] | |
bool | turn_evil (int dam) |
邪悪退散効果(プレイヤー視界範囲内) / Turn evil [詳細] | |
bool | deathray_monsters (void) |
死の光線(プレイヤー視界範囲内) / Death-ray all monsters (note: OBSCENELY powerful) [詳細] | |
bool | charm_monster (int dir, int plev) |
チャーム・モンスター(1体) [詳細] | |
bool | control_one_undead (int dir, int plev) |
アンデッド支配(1体) [詳細] | |
bool | control_one_demon (int dir, int plev) |
悪魔支配(1体) [詳細] | |
bool | charm_animal (int dir, int plev) |
動物支配(1体) [詳細] | |
bool | charm_living (int dir, int plev) |
生物支配(1体) [詳細] | |
bool | mindblast_monsters (int dam) |
モンスター精神攻撃効果(プレイヤー視界範囲内) / Mindblast monsters [詳細] | |
s32b | flag_cost (object_type *o_ptr, int plusses) |
オブジェクトのフラグ類から価格を算出する / Return the value of the flags the object has... [詳細] | |
void | report_magics (void) |
現在の一時的効果一覧を返す / Report all currently active magical effects. [詳細] | |
bool | teleport_swap (int dir) |
モンスターとの位置交換処理 / Switch position with a monster. [詳細] | |
bool | item_tester_hook_recharge (object_type *o_ptr) |
魔力充填が可能なアイテムかどうか判定する / Hook for "get_item()". [詳細] | |
bool | project_hook (int typ, int dir, int dam, int flg) |
指定方向に飛び道具を飛ばす(フラグ任意指定) / Hack – apply a "projection()" in a direction (or at the target) [詳細] | |
bool | project_hack (int typ, int dam) |
視界内モンスターに魔法効果を与える / Apply a "project()" directly to all viewable monsters [詳細] | |
bool | eat_magic (int power) |
魔力食い処理 [詳細] | |
void | discharge_minion (void) |
ペット爆破処理 / [詳細] | |
bool | kawarimi (bool success) |
変わり身処理 [詳細] | |
bool | rush_attack (bool *mdeath) |
入身処理 / "Rush Attack" routine for Samurai or Ninja [詳細] | |
void | remove_all_mirrors (bool explode) |
全鏡の消去 / Remove all mirrors in this floor [詳細] | |
bool | teleport_away (int m_idx, int dis, u32b mode) |
モンスターのテレポートアウェイ処理 / Teleport a monster, normally up to "dis" grids away. [詳細] | |
void | teleport_monster_to (int m_idx, int ty, int tx, int power, u32b mode) |
モンスターを指定された座標付近にテレポートする / Teleport monster next to a grid near the given location [詳細] | |
bool | cave_player_teleportable_bold (int y, int x, u32b mode) |
指定されたマスにプレイヤーがテレポート可能かどうかを判定する。 [詳細] | |
bool | teleport_player_aux (int dis, u32b mode) |
プレイヤーのテレポート先選定と移動処理 / Teleport the player to a location up to "dis" grids away. [詳細] | |
void | teleport_player (int dis, u32b mode) |
プレイヤーのテレポート処理メインルーチン [詳細] | |
void | teleport_player_away (int m_idx, int dis) |
プレイヤーのテレポートアウェイ処理 / [詳細] | |
void | teleport_player_to (int ny, int nx, u32b mode) |
プレイヤーを指定位置近辺にテレポートさせる Teleport player to a grid near the given location [詳細] | |
void | teleport_away_followable (int m_idx) |
void | teleport_level (int m_idx) |
プレイヤー及びモンスターをレベルテレポートさせる / Teleport the player one level up or down (random when legal) [詳細] | |
int | choose_dungeon (cptr note, int y, int x) |
これまでに入ったダンジョンの一覧を表示する [詳細] | |
bool | recall_player (int turns) |
プレイヤーの帰還発動及び中止処理 / Recall the player to town or dungeon [詳細] | |
bool | word_of_recall (void) |
帰還用メインルーチン [詳細] | |
bool | reset_recall (void) |
フロア・リセット処理 [詳細] | |
bool | apply_disenchant (int mode) |
プレイヤーの装備劣化処理 / Apply disenchantment to the player's stuff [詳細] | |
void | mutate_player (void) |
プレイヤーの突然変異処理 [詳細] | |
void | apply_nexus (monster_type *m_ptr) |
プレイヤーの因果混乱処理 / Apply Nexus [詳細] | |
void | phlogiston (void) |
寿命つき光源の燃素追加処理 / Charge a lite (torch or latern) [詳細] | |
void | brand_weapon (int brand_type) |
武器へのエゴ付加処理 / Brand the current weapon [詳細] | |
void | call_the_ (void) |
虚無招来処理 / [詳細] | |
void | fetch (int dir, int wgt, bool require_los) |
アイテム引き寄せ処理 / Fetch an item (teleport it right underneath the caster) [詳細] | |
void | alter_reality (void) |
現実変容処理 [詳細] | |
bool | warding_glyph (void) |
守りのルーン設置処理 / Leave a "glyph of warding" which prevents monster movement [詳細] | |
bool | place_mirror (void) |
鏡設置処理 [詳細] | |
bool | explosive_rune (void) |
爆発のルーン設置処理 / Leave an "explosive rune" which prevents monster movement [詳細] | |
void | identify_pack (void) |
全所持アイテム鑑定処理 / Identify everything being carried. [詳細] | |
bool | remove_curse (void) |
装備の軽い呪い解呪処理 / Remove most curses [詳細] | |
bool | remove_all_curse (void) |
装備の重い呪い解呪処理 / Remove all curses [詳細] | |
bool | alchemy (void) |
アイテムの価値に応じた錬金術処理 / Turns an object into gold, gain some of its value in a shop [詳細] | |
bool | enchant (object_type *o_ptr, int n, int eflag) |
装備修正強化処理 / Enchants a plus onto an item. [詳細] | |
bool | enchant_spell (int num_hit, int num_dam, int num_ac) |
装備修正強化処理のメインルーチン / Enchant an item (in the inventory or on the floor) [詳細] | |
bool | artifact_scroll (void) |
アーティファクト生成の巻物処理 / [詳細] | |
bool | ident_spell (bool only_equip) |
アイテム鑑定のメインルーチン処理 / Identify an object in the inventory (or on the floor) [詳細] | |
bool | mundane_spell (bool only_equip) |
アイテム凡庸化のメインルーチン処理 / Identify an object in the inventory (or on the floor) [詳細] | |
bool | identify_item (object_type *o_ptr) |
アイテム鑑定処理 / Identify an object [詳細] | |
bool | identify_fully (bool only_equip) |
アイテム*鑑定*のメインルーチン処理 / Identify an object in the inventory (or on the floor) [詳細] | |
bool | recharge (int num) |
魔力充填処理 / Recharge a wand/staff/rod from the pack or on the floor. [詳細] | |
bool | bless_weapon (void) |
武器の祝福処理 / Bless a weapon [詳細] | |
bool | pulish_shield (void) |
盾磨き処理 / pulish shield [詳細] | |
bool | potion_smash_effect (int who, int y, int x, int k_idx) |
薬の破損効果処理 / Potions "smash open" and cause an area effect when [詳細] | |
void | display_spell_list (void) |
プレイヤーの全既知呪文を表示する / Hack – Display all known spells in a window return なし [詳細] | |
s16b | experience_of_spell (int spell, int realm) |
呪文の経験値を返す / Returns experience of a spell [詳細] | |
int | mod_need_mana (int need_mana, int spell, int realm) |
呪文の消費MPを返す / Modify mana consumption rate using spell exp and p_ptr->dec_mana [詳細] | |
int | mod_spell_chance_1 (int chance) |
呪文の失敗率修正処理1(呪い、消費魔力減少、呪文簡易化) / Modify spell fail rate Using p_ptr->to_m_chance, p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell [詳細] | |
int | mod_spell_chance_2 (int chance) |
呪文の失敗率修正処理2(消費魔力減少、呪い、負値修正) / Modify spell fail rate Using p_ptr->to_m_chance, p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell [詳細] | |
s16b | spell_chance (int spell, int realm) |
呪文の失敗率計算メインルーチン / Returns spell chance of failure for spell -RAK- [詳細] | |
bool | spell_okay (int spell, bool learned, bool study_pray, int realm) |
魔法が利用可能かどうかを返す / Determine if a spell is "okay" for the player to cast or study The spell must be legible, not forgotten, and also, to cast, it must be known, and to study, it must not be known. [詳細] | |
void | print_spells (int target_spell, byte *spells, int num, int y, int x, int realm) |
呪文情報の表示処理 / Print a list of spells (for browsing or casting or viewing) [詳細] | |
bool | hates_acid (object_type *o_ptr) |
アイテムが酸で破損するかどうかを判定する [詳細] | |
bool | hates_elec (object_type *o_ptr) |
アイテムが電撃で破損するかどうかを判定する / Does a given object (usually) hate electricity? [詳細] | |
bool | hates_fire (object_type *o_ptr) |
アイテムが火炎で破損するかどうかを判定する / Does a given object (usually) hate fire? [詳細] | |
bool | hates_cold (object_type *o_ptr) |
アイテムが冷気で破損するかどうかを判定する / Does a given object (usually) hate cold? [詳細] | |
int | set_acid_destroy (object_type *o_ptr) |
アイテムが酸で破損するかどうかを判定する(メインルーチン) / Melt something [詳細] | |
int | set_elec_destroy (object_type *o_ptr) |
アイテムが電撃で破損するかどうかを判定する(メインルーチン) / Electrical damage [詳細] | |
int | set_fire_destroy (object_type *o_ptr) |
アイテムが火炎で破損するかどうかを判定する(メインルーチン) / Burn something [詳細] | |
int | set_cold_destroy (object_type *o_ptr) |
アイテムが冷気で破損するかどうかを判定する(メインルーチン) / Freeze things [詳細] | |
int | inven_damage (inven_func typ, int perc) |
アイテムが指定確率で破損するかどうかを判定する / Destroys a type of item on a given percent chance [詳細] | |
int | acid_dam (int dam, cptr kb_str, int monspell, bool aura) |
酸属性によるプレイヤー損害処理 / Hurt the player with Acid [詳細] | |
int | elec_dam (int dam, cptr kb_str, int monspell, bool aura) |
電撃属性によるプレイヤー損害処理 / Hurt the player with electricity [詳細] | |
int | fire_dam (int dam, cptr kb_str, int monspell, bool aura) |
火炎属性によるプレイヤー損害処理 / Hurt the player with Fire [詳細] | |
int | cold_dam (int dam, cptr kb_str, int monspell, bool aura) |
冷気属性によるプレイヤー損害処理 / Hurt the player with Cold [詳細] | |
bool | rustproof (void) |
防具の錆止め防止処理 [詳細] | |
bool | curse_armor (void) |
防具呪縛処理 / Curse the players armor [詳細] | |
bool | curse_weapon_object (bool force, object_type *o_ptr) |
武器呪縛処理 / Curse the players weapon [詳細] | |
bool | curse_weapon (bool force, int slot) |
武器呪縛処理のメインルーチン / Curse the players weapon [詳細] | |
bool | brand_bolts (void) |
ボルトのエゴ化処理(火炎エゴのみ) / Enchant some bolts [詳細] | |
bool | polymorph_monster (int y, int x) |
指定座標にいるモンスターを変身させる / Helper function – return a "nearby" race for polymorphing [詳細] | |
bool | dimension_door (void) |
次元の扉処理のメインルーチン / Dimension Door [詳細] | |
bool | mirror_tunnel (void) |
鏡抜け処理のメインルーチン / Mirror Master's Dimension Door [詳細] | |
bool | summon_kin_player (int level, int y, int x, u32b mode) |
同族召喚(援軍)処理 [詳細] | |
void | massacre (int py, int px) |
皆殺し(全方向攻撃)処理 [詳細] | |
bool | combine_and_reorder_home (int store_num) |
現在の町の指定された店舗のアイテムを整理する / Combine and reorder items in store. [詳細] | |
void | do_cmd_store (void) |
店舗処理全体のメインルーチン / Enter a store, and interact with it. [詳細] | |
void | store_shuffle (int which) |
現在の町の店主を交代させる / Shuffle one of the stores. [詳細] | |
void | store_maint (int town_num, int store_num) |
店の品揃えを変化させる / Maintain the inventory at the stores. [詳細] | |
void | store_init (int town_num, int store_num) |
店舗情報を初期化する / Initialize the stores [詳細] | |
void | move_to_black_market (object_type *o_ptr) |
アイテムを町のブラックマーケットに移動させる / [詳細] | |
bool | get_nightmare (int r_idx) |
悪夢の元凶となるモンスターかどうかを返す。 [詳細] | |
void | battle_monsters (void) |
モンスター闘技場に参加するモンスターをリセットする。 [詳細] | |
void | do_cmd_bldg (void) |
施設入り口にプレイヤーが乗った際の処理 / Do building commands [詳細] | |
void | do_cmd_quest (void) |
クエスト入り口にプレイヤーが乗った際の処理 / Do building commands [詳細] | |
void | quest_discovery (int q_idx) |
クエストの導入メッセージを表示する / Discover quest [詳細] | |
int | quest_number (int level) |
新しく入ったダンジョンの階層に固定されている一般のクエストを探し出しIDを返す。 / Hack – Check if a level is a "quest" level [詳細] | |
int | random_quest_number (int level) |
新しく入ったダンジョンの階層に固定されているランダムクエストを探し出しIDを返す。 [詳細] | |
bool | tele_town (void) |
町間のテレポートを行うメインルーチン。 [詳細] | |
s16b | calc_crit_ratio_shot (int weight, int plus_ammo, int plus_bow, int dam) |
射撃時クリティカルによるダメージ期待値修正計算(スナイパーの集中処理と武器経験値) / critical happens at i / 10000 [詳細] | |
s16b | calc_expect_crit_shot (int weight, int plus_ammo, int plus_bow, int dam) |
射撃時クリティカルによるダメージ期待値修正計算(重量依存部分) / critical happens at i / 10000 [詳細] | |
s16b | calc_expect_crit (int weight, int plus, int dam, s16b meichuu, bool dokubari) |
攻撃時クリティカルによるダメージ期待値修正計算(重量と毒針処理) / critical happens at i / 10000 [詳細] | |
errr | path_parse (char *buf, int max, cptr file) |
errr | path_build (char *buf, int max, cptr path, cptr file) |
FILE * | my_fopen (cptr file, cptr mode) |
FILE * | my_fopen_temp (char *buf, int max) |
errr | my_fgets (FILE *fff, char *buf, huge n) |
errr | my_fputs (FILE *fff, cptr buf, huge n) |
errr | my_fclose (FILE *fff) |
errr | fd_kill (cptr file) |
errr | fd_move (cptr file, cptr what) |
errr | fd_copy (cptr file, cptr what) |
int | fd_make (cptr file, int mode) |
int | fd_open (cptr file, int flags) |
errr | fd_lock (int fd, int what) |
errr | fd_seek (int fd, huge n) |
errr | fd_chop (int fd, huge n) |
errr | fd_read (int fd, char *buf, huge n) |
errr | fd_write (int fd, cptr buf, huge n) |
errr | fd_close (int fd) |
void | flush (void) |
void | bell (void) |
errr | play_music (int type, int num) |
void | select_floor_music (void) |
void | sound (int num) |
void | move_cursor (int row, int col) |
void | text_to_ascii (char *buf, cptr str) |
void | ascii_to_text (char *buf, cptr str) |
errr | macro_add (cptr pat, cptr act) |
sint | macro_find_exact (cptr pat) |
char | inkey (void) |
cptr | quark_str (s16b num) |
void | quark_init (void) |
s16b | quark_add (cptr str) |
s16b | message_num (void) |
cptr | message_str (int age) |
void | message_add (cptr msg) |
void | msg_print (cptr msg) |
void | msg_format (cptr fmt,...) |
void | screen_save (void) |
void | screen_load (void) |
void | c_put_str (byte attr, cptr str, int row, int col) |
void | put_str (cptr str, int row, int col) |
void | c_prt (byte attr, cptr str, int row, int col) |
void | prt (cptr str, int row, int col) |
void | c_roff (byte attr, cptr str) |
void | roff (cptr str) |
void | clear_from (int row) |
bool | askfor_aux (char *buf, int len, bool numpad_cursor) |
bool | askfor (char *buf, int len) |
bool | get_string (cptr prompt, char *buf, int len) |
bool | get_check (cptr prompt) |
bool | get_check_strict (cptr prompt, int mode) |
bool | get_com (cptr prompt, char *command, bool z_escape) |
s16b | get_quantity (cptr prompt, int max) |
void | pause_line (int row) |
void | request_command (int shopping) |
bool | is_a_vowel (int ch) |
int | get_keymap_dir (char ch) |
errr | type_string (cptr str, uint len) |
void | roff_to_buf (cptr str, int wlen, char *tbuf, size_t bufsize) |
size_t | my_strcpy (char *buf, const char *src, size_t bufsize) |
size_t | my_strcat (char *buf, const char *src, size_t bufsize) |
char * | my_strstr (const char *haystack, const char *needle) |
char * | my_strchr (const char *ptr, char ch) |
void | str_tolower (char *str) |
int | inkey_special (bool numpad_cursor) |
void | cnv_stat (int val, char *out_val) |
現在の修正後能力値を3~17及び18/xxx形式に変換する / Converts stat num into a six-char (right justified) string [詳細] | |
s16b | modify_stat_value (int value, int amount) |
能力値現在値から3~17及び18/xxx様式に基づく加減算を行う。 Modify a stat value by a "modifier", return new value [詳細] | |
bool | is_daytime (void) |
ゲーム時間が日中かどうかを返す / Whether daytime or not [詳細] | |
void | extract_day_hour_min (int *day, int *hour, int *min) |
現在の日数、時刻を返す / Extract day, hour, min [詳細] | |
void | prt_time (void) |
ゲーム時刻を表示する / Print time [詳細] | |
cptr | map_name (void) |
現在のマップ名を返す / [詳細] | |
u32b | weight_limit (void) |
プレイヤーの所持重量制限を計算する / Computes current weight limit. [詳細] | |
bool | buki_motteruka (int i) |
プレイヤーが現在右手/左手に武器を持っているか判定する / [詳細] | |
bool | is_heavy_shoot (object_type *o_ptr) |
射撃武器がプレイヤーにとって重すぎるかどうかの判定 / [詳細] | |
int | bow_tval_ammo (object_type *o_ptr) |
射撃武器に対応する矢/弾薬のベースアイテムIDを返す / [詳細] | |
s16b | calc_num_fire (object_type *o_ptr) |
装備中の射撃武器の威力倍率を返す / calcurate the fire rate of target object [詳細] | |
void | calc_bonuses (void) |
プレイヤーの全ステータスを更新する / Calculate the players current "state", taking into account not only race/class intrinsics, but also objects being worn and temporary spell effects. [詳細] | |
void | notice_stuff (void) |
p_ptr->notice のフラグに応じた更新をまとめて行う / Handle "p_ptr->notice" [詳細] | |
void | update_stuff (void) |
p_ptr->update のフラグに応じた更新をまとめて行う / Handle "p_ptr->update" [詳細] | |
void | redraw_stuff (void) |
p_ptr->redraw のフラグに応じた更新をまとめて行う / Handle "p_ptr->redraw" [詳細] | |
void | window_stuff (void) |
p_ptr->window のフラグに応じた更新をまとめて行う / Handle "p_ptr->window" [詳細] | |
void | handle_stuff (void) |
全更新処理をチェックして処理していく Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" [詳細] | |
s16b | empty_hands (bool riding_control) |
プレイヤーの現在開いている手の状態を返す [詳細] | |
bool | heavy_armor (void) |
プレイヤーが防具重量制限のある職業時にペナルティを受ける状態にあるかどうかを返す。 [詳細] | |
void | print_monster_list (int x, int y, int max_lines) |
モンスターの出現リストを表示する / Print monster info in line [詳細] | |
void | update_playtime (void) |
実ゲームプレイ時間を更新する [詳細] | |
void | set_action (int typ) |
プレイヤーの継続行動を設定する。 [詳細] | |
void | reset_tim_flags (void) |
プレイヤーの全ての時限効果をリセットする。 / reset timed flags [詳細] | |
void | dispel_player (void) |
プレイヤーに魔力消去効果を与える。 [詳細] | |
bool | set_mimic (int v, int p, bool do_dec) |
変身効果の継続時間と変身先をセットする / Set "p_ptr->tim_mimic", and "p_ptr->mimic_form", notice observable changes [詳細] | |
bool | set_blind (int v) |
盲目の継続時間をセットする / Set "p_ptr->blind", notice observable changes [詳細] | |
bool | set_confused (int v) |
混乱の継続時間をセットする / Set "p_ptr->confused", notice observable changes [詳細] | |
bool | set_poisoned (int v) |
毒の継続時間をセットする / Set "p_ptr->poisoned", notice observable changes [詳細] | |
bool | set_afraid (int v) |
恐怖の継続時間をセットする / Set "p_ptr->afraid", notice observable changes [詳細] | |
bool | set_paralyzed (int v) |
麻痺の継続時間をセットする / Set "p_ptr->paralyzed", notice observable changes [詳細] | |
bool | set_image (int v) |
幻覚の継続時間をセットする / Set "p_ptr->image", notice observable changes [詳細] | |
bool | set_fast (int v, bool do_dec) |
加速の継続時間をセットする / Set "p_ptr->fast", notice observable changes [詳細] | |
bool | set_slow (int v, bool do_dec) |
減速の継続時間をセットする / Set "p_ptr->slow", notice observable changes [詳細] | |
bool | set_shield (int v, bool do_dec) |
肌石化の継続時間をセットする / Set "p_ptr->shield", notice observable changes [詳細] | |
bool | set_tsubureru (int v, bool do_dec) |
つぶれるの継続時間をセットする / Set "p_ptr->tsubureru", notice observable changes [詳細] | |
bool | set_magicdef (int v, bool do_dec) |
魔法の鎧の継続時間をセットする / Set "p_ptr->magicdef", notice observable changes [詳細] | |
bool | set_blessed (int v, bool do_dec) |
祝福の継続時間をセットする / Set "p_ptr->blessed", notice observable changes [詳細] | |
bool | set_hero (int v, bool do_dec) |
士気高揚の継続時間をセットする / Set "p_ptr->hero", notice observable changes [詳細] | |
bool | set_shero (int v, bool do_dec) |
狂戦士化の継続時間をセットする / Set "p_ptr->shero", notice observable changes [詳細] | |
bool | set_protevil (int v, bool do_dec) |
対邪悪結界の継続時間をセットする / Set "p_ptr->protevil", notice observable changes [詳細] | |
bool | set_invuln (int v, bool do_dec) |
無傷球の継続時間をセットする / Set "p_ptr->invuln", notice observable changes [詳細] | |
bool | set_tim_invis (int v, bool do_dec) |
時限透明視の継続時間をセットする / Set "p_ptr->tim_invis", notice observable changes [詳細] | |
bool | set_tim_infra (int v, bool do_dec) |
時限赤外線視力の継続時間をセットする / Set "p_ptr->tim_infra", notice observable changes [詳細] | |
bool | set_tim_regen (int v, bool do_dec) |
時限急回復の継続時間をセットする / Set "p_ptr->tim_regen", notice observable changes [詳細] | |
bool | set_tim_stealth (int v, bool do_dec) |
隠密の歌の継続時間をセットする / Set "p_ptr->tim_stealth", notice observable changes [詳細] | |
bool | set_lightspeed (int v, bool do_dec) |
光速移動の継続時間をセットする / Set "p_ptr->lightspeed", notice observable changes [詳細] | |
bool | set_tim_levitation (int v, bool do_dec) |
一時的浮遊の継続時間をセットする / Set "p_ptr->tim_levitation", notice observable changes [詳細] | |
bool | set_tim_sh_touki (int v, bool do_dec) |
一時的闘気のオーラの継続時間をセットする / Set "p_ptr->tim_sh_touki", notice observable changes [詳細] | |
bool | set_tim_sh_fire (int v, bool do_dec) |
一時的火炎のオーラの継続時間をセットする / Set "p_ptr->tim_sh_fire", notice observable changes [詳細] | |
bool | set_tim_sh_holy (int v, bool do_dec) |
一時的聖なるのオーラの継続時間をセットする / Set "p_ptr->tim_sh_holy", notice observable changes [詳細] | |
bool | set_tim_eyeeye (int v, bool do_dec) |
目には目をの残り時間をセットする / Set "p_ptr->tim_eyeeye", notice observable changes [詳細] | |
bool | set_resist_magic (int v, bool do_dec) |
一時的魔法防御の継続時間をセットする / Set "p_ptr->resist_magic", notice observable changes [詳細] | |
bool | set_tim_reflect (int v, bool do_dec) |
一時的反射の継続時間をセットする / Set "p_ptr->tim_reflect", notice observable changes [詳細] | |
bool | set_multishadow (int v, bool do_dec) |
bool | set_dustrobe (int v, bool do_dec) |
一時的破片のオーラの継続時間をセットする / Set "p_ptr->dustrobe", notice observable changes [詳細] | |
bool | set_kabenuke (int v, bool do_dec) |
一時的壁抜けの継続時間をセットする / Set "p_ptr->kabenuke", notice observable changes [詳細] | |
bool | set_tsuyoshi (int v, bool do_dec) |
オクレ兄さんの継続時間をセットする / Set "p_ptr->tsuyoshi", notice observable changes [詳細] | |
bool | set_ele_attack (u32b attack_type, int v) |
一時的元素スレイの継続時間をセットする / Set a temporary elemental brand. [詳細] | |
bool | set_ele_immune (u32b immune_type, int v) |
一時的元素免疫の継続時間をセットする / Set a temporary elemental brand. [詳細] | |
bool | set_oppose_acid (int v, bool do_dec) |
一時的酸耐性の継続時間をセットする / Set "p_ptr->oppose_acid", notice observable changes [詳細] | |
bool | set_oppose_elec (int v, bool do_dec) |
一時的電撃耐性の継続時間をセットする / Set "p_ptr->oppose_elec", notice observable changes [詳細] | |
bool | set_oppose_fire (int v, bool do_dec) |
一時的火炎耐性の継続時間をセットする / Set "p_ptr->oppose_fire", notice observable changes [詳細] | |
bool | set_oppose_cold (int v, bool do_dec) |
一時的冷気耐性の継続時間をセットする / Set "p_ptr->oppose_cold", notice observable changes [詳細] | |
bool | set_oppose_pois (int v, bool do_dec) |
一時的毒耐性の継続時間をセットする / Set "p_ptr->oppose_pois", notice observable changes [詳細] | |
bool | set_stun (int v) |
朦朧の継続時間をセットする / Set "p_ptr->stun", notice observable changes [詳細] | |
bool | set_cut (int v) |
出血の継続時間をセットする / Set "p_ptr->cut", notice observable changes [詳細] | |
bool | set_food (int v) |
空腹状態をセットする / Set "p_ptr->food", notice observable changes [詳細] | |
bool | inc_stat (int stat) |
プレイヤーの基本能力値を増加させる / Increases a stat by one randomized level -RAK- [詳細] | |
bool | dec_stat (int stat, int amount, int permanent) |
プレイヤーの基本能力値を減少させる / Decreases a stat by an amount indended to vary from 0 to 100 percent. [詳細] | |
bool | res_stat (int stat) |
プレイヤーの基本能力値を回復させる / Restore a stat. [詳細] | |
bool | hp_player (int num) |
bool | do_dec_stat (int stat) |
bool | do_res_stat (int stat) |
bool | do_inc_stat (int stat) |
bool | restore_level (void) |
bool | lose_all_info (void) |
void | gain_exp_64 (s32b amount, u32b amount_frac) |
void | gain_exp (s32b amount) |
void | calc_android_exp (void) |
void | lose_exp (s32b amount) |
bool | drain_exp (s32b drain, s32b slip, int hold_exp_prob) |
void | do_poly_self (void) |
bool | set_ultimate_res (int v, bool do_dec) |
bool | set_tim_res_nether (int v, bool do_dec) |
bool | set_tim_res_time (int v, bool do_dec) |
bool | choose_ele_attack (void) |
bool | choose_ele_immune (int turn) |
bool | set_wraith_form (int v, bool do_dec) |
幽体化の継続時間をセットする / Set "p_ptr->wraith_form", notice observable changes [詳細] | |
bool | set_tim_esp (int v, bool do_dec) |
時限ESPの継続時間をセットする / Set "p_ptr->tim_esp", notice observable changes [詳細] | |
bool | set_superstealth (bool set) |
超隠密状態をセットする [詳細] | |
void | check_experience (void) |
プレイヤーの経験値について整合性のためのチェックと調整を行う / Advance experience levels and print experience [詳細] | |
void | complete_quest (int quest_num) |
クエストを達成状態にする / [詳細] | |
void | check_quest_completion (monster_type *m_ptr) |
特定の敵を倒した際にクエスト達成処理 / Check for "Quest" completion when a quest monster is killed or charmed. [詳細] | |
void | check_find_art_quest_completion (object_type *o_ptr) |
特定のアーティファクトを入手した際のクエスト達成処理 / Check for "Quest" completion when a quest monster is killed or charmed. [詳細] | |
cptr | extract_note_dies (monster_race *r_ptr) |
モンスターを撃破した際の述語メッセージを返す / Return monster death string [詳細] | |
void | monster_death (int m_idx, bool drop_item) |
モンスターが死亡した時の処理 / Handle the "death" of a monster. [詳細] | |
bool | mon_take_hit (int m_idx, int dam, bool *fear, cptr note) |
モンスターのHPをダメージに応じて減算する / Decreases monsters hit points, handling monster death. [詳細] | |
void | get_screen_size (int *wid_p, int *hgt_p) |
現在のコンソール表示の縦横を返す。 / Get term size and calculate screen size [詳細] | |
void | panel_bounds_center (void) |
コンソール上におけるマップ表示の左上位置を返す / Calculates current boundaries Called below and from "do_cmd_locate()". [詳細] | |
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 (int dy, int dx) |
フォーカスを当てるべきマップ描画の基準座標を指定する(サブルーチン) [詳細] | |
void | verify_panel (void) |
マップ描画のフォーカスを当てるべき座標を更新する [詳細] | |
cptr | look_mon_desc (monster_type *m_ptr, u32b mode) |
void | ang_sort_aux (vptr u, vptr v, int p, int q) |
void | ang_sort (vptr u, vptr v, int n) |
bool | target_able (int m_idx) |
bool | target_okay (void) |
bool | target_set (int mode) |
void | target_set_prepare_look () |
bool | get_aim_dir (int *dp) |
bool | get_hack_dir (int *dp) |
bool | get_rep_dir (int *dp, bool under) |
bool | get_rep_dir2 (int *dp) |
void | gain_level_reward (int chosen_reward) |
bool | tgt_pt (int *x, int *y) |
void | do_poly_wounds (void) |
void | change_race (int new_race, cptr effect_msg) |
int | mon_damage_mod (monster_type *m_ptr, int dam, bool is_psy_spear) |
モンスターに与えたダメージの修正処理 / Modify the physical damage done to the monster. [詳細] | |
s16b | gain_energy (void) |
s16b | bow_energy (int sval) |
int | bow_tmul (int sval) |
cptr | your_alignment (void) |
int | weapon_exp_level (int weapon_exp) |
int | riding_exp_level (int riding_exp) |
int | spell_exp_level (int spell_exp) |
void | display_rumor (bool ex) |
void | one_sustain (object_type *o_ptr) |
対象のオブジェクトにランダムな能力維持を一つ付加する。/ Choose one random sustain [詳細] | |
void | one_high_resistance (object_type *o_ptr) |
対象のオブジェクトにランダムな上位耐性を一つ付加する。/ Choose one random high resistance [詳細] | |
void | one_lordly_high_resistance (object_type *o_ptr) |
対象のオブジェクトに王者の指輪向けの上位耐性を一つ付加する。/ Choose one random high resistance [詳細] | |
void | one_ele_resistance (object_type *o_ptr) |
対象のオブジェクトに元素耐性を一つ付加する。/ Choose one random element resistance [詳細] | |
void | one_dragon_ele_resistance (object_type *o_ptr) |
対象のオブジェクトにドラゴン装備向け元素耐性を一つ付加する。/ Choose one random element or poison resistance [詳細] | |
void | one_low_esp (object_type *o_ptr) |
対象のオブジェクトに弱いESPを一つ付加する。/ Choose one lower rank esp [詳細] | |
void | one_resistance (object_type *o_ptr) |
対象のオブジェクトに耐性を一つ付加する。/ Choose one random resistance [詳細] | |
void | one_ability (object_type *o_ptr) |
対象のオブジェクトに能力を一つ付加する。/ Choose one random ability [詳細] | |
void | one_activation (object_type *o_ptr) |
対象のオブジェクトに発動を一つ付加する。/ Choose one random activation [詳細] | |
bool | create_artifact (object_type *o_ptr, bool a_scroll) |
ランダムアーティファクト生成のメインルーチン [詳細] | |
int | activation_index (object_type *o_ptr) |
オブジェクトから能力発動IDを取得する。 [詳細] | |
bool | activate_random_artifact (object_type *o_ptr) |
アイテムの発動効果を処理する。 [詳細] | |
const activation_type * | find_activation_info (object_type *o_ptr) |
オブジェクトから発動効果構造体のポインタを取得する。 [詳細] | |
void | get_bloody_moon_flags (object_type *o_ptr) |
固定アーティファクト『ブラッディムーン』の特性を変更する。 [詳細] | |
void | random_artifact_resistance (object_type *o_ptr, artifact_type *a_ptr) |
固定アーティファクト生成時の特別なハードコーディング処理を行う。. [詳細] | |
bool | create_named_art (int a_idx, int y, int x) |
フロアの指定された位置に固定アーティファクトを生成する。 / Create the artifact of the specified number [詳細] | |
void | display_scores_aux (int from, int to, int note, high_score *score) |
指定された順位範囲でスコアを並べて表示する / Display the scores in a given range. [詳細] | |
void | display_scores (int from, int to) |
スコア表示処理メインルーチン / Hack – Display the scores in a given range and quit. [詳細] | |
void | kingly (void) |
勝利者用の引退演出処理 / Change the player into a King! -RAK- [詳細] | |
bool | send_world_score (bool do_send) |
スコアサーバへの転送処理 [詳細] | |
errr | top_twenty (void) |
スコアの過去二十位内ランキングを表示する Enters a players name on a hi-score table, if "legal", and in any case, displays some relevant portion of the high score list. [詳細] | |
errr | predict_score (void) |
プレイヤーの現在のスコアをランキングに挟む / Predict the players location, and display it. [詳細] | |
void | race_legends (void) |
スコアランキングの簡易表示(種族毎)メインルーチン / Race Legends -KMW- [詳細] | |
void | race_score (int race_num) |
スコアランキングの簡易表示(種族毎)サブルーチン / Race Legends -KMW- [詳細] | |
void | show_highclass (void) |
スコアランキングの簡易表示 / show_highclass - selectively list highscores based on class -KMW- [詳細] | |
void | mindcraft_info (char *p, int use_mind, int power) |
特殊技能の効果情報をまとめたフォーマットを返す [詳細] | |
void | do_cmd_mind (void) |
特殊技能コマンドのメインルーチン / [詳細] | |
void | do_cmd_mind_browse (void) |
現在プレイヤーが使用可能な特殊技能の一覧表示 / [詳細] | |
bool | do_cmd_mane (bool baigaesi) |
ものまねコマンドのメインルーチン / do_cmd_cast calls this function if the player's class is 'imitator'. [詳細] | |
bool | clean_shot (int y1, int x1, int y2, int x2, bool is_friend) |
モンスターにとってボルト型魔法が有効な状態かを返す / Determine if a bolt spell will hit the player. [詳細] | |
bool | summon_possible (int y1, int x1) |
モンスターにとって所定の地点が召還に相応しい地点かどうかを返す。 / Determine if there is a space near the player in which a summoned creature can appear [詳細] | |
bool | raise_possible (monster_type *m_ptr) |
モンスターにとって死者復活を行うべき状態かどうかを返す / Determine if there is a space near the player in which a summoned creature can appear [詳細] | |
bool | dispel_check (int m_idx) |
モンスターがプレイヤーに魔力消去を与えるべきかを判定するルーチン Check should monster cast dispel spell. [詳細] | |
bool | spell_is_inate (u16b spell) |
ID値が非魔術的な特殊技能かどうかを返す / Return TRUE if a spell is inate spell. [詳細] | |
bool | make_attack_spell (int m_idx) |
モンスターの特殊技能メインルーチン / Creatures can cast spells, shoot missiles, and breathe. [詳細] | |
void | beam (int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type) |
モンスターのビーム型魔法処理 / [詳細] | |
void | bolt (int m_idx, int y, int x, int typ, int dam_hp, int monspell, int target_type) |
モンスターのボルト型魔法処理 / Cast a bolt at the player Stop if we hit a monster Affect monsters and the player [詳細] | |
void | breath (int y, int x, int m_idx, int typ, int dam_hp, int rad, bool breath, int monspell, int target_type) |
モンスターのボール型&ブレス型魔法処理 / Cast a breath (or ball) attack at the player Pass over any monsters that may be in the way Affect grids, objects, monsters, and the player [詳細] | |
void | get_project_point (int sy, int sx, int *ty, int *tx, int flg) |
モンスターが特殊能力の目標地点を決める処理 / Get the actual center point of ball spells (rad > 1) (originally from TOband) [詳細] | |
bool | monst_spell_monst (int m_idx) |
モンスターが敵モンスターに特殊能力を使う処理のメインルーチン / Monster tries to 'cast a spell' (or breath, etc) at another monster. [詳細] | |
bool | do_cmd_cast_learned (void) |
青魔法コマンドのメインルーチン / do_cmd_cast calls this function if the player's class is 'Blue-Mage'. [詳細] | |
void | learn_spell (int monspell) |
青魔法のラーニング判定と成功した場合のラーニング処理 [詳細] | |
void | set_rf_masks (s32b *f4, s32b *f5, s32b *f6, int mode) |
モンスター特殊能力のフラグ配列から特定条件の魔法だけを抜き出す処理 Extract monster spells mask for the given mode [詳細] | |
bool | spell_learnable (int m_idx) |
モンスターの唱えた呪文を青魔法で学習できるか判定する / [詳細] | |
int | monspell_to_player (int SPELL_NUM, int y, int x, int m_idx) |
モンスターからプレイヤーへの呪文の振り分け関数。 / [詳細] | |
int | monspell_to_monster (int SPELL_NUM, int y, int x, int m_idx, int t_idx) |
モンスターからモンスターへの呪文の振り分け関数。 / [詳細] | |
int | monspell_damage (int SPELL_NUM, int m_idx, int TYPE) |
モンスターの使う呪文の威力を返す / [詳細] | |
int | monspell_race_damage (int SPELL_NUM, int r_idx, int TYPE) |
モンスターの使う呪文の威力を返す / [詳細] | |
int | monspell_bluemage_damage (int SPELL_NUM, int plev, int TYPE) |
青魔導師の使う呪文の威力を返す / [詳細] | |
void | hissatsu_info (char *p, int power) |
void | do_cmd_hissatsu (void) |
剣術コマンドのメインルーチン [詳細] | |
void | do_cmd_hissatsu_browse (void) |
void | do_cmd_gain_hissatsu (void) |
剣術コマンドの学習 [詳細] | |
s16b | mult_hissatsu (int mult, u32b *flgs, monster_type *m_ptr, int mode) |
剣術のスレイ倍率計算を行う / Calcurate magnification of hissatsu technics [詳細] | |
int | count_bits (u32b x) |
符号なし32ビット整数のビット数を返す。 [詳細] | |
bool | gain_random_mutation (int choose_mut) |
プレイヤーに突然変異を与える [詳細] | |
bool | lose_mutation (int choose_mut) |
プレイヤーから突然変異を取り除く [詳細] | |
void | dump_mutations (FILE *OutFile) |
ファイルポインタを通じて突然変異の一覧を出力する [詳細] | |
void | do_cmd_knowledge_mutations (void) |
突然変異表示コマンドの実装 / List mutations we have... [詳細] | |
int | calc_mutant_regenerate_mod (void) |
突然変異による自然回復ペナルティをパーセント値で返す / Return the modifier to the regeneration rate (in percent) [詳細] | |
bool | mutation_power_aux (u32b power) |
突然変異のレイシャル効果実装 [詳細] | |
int | usleep (huge usecs) |
bool | object_is_potion (object_type *o_ptr) |
オブジェクトが薬であるかを返す [詳細] | |
bool | object_is_shoukinkubi (object_type *o_ptr) |
オブジェクトが賞金首の報酬対象になるかを返す [詳細] | |
bool | object_is_favorite (object_type *o_ptr) |
オブジェクトがプレイヤーの職業に応じた適正武器か否かを返す / Favorite weapons [詳細] | |
bool | object_is_rare (object_type *o_ptr) |
オブジェクトがレアアイテムかどうかを返す / Rare weapons/aromors including Blade of Chaos, Dragon armors, etc. [詳細] | |
bool | object_is_weapon (object_type *o_ptr) |
オブジェクトが武器として装備できるかどうかを返す / Check if an object is weapon (including bows and ammo) [詳細] | |
bool | object_is_weapon_ammo (object_type *o_ptr) |
オブジェクトが武器や矢弾として使用できるかを返す / Check if an object is weapon (including bows and ammo) Rare weapons/aromors including Blade of Chaos, Dragon armors, etc. [詳細] | |
bool | object_is_ammo (object_type *o_ptr) |
オブジェクトが矢弾として使用できるかどうかを返す / Check if an object is ammo [詳細] | |
bool | object_is_armour (object_type *o_ptr) |
オブジェクトが防具として装備できるかどうかを返す / Check if an object is armour [詳細] | |
bool | object_is_weapon_armour_ammo (object_type *o_ptr) |
オブジェクトが武器、防具、矢弾として使用できるかを返す / Check if an object is weapon, armour or ammo [詳細] | |
bool | object_is_melee_weapon (object_type *o_ptr) |
オブジェクトが近接武器として装備できるかを返す / Melee weapons [詳細] | |
bool | object_is_wearable (object_type *o_ptr) |
オブジェクトが装備可能であるかを返す / Wearable including all weapon, all armour, bow, light source, amulet, and ring [詳細] | |
bool | object_is_equipment (object_type *o_ptr) |
オブジェクトが装備品であるかを返す(object_is_wearableに矢弾を含む) / Equipment including all wearable objects and ammo [詳細] | |
bool | object_refuse_enchant_weapon (object_type *o_ptr) |
オブジェクトが強化不能武器であるかを返す / Poison needle can not be enchanted [詳細] | |
bool | object_allow_enchant_weapon (object_type *o_ptr) |
オブジェクトが強化可能武器であるかを返す / Check if an object is weapon (including bows and ammo) and allows enchantment [詳細] | |
bool | object_allow_enchant_melee_weapon (object_type *o_ptr) |
オブジェクトが強化可能な近接武器であるかを返す / Check if an object is melee weapon and allows enchantment [詳細] | |
bool | object_is_smith (object_type *o_ptr) |
オブジェクトが鍛冶師のエッセンス付加済みかを返す / Check if an object is made by a smith's special ability [詳細] | |
bool | object_is_artifact (object_type *o_ptr) |
オブジェクトがアーティファクトかを返す / Check if an object is artifact [詳細] | |
bool | object_is_random_artifact (object_type *o_ptr) |
オブジェクトがランダムアーティファクトかを返す / Check if an object is random artifact [詳細] | |
bool | object_is_nameless (object_type *o_ptr) |
オブジェクトが通常のアイテム(アーティファクト、エゴ、鍛冶師エッセンス付加いずれでもない)かを返す / Check if an object is neither artifact, ego, nor 'smith' object [詳細] | |
bool | object_allow_two_hands_wielding (object_type *o_ptr) |
オブジェクトが両手持ち可能な武器かを返す / Check if an object is melee weapon and allows wielding with two-hands [詳細] | |
void | set_floor_and_wall (byte type) |
ダンジョンの地形を指定確率に応じて各マスへランダムに敷き詰める / Fill the arrays of floors and walls in the good proportions [詳細] | |
void | wilderness_gen (void) |
広域マップの生成 / Build the wilderness area outside of the town. [詳細] | |
void | wilderness_gen_small (void) |
広域マップの生成(簡易処理版) / Build the wilderness area. [詳細] | |
errr | init_wilderness (void) |
ゲーム開始時の荒野初期化メインルーチン / Initialize wilderness array [詳細] | |
void | init_wilderness_terrains (void) |
荒野の地勢設定全体を初期化するメインルーチン / Initialize arrays for wilderness terrains [詳細] | |
void | seed_wilderness (void) |
ゲーム開始時に各荒野フロアの乱数シードを指定する / Generate the random seeds for the wilderness [詳細] | |
errr | parse_line_wilderness (char *buf, int ymin, int xmin, int ymax, int xmax, int *y, int *x) |
w_info.txtのデータ解析 / Parse a sub-file of the "extra info" [詳細] | |
bool | change_wild_mode (void) |
荒野から広域マップへの切り替え処理 / Initialize arrays for wilderness terrains [詳細] | |
void | spoil_random_artifact (cptr fname) |
ランダムアーティファクト内容をスポイラー出力するメインルーチン / Create a list file for random artifacts [詳細] | |
void | strip_name (char *buf, int k_idx) |
nameバッファ内からベースアイテム名を返す / Strip an "object name" into a buffer [詳細] | |
bool | compare_virtue (int type, int num, int tekitou) |
該当の徳がプレイヤーに指定されているか否かに応じつつ、大小を比較する。 [詳細] | |
int | virtue_number (int type) |
プレイヤーの指定の徳が何番目のスロットに登録されているかを返す。 / Aux function [詳細] | |
void | get_virtues (void) |
作成中のプレイヤーキャラクターに徳8種類を与える。 / Select virtues & reset values for a new character [詳細] | |
void | chg_virtue (int virtue, int amount) |
対応する徳をプレイヤーがスロットに登録している場合に加減を行う。 [詳細] | |
void | set_virtue (int virtue, int amount) |
対応する徳をプレイヤーがスロットに登録している場合に固定値をセットする。 [詳細] | |
void | dump_virtues (FILE *OutFile) |
徳のダンプ表示を行う。 [詳細] | |
int | soc_write (int sd, char *buf, size_t sz) |
void | set_proxy (char *default_url, int default_port) |
int | connect_server (int timeout, const char *host, int port) |
int | disconnect_server (int sd) |
cptr | soc_err (void) |
void | prepare_movie_hooks (void) |
void | prepare_browse_movie_aux (cptr filename) |
void | prepare_browse_movie (cptr filename) |
void | browse_movie (void) |
void | reset_concentration (bool msg) |
スナイパーの集中度リセット [詳細] | |
void | display_snipe_list (void) |
スナイパーの技能リストを表示する [詳細] | |
int | tot_dam_aux_snipe (int mult, monster_type *m_ptr) |
スナイバー技能のスレイ倍率計算を行う / Calcurate magnification of snipe technics [詳細] | |
void | do_cmd_snipe (void) |
スナイパー技能コマンドのメインルーチン / [詳細] | |
void | do_cmd_snipe_browse (void) |
スナイパー技能コマンドの表示 / [詳細] | |
int | boost_concentration_damage (int tdam) |
スナイパーの集中度によるダメージボーナスを加算する [詳細] | |
bool | stop_hex_spell_all (void) |
プレイヤーが詠唱中の全呪術を停止する [詳細] | |
bool | stop_hex_spell (void) |
プレイヤーが詠唱中の呪術から一つを選んで停止する [詳細] | |
void | check_hex (void) |
一定時間毎に呪術で消費するMPを処理する / Upkeeping hex spells Called from dungeon.c [詳細] | |
bool | hex_spell_fully (void) |
プレイヤーの呪術詠唱枠がすでに最大かどうかを返す [詳細] | |
void | revenge_spell () |
一定ゲームターン毎に復讐処理の残り期間の判定を行う [詳細] | |
void | revenge_store (int dam) |
復讐ダメージの追加を行う [詳細] | |
bool | teleport_barrier (int m_idx) |
反テレポート結界の判定 [詳細] | |
bool | magic_barrier (int m_idx) |
反魔法結界の判定 [詳細] | |
bool | multiply_barrier (int m_idx) |
反増殖結界の判定 [詳細] | |
Angband(変愚蛮怒)基本関数、グローバル変数ヘッダファイル / extern declarations (variables and functions)
This software may be copied and distributed for educational, research, and not for profit purposes provided that this copyright and statement are included in all such copies. Note that some files have their own header files (z-virt.h, z-util.h, z-form.h, term.h, random.h)
酸属性によるプレイヤー損害処理 / Hurt the player with Acid
dam | 基本ダメージ量 |
kb_str | ダメージ原因記述 |
monspell | 原因となったモンスター特殊攻撃ID |
aura | オーラよるダメージが原因ならばTRUE |
獲得ドロップを行う。 Scatter some "great" objects near the player
y1 | 配置したいフロアのY座標 |
x1 | 配置したいフロアのX座標 |
num | 獲得の処理回数 |
great | TRUEならば必ず高級品以上を落とす |
special | TRUEならば必ず特別品を落とす |
known | TRUEならばオブジェクトが必ず*鑑定*済になる |
int activate_hi_summon | ( | int | y, |
int | x, | ||
bool | can_pet | ||
) |
HI_SUMMON(上級召喚)処理発動
y | 召喚位置Y座標 |
x | 召喚位置X座標 |
can_pet | プレイヤーのペットとなる可能性があるならばTRUEにする |
bool activate_random_artifact | ( | object_type * | o_ptr | ) |
アイテムの発動効果を処理する。
activate_random_artifact()とされているが、実際は全発動が統合された。
o_ptr | 対象のオブジェクト構造体ポインタ |
TY_CURSE処理発動 / Activate the evil Topi Ylinen curse.
stop_ty | 再帰処理停止フラグ |
count | 発動回数 |
rr9: Stop the nasty things when a Cyberdemon is summoned or the player gets paralyzed.
int activation_index | ( | object_type * | o_ptr | ) |
オブジェクトから能力発動IDを取得する。
いくつかのケースで定義されている発動効果から、 鍛冶師による付与>固定アーティファクト>エゴ>ランダムアーティファクト>ベースアイテムの優先順位で走査していく。
o_ptr | 対象のオブジェクト構造体ポインタ |
void add_history_from_pref_line | ( | cptr | t | ) |
生い立ちメッセージの内容をバッファに加える。 / Hook function for reading the histpref.prf file.
void aggravate_monsters | ( | int | who | ) |
視界内モンスターを怒らせる処理 / Wake up all monsters, and speed up "los" monsters.
who | 怒らせる原因を起こしたモンスター(0ならばプレイヤー) |
bool alchemy | ( | void | ) |
アイテムの価値に応じた錬金術処理 / Turns an object into gold, gain some of its value in a shop
ダンジョンの主生成を試みる / Put the Guardian
def_val | 現在の主の生成状態 |
bool alloc_horde | ( | int | y, |
int | x | ||
) |
指定地点に1種類のモンスター種族による群れを生成する
y | 生成地点y座標 |
x | 生成地点x座標 |
ダンジョンの初期配置モンスターを生成1回生成する / Attempt to allocate a random monster in the dungeon.
dis | プレイヤーから離れるべき最低距離 |
mode | 生成オプション |
Place the monster at least "dis" distance from the player. Use "slp" to choose the initial "sleep" status Use "monster_level" for the monster level
void alter_reality | ( | void | ) |
現実変容処理
void amusement | ( | int | y1, |
int | x1, | ||
int | num, | ||
bool | known | ||
) |
誰得ドロップを行う。
y1 | 配置したいフロアのY座標 |
x1 | 配置したいフロアのX座標 |
num | 誰得の処理回数 |
known | TRUEならばオブジェクトが必ず*鑑定*済になる |
モンスター種族情報を特定の基準によりソートするための比較処理 Sorting hook – Comp function – see below
u | モンスター種族情報の入れるポインタ |
v | 条件基準ID |
a | 比較するモンスター種族のID1 |
b | 比較するモンスター種族のID2 |
モンスター種族情報を特定の基準によりソートするためのスワップ処理 Sorting hook – Swap function – see below
u | モンスター種族情報の入れるポインタ |
v | 未使用 |
a | スワップするモンスター種族のID1 |
b | スワップするモンスター種族のID2 |
We use "u" to point to array of monster indexes, and "v" to select the type of sorting to perform.
void anger_monster | ( | monster_type * | m_ptr | ) |
モンスターを怒らせる Anger the monster
m_ptr | モンスター情報構造体の参照ポインタ |
bool animate_dead | ( | int | who, |
int | y, | ||
int | x | ||
) |
死者復活処理(起点より周囲5マス)
who | 術者モンスターID(0ならばプレイやー) |
y | 起点Y座標 |
x | 起点X座標 |
bool apply_disenchant | ( | int | mode | ) |
プレイヤーの装備劣化処理 / Apply disenchantment to the player's stuff
mode | 最下位ビットが1ならば劣化処理が若干低減される |
void apply_magic | ( | object_type * | o_ptr, |
int | lev, | ||
u32b | mode | ||
) |
生成されたベースアイテムに魔法的な強化を与えるメインルーチン Complete the "creation" of an object by applying "magic" to the item
o_ptr | 強化を与えたいオブジェクトの構造体参照ポインタ |
lev | 生成基準階 |
mode | 生成オプション |
This includes not only rolling for random bonuses, but also putting the
finishing touches on ego-items and artifacts, giving charges to wands and
staffs, giving fuel to lites, and placing traps on chests.
In particular, note that "Instant Artifacts", if "created" by an external
routine, must pass through this function to complete the actual creation.
The base "chance" of the item being "good" increases with the "level"
parameter, which is usually derived from the dungeon level, being equal
to the level plus 10, up to a maximum of 75. If "good" is true, then
the object is guaranteed to be "good". If an object is "good", then
the chance that the object will be "great" (ego-item or artifact), also
increases with the "level", being equal to half the level, plus 5, up to
a maximum of 20. If "great" is true, then the object is guaranteed to be
"great". At dungeon level 65 and below, 15/100 objects are "great".
If the object is not "good", there is a chance it will be "cursed", and
if it is "cursed", there is a chance it will be "broken". These chances
are related to the "good" / "great" chances above.
Otherwise "normal" rings and amulets will be "good" half the time and
"cursed" half the time, unless the ring/amulet is always good or cursed.
If "okay" is true, and the object is going to be "great", then there is
a chance that an artifact will be created. This is true even if both the
"good" and "great" arguments are false. As a total hack, if "great" is
true, then the item gets 3 extra "attempts" to become an artifact.
void apply_nexus | ( | monster_type * | m_ptr | ) |
プレイヤーの因果混乱処理 / Apply Nexus
m_ptr | 因果混乱をプレイヤーに与えたモンスターの情報参照ポインタ |
bool are_enemies | ( | monster_type * | m_ptr, |
monster_type * | n_ptr | ||
) |
モンスターの属性の基づいた敵対関係の有無を返す Check if two monsters are enemies
m_ptr | モンスター1の構造体参照ポインタ |
n_ptr | モンスター2の構造体参照ポインタ |
bool artifact_scroll | ( | void | ) |
アーティファクト生成の巻物処理 /
void ascii_to_text | ( | char * | buf, |
cptr | str | ||
) |
bool askfor | ( | char * | buf, |
int | len | ||
) |
void autopick_alter_item | ( | int | item, |
bool | destroy | ||
) |
bool autopick_autoregister | ( | object_type * | o_ptr | ) |
void autopick_delayed_alter | ( | void | ) |
cptr autopick_line_from_entry | ( | autopick_type * | entry | ) |
void autopick_load_pref | ( | bool | disp_mes | ) |
void autopick_pickup_items | ( | cave_type * | c_ptr | ) |
bool banish_evil | ( | int | dist | ) |
視界内の邪悪なモンスターをテレポート・アウェイさせる処理 / Banish evil monsters
bool banish_monsters | ( | int | dist | ) |
モンスター追放効果(プレイヤー視界範囲内) / Banish all monsters
dist | 効力(距離) |
void battle_monsters | ( | void | ) |
モンスター闘技場に参加するモンスターをリセットする。
void beam | ( | int | m_idx, |
int | y, | ||
int | x, | ||
int | typ, | ||
int | dam_hp, | ||
int | monspell, | ||
int | target_type | ||
) |
モンスターのビーム型魔法処理 /
m_idx | モンスターのID |
y | 目標のY座標 |
x | 目標のX座標 |
typ | 効果属性ID |
dam_hp | 威力 |
monspell | モンスター魔法のID |
target_type | モンスターからモンスターへ撃つならMONSTER_TO_MONSTER、モンスターからプレイヤーならMONSTER_TO_PLAYER |
void bell | ( | void | ) |
bool binding_field | ( | int | dam | ) |
鏡魔法「封魔結界」の効果処理
dam | ダメージ量 |
bool bless_weapon | ( | void | ) |
武器の祝福処理 / Bless a weapon
void bolt | ( | int | m_idx, |
int | y, | ||
int | x, | ||
int | typ, | ||
int | dam_hp, | ||
int | monspell, | ||
int | target_type | ||
) |
モンスターのボルト型魔法処理 / Cast a bolt at the player Stop if we hit a monster Affect monsters and the player
m_idx | モンスターのID |
y | 目標のY座標 |
x | 目標のX座標 |
typ | 効果属性ID |
dam_hp | 威力 |
monspell | モンスター魔法のID |
target_type | モンスターからモンスターへ撃つならMONSTER_TO_MONSTER、モンスターからプレイヤーならMONSTER_TO_PLAYER |
u16b bolt_pict | ( | int | y, |
int | x, | ||
int | ny, | ||
int | nx, | ||
int | typ | ||
) |
始点から終点にかけた方向毎にボルトのキャラクタを返す / Find the attr/char pair to use for a spell effect
y | 始点Y座標 |
x | 始点X座標 |
ny | 終点Y座標 |
nx | 終点X座標 |
typ | 魔法の効果属性 |
It is moving (or has moved) from (x,y) to (nx,ny). If the distance is not "one", we (may) return "*".
int boost_concentration_damage | ( | int | tdam | ) |
スナイパーの集中度によるダメージボーナスを加算する
tdam | 算出中のダメージ |
s16b bow_energy | ( | int | sval | ) |
int bow_tmul | ( | int | sval | ) |
int bow_tval_ammo | ( | object_type * | o_ptr | ) |
射撃武器に対応する矢/弾薬のベースアイテムIDを返す /
o_ptr | 判定する射撃武器のアイテム情報参照ポインタ |
bool brand_bolts | ( | void | ) |
ボルトのエゴ化処理(火炎エゴのみ) / Enchant some bolts
void brand_weapon | ( | int | brand_type | ) |
武器へのエゴ付加処理 / Brand the current weapon
brand_type | エゴ化ID(e_info.txtとは連動していない) |
void breath | ( | int | y, |
int | x, | ||
int | m_idx, | ||
int | typ, | ||
int | dam_hp, | ||
int | rad, | ||
bool | breath, | ||
int | monspell, | ||
int | target_type | ||
) |
モンスターのボール型&ブレス型魔法処理 / Cast a breath (or ball) attack at the player Pass over any monsters that may be in the way Affect grids, objects, monsters, and the player
y | 目標地点のY座標 |
x | 目標地点のX座標 |
m_idx | モンスターのID |
typ | 効果属性ID |
dam_hp | 威力 |
rad | 半径 |
breath | TRUEならばブ・E構萢・.ALSEならばボー・E萢 |
monspell | モンスター魔法のID |
target_type | モンスターからモンスターへ撃つならMONSTER_TO_MONSTER、モンスターからプレイヤーならMONSTER_TO_PLAYER |
void breath_shape | ( | u16b * | path_g, |
int | dist, | ||
int * | pgrids, | ||
byte * | gx, | ||
byte * | gy, | ||
byte * | gm, | ||
int * | pgm_rad, | ||
int | rad, | ||
int | y1, | ||
int | x1, | ||
int | y2, | ||
int | x2, | ||
int | typ | ||
) |
void browse_movie | ( | void | ) |
bool buki_motteruka | ( | int | i | ) |
プレイヤーが現在右手/左手に武器を持っているか判定する /
i | 判定する手のID(右手:0 左手:1) |
void calc_android_exp | ( | void | ) |
void calc_bonuses | ( | void | ) |
プレイヤーの全ステータスを更新する / Calculate the players current "state", taking into account not only race/class intrinsics, but also objects being worn and temporary spell effects.
See also calc_mana() and calc_hitpoints().
Take note of the new "speed code", in particular, a very strong player will start slowing down as soon as he reaches 150 pounds, but not until he reaches 450 pounds will he be half as fast as a normal kobold. This both hurts and helps the player, hurts because in the old days a player could just avoid 300 pounds, and helps because now carrying 300 pounds is not very painful.
The "weapon" and "bow" do not add to the bonuses to hit or to damage, since that would affect non-combat things. These values are actually added in later, at the appropriate place.
This function induces various "status" messages.
s16b calc_crit_ratio_shot | ( | int | weight, |
int | plus_ammo, | ||
int | plus_bow, | ||
int | dam | ||
) |
射撃時クリティカルによるダメージ期待値修正計算(スナイパーの集中処理と武器経験値) / critical happens at i / 10000
weight | 武器の重量 |
plus_ammo | 矢弾のダメージ修正 |
plus_bow | 弓のダメージ修正 |
dam | 基本ダメージ量 |
攻撃時クリティカルによるダメージ期待値修正計算(重量と毒針処理) / critical happens at i / 10000
weight | 武器の重量 |
plus | 武器のダメージ修正 |
dam | 基本ダメージ |
meichuu | 命中値 |
dokubari | 毒針処理か否か |
s16b calc_expect_crit_shot | ( | int | weight, |
int | plus_ammo, | ||
int | plus_bow, | ||
int | dam | ||
) |
射撃時クリティカルによるダメージ期待値修正計算(重量依存部分) / critical happens at i / 10000
weight | 武器の重量 |
plus_ammo | 矢弾のダメージ修正 |
plus_bow | 弓のダメージ修正 |
dam | 基本ダメージ量 |
int calc_mutant_regenerate_mod | ( | void | ) |
突然変異による自然回復ペナルティをパーセント値で返す / Return the modifier to the regeneration rate (in percent)
s16b calc_num_fire | ( | object_type * | o_ptr | ) |
装備中の射撃武器の威力倍率を返す / calcurate the fire rate of target object
o_ptr | 計算する射撃武器のアイテム情報参照ポインタ |
int calculate_upkeep | ( | void | ) |
ペットの維持コスト計算
void call_chaos | ( | void | ) |
混沌招来処理
void call_the_ | ( | void | ) |
虚無招来処理 /
bool can_get_item | ( | void | ) |
プレイヤーがオブジェクトを拾うことができる状態かを返す / Determine whether get_item() can get some item or not
assuming mode = (USE_EQUIP | USE_INVEN | USE_FLOOR).
bool can_player_destroy_object | ( | object_type * | o_ptr | ) |
破壊可能なアイテムかを返す / Determines whether an object can be destroyed, and makes fake inscription.
o_ptr | 破壊可能かを確認したいオブジェクトの構造体参照ポインタ |
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()" for handling of other things.
void cave_alter_feat | ( | int | y, |
int | x, | ||
int | action | ||
) |
指定されたマスにプレイヤーがテレポート可能かどうかを判定する。
y | 移動先Y座標 |
x | 移動先X座標 |
mode | オプション |
void cave_set_feat | ( | int | y, |
int | x, | ||
int | feat | ||
) |
bool cave_valid_bold | ( | int | y, |
int | x | ||
) |
指定された座標が地震や階段生成の対象となるマスかを返す。 / Determine if a given location may be "destroyed"
y | y座標 |
x | x座標 |
条件は永久地形でなく、なおかつ該当のマスにアーティファクトが存在しないか、である。英語の旧コメントに反して*破壊*の抑止判定には現在使われていない。
void change_floor | ( | void | ) |
フロアの切り替え処理 / Enter new floor.
If the floor is an old saved floor, it will be
restored from the temporal file. If the floor is new one, new cave
will be generated.
bool change_panel | ( | int | dy, |
int | dx | ||
) |
フォーカスを当てるべきマップ描画の基準座標を指定する(サブルーチン)
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 |
void change_race | ( | int | new_race, |
cptr | effect_msg | ||
) |
bool change_wild_mode | ( | void | ) |
荒野から広域マップへの切り替え処理 / Initialize arrays for wilderness terrains
bool charm_animal | ( | int | dir, |
int | plev | ||
) |
動物支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_animals | ( | int | dam | ) |
動物魅了効果(プレイヤー視界範囲内) / Charm Animals
dam | 効力 |
bool charm_living | ( | int | dir, |
int | plev | ||
) |
生物支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_monster | ( | int | dir, |
int | plev | ||
) |
チャーム・モンスター(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool charm_monsters | ( | int | dam | ) |
チャーム・モンスター効果(プレイヤー視界範囲内) / Charm monsters
dam | 効力 |
tval/sval指定のベースアイテムがプレイヤーの使用可能な魔法書かどうかを返す / Hack: Check if a spellbook is one of the realms we can use.
– TY
book_tval | ベースアイテムのtval |
book_sval | ベースアイテムのsval |
void check_experience | ( | void | ) |
プレイヤーの経験値について整合性のためのチェックと調整を行う / Advance experience levels and print experience
void check_find_art_quest_completion | ( | object_type * | o_ptr | ) |
特定のアーティファクトを入手した際のクエスト達成処理 / Check for "Quest" completion when a quest monster is killed or charmed.
o_ptr | 入手したオブジェクトの構造体参照ポインタ |
void check_hex | ( | void | ) |
errr check_load | ( | void | ) |
Angbandプレイ禁止ホストのチェック / Handle CHECK_LOAD.
errr check_load_init | ( | void | ) |
Angbandプレイ禁止ホストの設定初期化 / Initialize CHECK_LOAD.
void check_pets_num_and_align | ( | monster_type * | m_ptr, |
bool | inc | ||
) |
ペットの善悪属性に応じた維持コストの途中計算処理
m_ptr | 計算基準となるモンスターの構造体参照ポインタ |
inc | m_ptrで指定したモンスターを維持コスト計算に加えるならTRUE、外すならFALSEを指定 |
void check_quest_completion | ( | monster_type * | m_ptr | ) |
特定の敵を倒した際にクエスト達成処理 / Check for "Quest" completion when a quest monster is killed or charmed.
m_ptr | 撃破したモンスターの構造体参照ポインタ |
errr check_time | ( | void | ) |
Angbandプレイ禁止時刻をチェック / Handle CHECK_TIME.
errr check_time_init | ( | void | ) |
Angbandプレイ禁止時刻の初期化 / Initialize CHECK_TIME.
void chg_virtue | ( | int | virtue, |
int | amount | ||
) |
対応する徳をプレイヤーがスロットに登録している場合に加減を行う。
範囲は-125~125、基本的に絶対値が大きいほど絶対値が上がり辛くなる。
virtue | 徳のID |
amount | 加減量 |
int choose_dungeon | ( | cptr | note, |
int | y, | ||
int | x | ||
) |
これまでに入ったダンジョンの一覧を表示する
note | ダンジョンに施す処理記述 |
y | コンソールY座標 |
x | コンソールX座標 |
bool choose_ele_attack | ( | void | ) |
bool choose_ele_immune | ( | int | turn | ) |
void choose_new_monster | ( | int | m_idx, |
bool | born, | ||
int | r_idx | ||
) |
モンスターの変身処理
m_idx | 変身処理を受けるモンスター情報のID |
born | 生成時の初変身先指定ならばtrue |
r_idx | 旧モンスター種族のID |
s16b choose_random_trap | ( | void | ) |
基本トラップをランダムに選択する / Get random trap
XXX XXX XXX This routine should be redone to reflect trap "level".
That is, it does not make sense to have spiked pits at 50 feet.
Actually, it is not this routine, but the "trap instantiation"
code, which should also check for "trap doors" on quest levels.
object_type* choose_warning_item | ( | void | ) |
警告を放つアイテムを選択する / Choose one of items that have warning flag Calculate spell damages
モンスターにとってボルト型魔法が有効な状態かを返す / Determine if a bolt spell will hit the player.
y1 | ボルト魔法発射地点のY座標 |
x1 | ボルト魔法発射地点のX座標 |
y2 | ボルト魔法目標地点のY座標 |
x2 | ボルト魔法目標地点のX座標 |
is_friend | モンスターがプレイヤーに害意を持たない(ペットか友好的)ならばTRUEをつける |
Originally, it was possible for a friendly to shoot another friendly.
Change it so a "clean shot" means no equally friendly monster is
between the attacker and target.
This is exactly like "projectable", but it will
return FALSE if a monster is in the way.
no equally friendly monster is
between the attacker and target.
void clear_cave | ( | void | ) |
フロアの全情報を初期化する / Clear and empty the cave
void clear_from | ( | int | row | ) |
void clear_mon_lite | ( | void | ) |
void clear_saved_floor_files | ( | void | ) |
保存フロア用テンポラリファイルを削除する / Kill temporal files
Should be called just before the game quit.
bool clone_monster | ( | int | dir | ) |
クローンモンスター処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
void close_game | ( | void | ) |
ゲーム終了処理 / Close up the current game (player may or may not be dead)
This function is called only from "main.c" and "signals.c".
void cnv_stat | ( | int | val, |
char * | out_val | ||
) |
現在の修正後能力値を3~17及び18/xxx形式に変換する / Converts stat num into a six-char (right justified) string
val | 能力値 |
out_val | 出力先文字列ポインタ |
冷気属性によるプレイヤー損害処理 / Hurt the player with Cold
dam | 基本ダメージ量 |
kb_str | ダメージ原因記述 |
monspell | 原因となったモンスター特殊攻撃ID |
aura | オーラよるダメージが原因ならばTRUE |
byte color_char_to_attr | ( | char | c | ) |
シンボル1文字をカラーIDに変更する / Convert a "color letter" into an "actual" color The colors are: dwsorgbuDWvyRGBU, as shown below
c | シンボル文字 |
bool combine_and_reorder_home | ( | int | store_num | ) |
現在の町の指定された店舗のアイテムを整理する / Combine and reorder items in store.
store_num | 店舗ID |
void combine_pack | ( | void | ) |
プレイヤーの所持スロットに存在するオブジェクトをまとめなおす / Combine items in the pack
Note special handling of the "overflow" slot
void compact_monsters | ( | int | size | ) |
モンスター情報配列を圧縮する / Compact and Reorder the monster list
size | 圧縮後のモンスター件数目標 |
This function can be very dangerous, use with caution!
When actually "compacting" monsters, we base the saving throw on a combination of monster level, distance from player, and current "desperation".
After "compacting" (if needed), we "reorder" the monsters into a more compact order, and we reset the allocation info, and the "live" array.
void compact_objects | ( | int | size | ) |
グローバルオブジェクト配列から優先度の低いものを削除し、データを圧縮する。 / Compact and Reorder the object list.
size | 最低でも減らしたいオブジェクト数の水準 |
(危険なので使用には注意すること) This function can be very dangerous, use with caution!
When actually "compacting" objects, we base the saving throw on a
combination of object level, distance from player, and current
"desperation".
After "compacting" (if needed), we "reorder" the objects into a more
compact order, and we reset the allocation info, and the "live" array.
bool compare_virtue | ( | int | type, |
int | num, | ||
int | tekitou | ||
) |
該当の徳がプレイヤーに指定されているか否かに応じつつ、大小を比較する。
徳がない場合は値0として比較する。
type | 比較したい徳のID |
num | 比較基準値 |
tekitou | VIRTUE_LARGE = 基準値より大きいか / VIRTUE_SMALL = 基準値より小さいか |
void complete_quest | ( | int | quest_num | ) |
クエストを達成状態にする /
quest_num | 達成状態にしたいクエストのID |
フロア脱出時に出戻りが不可能だった場合に警告を加える処理
down_stair | TRUEならば階段を降りる処理、FALSEなら階段を昇る処理による内容 |
bool confuse_monster | ( | int | dir, |
int | plev | ||
) |
モンスター混乱処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
bool confuse_monsters | ( | int | dam | ) |
パニック・モンスター効果(プレイヤー視界範囲内) / Confuse monsters
dam | 効力 |
int connect_server | ( | int | timeout, |
const char * | host, | ||
int | port | ||
) |
bool control_one_demon | ( | int | dir, |
int | plev | ||
) |
悪魔支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
bool control_one_undead | ( | int | dir, |
int | plev | ||
) |
アンデッド支配(1体)
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | パワー |
int conv_dungeon_feat | ( | int | newfeat | ) |
int count_bits | ( | u32b | x | ) |
符号なし32ビット整数のビット数を返す。
x | ビット数を調べたい変数 |
u32b counts_read | ( | int | where | ) |
ファイル位置を読み込む
where | ファイルバイト位置 |
ファイル位置に書き込む /
where | ファイルバイト位置 |
count | 書き込む値 |
bool create_artifact | ( | object_type * | o_ptr, |
bool | a_scroll | ||
) |
ランダムアーティファクト生成のメインルーチン
既に生成が済んでいるオブジェクトの構造体を、アーティファクトとして強化する。
o_ptr | 対象のオブジェクト構造体ポインタ |
a_scroll | アーティファクト生成の巻物上の処理。呪いのアーティファクトが生成対象外となる。 |
void create_name | ( | int | type, |
char * | name | ||
) |
bool create_named_art | ( | int | a_idx, |
int | y, | ||
int | x | ||
) |
フロアの指定された位置に固定アーティファクトを生成する。 / Create the artifact of the specified number
固定アーティファクト構造体から基本ステータスをコピーした後、所定の座標でdrop_item()で落とす。
a_idx | 生成する固定アーティファクト構造体のID |
y | アイテムを落とす地点のy座標 |
x | アイテムを落とす地点のx座標 |
プレイヤーからモンスターへの打撃クリティカル判定 / Critical hits (by player) Factor in weapon weight, total plusses, player melee bonus
weight | 矢弾の重量 |
plus | 武器の命中修正 |
dam | 現在算出中のダメージ値 |
meichuu | 打撃の基本命中力 |
mode | オプションフラグ |
s16b critical_shot | ( | int | weight, |
int | plus_ammo, | ||
int | plus_bow, | ||
int | dam | ||
) |
プレイヤーからモンスターへの射撃クリティカル判定 / Critical hits (from objects thrown by player) Factor in item weight, total plusses, and player level.
weight | 矢弾の重量 |
plus_ammo | 矢弾の命中修正 |
plus_bow | 弓の命中修正 |
dam | 現在算出中のダメージ値 |
bool crusade | ( | void | ) |
視界内のモンスターに「聖戦」効果を与える処理
bool curse_armor | ( | void | ) |
防具呪縛処理 / Curse the players armor
void curse_equipment | ( | int | chance, |
int | heavy_chance | ||
) |
装備への呪い付加判定と付加処理 /
chance | 呪いの基本確率 |
heavy_chance | 重い呪いを選択肢に入れるか否か。 |
武器呪縛処理のメインルーチン / Curse the players weapon
force | 無条件に呪縛を行うならばTRUE |
slot | 呪縛する武器の装備スロット |
bool curse_weapon_object | ( | bool | force, |
object_type * | o_ptr | ||
) |
武器呪縛処理 / Curse the players weapon
force | 無条件に呪縛を行うならばTRUE |
o_ptr | 呪縛する武器のアイテム情報参照ポインタ |
bool death_ray | ( | int | dir, |
int | plev | ||
) |
死の光線処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(効力はplev*200) |
bool deathray_monsters | ( | void | ) |
死の光線(プレイヤー視界範囲内) / Death-ray all monsters (note: OBSCENELY powerful)
bool dec_stat | ( | int | stat, |
int | amount, | ||
int | permanent | ||
) |
プレイヤーの基本能力値を減少させる / Decreases a stat by an amount indended to vary from 0 to 100 percent.
stat | 減少させるステータスID |
amount | 減少させる基本量 |
permanent | TRUEならば現在の最大値を減少させる |
Amount could be a little higher in extreme cases to mangle very high
stats from massive assaults. -CWS
Note that "permanent" means that the given amount is permanent,
not that the new value becomes permanent. This may not work exactly
as expected, due to "weirdness" in the algorithm, but in general,
if your stat is already drained, the "max" value will not drop all
the way down to the "cur" value.
void delayed_visual_update | ( | void | ) |
void delete_monster | ( | int | y, |
int | x | ||
) |
指定位置に存在するモンスターを削除する / Delete the monster, if any, at a given location
x | 削除位置x座標 |
y | 削除位置y座標 |
void delete_monster_idx | ( | int | i | ) |
モンスター配列からモンスターを消去する / Delete a monster by index.
i | 消去するモンスターのID |
モンスターを削除するとそのモンスターが拾っていたアイテムも同時に削除される。 / When a monster is deleted, all of its objects are deleted.
void delete_object | ( | int | y, |
int | x | ||
) |
フロアにマスに落ちているオブジェクトを全て削除する / Deletes all objects at given location Delete a dungeon object
y | 削除したフロアマスのY座標 |
x | 削除したフロアマスのX座標 |
void delete_object_idx | ( | int | o_idx | ) |
オブジェクトを削除する / Delete a dungeon object
o_idx | 削除対象のオブジェクト構造体ポインタ |
Handle "stacks" of objects correctly.
cptr describe_use | ( | int | i | ) |
所持/装備オブジェクトIDの現在の扱い方の状態表現を返す / Return a string describing how a given item is being worn.
i | 状態表現を求めるプレイヤーの所持/装備オブジェクトID |
Currently, only used for items in the equipment, not inventory.
*破壊*処理を行う / The spell of destruction
y1 | 破壊の中心Y座標 |
x1 | 破壊の中心X座標 |
r | 破壊の半径 |
in_generate | ダンジョンフロア生成中の処理ならばTRUE |
This spell "deletes" monsters (instead of "killing" them).
Later we may use one function for both "destruction" and "earthquake" by using the "full" to select "destruction".
bool destroy_door | ( | int | dir | ) |
ドア破壊処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool destroy_doors_touch | ( | void | ) |
ドア破壊処理(プレイヤー中心に周囲1マス)
bool detect_all | ( | int | range | ) |
全感知処理 / Detect everything
range | 効果範囲 |
bool detect_doors | ( | int | range | ) |
プレイヤー周辺のドアを感知する / Detect all doors on current panel
range | 効果範囲 |
bool detect_monsters_evil | ( | int | range | ) |
邪悪なモンスターを感知する / Detect all "evil" monsters on current panel
range | 効果範囲 |
bool detect_monsters_invis | ( | int | range | ) |
不可視のモンスターを感知する / Detect all "invisible" monsters around the player
range | 効果範囲 |
bool detect_monsters_mind | ( | int | range | ) |
精神のあるモンスターを感知する / Detect all monsters it has mind on current panel
range | 効果範囲 |
bool detect_monsters_nonliving | ( | int | range | ) |
無生命のモンスターを感知する(アンデッド、悪魔系を含む) / Detect all "nonliving", "undead" or "demonic" monsters on current panel
range | 効果範囲 |
bool detect_monsters_normal | ( | int | range | ) |
一般のモンスターを感知する / Detect all "normal" monsters on the current panel
range | 効果範囲 |
該当シンボルのモンスターを感知する / Detect all (string) monsters on current panel
range | 効果範囲 |
Match | 対応シンボルの混じったモンスター文字列(複数指定化) |
flags3に対応するモンスターを感知する / A "generic" detect monsters routine, tagged to flags3
range | 効果範囲 |
match_flag | 感知フラグ |
bool detect_objects_gold | ( | int | range | ) |
プレイヤー周辺のアイテム財宝を感知する / Detect all "gold" objects on the current panel
range | 効果範囲 |
bool detect_objects_magic | ( | int | range | ) |
魔法効果のあるのアイテムオブジェクトを感知する / Detect all "magic" objects on the current panel.
range | 効果範囲 |
This will light up all spaces with "magic" items, including artifacts, ego-items, potions, scrolls, books, rods, wands, staves, amulets, rings, and "enchanted" items of the "good" variety.
It can probably be argued that this function is now too powerful.
bool detect_objects_normal | ( | int | range | ) |
通常のアイテムオブジェクトを感知する / Detect all "normal" objects on the current panel
range | 効果範囲 |
bool detect_stairs | ( | int | range | ) |
プレイヤー周辺の階段を感知する / Detect all stairs on current panel
range | 効果範囲 |
プレイヤー周辺のトラップを感知する / Detect all traps on current panel
range | 効果範囲 |
known | 感知外範囲を超える警告フラグを立てる場合TRUEを返す |
bool detect_treasure | ( | int | range | ) |
プレイヤー周辺の地形財宝を感知する / Detect any treasure on the current panel
range | 効果範囲 |
void determine_bounty_uniques | ( | void | ) |
賞金首となるユニークを確定する / Determine bounty uniques
void determine_random_questor | ( | quest_type * | q_ptr | ) |
ランダムクエストの討伐ユニークを決める / Determine the random quest uniques
q_ptr | クエスト構造体の参照ポインタ |
void determine_today_mon | ( | bool | conv_old | ) |
今日の賞金首を確定する / Determine today's bounty monster
void dice_to_string | ( | int | base_damage, |
int | dice_num, | ||
int | dice_side, | ||
int | dice_mult, | ||
int | dice_div, | ||
char * | msg | ||
) |
ダイス目を文字列に変換する
base_damage | 固定値 |
dice_num | ダイス数 |
dice_side | ダイス面 |
dice_mult | ダイス倍率 |
dice_div | ダイス除数 |
msg | 文字列を格納するポインタ |
bool dimension_door | ( | void | ) |
次元の扉処理のメインルーチン / Dimension Door
bool disarm_trap | ( | int | dir | ) |
トラップ解除処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool disarm_traps_touch | ( | void | ) |
トラップ解除処理(プレイヤー中心に周囲1マス)
void discharge_minion | ( | void | ) |
ペット爆破処理 /
void disclose_grid | ( | int | y, |
int | x | ||
) |
マスに存在するトラップを秘匿する / Disclose an invisible trap
y | 秘匿したいマスのY座標 |
x | 秘匿したいマスのX座標 |
int disconnect_server | ( | int | sd | ) |
bool dispel_check | ( | int | m_idx | ) |
モンスターがプレイヤーに魔力消去を与えるべきかを判定するルーチン Check should monster cast dispel spell.
m_idx | モンスターの構造体配列ID |
bool dispel_demons | ( | int | dam | ) |
視界内の悪魔系モンスターにダメージを与える処理 / Dispel 'living' monsters
bool dispel_evil | ( | int | dam | ) |
視界内の邪悪なモンスターにダメージを与える処理 / Dispel evil monsters
bool dispel_good | ( | int | dam | ) |
視界内の善良なモンスターにダメージを与える処理 / Dispel good monsters
bool dispel_living | ( | int | dam | ) |
視界内の生命のあるモンスターにダメージを与える処理 / Dispel 'living' monsters
void dispel_monster_status | ( | int | m_idx | ) |
モンスターへの魔力消去処理
m_idx | 魔力消去を受けるモンスターの参照ID |
bool dispel_monsters | ( | int | dam | ) |
視界内のあらゆるモンスターにダメージを与える処理 / Dispel all monsters
void dispel_player | ( | void | ) |
プレイヤーに魔力消去効果を与える。
bool dispel_undead | ( | int | dam | ) |
視界内のアンデッド・モンスターにダメージを与える処理 / Dispel undead monsters
void display_dungeon | ( | void | ) |
void display_equip | ( | void | ) |
装備アイテム一覧を表示する / Choice window "shadow" of the "show_equip()" function
void display_inven | ( | void | ) |
所持アイテム一覧を表示する / Choice window "shadow" of the "show_inven()" function
void display_koff | ( | int | k_idx | ) |
現在アクティブになっているウィンドウにオブジェクトの詳細を表示する / Hack – display an object kind in the current window
k_idx | ベースアイテムの参照ID |
Include list of usable spells for readible books
void display_map | ( | int * | cy, |
int * | cx | ||
) |
void display_player | ( | int | mode | ) |
プレイヤーのステータス表示メイン処理 Display the character on the screen (various modes)
mode | 表示モードID |
The top one and bottom two lines are left blank. Mode 0 = standard display with skills Mode 1 = standard display with history Mode 2 = summary of various things Mode 3 = summary of various things (part 2) Mode 4 = mutations
void display_roff | ( | int | r_idx | ) |
モンスター情報の現在のウィンドウに表示する / Hack – describe the given monster race in the current "term" window
r_idx | モンスターの種族ID |
void display_rumor | ( | bool | ex | ) |
void display_scores | ( | int | from, |
int | to | ||
) |
スコア表示処理メインルーチン / Hack – Display the scores in a given range and quit.
from | 順位先頭 |
to | 順位末尾 |
This function is only called from "main.c" when the user asks to see the "high scores".
void display_scores_aux | ( | int | from, |
int | to, | ||
int | note, | ||
high_score * | score | ||
) |
指定された順位範囲でスコアを並べて表示する / Display the scores in a given range.
from | 順位先頭 |
to | 順位末尾 |
note | 黄色表示でハイライトする順位 |
score | スコア配列参照ポインタ |
Assumes the high score list is already open. Only five entries per line, too much info.
Mega-Hack – allow "fake" entry at the given position.
void display_snipe_list | ( | void | ) |
スナイパーの技能リストを表示する
void display_spell_list | ( | void | ) |
プレイヤーの全既知呪文を表示する / Hack – Display all known spells in a window return なし
XXX XXX XXX Need to analyze size of the window. XXX XXX XXX Need more color coding.
int dist_to_line | ( | int | y, |
int | x, | ||
int | y1, | ||
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
int distance | ( | int | y1, |
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
2点間の距離をニュートン・ラプソン法で算出する / Distance between two points via Newton-Raphson technique
y1 | 1点目のy座標 |
x1 | 1点目のx座標 |
y2 | 2点目のy座標 |
x2 | 2点目のx座標 |
void distribute_charges | ( | object_type * | o_ptr, |
object_type * | q_ptr, | ||
int | amt | ||
) |
魔法棒やロッドのスロット分割時に使用回数を分配する / Distribute charges of rods or wands.
o_ptr | 分割元オブジェクトの構造体参照ポインタ source item |
q_ptr | 分割先オブジェクトの構造体参照ポインタ target item, must be of the same type as o_ptr |
amt | 分割したい回数量 number of items that are transfered |
Hack – If rods or wands are dropped, the total maximum timeout or
charges need to be allocated between the two stacks. If all the items
are being dropped, it makes for a neater message to leave the original
stack's pval alone. -LM-
void disturb | ( | int | stop_search, |
int | flush_output | ||
) |
void do_cmd_activate | ( | void | ) |
装備を発動するコマンドのメインルーチン /
void do_cmd_aim_wand | ( | void | ) |
魔法棒を使うコマンドのメインルーチン /
void do_cmd_alter | ( | void | ) |
特定のマスに影響を及ぼすための汎用的コマンド
Manipulate an adjacent grid in some way
Attack monsters, tunnel through walls, disarm traps, open doors.
Consider confusion XXX XXX XXX
This command must always take a turn, to prevent free detection of invisible monsters.
void do_cmd_bash | ( | void | ) |
「打ち破る」動作コマンドのメインルーチン / Bash open a door, success based on character strength
For a closed door, pval is positive if locked; negative if stuck.
For an open door, pval is positive for a broken door.
A closed door can be opened - harder if locked. Any door might be bashed open (and thereby broken). Bashing a door is (potentially) faster! You move into the door way. To open a stuck door, it must be bashed. A closed door can be jammed (see do_cmd_spike()).
Creatures can also open or bash doors, see elsewhere.
void do_cmd_bldg | ( | void | ) |
施設入り口にプレイヤーが乗った際の処理 / Do building commands
void do_cmd_browse | ( | void | ) |
プレイヤーの魔法と技能を閲覧するコマンドのメインルーチン / Peruse the spells/prayers in a book
Note that all spells in the book are listed
Note that browsing is allowed while confused or blind, and in the dark, primarily to allow browsing in stores.
void do_cmd_cast | ( | void | ) |
魔法を詠唱するコマンドのメインルーチン / Cast a spell
bool do_cmd_cast_learned | ( | void | ) |
青魔法コマンドのメインルーチン / do_cmd_cast calls this function if the player's class is 'Blue-Mage'.
void do_cmd_change_name | ( | void | ) |
名前を変更するコマンドのメインルーチン Hack – change name
void do_cmd_checkquest | ( | void | ) |
void do_cmd_close | ( | void | ) |
「閉じる」コマンドのメインルーチン / Close an open door.
Unlocking a locked door/chest is worth one experience point.
void do_cmd_colors | ( | void | ) |
void do_cmd_destroy | ( | void | ) |
アイテムを破壊するコマンドのメインルーチン / Destroy an item
void do_cmd_disarm | ( | void | ) |
箱、床のトラップ解除処理双方の統合メインルーチン / Disarms a trap, or chest
void do_cmd_drop | ( | void | ) |
アイテムを落とすコマンドのメインルーチン / Drop an item
void do_cmd_eat_food | ( | void | ) |
食料を食べるコマンドのメインルーチン / Eat some food (from the pack or floor)
void do_cmd_edit_autopick | ( | void | ) |
void do_cmd_equip | ( | void | ) |
装備一覧を表示するコマンドのメインルーチン / Display equipment
void do_cmd_feeling | ( | void | ) |
void do_cmd_fire | ( | void | ) |
射撃処理のメインルーチン
void do_cmd_fire_aux | ( | int | item, |
object_type * | j_ptr | ||
) |
射撃処理のサブルーチン / Fire an object from the pack or floor.
item | 射撃するオブジェクトの所持ID |
j_ptr | 射撃武器のオブジェクト参照ポインタ |
You may only fire items that "match" your missile launcher.
You must use slings + pebbles/shots, bows + arrows, xbows + bolts.
See "calc_bonuses()" for more calculations and such.
Note that "firing" a missile is MUCH better than "throwing" it.
Note: "unseen" monsters are very hard to hit.
Objects are more likely to break if they "attempt" to hit a monster.
Rangers (with Bows) and Anyone (with "Extra Shots") get extra shots.
The "extra shot" code works by decreasing the amount of energy required to make each shot, spreading the shots out over time.
Note that when firing missiles, the launcher multiplier is applied after all the bonuses are added in, making multipliers very useful.
Note that Bows of "Extra Might" get extra range and an extra bonus for the damage multiplier.
Note that Bows of "Extra Shots" give an extra shot.
void do_cmd_gain_hissatsu | ( | void | ) |
剣術コマンドの学習
void do_cmd_go_down | ( | void | ) |
階段を使って階層を降りる処理 / Go down one level
void do_cmd_go_up | ( | void | ) |
階段を使って階層を昇る処理 / Go up one level
void do_cmd_help | ( | void | ) |
ヘルプを表示するコマンドのメインルーチン Peruse the On-Line-Help
void do_cmd_hissatsu | ( | void | ) |
剣術コマンドのメインルーチン
void do_cmd_hissatsu_browse | ( | void | ) |
void do_cmd_inscribe | ( | void | ) |
アイテムの銘を刻むコマンドのメインルーチン Inscribe an object with a comment
void do_cmd_inven | ( | void | ) |
持ち物一覧を表示するコマンドのメインルーチン / Display inventory
void do_cmd_kaji | ( | bool | only_browse | ) |
鍛冶コマンドのメインルーチン
only_browse | TRUEならばエッセンス一覧の表示のみを行う |
void do_cmd_knowledge | ( | void | ) |
void do_cmd_knowledge_mutations | ( | void | ) |
突然変異表示コマンドの実装 / List mutations we have...
void do_cmd_knowledge_quests_completed | ( | FILE * | fff, |
int | quest_num[] | ||
) |
void do_cmd_knowledge_quests_failed | ( | FILE * | fff, |
int | quest_num[] | ||
) |
void do_cmd_load_screen | ( | void | ) |
void do_cmd_locate | ( | void | ) |
位置を確認するコマンドのメインルーチン Allow the player to examine other sectors on the map
void do_cmd_look | ( | void | ) |
周囲を見渡すコマンドのメインルーチン Look command
void do_cmd_macros | ( | void | ) |
マクロを設定するコマンドのメインルーチン / Interact with "macros"
Note that the macro "action" must be defined before the trigger.
Could use some helpful instructions on this page. XXX XXX XXX
取り込んだ魔力を利用するコマンドのメインルーチン / Use eaten rod, wand or staff
only_browse | 閲覧するだけならばTRUE |
powerful | 強力発動中の処理ならばTRUE |
ものまねコマンドのメインルーチン / do_cmd_cast calls this function if the player's class is 'imitator'.
baigaesi | TRUEならば倍返し上の処理として行う |
If a valid spell is chosen, saves it in '*sn' and returns TRUE If the user hits escape, returns FALSE, and set '*sn' to -1 If there are no legal choices, returns FALSE, and sets '*sn' to -2
The "prompt" should be "cast", "recite", or "study" The "known" should be TRUE for cast/pray, FALSE for study
nb: This function has a (trivial) display bug which will be obvious when you run it. It's probably easy to fix but I haven't tried, sorry.
void do_cmd_message_one | ( | void | ) |
最近表示されたメッセージを再表示するコマンドのメインルーチン Recall the most recent message
void do_cmd_messages | ( | int | num_now | ) |
メッセージのログを表示するコマンドのメインルーチン Recall the most recent message
Show previous messages to the user -BEN-
The screen format uses line 0 and 23 for headers and prompts, skips line 1 and 22, and uses line 2 thru 21 for old messages.
This command shows you which commands you are viewing, and allows you to "search" for strings in the recall.
Note that messages may be longer than 80 characters, but they are displayed using "infinite" length, with a special sub-command to "slide" the virtual display to the left or right.
Attempt to only hilite the matching portions of the string.
void do_cmd_mind | ( | void | ) |
特殊技能コマンドのメインルーチン /
void do_cmd_mind_browse | ( | void | ) |
現在プレイヤーが使用可能な特殊技能の一覧表示 /
void do_cmd_nikki | ( | void | ) |
日記コマンド
void do_cmd_note | ( | void | ) |
void do_cmd_observe | ( | void | ) |
アイテムを調査するコマンドのメインルーチン / Observe an item which has been identify-ed
void do_cmd_open | ( | void | ) |
「開ける」コマンドのメインルーチン / Open a closed/locked/jammed door or a closed/locked chest.
Unlocking a locked door/chest is worth one experience point.
void do_cmd_options | ( | void | ) |
標準オプションを変更するコマンドのメインルーチン / Set or unset various options.
The user must use the "Ctrl-R" command to "adapt" to changes in any options which control "visual" aspects of the game.
void do_cmd_options_aux | ( | int | page, |
cptr | info | ||
) |
標準オプションを変更するコマンドのサブルーチン / Interact with some options
page | オプションページ番号 |
info | 表示メッセージ |
void do_cmd_pet | ( | void | ) |
ペットに関するコマンドリストのメインルーチン / Issue a pet command
void do_cmd_pet_dismiss | ( | void | ) |
ペットを開放するコマンドのメインルーチン
void do_cmd_pref | ( | void | ) |
prefファイルを選択して処理する / Ask for a "user pref line" and process it
XXX XXX XXX Allow absolute file names?
void do_cmd_quaff_potion | ( | void | ) |
薬を飲むコマンドのメインルーチン / Quaff some potion (from the pack or floor)
void do_cmd_query_symbol | ( | void | ) |
モンスターの思い出を見るコマンドのメインルーチン Identify a character, allow recall of monsters
Several "special" responses recall "multiple" monsters: ^A (all monsters) ^U (all unique monsters) ^N (all non-unique monsters)
The responses may be sorted in several ways, see below.
Note that the player ghosts are ignored. XXX XXX XXX
void do_cmd_quest | ( | void | ) |
クエスト入り口にプレイヤーが乗った際の処理 / Do building commands
void do_cmd_racial_power | ( | void | ) |
レイシャル・パワーコマンドのメインルーチン / Allow user to choose a power (racial / mutation) to activate
void do_cmd_read_scroll | ( | void | ) |
読むコマンドのメインルーチン / Eat some food (from the pack or floor)
void do_cmd_redraw | ( | void | ) |
画面を再描画するコマンドのメインルーチン Hack – redraw the screen
This command performs various low level updates, clears all the "extra" windows, does a total redraw of the main window, and requests all of the interesting updates and redraws that I can think of.
This command is also used to "instantiate" the results of the user selecting various things, such as graphics mode, so it must call the "TERM_XTRA_REACT" hook before redrawing the windows.
void do_cmd_refill | ( | void | ) |
燃料を補充するコマンドのメインルーチン Refill the players lamp, or restock his torches
void do_cmd_reload_autopick | ( | void | ) |
自動拾い設定ファイルをロードするコマンドのメインルーチン /
void do_cmd_rerate | ( | bool | display | ) |
プレイヤーのヒットダイスを振り直した後明示を行う / Hack – Rerate Hitpoints
display | TRUEならば体力ランクを明示する |
void do_cmd_rerate_aux | ( | void | ) |
void do_cmd_rest | ( | void | ) |
「休む」動作コマンドのメインルーチン / Resting allows a player to safely restore his hp -RAK-
void do_cmd_run | ( | void | ) |
「走る」動作コマンドのメインルーチン / Start running.
void do_cmd_save_and_exit | ( | void | ) |
セーブ後にゲーム中断フラグを立てる/ Save the game and exit
void do_cmd_save_game | ( | int | is_autosave | ) |
セーブするコマンドのメインルーチン Save the game
is_autosave | オートセーブ中の処理ならばTRUE |
void do_cmd_save_screen | ( | void | ) |
void do_cmd_save_screen_html_aux | ( | char * | filename, |
int | message | ||
) |
void do_cmd_search | ( | void | ) |
探索コマンドのメインルーチン / Simple command to "search" for one turn
void do_cmd_snipe | ( | void | ) |
スナイパー技能コマンドのメインルーチン /
void do_cmd_snipe_browse | ( | void | ) |
スナイパー技能コマンドの表示 /
void do_cmd_spike | ( | void | ) |
「くさびを打つ」動作コマンドのメインルーチン / Jam a closed door with a spike
This command may NOT be repeated
void do_cmd_stay | ( | bool | pickup | ) |
「留まる」動作コマンドのメインルーチン / Stay still.
Search. Enter stores. Pick up treasure if "pickup" is true.
pickup | アイテムの自動拾いを行うならTRUE |
void do_cmd_store | ( | void | ) |
店舗処理全体のメインルーチン / Enter a store, and interact with it.
Note that we use the standard "request_command()" function to get a command, allowing us to use "command_arg" and all command macros and other nifty stuff, but we use the special "shopping" argument, to force certain commands to be converted into other commands, normally, we convert "p" (pray) and "m" (cast magic) into "g" (get), and "s" (search) into "d" (drop).
void do_cmd_study | ( | void | ) |
魔法を学習するコマンドのメインルーチン / Study a book to gain a new spell/prayer
void do_cmd_suicide | ( | void | ) |
自殺するコマンドのメインルーチン Hack – commit suicide
void do_cmd_takeoff | ( | void | ) |
装備を外すコマンドのメインルーチン / Take off an item
void do_cmd_target | ( | void | ) |
ターゲットを設定するコマンドのメインルーチン Target command
void do_cmd_throw | ( | void | ) |
投射処理のメインルーチン / Throw an object from the pack or floor.
投射処理のサブルーチン / Throw an object from the pack or floor.
mult | 威力の倍率 |
boomerang | ブーメラン処理ならばTRUE |
shuriken | 忍者の手裏剣処理ならばTRUE |
Note: "unseen" monsters are very hard to hit.
Should throwing a weapon do full damage? Should it allow the magic to hit bonus of the weapon to have an effect? Should it ever cause the item to be destroyed? Should it do any damage at all?
void do_cmd_time | ( | void | ) |
void do_cmd_tunnel | ( | void | ) |
「掘る」動作コマンドのメインルーチン / Tunnels through "walls" (including rubble and closed doors)
Note that you must tunnel in order to hit invisible monsters in walls, though moving into walls still takes a turn anyway.
Digging is very difficult without a "digger" weapon, but can be accomplished by strong players using heavy weapons.
void do_cmd_uninscribe | ( | void | ) |
アイテムの銘を消すコマンドのメインルーチン Remove the inscription from an object XXX Mention item (when done)?
void do_cmd_use | ( | void | ) |
アイテムを汎用的に「使う」コマンドのメインルーチン / Use an item
XXX - Add actions for other item types
void do_cmd_use_staff | ( | void | ) |
杖を使うコマンドのメインルーチン /
void do_cmd_version | ( | void | ) |
void do_cmd_view_map | ( | void | ) |
void do_cmd_visuals | ( | void | ) |
void do_cmd_walk | ( | bool | pickup | ) |
「歩く」動作コマンドのメインルーチン / Support code for the "Walk" and "Jump" commands
pickup | アイテムの自動拾いを行うならTRUE |
void do_cmd_wield | ( | void | ) |
装備するコマンドのメインルーチン / Wield or wear a single item from the pack or floor
日記にメッセージを追加する / Take note to the diary.
type | 日記内容のID |
num | 日記内容のIDに応じた数値 |
note | 日記内容のIDに応じた文字列参照ポインタ |
void do_cmd_zap_rod | ( | void | ) |
ロッドを使うコマンドのメインルーチン /
bool do_dec_stat | ( | int | stat | ) |
bool do_inc_stat | ( | int | stat | ) |
void do_poly_self | ( | void | ) |
void do_poly_wounds | ( | void | ) |
bool do_res_stat | ( | int | stat | ) |
ペットから騎乗/下馬するコマンドのメインルーチン /
force | 強制的に騎乗/下馬するならばTRUE |
cptr do_spell | ( | int | realm, |
int | spell, | ||
int | mode | ||
) |
魔法処理のメインルーチン
realm | 魔法領域のID |
spell | 各領域の魔法ID |
mode | 求める処理 |
bool door_creation | ( | void | ) |
ドア生成処理(プレイヤー中心に周囲1マス) / Hooks – affect adjacent grids (radius 1 ball attack)
bool drain_life | ( | int | dir, |
int | dam | ||
) |
吸血ボルト処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
s16b drop_near | ( | object_type * | j_ptr, |
int | chance, | ||
int | y, | ||
int | x | ||
) |
生成済のオブジェクトをフロアの所定の位置に落とす。 Let an object fall to the ground at or near a location.
j_ptr | 落としたいオブジェクト構造体の参照ポインタ |
chance | ドロップの成功率(%) |
y | 配置したいフロアのY座標 |
x | 配置したいフロアのX座標 |
The initial location is assumed to be "in_bounds()".
This function takes a parameter "chance". This is the percentage
chance that the item will "disappear" instead of drop. If the object
has been thrown, then this is the chance of disappearance on contact.
Hack – this function uses "chance" to determine if it should produce
some form of "description" of the drop event (under the player).
We check several locations to see if we can find a location at which
the object can combine, stack, or be placed. Artifacts will try very
hard to be placed, including "teleporting" to a useful grid if needed.
void dump_mutations | ( | FILE * | OutFile | ) |
ファイルポインタを通じて突然変異の一覧を出力する
OutFile | 出力先ファイルポインタ |
void dump_virtues | ( | FILE * | OutFile | ) |
徳のダンプ表示を行う。
OutFile | ファイルポインタ。 |
void dump_yourself | ( | FILE * | fff | ) |
プレイヤー作成処理中のステータス表示処理
fff | ファイルポインタ |
bool earthquake | ( | int | cy, |
int | cx, | ||
int | r | ||
) |
地震処理(プレイヤーの中心発動) / Induce an "earthquake" of the given radius at the given location.
cy | 中心Y座標 |
cx | 中心X座標 |
r | 効果半径 |
bool earthquake_aux | ( | int | cy, |
int | cx, | ||
int | r, | ||
int | m_idx | ||
) |
地震処理(サブルーチン) / Induce an "earthquake" of the given radius at the given location.
cy | 中心Y座標 |
cx | 中心X座標 |
r | 効果半径 |
m_idx | 地震を起こしたモンスターID(0ならばプレイヤー) |
This will turn some walls into floors and some floors into walls.
The player will take damage and "jump" into a safe grid if possible, otherwise, he will "tunnel" through the rubble instantaneously.
Monsters will take damage, and "jump" into a safe grid if possible, otherwise they will be "buried" in the rubble, disappearing from the level in the same way that they do when genocided.
Note that thus the player and monsters (except eaters of walls and passers through walls) will never occupy the same grid as a wall. Note that as of now (2.7.8) no monster may occupy a "wall" grid, even for a single turn, unless that monster can pass_walls or kill_walls. This has allowed massive simplification of the "monster" code.
bool eat_magic | ( | int | power | ) |
魔力食い処理
power | 基本効力 |
電撃属性によるプレイヤー損害処理 / Hurt the player with electricity
dam | 基本ダメージ量 |
kb_str | ダメージ原因記述 |
monspell | 原因となったモンスター特殊攻撃ID |
aura | オーラよるダメージが原因ならばTRUE |
プレイヤーの現在開いている手の状態を返す
riding_control | 乗馬中により片手を必要としている状態ならばTRUEを返す。 |
bool enchant | ( | object_type * | o_ptr, |
int | n, | ||
int | eflag | ||
) |
装備修正強化処理 / Enchants a plus onto an item.
-RAK-
o_ptr | 強化するアイテムの参照ポインタ |
n | 強化基本量 |
eflag | 強化オプション(命中/ダメージ/AC) |
Revamped! Now takes item pointer, number of times to try enchanting, and a flag of what to try enchanting. Artifacts resist enchantment some of the time, and successful enchantment to at least +0 might break a curse on the item. -CFT-
Note that an item can technically be enchanted all the way to +15 if you wait a very, very, long time. Going from +9 to +10 only works about 5% of the time, and from +10 to +11 only about 1% of the time.
Note that this function can now be used on "piles" of items, and the larger the pile, the lower the chance of success.
bool enchant_spell | ( | int | num_hit, |
int | num_dam, | ||
int | num_ac | ||
) |
装備修正強化処理のメインルーチン / Enchant an item (in the inventory or on the floor)
num_hit | 命中修正量 |
num_dam | ダメージ修正量 |
num_ac | AC修正量 |
Note that "num_ac" requires armour, else weapon Returns TRUE if attempted, FALSE if cancelled
void enter_level | ( | int | level | ) |
void excise_object_idx | ( | int | o_idx | ) |
床上、モンスター所持でスタックされたアイテムを削除しスタックを補完する / Excise a dungeon object from any stacks
o_idx | 削除対象のオブジェクト構造体ポインタ |
void exit_game_panic | ( | void | ) |
異常発生時のゲーム緊急終了処理 / Handle abrupt death of the visual system
This routine is called only in very rare situations, and only by certain visual systems, when they experience fatal errors. XXX XXX Hack – clear the death flag when creating a HANGUP save file so that player can see tombstone when restart.
s16b experience_of_spell | ( | int | spell, |
int | use_realm | ||
) |
呪文の経験値を返す / Returns experience of a spell
spell | 呪文ID |
use_realm | 魔法領域 |
bool explosive_rune | ( | void | ) |
爆発のルーン設置処理 / Leave an "explosive rune" which prevents monster movement
void extract_day_hour_min | ( | int * | day, |
int * | hour, | ||
int * | min | ||
) |
現在の日数、時刻を返す / Extract day, hour, min
day | 日数を返すための参照ポインタ |
hour | 時数を返すための参照ポインタ |
min | 分数を返すための参照ポインタ |
cptr extract_note_dies | ( | monster_race * | r_ptr | ) |
モンスターを撃破した際の述語メッセージを返す / Return monster death string
r_ptr | 撃破されたモンスターの種族情報を持つ構造体の参照ポインタ |
void extract_option_vars | ( | void | ) |
ビットセットからゲームオプションを展開する / Extract option variables from bit sets
地形タグからIDを得る / Convert a fake tag to a real feat index
str | タグ文字列 |
地形タグからIDを得る / Initialize quest array
errr fd_close | ( | int | fd | ) |
errr fd_lock | ( | int | fd, |
int | what | ||
) |
int fd_make | ( | cptr | file, |
int | mode | ||
) |
int fd_open | ( | cptr | file, |
int | flags | ||
) |
bool fear_monster | ( | int | dir, |
int | plev | ||
) |
モンスター恐慌処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
int feat_state | ( | int | feat, |
int | action | ||
) |
void fetch | ( | int | dir, |
int | wgt, | ||
bool | require_los | ||
) |
アイテム引き寄せ処理 / Fetch an item (teleport it right underneath the caster)
dir | 魔法の発動方向 |
wgt | 許容重量 |
require_los | 射線の通りを要求するならばTRUE |
プレイヤーステータスをファイルダンプ出力する Hack – Dump a character description file
name | 出力ファイル名 |
XXX XXX XXX Allow the "full" flag to dump additional info, and trigger its usage from various places in the code.
const activation_type* find_activation_info | ( | object_type * | o_ptr | ) |
オブジェクトから発動効果構造体のポインタを取得する。
activation_index() 関数の結果から参照する。
o_ptr | 対象のオブジェクト構造体ポインタ |
bool fire_ball | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ボール系スペルの発動 / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
bool fire_ball_hide | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ボール(ハイド)系スペルの発動 / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
bool fire_beam | ( | int | typ, |
int | dir, | ||
int | dam | ||
) |
ビーム系スペルの発動 / Cast a beam spell.
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Pass through monsters, as a "beam". Affect monsters, grids and objects.
bool fire_blast | ( | int | typ, |
int | dir, | ||
int | dd, | ||
int | ds, | ||
int | num, | ||
int | dev | ||
) |
ブラスト系スペルの発動 / Cast a blast spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dd | 威力ダイス数 |
ds | 威力ダイス目 |
num | 基本回数 |
dev | 回数分散 |
bool fire_bolt | ( | int | typ, |
int | dir, | ||
int | dam | ||
) |
ボルト系スペルの発動 / Cast a bolt spell.
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Stop if we hit a monster, as a "bolt". Affect monsters and grids (not objects).
bool fire_bolt_or_beam | ( | int | prob, |
int | typ, | ||
int | dir, | ||
int | dam | ||
) |
確率に応じたボルト系/ビーム系スペルの発動 / Cast a bolt spell, or rarely, a beam spell.
prob | ビーム化する確率(%) |
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
Pass through monsters, as a "beam". Affect monsters, grids and objects.
火炎属性によるプレイヤー損害処理 / Hurt the player with Fire
dam | 基本ダメージ量 |
kb_str | ダメージ原因記述 |
monspell | 原因となったモンスター特殊攻撃ID |
aura | オーラよるダメージが原因ならばTRUE |
bool fire_meteor | ( | int | who, |
int | typ, | ||
int | y, | ||
int | x, | ||
int | dam, | ||
int | rad | ||
) |
メテオ系スペルの発動 / Cast a meteor spell
who | スぺル詠唱者のモンスターID(0=プレイヤー) |
typ | 効果属性 |
dam | 威力 |
rad | 半径 |
y | 中心点Y座標 |
x | 中心点X座標 |
Cast a meteor spell, defined as a ball spell cast by an arbitary monster, player, or outside source, that starts out at an arbitrary location, and leaving no trail from the "caster" to the target. This function is especially useful for bombardments and similar. -LM- Option to hurt the player.
bool fire_rocket | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | rad | ||
) |
ロケット系スペルの発動(詳細な差は確認中) / Cast a ball spell
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
rad | 半径 |
Stop if we hit a monster, act as a "ball" Allow "target" mode to pass over monsters Affect grids, objects, and monsters
s32b flag_cost | ( | object_type * | o_ptr, |
int | plusses | ||
) |
オブジェクトのフラグ類から価格を算出する / Return the value of the flags the object has...
o_ptr | フラグ価格を確認したいオブジェクトの構造体参照ポインタ |
plusses | フラグに与える価格の基本重み |
void flavor_init | ( | void | ) |
ゲーム開始時に行われるベースアイテムの初期化ルーチン / Prepare the "variable" part of the "k_info" array.
Prepare the "variable" part of the "k_info" array.
The "color"/"metal"/"type" of an item is its "flavor".
For the most part, flavors are assigned randomly each game.
Initialize descriptions for the "colored" objects, including:
Rings, Amulets, Staffs, Wands, Rods, Food, Potions, Scrolls.
The first 4 entries for potions are fixed (Water, Apple Juice,
Slime Mold Juice, Unused Potion).
Scroll titles are always between 6 and 14 letters long. This is
ensured because every title is composed of whole words, where every
word is from 1 to 8 letters long (one or two syllables of 1 to 4
letters each), and that no scroll is finished until it attempts to
grow beyond 15 letters. The first time this can happen is when the
current title has 6 letters and the new word has 8 letters, which
would result in a 6 letter scroll title.
Duplicate titles are avoided by requiring that no two scrolls share
the same first four letters (not the most efficient method, and not
the least efficient method, but it will always work).
Hack – make sure everything stays the same for each saved game
This is accomplished by the use of a saved "random seed", as in
"town_gen()". Since no other functions are called while the special
seed is in effect, so this function is pretty "safe".
Note that the "hacked seed" may provide an RNG with alternating parity!
void floor_item_charges | ( | int | item | ) |
床上の魔道具の残り残量メッセージを表示する / Describe the charges on an item on the floor.
item | メッセージの対象にしたいアイテム所持スロット |
void floor_item_describe | ( | int | item | ) |
床上のアイテムの残り数メッセージを表示する / Describe the charges on an item on the floor.
item | メッセージの対象にしたいアイテム所持スロット |
void floor_item_increase | ( | int | item, |
int | num | ||
) |
床上のアイテムの数を増やす / Increase the "number" of an item on the floor
item | 増やしたいアイテムの所持スロット |
num | 増やしたいアイテムの数 |
void floor_item_optimize | ( | int | item | ) |
床上の数の無くなったアイテムスロットを消去する / Optimize an item on the floor (destroy "empty" items)
item | 消去したいアイテムの所持スロット |
void flush | ( | void | ) |
void forget_flow | ( | void | ) |
void forget_lite | ( | void | ) |
void forget_travel_flow | ( | void | ) |
void forget_view | ( | void | ) |
s16b gain_energy | ( | void | ) |
void gain_exp | ( | s32b | amount | ) |
void gain_level_reward | ( | int | chosen_reward | ) |
bool gain_magic | ( | void | ) |
魔道具術師の魔力取り込み処理
bool gain_random_mutation | ( | int | choose_mut | ) |
プレイヤーに突然変異を与える
choose_mut | 与えたい突然変異のID、0ならばランダムに選択 |
void generate_cave | ( | void | ) |
ダンジョンのランダムフロアを生成する / Generates a random dungeon level -RAK-
モンスターへの単体抹殺処理サブルーチン / Delete a non-unique/non-quest monster
m_idx | 抹殺するモンスターID |
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
dam_side | プレイヤーへの負担ダメージ量(1d(dam_side)) |
spell_name | 抹殺効果を起こした魔法の名前 |
bool get_aim_dir | ( | int * | dp | ) |
void get_bloody_moon_flags | ( | object_type * | o_ptr | ) |
固定アーティファクト『ブラッディムーン』の特性を変更する。
スレイ2d2種、及びone_resistance()による耐性1d2種、pval2種を得る。
o_ptr | 対象のオブジェクト構造体(ブラッディムーン)のポインタ |
cptr get_check_sum | ( | void | ) |
サムチェック情報を出力 / Get check sum in string form
u32b get_curse | ( | int | power, |
object_type * | o_ptr | ||
) |
モンスターのボール型&ブレス型魔法処理 /
power | 呪いの段階 |
o_ptr | 呪いをかけられる装備オブジェクトの構造体参照ポインタ |
bool get_hack_dir | ( | int * | dp | ) |
void get_height_weight | ( | void | ) |
プレイヤーの身長体重を決める / Get character's height and weight
オブジェクト選択の汎用関数 / Let the user select an item, save its "index"
cp | 選択したオブジェクトのIDを返す。 |
pmt | 選択目的のメッセージ |
str | 選択できるオブジェクトがない場合のキャンセルメッセージ |
mode | オプションフラグ |
The selected item must satisfy the "item_tester_hook()" function,
if that hook is set, and the "item_tester_tval", if that value is set.
All "item_tester" restrictions are cleared before this function returns.
The user is allowed to choose acceptable items from the equipment,
inventory, or floor, respectively, if the proper flag was given,
and there are any acceptable items in that location.
The equipment or inventory are displayed (even if no acceptable
items are in that location) if the proper flag was given.
If there are no acceptable items available anywhere, and "str" is
not NULL, then it will be used as the text of a warning message
before the function returns.
Note that the user must press "-" to specify the item on the floor,
and there is no way to "examine" the item on the floor, while the
use of "capital" letters will "examine" an inventory/equipment item,
and prompt for its use.
If a legal item is selected from the inventory, we save it in "cp"
directly (0 to 35), and return TRUE.
If a legal item is selected from the floor, we save it in "cp" as
a negative (-1 to -511), and return TRUE.
If no item is available, we do nothing to "cp", and we display a
warning message, using "str" if available, and return FALSE.
If no item is selected, we do nothing to "cp", and return FALSE.
Global "p_ptr->command_new" is used when viewing the inventory or equipment
to allow the user to enter a command while viewing those screens, and
also to induce "auto-enter" of stores, and other such stuff.
Global "p_ptr->command_see" may be set before calling this function to start
out in "browse" mode. It is cleared before this function returns.
Global "p_ptr->command_wrk" is used to choose between equip/inven listings.
If it is TRUE then we are viewing inventory, else equipment.
We always erase the prompt when we are done, leaving a blank line,
or a warning message, if appropriate, if no items are available.
int get_keymap_dir | ( | char | ch | ) |
void get_max_stats | ( | void | ) |
プレイヤーの限界ステータスを決める。
s16b get_mon_num | ( | int | level | ) |
生成モンスター種族を1種生成テーブルから選択する
level | 生成階 |
Choose a monster race that seems "appropriate" to the given level
This function uses the "prob2" field of the "monster allocation table", and various local information, to calculate the "prob3" field of the same table, which is then used to choose an "appropriate" monster, in a relatively efficient manner.
Note that "town" monsters will only be created in the town, and "normal" monsters will never be created in the town, unless the "level" is "modified", for example, by polymorph or summoning.
There is a small chance (1/50) of "boosting" the given depth by a small amount (up to four levels), except in the town.
It is (slightly) more likely to acquire a monster of the given level than one of a lower level. This is done by choosing several monsters appropriate to the given level and keeping the "hardest" one.
Note that if no monsters are "appropriate", then this function will fail, and return zero, but this should almost never happen.
errr get_mon_num_prep | ( | monster_hook_type | monster_hook, |
monster_hook_type | monster_hook2 | ||
) |
モンスター生成制限関数最大2つから / Apply a "monster restriction function" to the "monster allocation table"
monster_hook | 制限関数1 |
monster_hook2 | 制限関数2 |
monster_hook_type get_monster_hook | ( | void | ) |
プレイヤーの現在の広域マップ座標から得た地勢を元にモンスターの生成条件関数を返す
monster_hook_type get_monster_hook2 | ( | int | y, |
int | x | ||
) |
指定された広域マップ座標の地勢を元にモンスターの生成条件関数を返す
int get_mproc_idx | ( | int | m_idx, |
int | mproc_type | ||
) |
モンスターの時限ステータスを取得する
byte get_mspeed | ( | monster_race * | r_ptr | ) |
モンスターの個体加速を設定する / Get initial monster speed
r_ptr | モンスター種族の参照ポインタ |
void get_name | ( | void | ) |
プレイヤーの名前を変更するコマンドのメインルーチン Gets a name for the character, reacting to name changes.
Assumes that "display_player(0)" has just been called Perhaps we should NOT ask for a name (at "birth()") on Unix machines? XXX XXX What a horrible name for a global function. XXX XXX XXX
s16b get_new_floor_id | ( | void | ) |
新規に利用可能な保存フロアを返す / Initialize new saved floor and get its floor id.
If number of saved floors are already MAX_SAVED_FLOORS, kill the oldest one.
bool get_nightmare | ( | int | r_idx | ) |
悪夢の元凶となるモンスターかどうかを返す。
r_idx | 判定対象となるモンスターのID |
s16b get_obj_num | ( | int | level | ) |
オブジェクト生成テーブルからアイテムを取得する / Choose an object kind that seems "appropriate" to the given level
level | 生成階 |
This function uses the "prob2" field of the "object allocation table",
and various local information, to calculate the "prob3" field of the
same table, which is then used to choose an "appropriate" object, in
a relatively efficient manner.
It is (slightly) more likely to acquire an object of the given level
than one of a lower level. This is done by choosing several objects
appropriate to the given level and keeping the "hardest" one.
Note that if no objects are "appropriate", then this function will
fail, and return zero, but this should almost never happen.
cptr get_ordinal_number_suffix | ( | int | num | ) |
Return suffix of ordinal number.
num | number |
void get_project_point | ( | int | sy, |
int | sx, | ||
int * | ty, | ||
int * | tx, | ||
int | flg | ||
) |
モンスターが特殊能力の目標地点を決める処理 / Get the actual center point of ball spells (rad > 1) (originally from TOband)
sy | 始点のY座標 |
sx | 始点のX座標 |
ty | 目標Y座標を返す参照ポインタ |
tx | 目標X座標を返す参照ポインタ |
flg | 判定のフラグ配列 |
bool get_rep_dir2 | ( | int * | dp | ) |
ファイルからランダムに行を一つ取得する / Get a random line from a file
file_name | ファイル名 |
entry | 特定条件時のN:タグヘッダID |
output | 出力先の文字列参照ポインタ |
Based on the monster speech patch by Matt Graham,
void get_screen_size | ( | int * | wid_p, |
int * | hgt_p | ||
) |
現在のコンソール表示の縦横を返す。 / Get term size and calculate screen size
wid_p | コンソールの表示幅文字数を返す |
hgt_p | コンソールの表示行数を返す |
saved_floor_type* get_sf_ptr | ( | s16b | floor_id | ) |
保存フロアIDから参照ポインタを得る / Get a pointer for an item of the saved_floors array.
floor_id | 保存フロアID |
void get_table_name | ( | char * | out_string | ) |
ランダムな名前をアーティファクト銘として整形する。 / Create a name from random parts with quotes.
out_string | 作成した名を保管する参照ポインタ |
get_table_name_aux()ほぼ完全に実装を依存している。
void get_table_name_aux | ( | char * | out_string | ) |
各種語彙からランダムな名前を作成する / Create a name from random parts.
out_string | 作成した名を保管する参照ポインタ |
日本語の場合 aname_j.txt 英語の場合確率に応じて syllables 配列と elvish.txt を組み合わせる。
void get_table_sindarin | ( | char * | out_string | ) |
シンダリン銘をアーティファクト用に整形する。 / Make random Sindarin name with quotes
out_string | 作成した名を保管する参照ポインタ |
get_table_sindarin_aux()ほぼ完全に実装を依存している。
void get_table_sindarin_aux | ( | char * | out_string | ) |
ランダムなシンダリン銘を作成する / Make random Sindarin name
out_string | 作成した名を保管する参照ポインタ |
sname.txtが語幹の辞書となっている。
void get_virtues | ( | void | ) |
作成中のプレイヤーキャラクターに徳8種類を与える。 / Select virtues & reset values for a new character
職業に応じて1~4種が固定、種族に応じて1種類が与えられ、後は重複なくランダムに選択される。
void glow_deep_lava_and_bldg | ( | void | ) |
bool glyph_creation | ( | void | ) |
魔法のルーン生成処理(プレイヤー中心に周囲1マス)
void handle_stuff | ( | void | ) |
全更新処理をチェックして処理していく Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window"
bool hates_acid | ( | object_type * | o_ptr | ) |
アイテムが酸で破損するかどうかを判定する
o_ptr | アイテムの情報参照ポインタ |
bool hates_cold | ( | object_type * | o_ptr | ) |
アイテムが冷気で破損するかどうかを判定する / Does a given object (usually) hate cold?
o_ptr | アイテムの情報参照ポインタ |
bool hates_elec | ( | object_type * | o_ptr | ) |
アイテムが電撃で破損するかどうかを判定する / Does a given object (usually) hate electricity?
o_ptr | アイテムの情報参照ポインタ |
bool hates_fire | ( | object_type * | o_ptr | ) |
アイテムが火炎で破損するかどうかを判定する / Does a given object (usually) hate fire?
o_ptr | アイテムの情報参照ポインタ |
Hafted/Polearm weapons have wooden shafts. Arrows/Bows are mostly wooden.
bool heal_monster | ( | int | dir, |
int | dam | ||
) |
モンスター回復処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
void health_track | ( | int | m_idx | ) |
bool heavy_armor | ( | void | ) |
プレイヤーが防具重量制限のある職業時にペナルティを受ける状態にあるかどうかを返す。
bool hex_spell_fully | ( | void | ) |
プレイヤーの呪術詠唱枠がすでに最大かどうかを返す
void hissatsu_info | ( | char * | p, |
int | power | ||
) |
bool hp_player | ( | int | num | ) |
アイテム鑑定のメインルーチン処理 / Identify an object in the inventory (or on the floor)
only_equip | 装備品のみを対象とするならばTRUEを返す |
This routine does not automatically combine objects. Returns TRUE if something was identified, else FALSE.
アイテム*鑑定*のメインルーチン処理 / Identify an object in the inventory (or on the floor)
only_equip | 装備品のみを対象とするならばTRUEを返す |
Fully "identify" an object in the inventory -BEN- This routine returns TRUE if an item was identified.
bool identify_item | ( | object_type * | o_ptr | ) |
アイテム鑑定処理 / Identify an object
o_ptr | 鑑定されるアイテムの情報参照ポインタ |
void identify_pack | ( | void | ) |
全所持アイテム鑑定処理 / Identify everything being carried.
Done by a potion of "self knowledge".
bool in_disintegration_range | ( | int | y1, |
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
bool inc_stat | ( | int | stat | ) |
プレイヤーの基本能力値を増加させる / Increases a stat by one randomized level -RAK-
stat | 上昇させるステータスID |
Note that this function (used by stat potions) now restores
the stat BEFORE increasing it.
char index_to_label | ( | int | i | ) |
オブジェクト選択時の選択アルファベットラベルを返す / Convert an inventory index into a one character label
i | プレイヤーの所持/装備オブジェクトID |
Note that the label does NOT distinguish inven/equip.
void init_angband | ( | void | ) |
全ゲームデータ読み込みのメインルーチン / Hack – main Angband initialization entry point
XXX XXX XXX This function is "messy" because various things may or may not be initialized, but the "plog()" and "quit()" functions are "supposed" to work under any conditions. Verify some files, display the "news.txt" file, create the high score file, initialize all internal arrays, and load the basic "user pref files". Be very careful to keep track of the order in which things are initialized, in particular, the only thing known to be available when this function is called is the "z-term.c" package, and that may not be fully initialized until the end of this function, when the default "user pref files" are loaded and "Term_xtra(TERM_XTRA_REACT,0)" is called. Note that this function attempts to verify the "news" file, and the game aborts (cleanly) on failure, since without the "news" file, it is likely that the "lib" folder has not been correctly located. Otherwise, the news file is displayed for the user. Note that this function attempts to verify (or create) the "high score" file, and the game aborts (cleanly) on failure, since one of the most common "extraction" failures involves failing to extract all sub-directories (even empty ones), such as by failing to use the "-d" option of "pkunzip", or failing to use the "save empty directories" option with "Compact Pro". This error will often be caught by the "high score" creation code below, since the "lib/apex" directory, being empty in the standard distributions, is most likely to be "lost", making it impossible to create the high score file. Note that various things are initialized by this function, including everything that was once done by "init_some_arrays". This initialization involves the parsing of special files in the "lib/data" and sometimes the "lib/edit" directories. Note that the "template" files are initialized first, since they often contain errors. This means that macros and message recall and things like that are not available until after they are done. We load the default "user pref files" here in case any "color" changes are needed before character creation. Note that the "graf-xxx.prf" file must be loaded separately, if needed, in the first (?) pass through "TERM_XTRA_REACT".
errr init_buildings | ( | void | ) |
店情報初期化のメインルーチン / Initialize buildings
void init_file_paths | ( | char * | path | ) |
各データファイルを読み取るためのパスを取得する Find the default paths to all of our important sub-directories.
path | パス保管先の文字列 |
The purpose of each sub-directory is described in "variable.c". All of the sub-directories should, by default, be located inside the main "lib" directory, whose location is very system dependant. This function takes a writable buffer, initially containing the "path" to the "lib" directory, for example, "/pkg/lib/angband/", or a system dependant string, for example, ":lib:". The buffer must be large enough to contain at least 32 more characters. Various command line options may allow some of the important directories to be changed to user-specified directories, most importantly, the "info" and "user" and "save" directories, but this is done after this function, see "main.c". In general, the initial path should end in the appropriate "PATH_SEP" string. All of the "sub-directory" paths (created below or supplied by the user) will NOT end in the "PATH_SEP" string, see the special "path_build()" function in "util.c" for more information. Mega-Hack – support fat raw files under NEXTSTEP, using special "suffixed" directories for the "ANGBAND_DIR_DATA" directory, but requiring the directories to be created by hand by the user. Hack – first we free all the strings, since this is known to succeed even if the strings have not been allocated yet, as long as the variables start out as "NULL". This allows this function to be called multiple times, for example, to try several base "path" values until a good one is found.
void init_normal_traps | ( | void | ) |
タグに従って、基本トラップテーブルを初期化する / Initialize arrays for normal traps
void init_saved_floors | ( | bool | force | ) |
保存フロア配列を初期化する / Initialize saved_floors array.
force | テンポラリファイルが残っていた場合も警告なしで強制的に削除する。 |
Make sure that old temporal files are not remaining as gurbages.
errr init_v_info | ( | void | ) |
Vault情報読み込みのメインルーチン / Initialize the "v_info" array.
errr init_wilderness | ( | void | ) |
ゲーム開始時の荒野初期化メインルーチン / Initialize wilderness array
void init_wilderness_terrains | ( | void | ) |
荒野の地勢設定全体を初期化するメインルーチン / Initialize arrays for wilderness terrains
char inkey | ( | void | ) |
int inkey_special | ( | bool | numpad_cursor | ) |
s16b inven_carry | ( | object_type * | o_ptr | ) |
オブジェクトをプレイヤーが拾って所持スロットに納めるメインルーチン / Add an item to the players inventory, and return the slot used.
o_ptr | 拾うオブジェクトの構造体参照ポインタ |
If the new item can combine with an existing item in the inventory,
it will do so, using "object_similar()" and "object_absorb()", else,
the item will be placed into the "proper" location in the inventory.
This function can be used to "over-fill" the player's pack, but only
once, and such an action must trigger the "overflow" code immediately.
Note that when the pack is being "over-filled", the new item must be
placed into the "overflow" slot, and the "overflow" must take place
before the pack is reordered, but (optionally) after the pack is
combined. This may be tricky. See "dungeon.c" for info.
Note that this code must remove any location/stack information
from the object once it is placed into the inventory.
bool inven_carry_okay | ( | object_type * | o_ptr | ) |
アイテムを拾う際にザックから溢れずに済むかを判定する / Check if we have space for an item in the pack without overflow
o_ptr | 拾いたいオブジェクトの構造体参照ポインタ |
int inven_damage | ( | inven_func | typ, |
int | perc | ||
) |
アイテムが指定確率で破損するかどうかを判定する / Destroys a type of item on a given percent chance
typ | 破損判定関数ポインタ |
perc | 基本確率 |
Note that missiles are no longer necessarily all destroyed Destruction taken from "melee.c" code for "stealing". New-style wands and rods handled correctly. -LM- Returns number of items destroyed.
void inven_drop | ( | int | item, |
int | amt | ||
) |
所持スロットから床下にオブジェクトを落とすメインルーチン / Drop (some of) a non-cursed inventory/equipment item
item | 所持テーブルのID |
amt | 落としたい個数 |
The object will be dropped "near" the current location
void inven_item_charges | ( | int | item | ) |
魔道具の使用回数の残量を示すメッセージを表示する / Describe the charges on an item in the inventory.
item | 残量を表示したいプレイヤーのアイテム所持スロット |
void inven_item_describe | ( | int | item | ) |
アイテムの残り所持数メッセージを表示する / Describe an item in the inventory.
item | 残量を表示したいプレイヤーのアイテム所持スロット |
void inven_item_increase | ( | int | item, |
int | num | ||
) |
アイテムの残り所持数メッセージを表示する / Increase the "number" of an item in the inventory
item | 所持数を増やしたいプレイヤーのアイテム所持スロット |
num | 増やしたい量 |
void inven_item_optimize | ( | int | item | ) |
所持アイテムスロットから所持数のなくなったアイテムを消去する / Erase an inventory slot if it has no more items
item | 消去したいプレイヤーのアイテム所持スロット |
s16b inven_takeoff | ( | int | item, |
int | amt | ||
) |
装備スロットからオブジェクトを外すメインルーチン / Take off (some of) a non-cursed equipment item
item | オブジェクトを外したい所持テーブルのID |
amt | 外したい個数 |
Note that only one item at a time can be wielded per slot.
Note that taking off an item when "full" may cause that item
to fall to the ground.
Return the inventory slot into which the item is placed.
bool is_a_vowel | ( | int | ch | ) |
int is_autopick | ( | object_type * | o_ptr | ) |
bool is_closed_door | ( | int | feat | ) |
地形が閉じたドアであるかの判定を行う。 / Return TRUE if the given grid is a closed door
feat | 地形情報のID |
bool is_daytime | ( | void | ) |
ゲーム時間が日中かどうかを返す / Whether daytime or not
bool is_heavy_shoot | ( | object_type * | o_ptr | ) |
射撃武器がプレイヤーにとって重すぎるかどうかの判定 /
o_ptr | 判定する射撃武器のアイテム情報参照ポインタ |
マスに隠されたドアがあるかの判定を行う。 / Return TRUE if the given grid is a hidden closed door
c_ptr | マス構造体の参照ポインタ |
マスに看破済みの罠があるかの判定を行う。 / Return TRUE if the given grid is a known trap
c_ptr | マス構造体の参照ポインタ |
bool is_trap | ( | int | feat | ) |
地形が罠持ちであるかの判定を行う。 / Return TRUE if the given feature is a trap
feat | 地形情報のID |
cptr item_activation | ( | object_type * | o_ptr | ) |
オブジェクトの発動効果名称を返す(メインルーチン) / Determine the "Activation" (if any) for an artifact Return a string, or NULL for "no activation"
o_ptr | 名称を取得する元のオブジェクト構造体参照ポインタ |
bool item_tester_hook_recharge | ( | object_type * | o_ptr | ) |
魔力充填が可能なアイテムかどうか判定する / Hook for "get_item()".
Determine if something is rechargable.
o_ptr | 判定するアイテムの情報参照ポインタ |
bool item_tester_okay | ( | object_type * | o_ptr | ) |
アイテムがitem_tester_hookグローバル関数ポインタの条件を満たしているかを返す汎用関数 Check an item against the item tester info
o_ptr | 判定を行いたいオブジェクト構造体参照ポインタ |
void kamaenaoshi | ( | int | item | ) |
持ち替え処理
item | 持ち替えを行いたい装備部位ID |
変わり身処理
success | 判定成功上の処理ならばTRUE |
void kingly | ( | void | ) |
勝利者用の引退演出処理 / Change the player into a King! -RAK-
s16b label_to_equip | ( | int | c | ) |
選択アルファベットラベルからプレイヤーの装備オブジェクトIDを返す / Convert a label into the index of a item in the "equip"
s16b label_to_inven | ( | int | c | ) |
選択アルファベットラベルからプレイヤーの所持オブジェクトIDを返す / Convert a label into the index of an item in the "inven"
Note that the label does NOT distinguish inven/equip.
void learn_spell | ( | int | monspell | ) |
青魔法のラーニング判定と成功した場合のラーニング処理
monspell | ラーニングを試みるモンスター攻撃のID |
void leave_floor | ( | void | ) |
現在のフロアを離れるに伴って行なわれる保存処理 / Maintain quest monsters, mark next floor_id at stairs, save current floor, and prepare to enter next floor.
void leave_level | ( | int | level | ) |
void leave_quest_check | ( | void | ) |
クエスト階層から離脱する際の処理
void leave_tower_check | ( | void | ) |
「塔」クエストの各階層から離脱する際の処理
bool lite_area | ( | int | dam, |
int | rad | ||
) |
プレイヤー位置を中心にLITE_WEAK属性を通じた照明処理を行う / Hack – call light around the player Affect all monsters in the projection radius
dam | 威力 |
rad | 効果半径 |
bool lite_line | ( | int | dir, |
int | dam | ||
) |
LITE_WEAK属性による光源ビーム処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
void lite_room | ( | int | y1, |
int | x1 | ||
) |
指定された部屋内を照らす / Illuminate any room containing the given location.
y1 | 指定Y座標 |
x1 | 指定X座標 |
void lite_spot | ( | int | y, |
int | x | ||
) |
bool load_floor | ( | saved_floor_type * | sf_ptr, |
u32b | mode | ||
) |
一時保存フロア情報を読み込む / Attempt to load the temporally saved-floor data
sf_ptr | 保存フロア読み込み先 |
mode | オプション |
bool load_player | ( | void | ) |
セーブデータ読み込みのメインルーチン / Attempt to Load a "savefile"
Version 2.7.0 introduced a slightly different "savefile" format from older versions, requiring a completely different parsing method.
Note that savefiles from 2.7.0 - 2.7.2 are completely obsolete.
Pre-2.8.0 savefiles lose some data, see "load2.c" for info.
Pre-2.7.0 savefiles lose a lot of things, see "load1.c" for info.
On multi-user systems, you may only "read" a savefile if you will be allowed to "write" it later, this prevents painful situations in which the player loads a savefile belonging to someone else, and then is not allowed to save his game when he quits.
We return "TRUE" if the savefile was usable, and we set the global flag "character_loaded" if a real, living, character was loaded.
Note that we always try to load the "current" savefile, even if there is no such file, so we must check for "empty" savefile names.
cptr look_mon_desc | ( | monster_type * | m_ptr, |
u32b | mode | ||
) |
s16b lookup_kind | ( | int | tval, |
int | sval | ||
) |
tvalとsvalに対応するベースアイテムのIDを返す。 Find the index of the object_kind with the given tval and sval
tval | 検索したいベースアイテムのtval |
sval | 検索したいベースアイテムのsval |
int lore_do_probe | ( | int | r_idx | ) |
モンスターの調査による思い出補完処理 / Learn about a monster (by "probing" it)
r_idx | 補完されるモンスター種族ID |
Return the number of new flags learnt. -Mogami-
void lore_treasure | ( | int | m_idx, |
int | num_item, | ||
int | num_gold | ||
) |
モンスターの撃破に伴うドロップ情報の保管処理 / Take note that the given monster just dropped some treasure
m_idx | モンスター情報のID |
num_item | 手に入れたアイテム数 |
num_gold | 手に入れた財宝の単位数 |
Note that learning the "GOOD"/"GREAT" flags gives information about the treasure (even when the monster is killed for the first time, such as uniques, and the treasure has not been examined yet).
This "indirect" method is used to prevent the player from learning exactly how much treasure a monster can drop from observing only a single example of a drop. This method actually observes how much gold and items are dropped, and remembers that information to be described later by the monster recall code.
bool los | ( | int | y1, |
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
LOS(Line Of Sight / 視線が通っているか)の判定を行う。
y1 | 始点のy座標 |
x1 | 始点のx座標 |
y2 | 終点のy座標 |
x2 | 終点のx座標 |
A simple, fast, integer-based line-of-sight algorithm. By Joseph Hall,
4116 Brewster Drive, Raleigh NC 27606. Email to jnh@e. cemw l.ncs u.ed u
Returns TRUE if a line of sight can be traced from (x1,y1) to (x2,y2).
The LOS begins at the center of the tile (x1,y1) and ends at the center of
the tile (x2,y2). If los() is to return TRUE, all of the tiles this line
passes through must be floor tiles, except for (x1,y1) and (x2,y2).
We assume that the "mathematical corner" of a non-floor tile does not
block line of sight.
Because this function uses (short) ints for all calculations, overflow may
occur if dx and dy exceed 90.
Once all the degenerate cases are eliminated, the values "qx", "qy", and
"m" are multiplied by a scale factor "f1 = abs(dx * dy * 2)", so that
we can use integer arithmetic.
We travel from start to finish along the longer axis, starting at the border
between the first and second tiles, where the y offset = .5 * slope, taking
into account the scale factor. See below.
Also note that this function and the "move towards target" code do NOT
share the same properties. Thus, you can see someone, target them, and
then fire a bolt at them, but the bolt may hit a wall, not them. However
, by clever choice of target locations, you can sometimes throw a "curve".
Note that "line of sight" is not "reflexive" in all cases.
Use the "projectable()" routine to test "spell/missile line of sight".
Use the "update_view()" function to determine player line-of-sight.
bool lose_all_info | ( | void | ) |
void lose_exp | ( | s32b | amount | ) |
bool lose_mutation | ( | int | choose_mut | ) |
プレイヤーから突然変異を取り除く
choose_mut | 取り除きたい突然変異のID、0ならばランダムに消去 |
s16b m_bonus | ( | int | max, |
int | level | ||
) |
上質以上のオブジェクトに与えるための各種ボーナスを正規乱数も加えて算出する。 Help determine an "enchantment bonus" for an object.
max | ボーナス値の限度 |
level | ボーナス値に加味する基準生成階 |
To avoid floating point but still provide a smooth distribution of bonuses,
we simply round the results of division in such a way as to "average" the
correct floating point value.
This function has been changed. It uses "randnor()" to choose values from
a normal distribution, whose mean moves from zero towards the max as the
level increases, and whose standard deviation is equal to 1/4 of the max,
and whose values are forced to lie between zero and the max, inclusive.
Since the "level" rarely passes 100 before Morgoth is dead, it is very
rare to get the "full" enchantment on an object, even a deep levels.
It is always possible (albeit unlikely) to get the "full" enchantment.
A sample distribution of values from "m_bonus(10, N)" is shown below:
N 0 1 2 3 4 5 6 7 8 9 10
— -— -— -— -— -— -— -— -— -— -— -—
0 66.37 13.01 9.73 5.47 2.89 1.31 0.72 0.26 0.12 0.09 0.03
8 46.85 24.66 12.13 8.13 4.20 2.30 1.05 0.36 0.19 0.08 0.05
16 30.12 27.62 18.52 10.52 6.34 3.52 1.95 0.90 0.31 0.15 0.05
24 22.44 15.62 30.14 12.92 8.55 5.30 2.39 1.63 0.62 0.28 0.11
32 16.23 11.43 23.01 22.31 11.19 7.18 4.46 2.13 1.20 0.45 0.41
40 10.76 8.91 12.80 29.51 16.00 9.69 5.90 3.43 1.47 0.88 0.65
48 7.28 6.81 10.51 18.27 27.57 11.76 7.85 4.99 2.80 1.22 0.94
56 4.41 4.73 8.52 11.96 24.94 19.78 11.06 7.18 3.68 1.96 1.78
64 2.81 3.07 5.65 9.17 13.01 31.57 13.70 9.30 6.04 3.04 2.64
72 1.87 1.99 3.68 7.15 10.56 20.24 25.78 12.17 7.52 4.42 4.62
80 1.02 1.23 2.78 4.75 8.37 12.04 27.61 18.07 10.28 6.52 7.33
88 0.70 0.57 1.56 3.12 6.34 10.06 15.76 30.46 12.58 8.47 10.38
96 0.27 0.60 1.25 2.28 4.30 7.60 10.77 22.52 22.51 11.37 16.53
104 0.22 0.42 0.77 1.36 2.62 5.33 8.93 13.05 29.54 15.23 22.53
112 0.15 0.20 0.56 0.87 2.00 3.83 6.86 10.06 17.89 27.31 30.27
120 0.03 0.11 0.31 0.46 1.31 2.48 4.60 7.78 11.67 25.53 45.72
128 0.02 0.01 0.13 0.33 0.83 1.41 3.24 6.17 9.57 14.22 64.07
s16b m_pop | ( | void | ) |
モンスター配列の空きを探す / Acquires and returns the index of a "free" monster.
This routine should almost never fail, but it can happen.
bool magic_barrier | ( | int | m_idx | ) |
反魔法結界の判定
m_idx | 判定の対象となるモンスターID |
bool make_attack_normal | ( | int | m_idx | ) |
モンスターからプレイヤーへの打撃処理 / Attack the player via physical attacks.
m_idx | 打撃を行うモンスターのID |
bool make_attack_spell | ( | int | m_idx | ) |
モンスターの特殊技能メインルーチン / Creatures can cast spells, shoot missiles, and breathe.
m_idx | モンスター構造体配列のID |
Returns "TRUE" if a spell (or whatever) was (successfully) cast.
XXX XXX XXX This function could use some work, but remember to
keep it as optimized as possible, while retaining generic code.
Verify the various "blind-ness" checks in the code.
XXX XXX XXX Note that several effects should really not be "seen"
if the player is blind. See also "effects.c" for other "mistakes".
Perhaps monsters should breathe at locations near the player,
since this would allow them to inflict "partial" damage.
Perhaps smart monsters should decline to use "bolt" spells if
there is a monster in the way, unless they wish to kill it.
Note that, to allow the use of the "track_target" option at some
later time, certain non-optimal things are done in the code below,
including explicit checks against the "direct" variable, which is
currently always true by the time it is checked, but which should
really be set according to an explicit "projectable()" test, and
the use of generic "x,y" locations instead of the player location,
with those values being initialized with the player location.
It will not be possible to "correctly" handle the case in which a
monster attempts to attack a location which is thought to contain
the player, but which in fact is nowhere near the player, since this
might induce all sorts of messages about the attack itself, and about
the effects of the attack, which the player might or might not be in
a position to observe. Thus, for simplicity, it is probably best to
only allow "faulty" attacks by a monster if one of the important grids
(probably the initial or final grid) is in fact in view of the player.
It may be necessary to actually prevent spell attacks except when the
monster actually has line of sight to the player. Note that a monster
could be left in a bizarre situation after the player ducked behind a
pillar and then teleported away, for example.
errr make_character_dump | ( | FILE * | fff | ) |
ダンプ出力のメインルーチン Output the character dump to a file
fff | ファイルポインタ |
bool make_gold | ( | object_type * | j_ptr | ) |
生成階に応じた財宝オブジェクトの生成を行う。 Make a treasure object
j_ptr | 生成結果を収めたいオブジェクト構造体の参照ポインタ |
The location must be a legal, clean, floor grid.
bool make_object | ( | object_type * | j_ptr, |
u32b | mode | ||
) |
生成階に応じたベースアイテムの生成を行う。 Attempt to make an object (normal or good/great)
j_ptr | 生成結果を収めたいオブジェクト構造体の参照ポインタ |
mode | オプションフラグ |
This routine plays nasty games to generate the "special artifacts".
This routine uses "object_level" for the "generation level".
We assume that the given object has been "wiped".
void map_area | ( | int | range | ) |
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 "cave.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
cptr map_name | ( | void | ) |
現在のマップ名を返す /
モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) monsters
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
アンデッド・モンスターへの周辺抹殺処理ルーチン / Delete all nearby (non-unique) undead
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
void massacre | ( | int | py, |
int | px | ||
) |
皆殺し(全方向攻撃)処理
py | プレイヤーY座標 |
px | プレイヤーX座標 |
cptr mention_use | ( | int | i | ) |
所持/装備オブジェクトIDの部位表現を返す / Return a string mentioning how a given item is carried
i | 部位表現を求めるプレイヤーの所持/装備オブジェクトID |
void message_add | ( | cptr | msg | ) |
s16b message_num | ( | void | ) |
void message_pain | ( | int | m_idx, |
int | dam | ||
) |
ダメージを受けたモンスターの様子を記述する / Dump a message describing a monster's reaction to damage
m_idx | モンスター情報ID |
dam | 与えたダメージ |
Technically should attempt to treat "Beholder"'s as jelly's
cptr message_str | ( | int | age | ) |
bool mindblast_monsters | ( | int | dam | ) |
モンスター精神攻撃効果(プレイヤー視界範囲内) / Mindblast monsters
dam | 効力 |
void mindcraft_info | ( | char * | p, |
int | use_mind, | ||
int | power | ||
) |
特殊技能の効果情報をまとめたフォーマットを返す
p | 情報を返す文字列参照ポインタ |
use_mind | 職業毎の特殊技能ID |
power | モンスター魔法のID |
bool mirror_tunnel | ( | void | ) |
鏡抜け処理のメインルーチン / Mirror Master's Dimension Door
void mmove2 | ( | int * | y, |
int * | x, | ||
int | y1, | ||
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
int mod_need_mana | ( | int | need_mana, |
int | spell, | ||
int | realm | ||
) |
呪文の消費MPを返す / Modify mana consumption rate using spell exp and p_ptr->dec_mana
need_mana | 基本消費MP |
spell | 呪文ID |
realm | 魔法領域 |
int mod_spell_chance_1 | ( | int | chance | ) |
呪文の失敗率修正処理1(呪い、消費魔力減少、呪文簡易化) / Modify spell fail rate Using p_ptr->to_m_chance, p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell
chance | 修正前失敗率 |
int mod_spell_chance_2 | ( | int | chance | ) |
呪文の失敗率修正処理2(消費魔力減少、呪い、負値修正) / Modify spell fail rate Using p_ptr->to_m_chance, p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell
chance | 修正前失敗率 |
s16b modify_stat_value | ( | int | value, |
int | amount | ||
) |
能力値現在値から3~17及び18/xxx様式に基づく加減算を行う。 Modify a stat value by a "modifier", return new value
value | 現在値 |
amount | 加減算値 |
Stats go up: 3,4,...,17,18,18/10,18/20,...,18/220 Or even: 18/13, 18/23, 18/33, ..., 18/220 Stats go down: 18/220, 18/210,..., 18/10, 18, 17, ..., 3 Or even: 18/13, 18/03, 18, 17, ..., 3
int mon_damage_mod | ( | monster_type * | m_ptr, |
int | dam, | ||
bool | is_psy_spear | ||
) |
モンスターに与えたダメージの修正処理 / Modify the physical damage done to the monster.
m_ptr | ダメージを受けるモンスターの構造体参照ポインタ |
dam | ダメージ基本値 |
is_psy_spear | 攻撃手段が光の剣ならばTRUE |
(for example when it's invulnerable or shielded) ToDo: Accept a damage-type to calculate the modified damage from things like fire, frost, lightning, poison, ... attacks. "type" is not yet used and should be 0.
bool mon_hook_dungeon | ( | int | r_idx | ) |
モンスターがダンジョンに出現するかどうかを返す
r_idx | 判定するモンスターの種族ID |
モンスターのHPをダメージに応じて減算する / Decreases monsters hit points, handling monster death.
dam | 与えたダメージ量 |
m_idx | ダメージを与えたモンスターのID |
fear | ダメージによってモンスターが恐慌状態に陥ったならばTRUEを返す |
note | モンスターが倒された際の特別なメッセージ述語 |
We return TRUE if the monster has been killed (and deleted). We announce monster death (using an optional "death message" if given, and a otherwise a generic killed/destroyed message). Only "physical attacks" can induce the "You have slain" message. Missile and Spell attacks will induce the "dies" message, or various "specialized" messages. Note that "You have destroyed" and "is destroyed" are synonyms for "You have slain" and "dies". Hack – unseen monsters yield "You have killed it." message. Added fear (DGK) and check whether to print fear messages -CWS Made name, sex, and capitalization generic -BEN- As always, the "ghost" processing is a total hack. Hack – we "delay" fear messages by passing around a "fear" flag. XXX XXX XXX Consider decreasing monster experience over time, say, by using "(m_exp * m_lev * (m_lev)) / (p_lev * (m_lev + n_killed))" instead of simply "(m_exp * m_lev) / (p_lev)", to make the first monster worth more than subsequent monsters. This would also need to induce changes in the monster recall code.
モンスターが敵モンスターに行う打撃処理 / Hack, based on mon_take_hit...
perhaps all monster attacks on other monsters should use this?
m_idx | 目標となるモンスターの参照ID |
dam | ダメージ量 |
fear | 目標となるモンスターの恐慌状態を返す参照ポインタ |
note | 目標モンスターが死亡した場合の特別メッセージ(NULLならば標準表示を行う) |
who | 打撃を行ったモンスターの参照ID |
int monspell_bluemage_damage | ( | int | SPELL_NUM, |
int | plev, | ||
int | TYPE | ||
) |
青魔導師の使う呪文の威力を返す /
SPELL_NUM | 呪文番号 |
plev | 使用するレベル。2倍して扱う。 |
TYPE | DAM_MAXで最大値を返し、DAM_MINで最小値を返す。DAM_ROLLはダイスを振って値を決定する。 |
int monspell_damage | ( | int | SPELL_NUM, |
int | m_idx, | ||
int | TYPE | ||
) |
モンスターの使う呪文の威力を返す /
SPELL_NUM | 呪文番号 |
m_idx | 呪文を唱えるモンスターID |
TYPE | DAM_MAXで最大値を返し、DAM_MINで最小値を返す。DAM_ROLLはダイスを振って値を決定する。 |
int monspell_race_damage | ( | int | SPELL_NUM, |
int | r_idx, | ||
int | TYPE | ||
) |
モンスターの使う呪文の威力を返す /
SPELL_NUM | 呪文番号 |
r_idx | 呪文を唱えるモンスターの種族ID |
TYPE | DAM_MAXで最大値を返し、DAM_MINで最小値を返す。DAM_ROLLはダイスを振って値を決定する。 |
int monspell_to_monster | ( | int | SPELL_NUM, |
int | y, | ||
int | x, | ||
int | m_idx, | ||
int | t_idx | ||
) |
モンスターからモンスターへの呪文の振り分け関数。 /
SPELL_NUM | モンスター魔法ID |
y | 対象の地点のy座標 |
x | 対象の地点のx座標 |
m_idx | 呪文を唱えるモンスターID |
t_idx | 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。 |
int monspell_to_player | ( | int | SPELL_NUM, |
int | y, | ||
int | x, | ||
int | m_idx | ||
) |
モンスターからプレイヤーへの呪文の振り分け関数。 /
SPELL_NUM | モンスター魔法ID |
y | 対象の地点のy座標 |
x | 対象の地点のx座標 |
m_idx | 呪文を唱えるモンスターID |
bool monst_spell_monst | ( | int | m_idx | ) |
モンスターが敵モンスターに特殊能力を使う処理のメインルーチン / Monster tries to 'cast a spell' (or breath, etc) at another monster.
m_idx | 術者のモンスターID |
The player is only disturbed if able to be affected by the spell.
bool monster_can_cross_terrain | ( | s16b | feat, |
monster_race * | r_ptr, | ||
u16b | mode | ||
) |
モンスターが地形を踏破できるかどうかを返す Check if monster can cross terrain
feat | 地形ID |
r_ptr | モンスター種族構造体の参照ポインタ |
mode | オプション |
bool monster_can_enter | ( | int | y, |
int | x, | ||
monster_race * | r_ptr, | ||
u16b | mode | ||
) |
指定された座標の地形をモンスターが踏破できるかどうかを返す Strictly check if monster can enter the grid
y | 地形のY座標 |
x | 地形のX座標 |
r_ptr | モンスター種族構造体の参照ポインタ |
mode | オプション |
void monster_death | ( | int | m_idx, |
bool | drop_item | ||
) |
モンスターが死亡した時の処理 / Handle the "death" of a monster.
m_idx | 死亡したモンスターのID |
drop_item | TRUEならばモンスターのドロップ処理を行う |
Disperse treasures centered at the monster location based on the various flags contained in the monster flags fields. Check for "Quest" completion when a quest monster is killed. Note that only the player can induce "monster_death()" on Uniques. Thus (for now) all Quest monsters should be Uniques. Note that monsters can now carry objects, and when a monster dies, it drops all of its objects, which may disappear in crowded rooms.
void monster_desc | ( | char * | desc, |
monster_type * | m_ptr, | ||
int | mode | ||
) |
モンスターの呼称を作成する / Build a string describing a monster in some way.
desc | 記述出力先の文字列参照ポインタ |
m_ptr | モンスターの参照ポインタ |
mode | 呼称オプション |
We can correctly describe monsters based on their visibility. We can force all monsters to be treated as visible or invisible. We can build nominatives, objectives, possessives, or reflexives. We can selectively pronominalize hidden, visible, or all monsters. We can use definite or indefinite descriptions for hidden monsters. We can use definite or indefinite descriptions for visible monsters.
Pronominalization involves the gender whenever possible and allowed, so that by cleverly requesting pronominalization / visibility, you can get messages like "You hit someone. She screams in agony!".
Reflexives are acquired by requesting Objective plus Possessive.
If no m_ptr arg is given (?), the monster is assumed to be hidden, unless the "Assume Visible" mode is requested.
If no r_ptr arg is given, it is extracted from m_ptr and r_info If neither m_ptr nor r_ptr is given, the monster is assumed to be neuter, singular, and hidden (unless "Assume Visible" is set), in which case you may be in trouble... :-)
I am assuming that no monster name is more than 70 characters long, so that "char desc[80];" is sufficiently large for any result.
Mode Flags: MD_OBJECTIVE –> Objective (or Reflexive) MD_POSSESSIVE –> Possessive (or Reflexive) MD_INDEF_HIDDEN –> Use indefinites for hidden monsters ("something") MD_INDEF_VISIBLE –> Use indefinites for visible monsters ("a kobold") MD_PRON_HIDDEN –> Pronominalize hidden monsters MD_PRON_VISIBLE –> Pronominalize visible monsters MD_ASSUME_HIDDEN –> Assume the monster is hidden MD_ASSUME_VISIBLE –> Assume the monster is visible MD_TRUE_NAME –> Chameleon's true name MD_IGNORE_HALLU –> Ignore hallucination, and penetrate shape change
Useful Modes: 0x00 –> Full nominative name ("the kobold") or "it" MD_INDEF_HIDDEN –> Full nominative name ("the kobold") or "something" MD_ASSUME_VISIBLE –> Genocide resistance name ("the kobold") MD_ASSUME_VISIBLE | MD_INDEF_VISIBLE –> Killing name ("a kobold") MD_PRON_VISIBLE | MD_POSSESSIVE –> Possessive, genderized if visable ("his") or "its" MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE –> Reflexive, genderized if visable ("himself") or "itself"
void monster_drop_carried_objects | ( | monster_type * | m_ptr | ) |
モンスターが盗みや拾いで確保していたアイテムを全てドロップさせる / Drop all items carried by a monster
m_ptr | モンスター参照ポインタ |
void monster_gain_exp | ( | int | m_idx, |
int | s_idx | ||
) |
モンスターの経験値取得処理
m_idx | 経験値を得るモンスターの参照ID |
s_idx | 撃破されたモンスター種族の参照ID |
bool monster_has_hostile_align | ( | monster_type * | m_ptr, |
int | pa_good, | ||
int | pa_evil, | ||
monster_race * | r_ptr | ||
) |
モンスターがプレイヤーに対して敵意を抱くかどうかを返す Check if this monster race has "hostile" alignment
m_ptr | モンスター情報構造体の参照ポインタ |
pa_good | プレイヤーの善傾向値 |
pa_evil | プレイヤーの悪傾向値 |
r_ptr | モンスター種族情報の構造体参照ポインタ |
If user is player, m_ptr == NULL.
bool monster_living | ( | monster_race * | r_ptr | ) |
モンスターが生命体かどうかを返す Is the monster "alive"?
r_ptr | 判定するモンスターの種族情報構造体参照ポインタ |
Used to determine the message to print for a killed monster. ("dies", "destroyed")
void monster_race_track | ( | int | r_idx | ) |
void move_cursor | ( | int | row, |
int | col | ||
) |
void move_cursor_relative | ( | int | row, |
int | col | ||
) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す / 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.
移動に伴うプレイヤーのステータス変化処理
ny | 移動先Y座標 |
nx | 移動先X座標 |
mpe_mode | 移動オプションフラグ |
void move_to_black_market | ( | object_type * | o_ptr | ) |
アイテムを町のブラックマーケットに移動させる /
o_ptr | 移動させたいオブジェクトの構造体参照ポインタ |
void mproc_init | ( | void | ) |
モンスターの時限ステータスリストを初期化する / Initialize monster process
void msg_format | ( | cptr | fmt, |
... | |||
) |
void msg_print | ( | cptr | msg | ) |
s16b mult_hissatsu | ( | int | mult, |
u32b * | flgs, | ||
monster_type * | m_ptr, | ||
int | mode | ||
) |
剣術のスレイ倍率計算を行う / Calcurate magnification of hissatsu technics
mult | 剣術のスレイ効果以前に算出している多要素の倍率(/10倍) |
flgs | 剣術に使用する武器のスレイフラグ配列 |
m_ptr | 目標となるモンスターの構造体参照ポインタ |
mode | 剣術のスレイ型ID |
bool multiply_barrier | ( | int | m_idx | ) |
反増殖結界の判定
m_idx | 判定の対象となるモンスターID |
モンスターを増殖生成する / Let the given monster attempt to reproduce.
m_idx | 増殖するモンスター情報ID |
clone | クローン・モンスター処理ならばtrue |
mode | 生成オプション |
Note that "reproduction" REQUIRES empty space.
アイテム凡庸化のメインルーチン処理 / Identify an object in the inventory (or on the floor)
only_equip | 装備品のみを対象とするならばTRUEを返す |
Mundanify an object in the inventory (or on the floor) This routine does not automatically combine objects. Returns TRUE if something was mundanified, else FALSE.
void mutate_player | ( | void | ) |
プレイヤーの突然変異処理
突然変異のレイシャル効果実装
errr my_fclose | ( | FILE * | fff | ) |
FILE* my_fopen_temp | ( | char * | buf, |
int | max | ||
) |
size_t my_strcat | ( | char * | buf, |
const char * | src, | ||
size_t | bufsize | ||
) |
char* my_strchr | ( | const char * | ptr, |
char | ch | ||
) |
size_t my_strcpy | ( | char * | buf, |
const char * | src, | ||
size_t | bufsize | ||
) |
char* my_strstr | ( | const char * | haystack, |
const char * | needle | ||
) |
bool no_lite | ( | void | ) |
指定された座標をプレイヤー収められていない状態かどうか / Returns true if the player's grid is dark
player_can_see_bold()関数の返り値の否定を返している。
bool no_questor_or_bounty_uniques | ( | int | r_idx | ) |
モンスターが特殊能力上、賞金首から排除する必要があるかどうかを返す。 Is the monster "alive"? / Is this monster declined to be questor or bounty?
r_idx | モンスターの種族ID |
実質バーノール=ルパート用。
void note_spot | ( | int | y, |
int | x | ||
) |
void notice_stuff | ( | void | ) |
p_ptr->notice のフラグに応じた更新をまとめて行う / Handle "p_ptr->notice"
更新処理の対象はアイテムの自動破壊/アイテムの結合/アイテムの並び替え。
s16b o_pop | ( | void | ) |
グローバルオブジェクト配列から空きを取得する / Acquires and returns the index of a "free" object.
This routine should almost never fail, but in case it does, we must be sure to handle "failure" of this routine.
void object_absorb | ( | object_type * | o_ptr, |
object_type * | j_ptr | ||
) |
両オブジェクトをスロットに重ね合わせる。 Allow one item to "absorb" another, assuming they are similar
o_ptr | 重ね合わせ先のオブジェクトの構造体参照ポインタ |
j_ptr | 重ね合わせ元のオブジェクトの構造体参照ポインタ |
bool object_allow_enchant_melee_weapon | ( | object_type * | o_ptr | ) |
オブジェクトが強化可能な近接武器であるかを返す / Check if an object is melee weapon and allows enchantment
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_allow_enchant_weapon | ( | object_type * | o_ptr | ) |
オブジェクトが強化可能武器であるかを返す / Check if an object is weapon (including bows and ammo) and allows enchantment
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_allow_two_hands_wielding | ( | object_type * | o_ptr | ) |
オブジェクトが両手持ち可能な武器かを返す / Check if an object is melee weapon and allows wielding with two-hands
o_ptr | 対象のオブジェクト構造体ポインタ |
void object_aware | ( | object_type * | o_ptr | ) |
オブジェクトを*鑑定*済にする / The player is now aware of the effects of the given object.
o_ptr | *鑑定*済にするオブジェクトの構造体参照ポインタ |
void object_copy | ( | object_type * | o_ptr, |
object_type * | j_ptr | ||
) |
オブジェクトを複製する Wipe an object clean.
o_ptr | 複製元のオブジェクトの構造体参照ポインタ |
j_ptr | 複製先のオブジェクトの構造体参照ポインタ |
void object_desc | ( | char * | buf, |
object_type * | o_ptr, | ||
u32b | mode | ||
) |
オブジェクトの各表記を返すメイン関数 / Creates a description of the item "o_ptr", and stores it in "out_val".
buf | 表記を返すための文字列参照ポインタ |
o_ptr | 特性短縮表記を得たいオブジェクト構造体の参照ポインタ |
mode | 表記に関するオプション指定 |
One can choose the "verbosity" of the description, including whether
or not the "number" of items should be described, and how much detail
should be used when describing the item.
The given "buf" must be MAX_NLEN chars long to hold the longest possible
description, which can get pretty long, including incriptions, such as:
"no more Maces of Disruption (Defender) (+10,+10) [+5] (+3 to stealth)".
Note that the inscription will be clipped to keep the total description
under MAX_NLEN-1 chars (plus a terminator).
Note the use of "object_desc_num()" and "object_desc_int()" as hyper-efficient,
portable, versions of some common "sprintf()" commands.
Note that all ego-items (when known) append an "Ego-Item Name", unless
the item is also an artifact, which should NEVER happen.
Note that all artifacts (when known) append an "Artifact Name", so we
have special processing for "Specials" (artifact Lites, Rings, Amulets).
The "Specials" never use "modifiers" if they are "known", since they
have special "descriptions", such as "The Necklace of the Dwarves".
Special Lite's use the "k_info" base-name (Phial, Star, or Arkenstone),
plus the artifact name, just like any other artifact, if known.
Special Ring's and Amulet's, if not "aware", use the same code as normal
rings and amulets, and if "aware", use the "k_info" base-name (Ring or
Amulet or Necklace). They will NEVER "append" the "k_info" name. But,
they will append the artifact name, just like any artifact, if known.
Hack – Display "The One Ring" as "a Plain Gold Ring" until aware.
Mode:
OD_NAME_ONLY : The Cloak of Death
OD_NAME_AND_ENCHANT : The Cloak of Death [1,+3]
OD_OMIT_INSCRIPTION : The Cloak of Death [1,+3] (+2 to Stealth)
0 : The Cloak of Death [1,+3] (+2 to Stealth) {nifty}
OD_OMIT_PREFIX : Forbidden numeric prefix
OD_NO_PLURAL : Forbidden use of plural
OD_STORE : Assume to be aware and known
OD_NO_FLAVOR : Allow to hidden flavor
OD_FORCE_FLAVOR : Get un-shuffled flavor name
char* object_desc_kosuu | ( | char * | t, |
object_type * | o_ptr | ||
) |
void object_flags | ( | object_type * | o_ptr, |
u32b | flgs[TR_FLAG_SIZE] | ||
) |
オブジェクトのフラグ類を配列に与える Obtain the "flags" for an item
o_ptr | フラグ取得元のオブジェクト構造体ポインタ |
flgs | フラグ情報を受け取る配列 |
void object_flags_known | ( | object_type * | o_ptr, |
u32b | flgs[TR_FLAG_SIZE] | ||
) |
オブジェクトの明示されているフラグ類を取得する Obtain the "flags" for an item which are known to the player
o_ptr | フラグ取得元のオブジェクト構造体ポインタ |
flgs | フラグ情報を受け取る配列 |
bool object_is_ammo | ( | object_type * | o_ptr | ) |
オブジェクトが矢弾として使用できるかどうかを返す / Check if an object is ammo
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_armour | ( | object_type * | o_ptr | ) |
オブジェクトが防具として装備できるかどうかを返す / Check if an object is armour
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_artifact | ( | object_type * | o_ptr | ) |
オブジェクトがアーティファクトかを返す / Check if an object is artifact
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_equipment | ( | object_type * | o_ptr | ) |
オブジェクトが装備品であるかを返す(object_is_wearableに矢弾を含む) / Equipment including all wearable objects and ammo
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_favorite | ( | object_type * | o_ptr | ) |
オブジェクトがプレイヤーの職業に応じた適正武器か否かを返す / Favorite weapons
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_melee_weapon | ( | object_type * | o_ptr | ) |
オブジェクトが近接武器として装備できるかを返す / Melee weapons
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_nameless | ( | object_type * | o_ptr | ) |
オブジェクトが通常のアイテム(アーティファクト、エゴ、鍛冶師エッセンス付加いずれでもない)かを返す / Check if an object is neither artifact, ego, nor 'smith' object
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_potion | ( | object_type * | o_ptr | ) |
オブジェクトが薬であるかを返す
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_quest_target | ( | object_type * | o_ptr | ) |
オブジェクトがクエストの達成目的か否かを返す。
o_ptr | 特性短縮表記を得たいオブジェクト構造体の参照ポインタ |
bool object_is_random_artifact | ( | object_type * | o_ptr | ) |
オブジェクトがランダムアーティファクトかを返す / Check if an object is random artifact
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_rare | ( | object_type * | o_ptr | ) |
オブジェクトがレアアイテムかどうかを返す / Rare weapons/aromors including Blade of Chaos, Dragon armors, etc.
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_shoukinkubi | ( | object_type * | o_ptr | ) |
オブジェクトが賞金首の報酬対象になるかを返す
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_smith | ( | object_type * | o_ptr | ) |
オブジェクトが鍛冶師のエッセンス付加済みかを返す / Check if an object is made by a smith's special ability
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_weapon | ( | object_type * | o_ptr | ) |
オブジェクトが武器として装備できるかどうかを返す / Check if an object is weapon (including bows and ammo)
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_weapon_ammo | ( | object_type * | o_ptr | ) |
オブジェクトが武器や矢弾として使用できるかを返す / Check if an object is weapon (including bows and ammo) Rare weapons/aromors including Blade of Chaos, Dragon armors, etc.
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_weapon_armour_ammo | ( | object_type * | o_ptr | ) |
オブジェクトが武器、防具、矢弾として使用できるかを返す / Check if an object is weapon, armour or ammo
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_is_wearable | ( | object_type * | o_ptr | ) |
オブジェクトが装備可能であるかを返す / Wearable including all weapon, all armour, bow, light source, amulet, and ring
o_ptr | 対象のオブジェクト構造体ポインタ |
void object_kind_track | ( | int | k_idx | ) |
void object_known | ( | object_type * | o_ptr | ) |
オブジェクトを鑑定済にする / Known is true when the "attributes" of an object are "known".
o_ptr | 鑑定済にするオブジェクトの構造体参照ポインタ |
void object_prep | ( | object_type * | o_ptr, |
int | k_idx | ||
) |
オブジェクト構造体にベースアイテムを作成する Prepare an object based on an object kind.
o_ptr | 代入したいオブジェクトの構造体参照ポインタ |
k_idx | 新たに作成したいベースアイテム情報のID |
bool object_refuse_enchant_weapon | ( | object_type * | o_ptr | ) |
オブジェクトが強化不能武器であるかを返す / Poison needle can not be enchanted
o_ptr | 対象のオブジェクト構造体ポインタ |
bool object_similar | ( | object_type * | o_ptr, |
object_type * | j_ptr | ||
) |
両オブジェクトをスロットに重ねることができるかどうかを返す。 Determine if an item can absorb a second item.
o_ptr | 検証したいオブジェクトの構造体参照ポインタ1 |
j_ptr | 検証したいオブジェクトの構造体参照ポインタ2 |
int object_similar_part | ( | object_type * | o_ptr, |
object_type * | j_ptr | ||
) |
両オブジェクトをスロットに重ね合わせ可能な最大数を返す。 Determine if an item can partly absorb a second item.
Return maximum number of stack.
o_ptr | 検証したいオブジェクトの構造体参照ポインタ1 |
j_ptr | 検証したいオブジェクトの構造体参照ポインタ2 |
bool object_sort_comp | ( | object_type * | o_ptr, |
s32b | o_value, | ||
object_type * | j_ptr | ||
) |
オブジェクトを定義された基準に従いソートするための関数 / Check if we have space for an item in the pack without overflow
o_ptr | 比較対象オブジェクトの構造体参照ポインタ1 |
o_value | o_ptrのアイテム価値(手動であらかじめ代入する必要がある?) |
j_ptr | 比較対象オブジェクトの構造体参照ポインタ2 |
void object_tried | ( | object_type * | o_ptr | ) |
オブジェクトを試行済にする / Something has been "sampled"
o_ptr | 試行済にするオブジェクトの構造体参照ポインタ |
s32b object_value | ( | object_type * | o_ptr | ) |
オブジェクト価格算出のメインルーチン / Return the price of an item including plusses (and charges)
o_ptr | 判明している現価格を確認したいオブジェクトの構造体参照ポインタ |
This function returns the "value" of the given item (qty one)
Never notice "unknown" bonuses or properties, including "curses",
since that would give the player information he did not have.
Note that discounted items stay discounted forever, even if
the discount is "forgotten" by the player via memory loss.
s32b object_value_real | ( | object_type * | o_ptr | ) |
オブジェクトの真の価格を算出する / Return the value of the flags the object has...
o_ptr | 本価格を確認したいオブジェクトの構造体参照ポインタ |
Return the "real" price of a "known" item, not including discounts
Wand and staffs get cost for each charge
Armor is worth an extra 100 gold per bonus point to armor class.
Weapons are worth an extra 100 gold per bonus point (AC,TH,TD).
Missiles are only worth 5 gold per bonus point, since they
usually appear in groups of 20, and we want the player to get
the same amount of cash for any "equivalent" item. Note that
missiles never have any of the "pval" flags, and in fact, they
only have a few of the available flags, primarily of the "slay"
and "brand" and "ignore" variety.
Armor with a negative armor bonus is worthless.
Weapons with negative hit+damage bonuses are worthless.
Every wearable item with a "pval" bonus is worth extra (see below).
void object_wipe | ( | object_type * | o_ptr | ) |
オブジェクトを初期化する Wipe an object clean.
o_ptr | 初期化したいオブジェクトの構造体参照ポインタ |
void one_ability | ( | object_type * | o_ptr | ) |
対象のオブジェクトに能力を一つ付加する。/ Choose one random ability
候補は浮遊、永久光源+1、透明視、警告、遅消化、急回復、麻痺知らず、経験値維持のいずれか。 重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_activation | ( | object_type * | o_ptr | ) |
対象のオブジェクトに発動を一つ付加する。/ Choose one random activation
候補多数。ランダムアーティファクトのバイアスには一切依存せず、 whileループによる構造で能力的に強力なものほど確率を落としている。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_dragon_ele_resistance | ( | object_type * | o_ptr | ) |
対象のオブジェクトにドラゴン装備向け元素耐性を一つ付加する。/ Choose one random element or poison resistance
候補は1/7の確率で毒、6/7の確率で火炎、冷気、電撃、酸のいずれか(one_ele_resistance()のコール)であり、重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_ele_resistance | ( | object_type * | o_ptr | ) |
対象のオブジェクトに元素耐性を一つ付加する。/ Choose one random element resistance
候補は火炎、冷気、電撃、酸のいずれかであり、重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_high_resistance | ( | object_type * | o_ptr | ) |
対象のオブジェクトにランダムな上位耐性を一つ付加する。/ Choose one random high resistance
重複の抑止はない。候補は毒、閃光、暗黒、破片、盲目、混乱、地獄、因果混乱、カオス、劣化、恐怖のいずれか。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_lordly_high_resistance | ( | object_type * | o_ptr | ) |
対象のオブジェクトに王者の指輪向けの上位耐性を一つ付加する。/ Choose one random high resistance
候補は閃光、暗黒、破片、盲目、混乱、地獄、因果混乱、カオス、恐怖であり 王者の指輪にあらかじめついている耐性をone_high_resistance()から除外したものである。 ランダム付加そのものに重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_low_esp | ( | object_type * | o_ptr | ) |
対象のオブジェクトに弱いESPを一つ付加する。/ Choose one lower rank esp
候補は動物、アンデッド、悪魔、オーク、トロル、巨人、 ドラゴン、人間、善良、ユニークESPのいずれかであり、重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_resistance | ( | object_type * | o_ptr | ) |
対象のオブジェクトに耐性を一つ付加する。/ Choose one random resistance
1/3で元素耐性(one_ele_resistance())、2/3で上位耐性(one_high_resistance) をコールする。重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
void one_sustain | ( | object_type * | o_ptr | ) |
対象のオブジェクトにランダムな能力維持を一つ付加する。/ Choose one random sustain
重複の抑止はない。
o_ptr | 対象のオブジェクト構造体ポインタ |
モンスター詳細情報を自動スポイラー向けに出力する / Hack – output description of the given monster race
r_idx | モンスターの種族ID |
roff_func | 出力処理を行う関数ポインタ |
void panel_bounds_center | ( | void | ) |
コンソール上におけるマップ表示の左上位置を返す / Calculates current boundaries Called below and from "do_cmd_locate()".
errr parse_line_wilderness | ( | char * | buf, |
int | ymin, | ||
int | xmin, | ||
int | ymax, | ||
int | xmax, | ||
int * | y, | ||
int * | x | ||
) |
w_info.txtのデータ解析 / Parse a sub-file of the "extra info"
buf | 読み取ったデータ行のバッファ |
ymin | 未使用 |
xmin | 広域地形マップを読み込みたいx座標の開始位置 |
ymax | 未使用 |
xmax | 広域地形マップを読み込みたいx座標の終了位置 |
y | 広域マップの高さを返す参照ポインタ |
x | 広域マップの幅を返す参照ポインタ |
bool pattern_seq | ( | int | c_y, |
int | c_x, | ||
int | n_y, | ||
int | n_x | ||
) |
パターンによる移動制限処理
c_y | プレイヤーの移動元Y座標 |
c_x | プレイヤーの移動元X座標 |
n_y | プレイヤーの移動先Y座標 |
n_x | プレイヤーの移動先X座標 |
void pause_line | ( | int | row | ) |
void phlogiston | ( | void | ) |
寿命つき光源の燃素追加処理 / Charge a lite (torch or latern)
void place_gold | ( | int | y, |
int | x | ||
) |
フロアの指定位置に生成階に応じた財宝オブジェクトの生成を行う。 Places a treasure (Gold or Gems) at given location
y | 配置したいフロアのY座標 |
x | 配置したいフロアのX座標 |
The location must be a legal, clean, floor grid.
bool place_mirror | ( | void | ) |
鏡設置処理
一般的なモンスター生成処理のメインルーチン / Attempt to place a monster of the given race at the given location
y | 生成地点y座標 |
x | 生成地点x座標 |
mode | 生成オプション |
一般的なモンスター生成処理のサブルーチン / Attempt to place a monster of the given race at the given location
who | 召喚主のモンスター情報ID |
y | 生成地点y座標 |
x | 生成地点x座標 |
r_idx | 生成するモンスターの種族ID |
mode | 生成オプション |
Note that certain monsters are now marked as requiring "friends". These monsters, if successfully placed, and if the "grp" parameter is TRUE, will be surrounded by a "group" of identical monsters.
Note that certain monsters are now marked as requiring an "escort", which is a collection of monsters with similar "race" but lower level.
Some monsters induce a fake "group" flag on their escorts.
Note the "bizarre" use of non-recursion to prevent annoying output when running a code profiler.
Note the use of the new "monster allocation table" code to restrict the "get_mon_num()" function to "legal" escort types.
void place_object | ( | int | y, |
int | x, | ||
u32b | mode | ||
) |
フロアの指定位置に生成階に応じたベースアイテムの生成を行う。 Attempt to place an object (normal or good/great) at the given location.
y | 配置したいフロアのY座標 |
x | 配置したいフロアのX座標 |
mode | オプションフラグ |
This routine plays nasty games to generate the "special artifacts".
This routine uses "object_level" for the "generation level".
This routine requires a clean floor grid destination.
bool place_quest_monsters | ( | void | ) |
クエストに関わるモンスターの配置を行う / Place quest monsters
void place_trap | ( | int | y, |
int | x | ||
) |
マスをトラップを配置する / The location must be a legal, naked, floor grid.
y | 配置したいマスのY座標 |
x | 配置したいマスのX座標 |
void play_game | ( | bool | new_game | ) |
1ゲームプレイの主要ルーチン / Actually play a game
errr play_music | ( | int | type, |
int | num | ||
) |
void player_birth | ( | void | ) |
プレイヤー作成処理のメインルーチン/ Create a new character.
Note that we may be called with "junk" leftover in the various fields, so we must be sure to clear them first.
プレイヤーが地形踏破可能かを返す
feature | 判定したい地形ID |
mode | 移動に関するオプションフラグ |
bool player_can_see_bold | ( | int | y, |
int | x | ||
) |
指定された座標をプレイヤーが視覚に収められるかを返す。 / Can the player "see" the given grid in detail?
y | y座標 |
x | x座標 |
He must have vision, illumination, and line of sight.
Note – "CAVE_LITE" is only set if the "torch" has "los()".
So, given "CAVE_LITE", we know that the grid is "fully visible".
Note that "CAVE_GLOW" makes little sense for a wall, since it would mean
that a wall is visible from any direction. That would be odd. Except
under wizard light, which might make sense. Thus, for walls, we require
not only that they be "CAVE_GLOW", but also, that they be adjacent to a
grid which is not only "CAVE_GLOW", but which is a non-wall, and which is
in line of sight of the player.
This extra check is expensive, but it provides a more "correct" semantics.
Note that we should not run this check on walls which are "outer walls" of
the dungeon, or we will induce a memory fault, but actually verifying all
of the locations would be extremely expensive.
Thus, to speed up the function, we assume that all "perma-walls" which are
"CAVE_GLOW" are "illuminated" from all sides. This is correct for all cases
except "vaults" and the "buildings" in town. But the town is a hack anyway,
and the player has more important things on his mind when he is attacking a
monster vault. It is annoying, but an extremely important optimization.
Note that "glowing walls" are only considered to be "illuminated" if the
grid which is next to the wall in the direction of the player is also a
"glowing" grid. This prevents the player from being able to "see" the
walls of illuminated rooms from a corridor outside the room.
void player_outfit | ( | void | ) |
種族/職業/性格などに基づき初期所持アイテムを設定するメインセット関数。 / Init players with some belongings
Having an item makes the player "aware" of its purpose.
bool player_place | ( | int | y, |
int | x | ||
) |
プレイヤーを指定座標に配置する / Place the player in the dungeon XXX XXX
x | 配置先X座標 |
y | 配置先Y座標 |
void plural_aux | ( | char * | Name | ) |
英単語、句、説を複数形を変換する / Pluralize a monster name
Name | 変換したい文字列の参照ポインタ |
bool poly_monster | ( | int | dir, |
int | power | ||
) |
チェンジモンスター処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool polymorph_monster | ( | int | y, |
int | x | ||
) |
指定座標にいるモンスターを変身させる / Helper function – return a "nearby" race for polymorphing
y | 指定のY座標 |
x | 指定のX座標 |
bool potion_smash_effect | ( | int | who, |
int | y, | ||
int | x, | ||
int | k_idx | ||
) |
薬の破損効果処理 / Potions "smash open" and cause an area effect when
who | 薬破損の主体ID(プレイヤー所持アイテムが壊れた場合0、床上のアイテムの場合モンスターID) |
y | 破壊時のY座標 |
x | 破壊時のX座標 |
k_idx | 破損した薬のアイテムID |
(1) they are shattered while in the player's inventory, due to cold (etc) attacks; (2) they are thrown at a monster, or obstacle; (3) they are shattered by a "cold ball" or other such spell while lying on the floor.
Arguments: who — who caused the potion to shatter (0=player) potions that smash on the floor are assumed to be caused by no-one (who = 1), as are those that shatter inside the player inventory. (Not anymore – I changed this; TY) y, x — coordinates of the potion (or player if the potion was in her inventory); o_ptr — pointer to the potion object.
void precalc_cur_num_of_pet | ( | void | ) |
フロア移動時にペットを伴った場合の準備処理 / Pre-calculate the racial counters of preserved pets
To prevent multiple generation of unique monster who is the minion of player
errr predict_score | ( | void | ) |
プレイヤーの現在のスコアをランキングに挟む / Predict the players location, and display it.
void prepare_browse_movie | ( | cptr | filename | ) |
void prepare_browse_movie_aux | ( | cptr | filename | ) |
void prepare_change_floor_mode | ( | u32b | mode | ) |
フロア切り替え時の処理フラグを追加する / Prepare mode flags of changing floor
mode | 追加したい所持フラグ |
void prepare_movie_hooks | ( | void | ) |
void prevent_turn_overflow | ( | void | ) |
ターンのオーバーフローに対する対処
ターン及びターンを記録する変数をターンの限界の1日前まで巻き戻す.
void print_equippy | ( | void | ) |
プレイヤーの装備一覧シンボルを固定位置に表示する
void print_monster_list | ( | int | x, |
int | y, | ||
int | max_lines | ||
) |
モンスターの出現リストを表示する / Print monster info in line
x | 表示列 |
y | 表示行 |
max_lines | 最大何行描画するか |
void print_rel | ( | char | c, |
byte | a, | ||
int | y, | ||
int | x | ||
) |
void print_spells | ( | int | target_spell, |
byte * | spells, | ||
int | num, | ||
int | y, | ||
int | x, | ||
int | use_realm | ||
) |
呪文情報の表示処理 / Print a list of spells (for browsing or casting or viewing)
target_spell | 呪文ID |
spells | アクセス開始するスペルの参照ポイント |
num | 表示する |
y | 表示メッセージ左上Y座標 |
x | 表示メッセージ左上X座標 |
use_realm | 魔法領域ID |
bool probing | ( | void | ) |
周辺モンスターを調査する / Probe nearby monsters
errr process_autopick_file_command | ( | char * | buf | ) |
クエスト用固定ダンジョン生成時のメインルーチン Helper function for "process_dungeon_file()"
name | ファイル名 |
ymin | 詳細不明 |
xmin | 詳細不明 |
ymax | 詳細不明 |
xmax | 詳細不明 |
プレイヤーの生い立ちファイルを読み込む / Process file for player's history editor.
name | ファイル名 |
void process_monsters | ( | void | ) |
全モンスターのターン管理メインルーチン / Process all the "live" monsters, once per game turn.
During each game turn, we scan through the list of all the "live" monsters,
(backwards, so we can excise any "freshly dead" monsters), energizing each
monster, and allowing fully energized monsters to move, attack, pass, etc.
Note that monsters can never move in the monster array (except when the
"compact_monsters()" function is called by "dungeon()" or "save_player()").
This function is responsible for at least half of the processor time
on a normal system with a "normal" amount of monsters and a player doing
normal things.
When the player is resting, virtually 90% of the processor time is spent
in this function, and its children, "process_monster()" and "make_move()".
Most of the rest of the time is spent in "update_view()" and "lite_spot()",
especially when the player is running.
Note the special "MFLAG_BORN" flag, which allows us to ignore "fresh"
monsters while they are still being "born". A monster is "fresh" only
during the turn in which it is created, and we use the "hack_m_idx" to
determine if the monster is yet to be processed during the current turn.
Note the special "MFLAG_NICE" flag, which allows the player to get one
move before any "nasty" monsters get to use their spell attacks.
Note that when the "knowledge" about the currently tracked monster
changes (flags, attacks, spells), we induce a redraw of the monster
recall window.
void process_monsters_mtimed | ( | int | mtimed_idx | ) |
全モンスターの各種状態値を時間経過により更新するメインルーチン
mtimed_idx | 更新するモンスターの時限ステータスID |
Process the counters of monsters (once per 10 game turns)
These functions are to process monsters' counters same as player's.
void process_player_name | ( | bool | sf | ) |
プレイヤーの名前をチェックして修正する Process the player name.
sf | セーブファイル名に合わせた修正を行うならばTRUE |
Extract a clean "base name". Build the savefile name if needed.
pref設定ファイルを読み込み設定を反映させる / Process the "user pref file" with the given name
name | 読み込むファイル名 |
See the functions above for a list of legal "commands". We also accept the special "?" and "%" directives, which allow conditional evaluation and filename inclusion.
errr process_pref_file_command | ( | char * | buf | ) |
設定ファイルの各行から各種テキスト情報を取得する / Parse a sub-file of the "extra info" (format shown below)
buf | データテキストの参照ポインタ |
Each "action" line has an "action symbol" in the first column, followed by a colon, followed by some command specific info, usually in the form of "tokens" separated by colons or slashes. Blank lines, lines starting with white space, and lines starting with pound signs ("#") are ignored (as comments). Note the use of "tokenize()" to allow the use of both colons and slashes as delimeters, while still allowing final tokens which may contain any characters including "delimiters". Note the use of "strtol()" to allow all "integers" to be encoded in decimal, hexidecimal, or octal form. Note that "monster zero" is used for the "player" attr/char, "object zero" will be used for the "stack" attr/char, and "feature zero" is used for the "nothing" attr/char. Parse another file recursively, see below for details %:<filename> Specify the attr/char values for "monsters" by race index R:<num>:<a>:<c> Specify the attr/char values for "objects" by kind index K:<num>:<a>:<c> Specify the attr/char values for "features" by feature index F:<num>:<a>:<c> Specify the attr/char values for unaware "objects" by kind tval U:<tv>:<a>:<c> Specify the attr/char values for inventory "objects" by kind tval E:<tv>:<a>:<c> Define a macro action, given an encoded macro action A:<str> Create a normal macro, given an encoded macro trigger P:<str> Create a command macro, given an encoded macro trigger C:<str> Create a keyset mapping S:<key>:<key>:<dir> Turn an option off, given its name X:<str> Turn an option on, given its name Y:<str> Specify visual information, given an index, and some data V:<num>:<kv>:<rv>:<gv>:<bv> Specify the set of colors to use when drawing a zapped spell Z:<type>:<str> Specify a macro trigger template and macro trigger names. T:<template>:<modifier chr>:<modifier name1>:<modifier name2>:... T:<trigger>:<keycode>:<shift-keycode>
cptr process_pref_file_expr | ( | char ** | sp, |
char * | fp | ||
) |
process_pref_fileのサブルーチンとして条件分岐処理の解釈と結果を返す / Helper function for "process_pref_file()"
sp | テキスト文字列の参照ポインタ |
fp | 再帰中のポインタ参照 |
Input: v: output buffer array f: final character Output: result
モンスターの時間停止処理
num | 時間停止を行った敵が行動できる回数 |
who | 時間停止処理の主体ID |
vs_player | TRUEならば時間停止開始処理を行う |
bool process_warning | ( | int | xx, |
int | yy | ||
) |
プレイヤーが特定地点へ移動した場合に警告を発する処理 / Examine the grid (xx,yy) and warn the player if there are any danger
xx | 危険性を調査するマスのX座標 |
yy | 危険性を調査するマスのY座標 |
bool project | ( | int | who, |
int | rad, | ||
int | y, | ||
int | x, | ||
int | dam, | ||
int | typ, | ||
int | flg, | ||
int | monspell | ||
) |
汎用的なビーム/ボルト/ボール系処理のルーチン Generic "beam"/"bolt"/"ball" projection routine.
who | 魔法を発動したモンスター(0ならばプレイヤー) / Index of "source" monster (zero for "player") |
rad | 効果半径(ビーム/ボルト = 0 / ボール = 1以上) / Radius of explosion (0 = beam/bolt, 1 to 9 = ball) |
y | 目標Y座標 / Target y location (or location to travel "towards") |
x | 目標X座標 / Target x location (or location to travel "towards") |
dam | 基本威力 / Base damage roll to apply to affected monsters (or player) |
typ | 効果属性 / Type of damage to apply to monsters (and objects) |
flg | 効果フラグ / Extra bit flags (see PROJECT_xxxx in "defines.h") |
monspell | 効果元のモンスター魔法ID |
Allows a monster (or player) to project a beam/bolt/ball of a given kind towards a given location (optionally passing over the heads of interposing monsters), and have it do a given amount of damage to the monsters (and optionally objects) within the given radius of the final location.
A "bolt" travels from source to target and affects only the target grid. A "beam" travels from source to target, affecting all grids passed through. A "ball" travels from source to the target, exploding at the target, and affecting everything within the given radius of the target location.
Traditionally, a "bolt" does not affect anything on the ground, and does not pass over the heads of interposing monsters, much like a traditional missile, and will "stop" abruptly at the "target" even if no monster is positioned there, while a "ball", on the other hand, passes over the heads of monsters between the source and target, and affects everything except the source monster which lies within the final radius, while a "beam" affects every monster between the source and target, except for the casting monster (or player), and rarely affects things on the ground.
Two special flags allow us to use this function in special ways, the "PROJECT_HIDE" flag allows us to perform "invisible" projections, while the "PROJECT_JUMP" flag allows us to affect a specific grid, without actually projecting from the source monster (or player).
The player will only get "experience" for monsters killed by himself Unique monsters can only be destroyed by attacks from the player
Only 256 grids can be affected per projection, limiting the effective "radius" of standard ball attacks to nine units (diameter nineteen).
One can project in a given "direction" by combining PROJECT_THRU with small offsets to the initial location (see "line_spell()"), or by calculating "virtual targets" far away from the player.
One can also use PROJECT_THRU to send a beam/bolt along an angled path, continuing until it actually hits somethings (useful for "stone to mud").
Bolts and Beams explode INSIDE walls, so that they can destroy doors.
Balls must explode BEFORE hitting walls, or they would affect monsters on both sides of a wall. Some bug reports indicate that this is still happening in 2.7.8 for Windows, though it appears to be impossible.
We "pre-calculate" the blast area only in part for efficiency. More importantly, this lets us do "explosions" from the "inside" out. This results in a more logical distribution of "blast" treasure. It also produces a better (in my opinion) animation of the explosion. It could be (but is not) used to have the treasure dropped by monsters in the middle of the explosion fall "outwards", and then be damaged by the blast as it spreads outwards towards the treasure drop location.
Walls and doors are included in the blast area, so that they can be "burned" or "melted" in later versions.
This algorithm is intended to maximize simplicity, not necessarily efficiency, since this function is not a bottleneck in the code.
We apply the blast effect from ground zero outwards, in several passes, first affecting features, then objects, then monsters, then the player. This allows walls to be removed before checking the object or monster in the wall, and protects objects which are dropped by monsters killed in the blast, and allows the player to see all affects before he is killed or teleported away. The semantics of this method are open to various interpretations, but they seem to work well in practice.
We process the blast area from ground-zero outwards to allow for better distribution of treasure dropped by monsters, and because it provides a pleasing visual effect at low cost.
Note that the damage done by "ball" explosions decreases with distance. This decrease is rapid, grids at radius "dist" take "1/dist" damage.
Notice the "napalm" effect of "beam" weapons. First they "project" to the target, and then the damage "flows" along this beam of destruction. The damage at every grid is the same as at the "center" of a "ball" explosion, since the "beam" grids are treated as if they ARE at the center of a "ball" explosion.
Currently, specifying "beam" plus "ball" means that locations which are covered by the initial "beam", and also covered by the final "ball", except for the final grid (the epicenter of the ball), will be "hit twice", once by the initial beam, and once by the exploding ball. For the grid right next to the epicenter, this results in 150% damage being done. The center does not have this problem, for the same reason the final grid in a "beam" plus "bolt" does not – it is explicitly removed. Simply removing "beam" grids which are covered by the "ball" will NOT work, as then they will receive LESS damage than they should. Do not combine "beam" with "ball".
The array "gy[],gx[]" with current size "grids" is used to hold the collected locations of all grids in the "blast area" plus "beam path".
Note the rather complex usage of the "gm[]" array. First, gm[0] is always zero. Second, for N>1, gm[N] is always the index (in gy[],gx[]) of the first blast grid (see above) with radius "N" from the blast center. Note that only the first gm[1] grids in the blast area thus take full damage. Also, note that gm[rad+1] is always equal to "grids", which is the total number of blast grids.
Note that once the projection is complete, (y2,x2) holds the final location of bolts/beams, and the "epicenter" of balls.
Note also that "rad" specifies the "inclusive" radius of projection blast, so that a "rad" of "one" actually covers 5 or 9 grids, depending on the implementation of the "distance" function. Also, a bolt can be properly viewed as a "ball" with a "rad" of "zero".
Note that if no "target" is reached before the beam/bolt/ball travels the maximum distance allowed (MAX_RANGE), no "blast" will be induced. This may be relevant even for bolts, since they have a "1x1" mini-blast.
Note that for consistency, we "pretend" that the bolt actually takes "time" to move from point A to point B, even if the player cannot see part of the projection path. Note that in general, the player will always see part of the path, since it either starts at the player or ends on the player.
Hack – we assume that every "projection" is "self-illuminating".
Hack – when only a single monster is affected, we automatically track (and recall) that monster, unless "PROJECT_JUMP" is used.
Note that all projections now "explode" at their final destination, even if they were being projected at a more distant destination. This means that "ball" spells will always explode.
Note that we must call "handle_stuff()" after affecting terrain features in the blast radius, in case the "illumination" of the grid was changed, and "update_view()" and "update_monsters()" need to be called.
bool project_hack | ( | int | typ, |
int | dam | ||
) |
視界内モンスターに魔法効果を与える / Apply a "project()" directly to all viewable monsters
typ | 属性効果 |
dam | 効果量 |
Note that affected monsters are NOT auto-tracked by this usage.
To avoid misbehavior when monster deaths have side-effects, this is done in two passes. – JDL
bool project_hook | ( | int | typ, |
int | dir, | ||
int | dam, | ||
int | flg | ||
) |
指定方向に飛び道具を飛ばす(フラグ任意指定) / Hack – apply a "projection()" in a direction (or at the target)
typ | 効果属性 |
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
flg | フラグ |
始点から終点への経路を返す / Determine the path taken by a projection.
gp | 経路座標リストを返す参照ポインタ |
range | 距離 |
y1 | 始点Y座標 |
x1 | 始点X座標 |
y2 | 終点Y座標 |
x2 | 終点X座標 |
flg | フラグID |
The projection will always start from the grid (y1,x1), and will travel towards the grid (y2,x2), touching one grid per unit of distance along the major axis, and stopping when it enters the destination grid or a wall grid, or has travelled the maximum legal distance of "range".
Note that "distance" in this function (as in the "update_view()" code) is defined as "MAX(dy,dx) + MIN(dy,dx)/2", which means that the player actually has an "octagon of projection" not a "circle of projection".
The path grids are saved into the grid array pointed to by "gp", and there should be room for at least "range" grids in "gp". Note that due to the way in which distance is calculated, this function normally uses fewer than "range" grids for the projection path, so the result of this function should never be compared directly to "range". Note that the initial grid (y1,x1) is never saved into the grid array, not even if the initial grid is also the final grid. XXX XXX XXX
The "flg" flags can be used to modify the behavior of this function.
In particular, the "PROJECT_STOP" and "PROJECT_THRU" flags have the same semantics as they do for the "project" function, namely, that the path will stop as soon as it hits a monster, or that the path will continue through the destination grid, respectively.
The "PROJECT_JUMP" flag, which for the "project()" function means to start at a special grid (which makes no sense in this function), means that the path should be "angled" slightly if needed to avoid any wall grids, allowing the player to "target" any grid which is in "view". This flag is non-trivial and has not yet been implemented, but could perhaps make use of the "vinfo" array (above). XXX XXX XXX
This function returns the number of grids (if any) in the path. This function will return zero if and only if (y1,x1) and (y2,x2) are equal.
This algorithm is similar to, but slightly different from, the one used by "update_view_los()", and very different from the one used by "los()".
bool projectable | ( | int | y1, |
int | x1, | ||
int | y2, | ||
int | x2 | ||
) |
void prt | ( | cptr | str, |
int | row, | ||
int | col | ||
) |
void prt_map | ( | void | ) |
void prt_path | ( | int | y, |
int | x | ||
) |
void prt_time | ( | void | ) |
ゲーム時刻を表示する / Print time
bool psychometry | ( | void | ) |
超能力者のサイコメトリー処理/ Forcibly pseudo-identify an object in the inventory (or on the floor)
bool pulish_shield | ( | void | ) |
盾磨き処理 / pulish shield
void put_str | ( | cptr | str, |
int | row, | ||
int | col | ||
) |
bool py_attack | ( | int | y, |
int | x, | ||
int | mode | ||
) |
プレイヤーの打撃処理メインルーチン
y | 攻撃目標のY座標 |
x | 攻撃目標のX座標 |
mode | 発動中の剣術ID |
If no "weapon" is available, then "punch" the monster one time.
void py_pickup_aux | ( | int | 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 inventory.
Delete the object afterwards.
void quark_init | ( | void | ) |
void quest_discovery | ( | int | q_idx | ) |
クエストの導入メッセージを表示する / Discover quest
q_idx | 開始されたクエストのID |
int quest_number | ( | int | level | ) |
新しく入ったダンジョンの階層に固定されている一般のクエストを探し出しIDを返す。 / Hack – Check if a level is a "quest" level
level | 検索対象になる階 |
void race_legends | ( | void | ) |
スコアランキングの簡易表示(種族毎)メインルーチン / Race Legends -KMW-
void race_score | ( | int | race_num | ) |
スコアランキングの簡易表示(種族毎)サブルーチン / Race Legends -KMW-
race_num | 種族ID |
bool raise_possible | ( | monster_type * | m_ptr | ) |
モンスターにとって死者復活を行うべき状態かどうかを返す / Determine if there is a space near the player in which a summoned creature can appear
m_ptr | 判定を行いたいモンスターの構造体参照ポインタ |
プレイヤーの落馬判定処理
dam | 落馬判定を発した際に受けたダメージ量 |
force | TRUEならば強制的に落馬する |
void random_artifact_resistance | ( | object_type * | o_ptr, |
artifact_type * | a_ptr | ||
) |
固定アーティファクト生成時の特別なハードコーディング処理を行う。.
random_artifact_resistance()とあるが実際は固定アーティファクトである。 対象は恐怖の仮面、村正、ロビントンのハープ、龍争虎鬪、ブラッディムーン、羽衣、天女の羽衣、ミリム、 その他追加耐性、特性追加処理。
o_ptr | 対象のオブジェクト構造体ポインタ |
a_ptr | 生成する固定アーティファクト構造体ポインタ |
int random_quest_number | ( | int | level | ) |
新しく入ったダンジョンの階層に固定されているランダムクエストを探し出しIDを返す。
level | 検索対象になる階 |
errr rd_savefile_new | ( | void | ) |
ロード処理全体のメイン関数 / Actually read the savefile
monster_race* real_r_ptr | ( | monster_type * | m_ptr | ) |
モンスターの真の種族を返す / Extract monster race pointer of a monster's true form
m_ptr | モンスターの参照ポインタ |
bool recall_player | ( | int | turns | ) |
プレイヤーの帰還発動及び中止処理 / Recall the player to town or dungeon
turns | 発動までのターン数 |
bool recharge | ( | int | power | ) |
魔力充填処理 / Recharge a wand/staff/rod from the pack or on the floor.
This function has been rewritten in Oangband and ZAngband.
power | 充填パワー |
Sorcery/Arcane – Recharge –> recharge(plev * 4) Chaos – Arcane Binding –> recharge(90)
Scroll of recharging –> recharge(130) Artifact activation/Thingol –> recharge(130)
It is harder to recharge high level, and highly charged wands, staffs, and rods. The more wands in a stack, the more easily and strongly they recharge. Staffs, however, each get fewer charges if stacked.
XXX XXX XXX Beware of "sliding index errors".
void redraw_stuff | ( | void | ) |
p_ptr->redraw のフラグに応じた更新をまとめて行う / Handle "p_ptr->redraw"
更新処理の対象はゲーム中の全描画処理
void redraw_window | ( | void | ) |
コンソールを再描画する / Redraw a term when it is resized
void reduce_charges | ( | object_type * | o_ptr, |
int | amt | ||
) |
魔法棒やロッドの使用回数を減らす /
o_ptr | オブジェクトの構造体参照ポインタ source item |
amt | 減らしたい回数量 number of items that are transfered |
Hack – If rods or wand are destroyed, the total maximum timeout or
charges of the stack needs to be reduced, unless all the items are
being destroyed. -LM-
bool remove_all_curse | ( | void | ) |
装備の重い呪い解呪処理 / Remove all curses
void remove_all_mirrors | ( | bool | explode | ) |
全鏡の消去 / Remove all mirrors in this floor
explode | 爆発処理を伴うならばTRUE |
bool remove_curse | ( | void | ) |
装備の軽い呪い解呪処理 / Remove most curses
void remove_loc | ( | void | ) |
ファイルロック処理
void remove_mirror | ( | int | y, |
int | x | ||
) |
void reorder_pack | ( | void | ) |
プレイヤーの所持スロットに存在するオブジェクトを並び替える / Reorder items in the pack
Note special handling of the "overflow" slot
void report_magics | ( | void | ) |
現在の一時的効果一覧を返す / Report all currently active magical effects.
void request_command | ( | int | shopping | ) |
bool res_stat | ( | int | stat | ) |
プレイヤーの基本能力値を回復させる / Restore a stat.
Return TRUE only if this actually makes a difference.
stat | 回復ステータスID |
void reset_concentration | ( | bool | msg | ) |
スナイパーの集中度リセット
msg | TRUEならばメッセージを表示する |
bool reset_recall | ( | void | ) |
フロア・リセット処理
void reset_target | ( | monster_type * | m_ptr | ) |
モンスターの目標地点をリセットする / Reset the target of counter attack
m_ptr | モンスターの参照ポインタ |
void reset_tim_flags | ( | void | ) |
プレイヤーの全ての時限効果をリセットする。 / reset timed flags
void reset_visuals | ( | void | ) |
オブジェクト、地形の表示シンボルなど初期化する / Reset the "visual" lists
void resize_map | ( | void | ) |
コンソールのリサイズに合わせてマップを再描画する / Map resizing whenever the main term changes size
bool restore_level | ( | void | ) |
void revenge_spell | ( | void | ) |
一定ゲームターン毎に復讐処理の残り期間の判定を行う
void revenge_store | ( | int | dam | ) |
復讐ダメージの追加を行う
dam | 蓄積されるダメージ量 |
int riding_exp_level | ( | int | riding_exp | ) |
void ring_of_power | ( | int | dir | ) |
『一つの指輪』の効果処理 / Hack – activate the ring of power
dir | 発動の方向ID |
void roff | ( | cptr | str | ) |
void roff_to_buf | ( | cptr | str, |
int | wlen, | ||
char * | tbuf, | ||
size_t | bufsize | ||
) |
void roff_top | ( | int | r_idx | ) |
モンスター情報のヘッダを記述する Hack – Display the "name" and "attr/chars" of a monster race
r_idx | モンスターの種族ID |
void run_step | ( | int | dir | ) |
継続的なダッシュ処理 / Take one step along the current "run" path
dir | 移動を試みる方向ID |
入身処理 / "Rush Attack" routine for Samurai or Ninja
mdeath | 目標モンスターが死亡したかを返す |
bool rustproof | ( | void | ) |
防具の錆止め防止処理
void safe_setuid_drop | ( | void | ) |
ファイルのドロップパーミッションチェック / Hack – drop permissions
void safe_setuid_grab | ( | void | ) |
ファイルのグラブパーミッションチェック / Hack – grab permissions
void sanity_blast | ( | monster_type * | m_ptr, |
bool | necro | ||
) |
ELDRITCH_HORRORによるプレイヤーの精神破壊処理
m_ptr | ELDRITCH_HORRORを引き起こしたモンスターの参照ポインタ |
necro | 暗黒領域魔法の詠唱失敗によるものならばTRUEを返す |
bool save_floor | ( | saved_floor_type * | sf_ptr, |
u32b | mode | ||
) |
ゲームプレイ中のフロア一時保存出力処理メインルーチン / Attempt to save the temporally saved-floor data
sf_ptr | 保存フロア参照ポインタ |
mode | 保存オプション |
bool save_player | ( | void | ) |
セーブデータ書き込みのメインルーチン / Attempt to save the player in a savefile
void scatter | ( | int * | yp, |
int * | xp, | ||
int | y, | ||
int | x, | ||
int | d, | ||
int | mode | ||
) |
void screen_load | ( | void | ) |
bool screen_object | ( | object_type * | o_ptr, |
u32b | mode | ||
) |
オブジェクトの*鑑定*内容を詳述して表示する / Describe a "fully identified" item
o_ptr | *鑑定*情報を取得する元のオブジェクト構造体参照ポインタ |
mode | 表示オプション |
void screen_roff | ( | int | r_idx, |
int | mode | ||
) |
モンスター情報の表示と共に画面を一時消去するサブルーチン / Hack – describe the given monster race at the top of the screen
r_idx | モンスターの種族ID |
mode | 表示オプション |
void screen_save | ( | void | ) |
void seal_of_mirror | ( | int | dam | ) |
鏡魔法「鏡の封印」の効果処理
dam | ダメージ量 |
void search | ( | void | ) |
プレイヤーの探索処理判定
void seed_wilderness | ( | void | ) |
ゲーム開始時に各荒野フロアの乱数シードを指定する / Generate the random seeds for the wilderness
void select_floor_music | ( | void | ) |
void self_knowledge | ( | void | ) |
自己分析処理(Nethackからのアイデア) / self-knowledge...
idea from nethack.
Useful for determining powers and resistences of items. It saves the screen, clears it, then starts listing attributes, a screenful at a time. (There are a LOT of attributes to list. It will probably take 2 or 3 screens for a powerful character whose using several artifacts...) -CFT
It is now a lot more efficient. -BEN-
See also "identify_fully()".
XXX XXX XXX Use the "show_file()" method, perhaps.
スコアサーバへの転送処理
do_send | 実際に転送ア処置を行うか否か |
int set_acid_destroy | ( | object_type * | o_ptr | ) |
アイテムが酸で破損するかどうかを判定する(メインルーチン) / Melt something
o_ptr | アイテムの情報参照ポインタ |
void set_action | ( | int | typ | ) |
プレイヤーの継続行動を設定する。
typ | 継続行動のID #ACTION_NONE / #ACTION_SEARCH / #ACTION_REST / #ACTION_LEARN / #ACTION_FISH / #ACTION_KAMAE / #ACTION_KATA / #ACTION_SING / #ACTION_HAYAGAKE / #ACTION_SPELL から選択。 |
bool set_afraid | ( | int | v | ) |
恐怖の継続時間をセットする / Set "p_ptr->afraid", notice observable changes
v | 継続時間 |
祝福の継続時間をセットする / Set "p_ptr->blessed", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
bool set_blind | ( | int | v | ) |
盲目の継続時間をセットする / Set "p_ptr->blind", notice observable changes
v | 継続時間 |
Note the use of "PU_UN_LITE" and "PU_UN_VIEW", which is needed to
memorize any terrain features which suddenly become "visible".
Note that blindness is currently the only thing which can affect
"player_can_see_bold()".
int set_cold_destroy | ( | object_type * | o_ptr | ) |
アイテムが冷気で破損するかどうかを判定する(メインルーチン) / Freeze things
o_ptr | アイテムの情報参照ポインタ |
bool set_confused | ( | int | v | ) |
混乱の継続時間をセットする / Set "p_ptr->confused", notice observable changes
v | 継続時間 |
bool set_cut | ( | int | v | ) |
出血の継続時間をセットする / Set "p_ptr->cut", notice observable changes
v | 継続時間 |
Note the special code to only notice "range" changes.
一時的破片のオーラの継続時間をセットする / Set "p_ptr->dustrobe", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的元素スレイの継続時間をセットする / Set a temporary elemental brand.
Clear all other brands. Print status messages. -LM-
attack_type | スレイのタイプID |
v | 継続時間 |
一時的元素免疫の継続時間をセットする / Set a temporary elemental brand.
Clear all other brands. Print status messages. -LM-
immune_type | 免疫のタイプID |
v | 継続時間 |
int set_elec_destroy | ( | object_type * | o_ptr | ) |
アイテムが電撃で破損するかどうかを判定する(メインルーチン) / Electrical damage
o_ptr | アイテムの情報参照ポインタ |
加速の継続時間をセットする / Set "p_ptr->fast", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
int set_fire_destroy | ( | object_type * | o_ptr | ) |
アイテムが火炎で破損するかどうかを判定する(メインルーチン) / Burn something
o_ptr | アイテムの情報参照ポインタ |
void set_floor_and_wall | ( | byte | type | ) |
ダンジョンの地形を指定確率に応じて各マスへランダムに敷き詰める / Fill the arrays of floors and walls in the good proportions
type | ダンジョンID |
bool set_food | ( | int | v | ) |
空腹状態をセットする / Set "p_ptr->food", notice observable changes
v | 継続時間 |
Set "", notice observable changes
The "p_ptr->food" variable can get as large as 20000, allowing the addition of the most "filling" item, Elvish Waybread, which adds 7500 food units, without overflowing the 32767 maximum limit.
Perhaps we should disturb the player with various messages, especially messages about hunger status changes. XXX XXX XXX
Digestion of food is handled in "dungeon.c", in which, normally, the player digests about 20 food units per 100 game turns, more when "fast", more when "regenerating", less with "slow digestion", but when the player is "gorged", he digests 100 food units per 10 game turns, or a full 1000 food units per 100 game turns.
Note that the player's speed is reduced by 10 units while gorged, so if the player eats a single food ration (5000 food units) when full (15000 food units), he will be gorged for (5000/100)*10 = 500 game turns, or 500/(100/5) = 25 player turns (if nothing else is affecting the player speed).
void set_friendly | ( | monster_type * | m_ptr | ) |
モンスターを友好的にする
m_ptr | モンスター情報構造体の参照ポインタ |
士気高揚の継続時間をセットする / Set "p_ptr->hero", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
void set_hostile | ( | monster_type * | m_ptr | ) |
モンスターを敵に回す Makes the monster hostile towards the player
m_ptr | モンスター情報構造体の参照ポインタ |
bool set_image | ( | int | v | ) |
幻覚の継続時間をセットする / Set "p_ptr->image", notice observable changes
v | 継続時間 |
Note that we must redraw the map when hallucination changes.
無傷球の継続時間をセットする / Set "p_ptr->invuln", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的壁抜けの継続時間をセットする / Set "p_ptr->kabenuke", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
光速移動の継続時間をセットする / Set "p_ptr->lightspeed", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
魔法の鎧の継続時間をセットする / Set "p_ptr->magicdef", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
変身効果の継続時間と変身先をセットする / Set "p_ptr->tim_mimic", and "p_ptr->mimic_form", notice observable changes
v | 継続時間 |
p | 変身内容 |
do_dec | 現在の継続時間より長い値のみ上書きする |
bool set_monster_confused | ( | int | m_idx, |
int | v | ||
) |
モンスターの混乱状態値をセット / Set "m_ptr->mtimed[MTIMED_CONFUSED]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
bool set_monster_csleep | ( | int | m_idx, |
int | v | ||
) |
モンスターの睡眠状態値をセットする / Set "m_ptr->mtimed[MTIMED_CSLEEP]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
bool set_monster_fast | ( | int | m_idx, |
int | v | ||
) |
モンスターの加速状態値をセット / Set "m_ptr->mtimed[MTIMED_FAST]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
モンスターの無敵状態値をセット / Set "m_ptr->mtimed[MTIMED_INVULNER]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
energy_need | TRUEならば無敵解除時に行動ターン消費を行う |
bool set_monster_monfear | ( | int | m_idx, |
int | v | ||
) |
モンスターの恐慌状態値をセット / Set "m_ptr->mtimed[MTIMED_MONFEAR]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
bool set_monster_slow | ( | int | m_idx, |
int | v | ||
) |
bool set_monster_stunned | ( | int | m_idx, |
int | v | ||
) |
モンスターの朦朧状態値をセット / Set "m_ptr->mtimed[MTIMED_STUNNED]", notice observable changes
m_idx | モンスター参照ID |
v | セットする値 |
一時的酸耐性の継続時間をセットする / Set "p_ptr->oppose_acid", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的冷気耐性の継続時間をセットする / Set "p_ptr->oppose_cold", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的電撃耐性の継続時間をセットする / Set "p_ptr->oppose_elec", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的火炎耐性の継続時間をセットする / Set "p_ptr->oppose_fire", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的毒耐性の継続時間をセットする / Set "p_ptr->oppose_pois", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
bool set_paralyzed | ( | int | v | ) |
麻痺の継続時間をセットする / Set "p_ptr->paralyzed", notice observable changes
v | 継続時間 |
void set_pet | ( | monster_type * | m_ptr | ) |
モンスターをペットにする
m_ptr | モンスター情報構造体の参照ポインタ |
bool set_poisoned | ( | int | v | ) |
毒の継続時間をセットする / Set "p_ptr->poisoned", notice observable changes
v | 継続時間 |
対邪悪結界の継続時間をセットする / Set "p_ptr->protevil", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
void set_proxy | ( | char * | default_url, |
int | default_port | ||
) |
一時的魔法防御の継続時間をセットする / Set "p_ptr->resist_magic", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
モンスター特殊能力のフラグ配列から特定条件の魔法だけを抜き出す処理 Extract monster spells mask for the given mode
f4 | モンスター特殊能力の4番目のフラグ配列 |
f5 | モンスター特殊能力の5番目のフラグ配列 |
f6 | モンスター特殊能力の6番目のフラグ配列 |
mode | 抜き出したい条件 |
狂戦士化の継続時間をセットする / Set "p_ptr->shero", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
肌石化の継続時間をセットする / Set "p_ptr->shield", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
減速の継続時間をセットする / Set "p_ptr->slow", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
bool set_stun | ( | int | v | ) |
朦朧の継続時間をセットする / Set "p_ptr->stun", notice observable changes
v | 継続時間 |
Note the special code to only notice "range" changes.
超隠密状態をセットする
set | TRUEならば超隠密状態になる。 |
void set_target | ( | monster_type * | m_ptr, |
int | y, | ||
int | x | ||
) |
モンスターの目標地点をセットする / Set the target of counter attack
m_ptr | モンスターの参照ポインタ |
y | 目標y座標 |
x | 目標x座標 |
時限ESPの継続時間をセットする / Set "p_ptr->tim_esp", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
目には目をの残り時間をセットする / Set "p_ptr->tim_eyeeye", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
時限赤外線視力の継続時間をセットする / Set "p_ptr->tim_infra", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
時限透明視の継続時間をセットする / Set "p_ptr->tim_invis", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的浮遊の継続時間をセットする / Set "p_ptr->tim_levitation", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的反射の継続時間をセットする / Set "p_ptr->tim_reflect", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
時限急回復の継続時間をセットする / Set "p_ptr->tim_regen", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的火炎のオーラの継続時間をセットする / Set "p_ptr->tim_sh_fire", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的聖なるのオーラの継続時間をセットする / Set "p_ptr->tim_sh_holy", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
一時的闘気のオーラの継続時間をセットする / Set "p_ptr->tim_sh_touki", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
隠密の歌の継続時間をセットする / Set "p_ptr->tim_stealth", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
つぶれるの継続時間をセットする / Set "p_ptr->tsubureru", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
オクレ兄さんの継続時間をセットする / Set "p_ptr->tsuyoshi", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
void set_virtue | ( | int | virtue, |
int | amount | ||
) |
対応する徳をプレイヤーがスロットに登録している場合に固定値をセットする。
virtue | 徳のID |
amount | セットしたい値。 |
幽体化の継続時間をセットする / Set "p_ptr->wraith_form", notice observable changes
v | 継続時間 |
do_dec | 現在の継続時間より長い値のみ上書きする |
int show_equip | ( | int | target_item | ) |
装備アイテムの表示を行う / Display the equipment.
target_item | アイテムの選択処理を行うか否か。 |
ファイル内容をコンソールに出力する Recursive file perusal.
show_version | TRUEならばコンソール上にゲームのバージョンを表示する |
name | ファイル名の文字列 |
what | 内容キャプションの文字列 |
line | 表示の現在行 |
mode | オプション |
Process various special text in the input file, including the "menu" structures used by the "help file" system. Return FALSE on 'q' to exit from a deep, otherwise TRUE.
void show_highclass | ( | void | ) |
スコアランキングの簡易表示 / show_highclass - selectively list highscores based on class -KMW-
int show_inven | ( | int | target_item | ) |
所持アイテムの表示を行う / Display the inventory.
target_item | アイテムの選択処理を行うか否か。 |
Hack – do not display "trailing" empty slots
void signals_handle_tstp | ( | void | ) |
OSからのSIGTSTPシグナルハンドラ / Handle SIGTSTP signals (keyboard suspend)
void signals_ignore_tstp | ( | void | ) |
OSからのSIGTSTPシグナルを無視する関数 / Ignore SIGTSTP signals (keyboard suspend)
void signals_init | ( | void | ) |
OSからのシグナルハンドルを初期化する / Prepare to handle the relevant signals.
bool sleep_monster | ( | int | dir, |
int | power | ||
) |
モンスター催眠処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool sleep_monsters | ( | int | power | ) |
視界内モンスターを眠らせる処理 / Sleep monsters
bool sleep_monsters_touch | ( | void | ) |
スリープモンスター処理(プレイヤー中心に周囲1マス)
bool slow_monster | ( | int | dir, |
int | power | ||
) |
モンスター減速処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool slow_monsters | ( | int | power | ) |
視界内モンスターを加速する処理 / Slow monsters
cptr soc_err | ( | void | ) |
int soc_write | ( | int | sd, |
char * | buf, | ||
size_t | sz | ||
) |
void sound | ( | int | num | ) |
bool speed_monster | ( | int | dir, |
int | power | ||
) |
モンスター加速処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
power | 効力 |
bool speed_monsters | ( | void | ) |
視界内モンスターを加速する処理 / Speed monsters
cptr spell_category_name | ( | int | tval | ) |
領域魔法に応じて技能の名称を返す。
tval | 魔法書のtval |
s16b spell_chance | ( | int | spell, |
int | use_realm | ||
) |
呪文の失敗率計算メインルーチン / Returns spell chance of failure for spell -RAK-
spell | 呪文ID |
use_realm | 魔法領域ID |
int spell_exp_level | ( | int | spell_exp | ) |
ID値が非魔術的な特殊技能かどうかを返す / Return TRUE if a spell is inate spell.
spell | 判定対象のID |
bool spell_learnable | ( | int | m_idx | ) |
モンスターの唱えた呪文を青魔法で学習できるか判定する /
m_idx | モンスターID |
魔法が利用可能かどうかを返す / Determine if a spell is "okay" for the player to cast or study The spell must be legible, not forgotten, and also, to cast, it must be known, and to study, it must not be known.
spell | 呪文ID |
learned | 使用可能な判定ならばTRUE、学習可能かどうかの判定ならばFALSE |
study_pray | 祈りの学習判定目的ならばTRUE |
use_realm | 魔法領域ID |
void spoil_random_artifact | ( | cptr | fname | ) |
ランダムアーティファクト内容をスポイラー出力するメインルーチン / Create a list file for random artifacts
fname | 出力ファイル名 |
void stair_creation | ( | void | ) |
プレイヤーの手による能動的な階段生成処理 / Create stairs at or move previously created stairs into the player location.
bool stasis_evil | ( | int | dir | ) |
邪悪なモンスター拘束(STASIS)処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
威力はプレイヤーレベル*2に固定
bool stasis_monster | ( | int | dir | ) |
モンスター拘束(STASIS)処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
威力はプレイヤーレベル*2に固定
bool stasis_monsters | ( | int | dam | ) |
モンスター停止効果(プレイヤー視界範囲内) / Stasis monsters
dam | 効力 |
bool stop_hex_spell | ( | void | ) |
プレイヤーが詠唱中の呪術から一つを選んで停止する
bool stop_hex_spell_all | ( | void | ) |
プレイヤーが詠唱中の全呪術を停止する
void stop_singing | ( | void | ) |
歌の停止を処理する / Stop singing if the player is a Bard
void store_init | ( | int | town_num, |
int | store_num | ||
) |
店舗情報を初期化する / Initialize the stores
town_num | 町のID |
store_num | 店舗種類のID |
void store_maint | ( | int | town_num, |
int | store_num | ||
) |
店の品揃えを変化させる / Maintain the inventory at the stores.
town_num | 町のID |
store_num | 店舗種類のID |
void store_shuffle | ( | int | which | ) |
現在の町の店主を交代させる / Shuffle one of the stores.
which | 店舗種類のID |
void str_tolower | ( | char * | str | ) |
void strip_name | ( | char * | buf, |
int | k_idx | ||
) |
nameバッファ内からベースアイテム名を返す / Strip an "object name" into a buffer
buf | ベースアイテム格納先の参照ポインタ |
k_idx | ベースアイテムID |
bool stun_monster | ( | int | dir, |
int | plev | ||
) |
モンスター朦朧処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
plev | プレイヤーレベル(=効力) |
bool stun_monsters | ( | int | dam | ) |
モンスター朦朧効果(プレイヤー視界範囲内) / Stun monsters
dam | 効力 |
int summon_cyber | ( | int | who, |
int | y, | ||
int | x | ||
) |
サイバーデーモンの召喚
who | 召喚主のモンスターID(0ならばプレイヤー) |
y | 召喚位置Y座標 |
x | 召喚位置X座標 |
同族召喚(援軍)処理
level | 召喚基準レベル |
y | 召喚先Y座標 |
x | 召喚先X座標 |
mode | 召喚オプション |
特定モンスター種族を召喚により生成する / A "dangerous" function, creates a pet of the specified type
who | 召喚主のモンスター情報ID |
oy | 目標地点y座標 |
ox | 目標地点x座標 |
r_idx | 生成するモンスター種族ID |
mode | 生成オプション |
bool summon_possible | ( | int | y1, |
int | x1 | ||
) |
モンスターにとって所定の地点が召還に相応しい地点かどうかを返す。 / Determine if there is a space near the player in which a summoned creature can appear
y1 | 判定を行いたいマスのY座標 |
x1 | 判定を行いたいマスのX座標 |
モンスターを召喚により配置する / Place a monster (of the specified "type") near the given location.
Return TRUE if a monster was actually summoned.
who | 召喚主のモンスター情報ID |
y1 | 目標地点y座標 |
x1 | 目標地点x座標 |
lev | 相当生成階 |
type | 召喚種別 |
mode | 生成オプション |
We will attempt to place the monster up to 10 times before giving up.
Note: SUMMON_UNIQUE and SUMMON_AMBERITES will summon Unique's Note: SUMMON_HI_UNDEAD and SUMMON_HI_DRAGON may summon Unique's Note: None of the other summon codes will ever summon Unique's.
This function has been changed. We now take the "monster level" of the summoning monster as a parameter, and use that, along with the current dungeon level, to help determine the level of the desired monster. Note that this is an upper bound, and also tends to "prefer" monsters of that level. Currently, we use the average of the dungeon and monster levels, and then add five to allow slight increases in monster power.
Note that we use the new "monster allocation table" creation code to restrict the "get_mon_num()" function to the set of "legal" monsters, making this function much faster and more reliable.
Note that this function may not succeed, though this is very rare.
モンスターへのシンボル抹殺処理ルーチン / Delete all non-unique/non-quest monsters of a given "type" from the level
power | 抹殺の威力 |
player_cast | プレイヤーの魔法によるものならば TRUE |
int take_hit | ( | int | damage_type, |
int | damage, | ||
cptr | kb_str, | ||
int | monspell | ||
) |
bool target_able | ( | int | m_idx | ) |
bool target_okay | ( | void | ) |
bool target_set | ( | int | mode | ) |
void target_set_prepare_look | ( | ) |
bool tele_town | ( | void | ) |
町間のテレポートを行うメインルーチン。
モンスターのテレポートアウェイ処理 / Teleport a monster, normally up to "dis" grids away.
m_idx | モンスターID |
dis | テレポート距離 |
mode | オプション |
Attempt to move the monster at least "dis/2" grids away. But allow variation to prevent infinite loops.
void teleport_away_followable | ( | int | m_idx | ) |
bool teleport_barrier | ( | int | m_idx | ) |
反テレポート結界の判定
m_idx | 判定の対象となるモンスターID |
void teleport_level | ( | int | m_idx | ) |
プレイヤー及びモンスターをレベルテレポートさせる / Teleport the player one level up or down (random when legal)
m_idx | テレポートの対象となるモンスターID(0ならばプレイヤー) / If m_idx <= 0, target is player. |
bool teleport_monster | ( | int | dir, |
int | distance | ||
) |
モンスター用テレポート処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
distance | 移動距離 |
void teleport_monster_to | ( | int | m_idx, |
int | ty, | ||
int | tx, | ||
int | power, | ||
u32b | mode | ||
) |
モンスターを指定された座標付近にテレポートする / Teleport monster next to a grid near the given location
m_idx | モンスターID |
ty | 目安Y座標 |
tx | 目安X座標 |
power | テレポート成功確率 |
mode | オプション |
void teleport_player | ( | int | dis, |
u32b | mode | ||
) |
プレイヤーのテレポート処理メインルーチン
dis | 基本移動距離 |
mode | オプション |
プレイヤーのテレポート先選定と移動処理 / Teleport the player to a location up to "dis" grids away.
dis | 基本移動距離 |
mode | オプション |
If no such spaces are readily available, the distance may increase. Try very hard to move the player at least a quarter that distance.
There was a nasty tendency for a long time; which was causing the player to "bounce" between two or three different spots because these are the only spots that are "far enough" way to satisfy the algorithm.
But this tendency is now removed; in the new algorithm, a list of candidates is selected first, which includes at least 50% of all floor grids within the distance, and any single grid in this list of candidates has equal possibility to be choosen as a destination.
void teleport_player_away | ( | int | m_idx, |
int | dis | ||
) |
プレイヤーのテレポートアウェイ処理 /
m_idx | アウェイを試みたプレイヤーID |
dis | テレポート距離 |
void teleport_player_to | ( | int | ny, |
int | nx, | ||
u32b | mode | ||
) |
プレイヤーを指定位置近辺にテレポートさせる Teleport player to a grid near the given location
ny | 目標Y座標 |
nx | 目標X座標 |
mode | オプションフラグ |
This function is slightly obsessive about correctness. This function allows teleporting into vaults (!)
bool teleport_swap | ( | int | dir | ) |
モンスターとの位置交換処理 / Switch position with a monster.
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool test_hit_fire | ( | int | chance, |
monster_type * | m_ptr, | ||
int | vis, | ||
char * | o_name | ||
) |
プレイヤーからモンスターへの射撃命中判定 / Determine if the player "hits" a monster (normal combat).
chance | 基本命中値 |
m_ptr | モンスターの構造体参照ポインタ |
vis | 目標を視界に捕らえているならばTRUEを指定 |
o_name | メッセージ表示時のモンスター名 |
bool test_hit_norm | ( | int | chance, |
int | ac, | ||
int | vis | ||
) |
プレイヤーからモンスターへの打撃命中判定 / Determine if the player "hits" a monster (normal combat).
chance | 基本命中値 |
ac | モンスターのAC |
vis | 目標を視界に捕らえているならばTRUEを指定 |
void text_to_ascii | ( | char * | buf, |
cptr | str | ||
) |
bool tgt_pt | ( | int * | x, |
int * | y | ||
) |
void toggle_inven_equip | ( | void | ) |
サブウィンドウに所持品、装備品リストの表示を行う / Flip "inven" and "equip" in any sub-windows
各種データテキストをトークン単位に分解する / Extract the first few "tokens" from a buffer
buf | データテキストの参照ポインタ |
num | トークンの数 |
tokens | トークンを保管する文字列参照ポインタ配列 |
mode | オプション |
This function uses "colon" and "slash" as the delimeter characters. We never extract more than "num" tokens. The "last" token may include "delimeter" characters, allowing the buffer to include a "string" token. We save pointers to the tokens in "tokens", and return the number found. Hack – Attempt to handle the 'c' character formalism Hack – An empty buffer, or a final delimeter, yields an "empty" token. Hack – We will always extract at least one token
errr top_twenty | ( | void | ) |
スコアの過去二十位内ランキングを表示する Enters a players name on a hi-score table, if "legal", and in any case, displays some relevant portion of the high score list.
Assumes "signals_ignore_tstp()" has been called.
void torch_dice | ( | object_type * | o_ptr, |
int * | dd, | ||
int * | ds | ||
) |
投擲時たいまつにダイスを与える。 Torches have special abilities when they are flaming.
o_ptr | 投擲するオブジェクトの構造体参照ポインタ |
dd | 特別なダイス数を返す参照ポインタ |
ds | 特別なダイス面数を返す参照ポインタ |
void torch_flags | ( | object_type * | o_ptr, |
u32b * | flgs | ||
) |
投擲時たいまつに投げやすい/焼棄/アンデッドスレイの特別効果を返す。 Torches have special abilities when they are flaming.
o_ptr | 投擲するオブジェクトの構造体参照ポインタ |
flgs | 特別に追加するフラグを返す参照ポインタ |
void torch_lost_fuel | ( | object_type * | o_ptr | ) |
投擲時命中したたいまつの寿命を縮める。 Torches have special abilities when they are flaming.
o_ptr | 投擲するオブジェクトの構造体参照ポインタ |
s16b tot_dam_aux | ( | object_type * | o_ptr, |
int | tdam, | ||
monster_type * | m_ptr, | ||
int | mode, | ||
bool | thrown | ||
) |
ダメージにスレイ要素を加える総合処理ルーチン / Extract the "total damage" from a given object hitting a given monster.
o_ptr | 使用武器オブジェクトの構造体参照ポインタ |
tdam | 現在算出途中のダメージ値 |
m_ptr | 目標モンスターの構造体参照ポインタ |
mode | 剣術のID |
thrown | 射撃処理ならばTRUEを指定する |
int tot_dam_aux_snipe | ( | int | mult, |
monster_type * | m_ptr | ||
) |
スナイバー技能のスレイ倍率計算を行う / Calcurate magnification of snipe technics
mult | スナイバー技能のスレイ効果以前に算出している多要素の倍率(/10倍) |
m_ptr | 目標となるモンスターの構造体参照ポインタ |
long total_points | ( | void | ) |
スコアを計算する / Hack – Calculates the total number of points earned -JWT-
bool trap_can_be_ignored | ( | int | feat | ) |
該当地形のトラップがプレイヤーにとって無効かどうかを判定して返す
feat | 地形ID |
bool trap_creation | ( | int | y, |
int | x | ||
) |
トラップ生成処理(起点から周囲1マス)
y | 起点Y座標 |
x | 起点X座標 |
bool tree_creation | ( | void | ) |
森林生成処理(プレイヤー中心に周囲1マス)
bool turn_evil | ( | int | dam | ) |
邪悪退散効果(プレイヤー視界範囲内) / Turn evil
dam | 効力 |
bool turn_monsters | ( | int | dam | ) |
全モンスター退散効果(プレイヤー視界範囲内) / Turn everyone
dam | 効力 |
ゲームターンからの実時間換算を行うための補正をかける
hoge | ゲームターン |
アンデッド種族は18:00からゲームを開始するので、この修正を予め行う。
bool turn_undead | ( | void | ) |
視界内のアンデッド・モンスターを恐怖させる処理 / Turn undead
bool unlite_area | ( | int | dam, |
int | rad | ||
) |
プレイヤー位置を中心にLITE_DARK属性を通じた消灯処理を行う / Hack – call light around the player Affect all monsters in the projection radius
dam | 威力 |
rad | 効果半径 |
void unlite_room | ( | int | y1, |
int | x1 | ||
) |
指定された部屋内を暗くする / Darken all rooms containing the given location
y1 | 指定Y座標 |
x1 | 指定X座標 |
void update_flow | ( | void | ) |
void update_lite | ( | void | ) |
void update_local_illumination | ( | int | y, |
int | x | ||
) |
指定された座標の照明状態を更新する / Update "local" illumination
y | y座標 |
x | x座標 |
void update_mon | ( | int | m_idx, |
bool | full | ||
) |
モンスターの各情報を更新する / This function updates the monster record of the given monster
m_idx | 更新するモンスター情報のID |
full | プレイヤーとの距離更新を行うならばtrue |
This involves extracting the distance to the player (if requested), and then checking for visibility (natural, infravision, see-invis, telepathy), updating the monster visibility flag, redrawing (or erasing) the monster when its visibility changes, and taking note of any interesting monster flags (cold-blooded, invisible, etc).
Note the new "mflag" field which encodes several monster state flags, including "view" for when the monster is currently in line of sight, and "mark" for when the monster is currently visible via detection.
The only monster fields that are changed here are "cdis" (the distance from the player), "ml" (visible to the player), and "mflag" (to maintain the "MFLAG_VIEW" flag).
Note the special "update_monsters()" function which can be used to call this function once for every monster.
Note the "full" flag which requests that the "cdis" field be updated, this is only needed when the monster (or the player) has moved.
Every time a monster moves, we must call this function for that monster, and update the distance, and the visibility. Every time the player moves, we must call this function for every monster, and update the distance, and the visibility. Whenever the player "state" changes in certain ways ("blindness", "infravision", "telepathy", and "see invisible"), we must call this function for every monster, and update the visibility.
Routines that change the "illumination" of a grid must also call this function for any monster in that grid, since the "visibility" of some monsters may be based on the illumination of their grid.
Note that this function is called once per monster every time the player moves. When the player is running, this function is one of the primary bottlenecks, along with "update_view()" and the "process_monsters()" code, so efficiency is important.
Note the optimized "inline" version of the "distance()" function.
A monster is "visible" to the player if (1) it has been detected by the player, (2) it is close to the player and the player has telepathy, or (3) it is close to the player, and in line of sight of the player, and it is "illuminated" by some combination of infravision, torch light, or permanent light (invisible monsters are only affected by "light" if the player can see invisible).
Monsters which are not on the current panel may be "visible" to the player, and their descriptions will include an "offscreen" reference. Currently, offscreen monsters cannot be targetted or viewed directly, but old targets will remain set. XXX XXX
The player can choose to be disturbed by several things, including "disturb_move" (monster which is viewable moves in some way), and "disturb_near" (monster which is "easily" viewable moves in some way). Note that "moves" includes "appears" and "disappears".
void update_mon_lite | ( | void | ) |
void update_monsters | ( | bool | full | ) |
単純に生存している全モンスターの更新処理を行う / This function simply updates all the (non-dead) monsters (see above).
full | 距離更新を行うならtrue |
void update_playtime | ( | void | ) |
実ゲームプレイ時間を更新する
void update_smart_learn | ( | int | m_idx, |
int | what | ||
) |
SMART(適格に攻撃を行う)モンスターの学習状況を更新する / Learn about an "observed" resistance.
m_idx | 更新を行う「モンスター情報ID |
what | 学習対象ID |
void update_smell | ( | void | ) |
void update_stuff | ( | void | ) |
p_ptr->update のフラグに応じた更新をまとめて行う / Handle "p_ptr->update"
更新処理の対象はプレイヤーの能力修正/光源寿命/HP/MP/魔法の学習状態、他多数の外界の状態判定。
void update_view | ( | void | ) |
int usleep | ( | huge | usecs | ) |
void verify_panel | ( | void | ) |
マップ描画のフォーカスを当てるべき座標を更新する
Given an row (y) and col (x), this routine detects when a move off the screen has occurred and figures new borders. -RAK- "Update" forces a "full update" to take place. The map is reprinted if necessary, and "TRUE" is returned.
int virtue_number | ( | int | type | ) |
プレイヤーの指定の徳が何番目のスロットに登録されているかを返す。 / Aux function
type | 確認したい徳のID |
void wall_breaker | ( | void | ) |
周辺破壊効果(プレイヤー中心)
bool wall_stone | ( | void | ) |
壁生成処理(プレイヤー中心に周囲1マス)
bool wall_to_mud | ( | int | dir, |
int | dam | ||
) |
岩石溶解処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
dam | 威力 |
bool warding_glyph | ( | void | ) |
守りのルーン設置処理 / Leave a "glyph of warding" which prevents monster movement
int weapon_exp_level | ( | int | weapon_exp | ) |
u32b weight_limit | ( | void | ) |
プレイヤーの所持重量制限を計算する / Computes current weight limit.
s16b wield_slot | ( | object_type * | o_ptr | ) |
オブジェクトの該当装備部位IDを返す / Determine which equipment slot (if any) an item likes
o_ptr | 名称を取得する元のオブジェクト構造体参照ポインタ |
void wilderness_gen | ( | void | ) |
広域マップの生成 / Build the wilderness area outside of the town.
void wilderness_gen_small | ( | void | ) |
広域マップの生成(簡易処理版) / Build the wilderness area.
-DG-
void window_stuff | ( | void | ) |
p_ptr->window のフラグに応じた更新をまとめて行う / Handle "p_ptr->window"
更新処理の対象はサブウィンドウ全般
void wipe_generate_cave_flags | ( | void | ) |
フロアに存在する全マスの記憶状態を初期化する / Wipe all unnecessary flags after cave generation
void wipe_m_list | ( | void | ) |
プレイヤーのフロア離脱に伴う全モンスター配列の消去 / Delete/Remove all the monsters when the player leaves the level
This is an efficient method of simulating multiple calls to the "delete_monster()" function, with no visual effects.
void wipe_o_list | ( | void | ) |
グローバルオブジェクト配列を初期化する / Delete all the items when player leaves the level
Hack – we clear the "c_ptr->o_idx" field for every grid, and the "m_ptr->next_o_idx" field for every monster, since we know we are clearing every object. Technically, we only clear those fields for grids/monsters containing objects, and we clear it once for every such object.
void wiz_dark | ( | void | ) |
void wiz_lite | ( | bool | ninja | ) |
bool wizard_lock | ( | int | dir | ) |
魔法の施錠処理
dir | 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする) |
bool word_of_recall | ( | void | ) |
帰還用メインルーチン
cptr your_alignment | ( | void | ) |
artifact_type* a_info |
char* a_name |
char* a_text |
bool abbrev_all |
bool abbrev_extra |
const activation_type activation_info[] |
アイテムの発動効果テーブル / Define flags, levels, values of activations
const byte adj_chr_chm[] |
魅力による魅了能力修正テーブル / Stat Table (CHR) – charm
const byte adj_chr_gold[] |
魅力による店での取引修正テーブル Stat Table (CHR) – payment percentages
const byte adj_con_fix[] |
耐久による基本HP自然治癒値テーブル / Stat Table (CON) – base regeneration rate
const byte adj_con_mhp[] |
耐久による基本HP自然治癒値テーブル / Stat Table (CON) – extra 1/4-hitpoints per level (plus 128)
const byte adj_dex_blow[] |
器用さによる攻撃回数インデックステーブル Stat Table (DEX) – index into the "blow" table
const byte adj_dex_dis[] |
器用さによるトラップ解除修正テーブル Stat Table (DEX) – disarming
const byte adj_dex_safe[] |
器用さによる盗難防止&体当たり成功判定修正テーブル Stat Table (DEX) – chance of avoiding "theft" and "falling"
const byte adj_dex_ta[] |
器用さによるAC修正テーブル Stat Table (DEX) – bonus to ac (plus 128)
const byte adj_dex_th[] |
器用度による命中修正テーブル Stat Table (DEX) – bonus to hit (plus 128)
const byte adj_int_dev[] |
知力による魔道具使用修正テーブル Stat Table (INT) – Magic devices
const byte adj_int_dis[] |
知力によるトラップ解除修正テーブル Stat Table (INT) – disarming
const byte adj_mag_fail[] |
知力/賢さによる最低魔法失敗率テーブル Stat Table (INT/WIS) – Minimum failure rate (percentage)
const byte adj_mag_mana[] |
知力/賢さによるMP修正テーブル Stat Table (INT/WIS) – extra 1/4-mana-points per level
const byte adj_mag_stat[] |
知力/賢さによる魔法失敗率修正テーブル Stat Table (INT/WIS) – Various things
const byte adj_mag_study[] |
知力/賢さによるレベル毎の習得可能魔法数テーブル Stat Table (INT/WIS) – Number of half-spells per level
const byte adj_str_blow[] |
腕力による攻撃回数算定値テーブル Stat Table (STR) – help index into the "blow" table
const byte adj_str_dig[] |
腕力による採掘能力修正値テーブル Stat Table (STR) – digging value
const byte adj_str_hold[] |
腕力による武器重量限界値テーブル Stat Table (STR) – weapon weight limit in pounds
const byte adj_str_td[] |
腕力によるダメージ修正テーブル Stat Table (STR) – bonus to dam (plus 128)
const byte adj_str_th[] |
腕力による命中修正テーブル Stat Table (STR) – bonus to hit (plus 128)
const byte adj_str_wgt[] |
腕力による基本所持重量値テーブル Stat Table (STR) – weight limit in deca-pounds
const byte adj_wis_sav[] |
賢さによる魔法防御修正テーブル Stat Table (WIS) – Saving throw
bool alert_trap_detect |
s16b alloc_kind_size |
alloc_entry* alloc_kind_table |
s16b alloc_race_size |
alloc_entry* alloc_race_table |
bool allow_debug_opts |
bool always_pickup |
bool always_repeat |
bool always_show_list |
bool always_small_levels |
bool ambush_flag |
byte angband_color_table[256][4] |
cptr ANGBAND_DIR |
cptr ANGBAND_DIR_APEX |
cptr ANGBAND_DIR_BONE |
cptr ANGBAND_DIR_DATA |
cptr ANGBAND_DIR_EDIT |
cptr ANGBAND_DIR_FILE |
cptr ANGBAND_DIR_HELP |
cptr ANGBAND_DIR_INFO |
cptr ANGBAND_DIR_PREF |
cptr ANGBAND_DIR_SAVE |
cptr ANGBAND_DIR_SCRIPT |
cptr ANGBAND_DIR_USER |
cptr ANGBAND_DIR_XTRA |
cptr ANGBAND_GRAF |
cptr ANGBAND_KEYBOARD |
const cptr angband_music_basic_name[MUSIC_BASIC_MAX] |
const cptr angband_sound_name[SOUND_MAX] |
cptr ANGBAND_SYS |
term* angband_term[8] |
const char angband_term_name[8][16] |
const player_seikaku* ap_ptr |
const arena_type arena_info[MAX_ARENA_MONS+2] |
闘技場のモンスターID及び報酬アイテムテーブル
bool arg_bigtile |
bool arg_fiddle |
bool arg_force_original |
bool arg_force_roguelike |
byte arg_graphics |
bool arg_monochrome |
bool arg_music |
bool arg_sound |
bool arg_wizard |
bool auto_more |
bool autochara |
autopick_type* autopick_list |
自動拾い/破壊設定構造体のポインタ配列
bool autoroller |
s16b autosave_freq |
bool autosave_l |
bool autosave_t |
s16b base_level |
s16b battle_mon[4] |
int battle_odds |
const byte blows_table[12][12] |
魅力による魅了能力修正テーブル / This table is used to help calculate the number of blows the player can make in a single round of attacks (one player turn) with a normal weapon.
This number ranges from a single blow/round for weak players to up to six blows/round for powerful warriors.
Note that certain artifacts and ego-items give "bonus" blows/round.
First, from the player class, we extract some values:
Warrior num = 6; mul = 5; div = MAX(70, weapon_weight); Berserker num = 6; mul = 7; div = MAX(70, weapon_weight); Mage num = 3; mul = 2; div = MAX(100, weapon_weight); Priest num = 5; mul = 3; div = MAX(100, weapon_weight); Mindcrafter num = 5; mul = 3; div = MAX(100, weapon_weight); Rogue num = 5; mul = 3; div = MAX(40, weapon_weight); Ranger num = 5; mul = 4; div = MAX(70, weapon_weight); Paladin num = 5; mul = 4; div = MAX(70, weapon_weight); Weaponsmith num = 5; mul = 5; div = MAX(150, weapon_weight); Warrior-Mage num = 5; mul = 3; div = MAX(70, weapon_weight); Chaos Warrior num = 5; mul = 4; div = MAX(70, weapon_weight); Monk num = 5; mul = 3; div = MAX(60, weapon_weight); Tourist num = 4; mul = 3; div = MAX(100, weapon_weight); Imitator num = 5; mul = 4; div = MAX(70, weapon_weight); Beastmaster num = 5; mul = 3; div = MAX(70, weapon_weight); Cavalry(Ride) num = 5; mul = 4; div = MAX(70, weapon_weight); Cavalry(Walk) num = 5; mul = 3; div = MAX(100, weapon_weight); Sorcerer num = 1; mul = 1; div = MAX(1, weapon_weight); Archer num = 4; mul = 2; div = MAX(70, weapon_weight); Magic eater num = 4; mul = 2; div = MAX(70, weapon_weight); ForceTrainer num = 4; mul = 2; div = MAX(60, weapon_weight); Mirror Master num = 3; mul = 3; div = MAX(100, weapon_weight); Ninja num = 4; mul = 1; div = MAX(20, weapon_weight);
To get "P", we look up the relevant "adj_str_blow[]" (see above), multiply it by "mul", and then divide it by "div". Increase P by 1 if you wield a weapon two-handed. Decrease P by 1 if you are a Ninja.
To get "D", we look up the relevant "adj_dex_blow[]" (see above),
The player gets "blows_table[P][D]" blows/round, as shown below, up to a maximum of "num" blows/round, plus any "bonus" blows/round.
bool bound_walls_perm |
bool browsing_movie |
building_type building[MAX_BLDG] |
bool can_save |
int cap_hp |
int cap_maxhp |
int cap_mon |
int cap_mspeed |
u16b cap_nickname |
bool carry_query_flag |
const s16b cdd[8] |
キーパッドの円環状方向配列 / Circular keypad direction array
bool center_player |
bool center_running |
const cptr chaos_patrons[MAX_PATRON] |
const int chaos_rewards[MAX_PATRON][20] |
カオスパトロンの報酬テーブル
const int chaos_stats[MAX_PATRON] |
カオスパトロンの報酬能力値テーブル
bool character_dungeon |
bool character_generated |
bool character_icky |
bool character_loaded |
bool character_saved |
bool character_xtra |
bool cheat_hear |
bool cheat_know |
bool cheat_live |
bool cheat_peek |
bool cheat_room |
bool cheat_save |
bool cheat_xtra |
bool check_abort |
const int chest_traps[64] |
箱のトラップテーブル
Each chest has a certain set of traps, determined by pval Each chest has a "pval" from 1 to the chest level (max 55) If the "pval" is negative then the trap has been disarmed The "pval" of a chest determines the quality of its treasure Note that disarming a trap on a chest also removes the lock.
const player_class class_info[MAX_CLASS] |
職業情報 / Player Classes
Title, {STR,INT,WIS,DEX,CON,CHR}, c_dis, c_dev, c_sav, c_stl, c_srh, c_fos, c_thn, c_thb, x_dis, x_dev, x_sav, x_stl, x_srh, x_fos, x_thn, x_thb, HD, Exp, pet_upkeep_div
bool closing_flag |
s16b coin_type |
const cptr color_char |
スクリーン表示色キャラクタ / Encode the screen colors
const cptr color_names[16] |
色名称テーブル / Hack – the "basic" color names (see "TERM_xxx")
s16b command_arg |
s16b command_cmd |
s16b command_dir |
s16b command_gap |
bool command_menu |
s16b command_new |
s16b command_rep |
s16b command_see |
s16b command_wrk |
bool compress_savefile |
bool confirm_destroy |
bool confirm_quest |
bool confirm_wear |
const cptr copyright[5] |
コピーライト情報 / Hack – Link a copyright message into the executable
const player_class* cp_ptr |
bool creating_savefile |
s16b cur_hgt |
s16b cur_wid |
dungeon_info_type* d_info |
char* d_name |
char* d_text |
const s16b ddd[9] |
キーパッドの方向を南から反時計回り順に列挙 / Global array for looping through the "keypad directions"
const s16b ddx[10] |
dddで定義した順にベクトルのX軸成分を定義 / Global arrays for converting "keypad direction" into offsets
const s16b ddx_cdd[8] |
cdd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]"
const s16b ddx_ddd[9] |
ddd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]"
const s16b ddy[10] |
dddで定義した順にベクトルのY軸成分を定義 / Global arrays for converting "keypad direction" into offsets
const s16b ddy_cdd[8] |
cdd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]"
const s16b ddy_ddd[9] |
ddd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]"
byte delay_factor |
bool depth_in_feet |
bool destroy_feeling |
bool destroy_identify |
bool destroy_items |
bool display_mutations |
bool display_path |
bool disturb_high |
bool disturb_minor |
bool disturb_move |
bool disturb_near |
bool disturb_panel |
bool disturb_pets |
bool disturb_state |
bool disturb_trap_detect |
const dragonbreath_type dragonbreath_info[] |
装備耐性に準じたブレス効果の選択テーブル / Define flags, effect type, name for dragon breath activation
s16b dun_level |
s32b dungeon_turn |
s32b dungeon_turn_limit |
byte dungeon_type |
ego_item_type* e_info |
char* e_name |
char* e_text |
bool easy_band |
bool empty_levels |
s16b energy_use |
s16b equip_cnt |
bool equippy_chars |
cptr err_str[PARSE_ERROR_MAX] |
エラーメッセージの名称定義 / Standard error message text
cptr essence_name[] |
エッセンス名テーブル / Essense names for Weapon smith
const cptr exp_level_str[5] |
技能値到達表記テーブル
bool exp_need |
bool expand_list |
const byte extract_energy[200] |
加速値による実質速度修正倍率テーブル / This table allows quick conversion from "speed" to "energy"
The basic function WAS ((S>=110) ? (S-110) : (100 / (120-S))) Note that table access is much quicker than computation.
Note that the table has been changed at high speeds. From "Slow (-40)" to "Fast (+30)" is pretty much unchanged, but at speeds above "Fast (+30)", one approaches an asymptotic effective limit of 50 energy per turn. This means that it is relatively easy to reach "Fast (+30)" and get about 40 energy per turn, but then speed becomes very "expensive", and you must get all the way to "Fast (+50)" to reach the point of getting 45 energy per turn. After that point, furthur increases in speed are more or less pointless, except to balance out heavy inventory.
Note that currently the fastest monster is "Fast (+30)".
It should be possible to lower the energy threshhold from 100 units to 50 units, though this may interact badly with the (compiled out) small random energy boost code. It may also tend to cause more "clumping" at high speeds.
feature_type* f_info |
char* f_name |
char* f_tag |
const u32b fake_spell_flags[4] |
魔法領域フラグ管理テーブル / Zangband uses this array instead of the spell flags table, as there are 5 realms of magic, each with 4 spellbooks and 8 spells per book – TY
s16b feat_black_market |
s16b feat_brake |
s16b feat_deep_lava |
s16b feat_deep_water |
s16b feat_dirt |
door_type feat_door[MAX_DOOR_TYPES] |
s16b feat_down_stair |
s16b feat_entrance |
s16b feat_explosive_rune |
s16b feat_floor |
s16b feat_flower |
s16b feat_glass_floor |
s16b feat_glass_wall |
s16b feat_glyph |
s16b feat_granite |
s16b feat_grass |
s16b feat_magma_vein |
s16b feat_mirror |
s16b feat_mountain |
s16b feat_none |
s16b feat_pattern_1 |
s16b feat_pattern_2 |
s16b feat_pattern_3 |
s16b feat_pattern_4 |
s16b feat_pattern_corrupted |
s16b feat_pattern_end |
s16b feat_pattern_exit |
s16b feat_pattern_old |
s16b feat_pattern_start |
s16b feat_permanent |
s16b feat_permanent_glass_wall |
s16b feat_quartz_vein |
s16b feat_rubble |
s16b feat_shallow_lava |
s16b feat_shallow_water |
s16b feat_swamp |
s16b feat_town |
s16b feat_trap_armageddon |
s16b feat_trap_open |
s16b feat_trap_piranha |
s16b feat_tree |
s16b feat_undetected |
s16b feat_up_stair |
s16b feat_wall_inner |
s16b feat_wall_outer |
s16b feat_wall_solid |
const byte feature_action_flags[FF_FLAG_MAX] |
地形状態フラグテーブル / The table of features' actions
s16b fill_type[100] |
bool find_cut |
bool find_ignore_doors |
bool find_ignore_stairs |
s16b floor_type[100] |
bool flush_disturb |
bool flush_failure |
bool fresh_after |
bool fresh_before |
bool fresh_message |
s32b friend_align |
funny_comments |
ELDRITCH HORROR効果時の幻覚時間延長を示す錯乱表現
funny_desc |
ELDRITCH HORROR効果時のモンスターの形容メッセージ(幻覚状態時)
const cptr game_inscriptions[] |
アイテムの価値記述テーブル / Table of game-generated inscriptions (indexed by the defines in defines.h).
– RG
bool generate_encounter |
bool get_com_no_macros |
monster_hook_type get_mon_num2_hook |
monster_hook_type get_mon_num_hook |
bool(* get_obj_num_hook)(int k_idx) |
s16b gf_color[MAX_GF] |
byte h_ver_extra |
byte h_ver_major |
byte h_ver_minor |
byte h_ver_patch |
s16b hack_m_idx |
s16b hack_m_idx_ii |
bool hack_mind |
bool hack_mutation |
const char hexsym[16] |
10進数から16進数への変換テーブル / Global array for converting numbers to uppercase hecidecimal digit This array can also be used to convert a number to an octal digit
int highscore_fd |
bool hilite_player |
byte hitpoint_warn |
horror_desc |
ELDRITCH HORROR効果時のモンスターの形容メッセージ(通常時)
const cptr ident_info[] |
シンボル解説テーブル / The table of "symbol info" – each entry is a string of the form "X:desc" where "X" is the trigger, and "desc" is the "info".
bool ignore_unview |
int init_flags |
bool inkey_base |
bool inkey_flag |
bool inkey_scan |
bool inkey_xtra |
s16b inven_cnt |
s16b inven_nxt |
object_type* inventory |
bool ironman_downward |
bool ironman_empty_levels |
bool ironman_nightmare |
bool ironman_rooms |
bool ironman_shops |
bool ironman_small_levels |
bool is_fired |
bool item_tester_full |
bool(* item_tester_hook)(object_type *o_ptr) |
bool item_tester_no_ryoute |
byte item_tester_tval |
object_kind* k_info |
char* k_name |
char* k_text |
int kakekin |
const kamae kamae_shurui[MAX_KAMAE] |
修行僧の構え能力テーブル
const kamae kata_shurui[MAX_KATA] |
剣術家の構え能力テーブル
cptr keymap_act[KEYMAP_MODES][256] |
s16b kubi_r_idx[MAX_KUBI] |
bool last_words |
bool leave_chest |
bool leave_corpse |
bool leave_equip |
bool leave_junk |
bool leave_special |
bool leave_wanted |
bool leave_worth |
int leaving_quest |
bool left_hander |
int level_up |
レベルアップの際に遅延してcalc_mana()関数上で上昇量を表示するかどうかの判定フラグ
const char listsym[] |
選択処理用キーコード / Global array for converting numbers to a logical list symbol
s16b lite_n |
bool lite_town |
s16b m_cnt |
player_magic* m_info |
monster_type* m_list |
s16b m_max |
const martial_arts ma_blows[MAX_MA] |
マーシャルアーツ打撃テーブル
cptr* macro__act |
char* macro__buf |
bool* macro__cmd |
s16b macro__num |
cptr* macro__pat |
cptr macro_modifier_chr |
&x# で指定されるマクロトリガーに関する情報を記録する文字列ポインタ
cptr macro_modifier_name[MAX_MACRO_MOD] |
マクロ上で取り扱う特殊キーを文字列上で表現するためのフォーマットを記録した文字列ポインタ配列
cptr macro_template |
Angband設定ファイルのT: タグ情報から読み込んだ長いTコードを処理するために利用する文字列ポインタ
cptr macro_trigger_keycode[2][MAX_MACRO_TRIG] |
マクロの内容
cptr macro_trigger_name[MAX_MACRO_TRIG] |
マクロのトリガーコード
byte mana_warn |
bool manual_haggle |
u16b max_a_idx |
int max_autopick |
現在登録している自動拾い/破壊設定の数
u16b max_d_idx |
s16b* max_dlv |
u16b max_e_idx |
u16b max_f_idx |
s16b max_floor_id |
u16b max_k_idx |
u16b max_m_idx |
int max_macrotrigger |
現在登録中のマクロ(トリガー)の数
int max_max_autopick |
自動拾い/破壊設定の限界数
u16b max_o_idx |
u16b max_quests |
u16b max_r_idx |
u16b max_towns |
u16b max_v_idx |
s32b max_wild_x |
s32b max_wild_y |
const mbe_info_type mbe_info[] |
モンスターの打撃効力テーブル / The table of monsters' blow effects
char* message__buf |
u16b message__head |
u16b message__last |
u16b message__next |
u16b* message__ptr |
u16b message__tail |
const player_race mimic_info[] |
変身種族情報
mind_power mind_powers[5] |
特殊技能の一覧テーブル
byte misc_to_attr[256] |
char misc_to_char[256] |
bool mon_fight |
s16b mon_lite_n |
s16b mon_lite_x[MON_LITE_MAX] |
s16b mon_lite_y[MON_LITE_MAX] |
u32b mon_odds[4] |
bool monk_armour_aux |
const int monk_ave_damage[PY_MAX_LEVEL+1][3] |
修行僧のターンダメージ算出テーブル
bool monk_notify_aux |
s16b monster_level |
const monster_power monster_powers[MAX_MONSPELLS] |
青魔法テーブル
level, smana, fail, manedam, manefail, use_stat, name
const cptr monster_powers_short[MAX_MONSPELLS] |
モンスター魔法名テーブル
const player_magic* mp_ptr |
s16b* mproc_list[MAX_MTIMED] |
s16b mproc_max[MAX_MTIMED] |
bool msg_flag |
bool multi_rew |
int mutant_regenerate_mod |
bool new_mane |
bool now_damaged |
s16b now_message |
s16b num_repro |
bool numpad_as_cursorkey |
s16b o_cnt |
object_type* o_list |
s16b o_max |
s16b object_level |
s32b old_battle |
s32b old_turn |
bool opening_chest |
u32b option_flag[8] |
const option_type option_info[] |
オプションテーブル / Available Options
u32b option_mask[8] |
bool other_query_flag |
bool over_exert |
const owner_type owners[MAX_STORES][MAX_OWNERS] |
闘技場のモンスターID及び報酬アイテムテーブル / Store owners (exactly four "possible" owners per store, chosen randomly)
{ name, purse, max greed, min greed, haggle_per, tolerance, race, unused }
Lifted extra shopkeepers from CthAngband (don't you just love open source development? ;-)). Since this gave less than 32 unique names for some shops, those have their first x names copied to reach 32.
For the weapon and armour shops, several owners have a limit of 5k.
I want to do 50k owners, but the purse is currently s16b. Perhaps we should just store 1/10th of the purse?
player_type* p_ptr |
s16b panel_col_max |
s16b panel_col_min |
s16b panel_col_prt |
s16b panel_row_max |
s16b panel_row_min |
s16b panel_row_prt |
int pet_t_m_idx |
bool plain_descriptions |
bool plain_pickup |
char player_base[32] |
int player_egid |
int player_euid |
const s32b player_exp[PY_MAX_LEVEL] |
基本必要経験値テーブル / Base experience levels, may be adjusted up for race and/or class
const s32b player_exp_a[PY_MAX_LEVEL] |
基本必要強化値テーブル(アンドロイド専用)
char player_name[32] |
const cptr player_title[MAX_CLASS][PY_MAX_LEVEL/5] |
職業とレベル毎のプレイヤー称号テーブル / Class titles for the player.
The player gets a new title every five levels, so each class needs only ten titles total.
int player_uid |
u32b playtime |
bool powerup_home |
bool preserve_mode |
birther previous_char |
int project_length |
投射の射程距離
int px |
int py |
s16b quark__num |
cptr* quark__str |
quest_type* quest |
char quest_text[10][80] |
int quest_text_line |
bool quick_messages |
monster_race* r_info |
char* r_name |
char* r_text |
const player_race race_info[MAX_RACES] |
種族情報 / Player Races
Title, {STR,INT,WIS,DEX,CON,CHR}, r_dis, r_dev, r_sav, r_stl, r_srh, r_fos, r_thn, r_thb, hitdie, exp base, Age (Base, Mod), Male (Hgt, Wgt), Female (Hgt, Wgt) infra, class-choices
const s32b realm_choices1[] |
職業毎に選択可能な第一領域魔法テーブル
const s32b realm_choices2[] |
職業毎に選択可能な第二領域魔法テーブル
const cptr realm_names[] |
bool record_arena |
bool record_buy |
bool record_danger |
bool record_destroy_uniq |
bool record_fix_art |
bool record_fix_quest |
bool record_ident |
bool record_maxdepth |
bool record_named_pet |
char record_o_name[MAX_NLEN] |
bool record_rand_art |
bool record_rand_quest |
bool record_sell |
bool record_stair |
s32b record_turn |
s16b redraw_n |
byte redraw_x[REDRAW_MAX] |
byte redraw_y[REDRAW_MAX] |
bool reinit_wilderness |
bool repair_monsters |
bool repair_objects |
bool reset_concent |
s16b resting |
int riding_t_m_idx |
bool ring_bell |
bool rogue_like_commands |
const player_race* rp_ptr |
s16b running |
skill_table* s_info |
u32b saved_floor_file_sign |
saved_floor_type saved_floors[MAX_SAVED_FLOORS] |
char savefile[1024] |
char savefile_base[40] |
cptr screen_dump |
u32b seed_flavor |
u32b seed_town |
const player_seikaku seikaku_info[MAX_SEIKAKU] |
性格情報 / Player Character
int sel_monster |
const player_sex sex_info[MAX_SEXES] |
性別表記 / Player Sexes
Title, Winner
byte sf_extra |
u16b sf_lives |
u16b sf_saves |
u32b sf_system |
u32b sf_when |
bool shimmer_monsters |
bool shimmer_objects |
bool show_ammo_crit_ratio |
bool show_ammo_detail |
bool show_ammo_no_crit |
bool show_item_graph |
bool show_labels |
bool show_weights |
s16b signal_count |
const cptr silly_attacks[MAX_SILLY_ATTACK] |
幻覚時の打撃記述テーブル / Weird melee attack types when hallucinating
bool small_levels |
bool smart_cheat |
bool smart_learn |
int snipe_type |
const player_sex* sp_ptr |
const cptr spell_names[VALID_REALM][32] |
bool stack_force_costs |
bool stack_force_notes |
u32b start_time |
const cptr stat_names[6] |
能力値テーブル / Abbreviations of healthy stats
const cptr stat_names_reduced[6] |
能力値テーブル(能力低下時) / Abbreviations of damaged stats
bool sukekaku |
char summon_kin_type |
s16b target_col |
bool target_pet |
s16b target_row |
s16b target_who |
const magic_type technic_info[NUM_TECHNIC][32] |
歌、剣術、呪術領域情報テーブル
s16b temp_n |
s16b today_mon |
int total_friends |
town_type* town |
int tsuri_dir |
s32b turn |
s32b turn_limit |
byte tval_to_attr[128] |
char tval_to_char[128] |
bool use_bigtile |
bool use_command |
bool use_graphics |
bool use_menu |
bool use_music |
bool use_old_target |
bool use_sound |
vault_type* v_info |
char* v_name |
char* v_text |
bool vanilla_town |
bool view_bright_lite |
bool view_granite_lite |
s16b view_n |
bool view_perma_grids |
bool view_reduce_view |
bool view_special_lite |
bool view_torch_grids |
bool view_unsafe_grids |
bool view_yellow_lite |
cptr virtue[MAX_VIRTUE] |
徳の名称 / The names of the virtues
wilderness_type** wilderness |
u32b window_flag[8] |
const cptr window_flag_desc[32] |
サブウィンドウ名称テーブル
Certain "screens" always use the main screen, including News, Birth, Dungeon, Tomb-stone, High-scores, Macros, Colors, Visuals, Options.
Later, special flags may allow sub-windows to "steal" stuff from the main window, including File dump (help), File dump (artifacts, uniques), Character screen, Small scale map, Previous Messages, Store screen, etc.
The "ctrl-i" (tab) command flips the "Display inven/equip" and "Display equip/inven" flags for all windows.
The "ctrl-g" command (or pseudo-command) should perhaps grab a snapshot of the main screen into any interested windows.
u32b window_mask[8] |
s16b world_monster |
bool world_player |
bool write_level |
byte z_major |
byte z_minor |
byte z_patch |