OSDN Git Service

[Refactor] #37353 screen_dump を report.c/h へ移動.
[hengband/hengband.git] / src / variable.c
index cc594c4..ccdbe16 100644 (file)
 #include "angband.h"
 #include "geometry.h"
 
-/*!
- * コピーライト情報 /
- * Hack -- Link a copyright message into the executable
- */
-const concptr copyright[5] =
-{
-       "Copyright (c) 1989 James E. Wilson, Robert A. Keoneke",
-       "",
-       "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."
-};
-
-int max_macrotrigger = 0; /*!< 現在登録中のマクロ(トリガー)の数 */
-concptr macro_template = NULL; /*!< Angband設定ファイルのT: タグ情報から読み込んだ長いTコードを処理するために利用する文字列ポインタ */
-concptr macro_modifier_chr; /*!< &x# で指定されるマクロトリガーに関する情報を記録する文字列ポインタ */
-concptr macro_modifier_name[MAX_MACRO_MOD]; /*!< マクロ上で取り扱う特殊キーを文字列上で表現するためのフォーマットを記録した文字列ポインタ配列 */
-concptr macro_trigger_name[MAX_MACRO_TRIG]; /*!< マクロのトリガーコード */
-concptr macro_trigger_keycode[2][MAX_MACRO_TRIG];  /*!< マクロの内容 */
-
-int level_up = 0; /*!< レベルアップの際に遅延してcalc_mana()関数上で上昇量を表示するかどうかの判定フラグ */
-
-
-/* 
- * 自動拾い/破壊設定のリストに関する変数 / List for auto-picker/destroyer entries
- */
-int max_autopick = 0; /*!< 現在登録している自動拾い/破壊設定の数 */
-int max_max_autopick = 0; /*!< 自動拾い/破壊設定の限界数 */
-autopick_type *autopick_list = NULL; /*!< 自動拾い/破壊設定構造体のポインタ配列 */
-
-/*
- * Savefile version
- */
-byte h_ver_major; /* Savefile version for Hengband 1.1.1 and later */
-byte h_ver_minor;
-byte h_ver_patch;
-byte h_ver_extra;
-
-byte sf_extra;         /* Savefile's encoding key */
-
-byte z_major;           /* Savefile version for Hengband */
-byte z_minor;
-byte z_patch;
-
-/*
- * Savefile information
- */
-u32b sf_system;                        /* Operating system info */
-u32b sf_when;                  /* Time when savefile created */
-u16b sf_lives;                 /* Number of past "lives" with this file */
-u16b sf_saves;                 /* Number of "saves" during this life */
-
-/*
- * Run-time arguments
- */
-bool arg_fiddle;                       /* Command arg -- Request fiddle mode */
-bool arg_wizard;                       /* Command arg -- Request wizard mode */
-bool arg_sound;                                /* Command arg -- Request special sounds */
-bool arg_music;                                /* Command arg -- Request special musics */
-byte arg_graphics;                     /* Command arg -- Request graphics mode */
-bool arg_monochrome;           /* Command arg -- Request monochrome mode */
-bool arg_force_original;       /* Command arg -- Request original keyset */
-bool arg_force_roguelike;      /* Command arg -- Request roguelike keyset */
-bool arg_bigtile = FALSE;      /* Command arg -- Request big tile mode */
-
-/*
- * Various things
- */
-bool character_generated;      /* The character exists */
-bool character_dungeon;                /* The character has a dungeon */
-bool character_loaded;         /* The character was loaded from a savefile */
-bool character_saved;          /* The character was just saved to a savefile */
-
-bool character_icky;           /* The game is in an icky full screen mode */
-bool character_xtra;           /* The game is in an icky startup mode */
-
-bool creating_savefile;                /* New savefile is currently created */
-
 s16b command_cmd;              /* Current "Angband Command" */
 
 COMMAND_ARG command_arg;       /*!< 各種コマンドの汎用的な引数として扱う / Gives argument of current command */
@@ -108,15 +30,8 @@ bool msg_flag;                      /* Used in msg_print() for "buffering" */
 
 s16b running;                  /* Current counter for running, if any */
 
-bool invoking_midnight_curse; /*!< 悪夢モード時の真夜中太古の呪い発生処理フラグ */
-
 GAME_TURN old_battle;
 
-bool use_sound;                        /* The "sound" mode is enabled */
-bool use_music;                        /* The "music" mode is enabled */
-bool use_graphics;             /* The "graphics" mode is enabled */
-bool use_bigtile = FALSE;
-
 s16b signal_count;             /* Hack -- Count interupts */
 
 bool inkey_base;               /* See the "inkey()" function */
@@ -127,21 +42,13 @@ bool get_com_no_macros = FALSE;    /* Expand macros in "get_com" or not */
 
 OBJECT_SUBTYPE_VALUE coin_type;        /* Hack -- force coin type */
 
-bool opening_chest;            /* Hack -- prevent chest generation */
-
-bool shimmer_monsters; /* Hack -- optimize multi-hued monsters */
-bool shimmer_objects;  /* Hack -- optimize multi-hued objects */
-
 bool repair_monsters;  /* Hack -- optimize detect monsters */
 bool repair_objects;   /* Hack -- optimize detect objects */
 
-bool is_loading_now;   /*!< ロード直後にcalc_bonus()時の徳変化、及びsanity_blast()による異常を抑止する */
-
 MONSTER_IDX hack_m_idx = 0;    /* Hack -- see "process_monsters()" */
 MONSTER_IDX hack_m_idx_ii = 0;
 
 bool multi_rew = FALSE;
-char summon_kin_type;   /* Hack, by Julian Lighton: summon 'relatives' */
 
 int total_friends = 0;
 int leaving_quest = 0;
@@ -224,42 +131,6 @@ STR_OFFSET quark__num;
  */
 concptr *quark__str;
 
-
-/*
- * The next "free" index to use
- */
-u32b message__next;
-
-/*
- * The index of the oldest message (none yet)
- */
-u32b message__last;
-
-/*
- * The next "free" offset
- */
-u32b message__head;
-
-/*
- * The offset to the oldest used char (none yet)
- */
-u32b message__tail;
-
-/*
- * The array of offsets, by index [MESSAGE_MAX]
- */
-u32b *message__ptr;
-
-/*
- * The array of chars, by offset [MESSAGE_BUF]
- */
-char *message__buf;
-
-BIT_FLAGS option_flag[8]; //!< The array of normal options
-BIT_FLAGS option_mask[8]; //!< The array of normal options
-BIT_FLAGS window_flag[8]; //!< The array of window options
-BIT_FLAGS window_mask[8]; //!< The array of window options
-
 /*
  * The array of window pointers
  */
@@ -419,53 +290,6 @@ FLOOR_IDX max_floor_id;
  */
 u32b saved_floor_file_sign;
 
-/*
- * Maximum number of towns
- */
-TOWN_IDX max_towns;
-
-/*
- * The towns [max_towns]
- */
-town_type *town_info;
-
-/*
- * The size of "alloc_kind_table" (at most max_k_idx * 4)
- */
-s16b alloc_kind_size;
-
-/*
- * The entries in the "kind allocator table"
- */
-alloc_entry *alloc_kind_table;
-
-
-/*
- * The size of "alloc_race_table" (at most max_r_idx)
- */
-s16b alloc_race_size;
-
-/*
- * The entries in the "race allocator table"
- */
-alloc_entry *alloc_race_table;
-
-
-/*
- * Specify attr/char pairs for visual special effects
- * Be sure to use "index & 0x7F" to avoid illegal access
- */
-TERM_COLOR misc_to_attr[256];
-SYMBOL_CODE misc_to_char[256];
-
-
-/*
- * Specify attr/char pairs for p_ptr->inventory_list items (by tval)
- * Be sure to use "index & 0x7F" to avoid illegal access
- */
-TERM_COLOR tval_to_attr[128];
-SYMBOL_CODE tval_to_char[128];
-
 
 /*
  * Keymaps for each "mode" associated with each keypress.
@@ -486,68 +310,6 @@ player_type p_body;
  */
 player_type *p_ptr = &p_body;
 
-/*
- * Pointer to the player tables
- * (sex, race, class, magic)
- */
-const player_sex *sp_ptr;
-const player_race *rp_ptr;
-const player_class *cp_ptr;
-const player_seikaku *ap_ptr;
-
-
-/*
- * The last character rolled,
- * holded for quick start
- */
-birther previous_char;
-
-/*
- * The object kind arrays
- */
-object_kind *k_info;
-char *k_name;
-char *k_text;
-
-/*
- * The ego-item arrays
- */
-ego_item_type *e_info;
-char *e_name;
-char *e_text;
-
-
-/*
- * The monster race arrays
- */
-monster_race *r_info;
-char *r_name;
-char *r_text;
-
-concptr ANGBAND_SYS = "xxx"; //!< Hack -- The special Angband "System Suffix" This variable is used to choose an appropriate "pref-xxx" file
-
-
-#ifdef JP
-concptr ANGBAND_KEYBOARD = "JAPAN"; //!< Hack -- The special Angband "Keyboard Suffix" This variable is used to choose an appropriate macro-trigger definition
-#else
-concptr ANGBAND_KEYBOARD = "0";
-#endif
-
-concptr ANGBAND_GRAF = "ascii"; //!< Hack -- The special Angband "Graphics Suffix" This variable is used to choose an appropriate "graf-xxx" file
-concptr ANGBAND_DIR; //!< Path name: The main "lib" directory This variable is not actually used anywhere in the code
-concptr ANGBAND_DIR_APEX; //!< High score files (binary) These files may be portable between platforms
-concptr ANGBAND_DIR_BONE; //!< Bone files for player ghosts (ascii) These files are portable between platforms
-concptr ANGBAND_DIR_DATA; //!< Binary image files for the "*_info" arrays (binary) These files are not portable between platforms
-concptr ANGBAND_DIR_EDIT; //!< Textual template files for the "*_info" arrays (ascii) These files are portable between platforms
-concptr ANGBAND_DIR_SCRIPT; //!< Script files These files are portable between platforms.
-concptr ANGBAND_DIR_FILE; //!< Various extra files (ascii) These files may be portable between platforms
-concptr ANGBAND_DIR_HELP; //!< Help files (normal) for the online help (ascii) These files are portable between platforms
-concptr ANGBAND_DIR_INFO; //!< Help files (spoilers) for the online help (ascii) These files are portable between platforms
-concptr ANGBAND_DIR_PREF; //!< Default user "preference" files (ascii) These files are rarely portable between platforms
-concptr ANGBAND_DIR_SAVE; //!< Savefiles for current characters (binary)
-concptr ANGBAND_DIR_USER; //!< User "preference" files (ascii) These files are rarely portable between platforms
-concptr ANGBAND_DIR_XTRA; //!< Various extra files (binary) These files are rarely portable between platforms
-
 
 /*
  * Here is a "pseudo-hook" used during calls to "get_item()" and
@@ -578,57 +340,6 @@ monsterrace_hook_type get_mon_num2_hook;
 bool (*get_obj_num_hook)(KIND_OBJECT_IDX k_idx);
 
 /*
- * Maximum number of quests
- */
-QUEST_IDX max_q_idx;
-
-/*
- * Maximum number of monsters in r_info.txt
- */
-MONRACE_IDX max_r_idx;
-
-/*
- * Maximum number of items in k_info.txt
- */
-KIND_OBJECT_IDX max_k_idx;
-
-/*
- * Maximum number of vaults in v_info.txt
- */
-VAULT_IDX max_v_idx;
-
-/*
- * Maximum number of terrain features in f_info.txt
- */
-FEAT_IDX max_f_idx;
-
-/*
- * Maximum number of artifacts in a_info.txt
- */
-ARTIFACT_IDX max_a_idx;
-
-/*
- * Maximum number of ego-items in e_info.txt
- */
-EGO_IDX max_e_idx;
-
-/*
- * Maximum number of dungeon in e_info.txt
- */
-DUNGEON_IDX max_d_idx;
-
-
-/*
- * Quest text
- */
-char quest_text[10][80];
-
-/*
- * Current line of the quest text
- */
-int quest_text_line;
-
-/*
  * Flags for initialization
  */
 int init_flags;
@@ -642,47 +353,21 @@ int highscore_fd = -1;
 bool can_save = FALSE;        /* Game can be saved */
 
 
-int cap_mon;
-int cap_mspeed;
-HIT_POINT cap_hp;
-HIT_POINT cap_maxhp;
-STR_OFFSET cap_nickname;
-
-MONRACE_IDX battle_mon[4];
-int sel_monster;
-int battle_odds;
-PRICE kakekin;
-u32b mon_odds[4];
-
 MONSTER_IDX pet_t_m_idx;
 MONSTER_IDX riding_t_m_idx;
 
 MONSTER_IDX today_mon;
 
-bool write_level;
-
 u32b start_time;
 
 bool sukekaku;
 bool new_mane;
 
-bool mon_fight;
-
-bool generate_encounter;
-
-concptr screen_dump = NULL;
-
-
 /*
  * Which dungeon ?
  */
 DEPTH *max_dlv;
 
-FEAT_IDX feat_wall_outer;
-FEAT_IDX feat_wall_inner;
-FEAT_IDX feat_wall_solid;
-FEAT_IDX feat_ground_type[100], feat_wall_type[100];
-
 COMMAND_CODE now_message;
 bool use_menu;
 
@@ -696,12 +381,8 @@ int server_port;
 /* for movie */
 bool browsing_movie;
 
-#ifdef TRAVEL
-/* for travel */
-travel_type travel;
-#endif
 
 /* for snipers */
 bool reset_concent = FALSE;   /* Concentration reset flag */
-bool is_fired = FALSE;
+