#define FAKE_VERSION 0
#define FAKE_VER_MAJOR 12 /*!< ゲームのバージョン番号定義(メジャー番号 + 10) */
-#define FAKE_VER_MINOR 1 /*!< ゲームのバージョン番号定義(マイナー番号) */
-#define FAKE_VER_PATCH 5 /*!< ゲームのバージョン番号定義(パッチ番号) */
+#define FAKE_VER_MINOR 2 /*!< ゲームのバージョン番号定義(マイナー番号) */
+#define FAKE_VER_PATCH 0 /*!< ゲームのバージョン番号定義(パッチ番号) */
+#define FAKE_VER_EXTRA 34 /*!< ゲームのバージョン番号定義(エクストラ番号) */
+ /*!
+ * @brief バージョンが開発版が安定版かを返す
+ */
+#define IS_STABLE_VERSION (FAKE_VER_MINOR % 2 == 0 && FAKE_VER_EXTRA == 0)
+
/*!
* @brief セーブファイル上のバージョン定義(メジャー番号) / "Savefile Version Number" for Hengband 1.1.1 and later
* @details
+ * 当面FAKE_VER_*を参照しておく。
* <pre>
* First three digits may be same as the Program Version. But not
* always same. It means that newer version may preserves lower
* Upper compatibility is always guaranteed.
* </pre>
*/
-#define H_VER_MAJOR 2 /*!< セーブファイル上のバージョン定義(メジャー番号) */
-#define H_VER_MINOR 1 /*!< セーブファイル上のバージョン定義(マイナー番号) */
-#define H_VER_PATCH 2 /*!< セーブファイル上のバージョン定義(パッチ番号) */
-#define H_VER_EXTRA 4 /*!< セーブファイル上のバージョン定義(エクストラ番号) */
+#define H_VER_MAJOR (FAKE_VER_MAJOR-10) /*!< セーブファイル上のバージョン定義(メジャー番号) */
+#define H_VER_MINOR FAKE_VER_MINOR /*!< セーブファイル上のバージョン定義(マイナー番号) */
+#define H_VER_PATCH FAKE_VER_PATCH /*!< セーブファイル上のバージョン定義(パッチ番号) */
+#define H_VER_EXTRA FAKE_VER_EXTRA /*!< セーブファイル上のバージョン定義(エクストラ番号) */
#define ANGBAND_2_8_1 /*!< Angband 2.8.1以降から有効な処理分岐を定義 */
#define ZANGBAND /*!< Zangband 以降から有効な処理分岐を定義 */
* @brief generate.cで用いられる基本的なブロック数単位(垂直方向)
* Number of grids in each block (vertically) Probably hard-coded to 11, see "generate.c"
*/
-#define BLOCK_HGT 11
+#define BLOCK_HGT 11
/*!
* @brief generate.cで用いられる基本的なブロック数単位(水平方向)
* Number of grids in each block (horizontally) Probably hard-coded to 11, see "generate.c"
*/
-#define BLOCK_WID 11
+#define BLOCK_WID 11
/*!
* @brief 表示上の基本的なパネル単位(垂直方向、BLOCK_HGTの倍数で設定すること)
* Number of grids in each panel (vertically) Must be a multiple of BLOCK_HGT
*/
-#define PANEL_HGT 11
+#define PANEL_HGT 11
/*!
* @brief 表示上の基本的なパネル単位(水平方向、BLOCK_WIDの倍数で設定すること)
* Number of grids in each panel (horizontally) Must be a multiple of BLOCK_WID
*/
-#define PANEL_WID 33
+#define PANEL_WID 33
/*!
* @brief 表示上の基本的なブロック単位(垂直方向、PANEL_HGTの倍数で設定すること)
* Number of grids used to display the dungeon (vertically). Must be a multiple of 11, probably hard-coded to 22.
*/
-#define SCREEN_HGT 22
+#define SCREEN_HGT 22
/*!
* @brief 表示上の基本的なブロック単位(水平方向、PANEL_WIDの倍数で設定すること)
* Number of grids used to display the dungeon (horizontally). Must be a multiple of 33, probably hard-coded to 66.
*/
-#define SCREEN_WID 66
+#define SCREEN_WID 66
/*!
* @brief 表示上のダンジョンの最大垂直サイズ(SCREEN_HGTの3倍が望ましい)
* Maximum dungeon height in grids, must be a multiple of SCREEN_HGT, probably hard-coded to SCREEN_HGT * 3.
*/
-#define MAX_HGT 66
+#define MAX_HGT 66
/*!
* @brief 表示上のダンジョンの最大水平サイズ(SCREEN_WIDの3倍が望ましい)
* Maximum dungeon width in grids, must be a multiple of SCREEN_WID, probably hard-coded to SCREEN_WID * 3.
*/
-#define MAX_WID 198
+#define MAX_WID 198
/*
* Quest constants
*/
-#define MIN_RANDOM_QUEST 40 /*<! ランダムクエストを割り当てるクエストIDの開始値 */
-#define MAX_RANDOM_QUEST 49 /*<! ランダムクエストを割り当てるクエストIDの終了値 */
+#define MIN_RANDOM_QUEST 40 /*<! ランダムクエストを割り当てるクエストIDの開始値 */
+#define MAX_RANDOM_QUEST 49 /*<! ランダムクエストを割り当てるクエストIDの終了値 */
/*!
* @brief 該当IDが固定クエストかどうかを判定する / Check is the quest index is "fixed"
*/
#define is_fixed_quest_idx(Q_IDX) (((Q_IDX) < MIN_RANDOM_QUEST) || ((Q_IDX) > MAX_RANDOM_QUEST))
-#define QUEST_TOWER1 5 /*<! 塔クエスト(第1階層)に割り振るクエストID */
-#define QUEST_TOWER2 6 /*<! 塔クエスト(第2階層)に割り振るクエストID */
-#define QUEST_TOWER3 7 /*<! 塔クエスト(第3階層)に割り振るクエストID */
-#define QUEST_OBERON 8 /*<! オベロン打倒クエストに割り振るクエストID */
-#define QUEST_SERPENT 9 /*<! サーペント打倒クエストに割り振るクエストID */
+#define QUEST_TOWER1 5 /*<! 塔クエスト(第1階層)に割り振るクエストID */
+#define QUEST_TOWER2 6 /*<! 塔クエスト(第2階層)に割り振るクエストID */
+#define QUEST_TOWER3 7 /*<! 塔クエスト(第3階層)に割り振るクエストID */
+#define QUEST_OBERON 8 /*<! オベロン打倒クエストに割り振るクエストID */
+#define QUEST_SERPENT 9 /*<! サーペント打倒クエストに割り振るクエストID */
/*
* Arena constants
*/
-#define MAX_ARENA_MONS 41 /*<! 闘技場のイベント件数 -KMW- */
+#define MAX_ARENA_MONS 41 /*<! 闘技場のイベント件数 -KMW- */
#define ARENA_DEFEATED_OLD_VER (-(MAX_SHORT)) /*<! 旧バージョンの闘技場敗北定義 */
-#define MAX_STORES 10 /*!< store.c用の店舗の種類最大数 / Total number of stores (see "store.c", etc) */
-#define MAX_BLDG 32 /*!< 施設の種類最大数 / Number of buildings */
+#define MAX_STORES 10 /*!< store.c用の店舗の種類最大数 / Total number of stores (see "store.c", etc) */
+#define MAX_BLDG 32 /*!< 施設の種類最大数 / Number of buildings */
/*
* Store types
/*
* Misc constants
*/
-#define TOWN_DAWN 10000 /*!< 1日分のターン / Number of ticks from dawn to dawn XXX */
-#define TURNS_PER_TICK 10L /*!< Number of energy-gain-turns per ticks */
-#define MAX_DAYS 20000 /*!< 内部処理中で保持される最大日数 / Maximum days */
-#define BREAK_GLYPH 550 /*!< 守りのルーンの強靭度 / Rune of protection resistance */
-#define BREAK_MINOR_GLYPH 299 /*!< 爆発のルーンの発動しやすさ / For explosive runes */
-#define BTH_PLUS_ADJ 3 /*!< 武器経験値及びプレイヤーの打撃/射撃能力に応じた修正値倍率 / Adjust BTH per plus-to-hit */
-#define MON_MULT_ADJ 8 /*!< モンスターの増殖しにくさの基本倍率 / High value slows multiplication */
-#define MON_SUMMON_ADJ 2 /*!< 現在未使用 Adjust level of summoned creatures */
-#define MON_DRAIN_LIFE 2 /*!< モンスターの打撃によるプレイヤーの経験値吸収基本倍率(%) / Percent of player exp drained per hit */
-#define USE_DEVICE 3 /*!< 魔道具の最低失敗基準値 x> Harder devices x< Easier devices */
+#define TOWN_DAWN 10000 /*!< 1日分のターン / Number of ticks from dawn to dawn XXX */
+#define TURNS_PER_TICK 10L /*!< 時間経過処理を行うターン数の刻み / Number of energy-gain-turns per ticks */
+#define INN_DUNGEON_TURN_ADJ 10 /*!< 宿屋で時間をつぶした場合に増えるdungeon_turnの倍率 */
+#define MAX_DAYS 20000 /*!< 内部処理中で保持される最大日数 / Maximum days */
+#define BREAK_GLYPH 550 /*!< 守りのルーンの強靭度 / Rune of protection resistance */
+#define BREAK_MINOR_GLYPH 299 /*!< 爆発のルーンの発動しやすさ / For explosive runes */
+#define BTH_PLUS_ADJ 3 /*!< 武器経験値及びプレイヤーの打撃/射撃能力に応じた修正値倍率 / Adjust BTH per plus-to-hit */
+#define MON_MULT_ADJ 8 /*!< モンスターの増殖しにくさの基本倍率 / High value slows multiplication */
+#define MON_SUMMON_ADJ 2 /*!< 現在未使用 Adjust level of summoned creatures */
+#define MON_DRAIN_LIFE 2 /*!< モンスターの打撃によるプレイヤーの経験値吸収基本倍率(%) / Percent of player exp drained per hit */
+#define USE_DEVICE 3 /*!< 魔道具の最低失敗基準値 x> Harder devices x< Easier devices */
/* "Biases" for random artifact gen */
/*
* Follow distances
*/
-#define PET_CLOSE_DIST 1
-#define PET_FOLLOW_DIST 6
-#define PET_SEEK_DIST 10
-#define PET_DESTROY_DIST 255
-#define PET_SPACE_DIST (-10)
-#define PET_AWAY_DIST (-25)
+#define PET_CLOSE_DIST 1 /*!<ペットの行動範囲…近くにいろ */
+#define PET_FOLLOW_DIST 6 /*!<ペットの行動範囲…ついて来い */
+#define PET_SEEK_DIST 10 /*!<ペットの行動範囲…特になし? */
+#define PET_DESTROY_DIST 255 /*!<ペットの行動範囲…敵を見つけて倒せ */
+#define PET_SPACE_DIST (-10) /*!<ペットの行動範囲…少し離れていろ */
+#define PET_AWAY_DIST (-25) /*!<ペットの行動範囲…離れていろ */
-#define PF_OPEN_DOORS 0x0001
-#define PF_PICKUP_ITEMS 0x0002
-#define PF_TELEPORT 0x0004
-#define PF_ATTACK_SPELL 0x0008
-#define PF_SUMMON_SPELL 0x0010
-#define PF_BALL_SPELL 0x0020
-#define PF_RYOUTE 0x0040
+#define PF_OPEN_DOORS 0x0001 /*!< ペットの行動許可…ドアを開けてよい */
+#define PF_PICKUP_ITEMS 0x0002 /*!< ペットの行動許可…アイテムを拾ってよい */
+#define PF_TELEPORT 0x0004 /*!< ペットの行動許可…テレポート魔法を使ってよい */
+#define PF_ATTACK_SPELL 0x0008 /*!< ペットの行動許可…攻撃魔法を使ってよい */
+#define PF_SUMMON_SPELL 0x0010 /*!< ペットの行動許可…召喚魔法を使ってよい */
+#define PF_BALL_SPELL 0x0020 /*!< ペットの行動許可…ボール魔法でプレイヤーを巻き込んでよい */
+#define PF_RYOUTE 0x0040 /*!< プレイヤーの騎乗フラグ…武器を片手で持つ */
#define CAN_TWO_HANDS_WIELDING() (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE))
-/*
- * There is a 1/20 (5%) chance of inflating the requested object_level
+/*!
+ * @brief ベースアイテム生成階層が加算される確率
+ * @details
+ * There is a 1/10 (10%) chance of inflating the requested object_level
* during the creation of an object (see "get_obj_num()" in "object.c").
* Lower values yield better objects more often.
*/
#define GREAT_OBJ 10
-/*
+/*!
+ * @brief 深層モンスターが生成される(NASTY生成)の基本確率(1/x)
+ * @details
* There is a 1/25 (4%) chance of inflating the requested monster_level
* during the creation of a monsters (see "get_mon_num()" in "monster.c").
* Lower values yield harder monsters more often.
*/
#define NASTY_MON_BASE 25
-#define NASTY_MON_MAX 3
-#define NASTY_MON_PLUS_MAX 25
+#define NASTY_MON_MAX 3 /*!< 深層モンスターが1フロアに生成される最大数 */
+#define NASTY_MON_PLUS_MAX 25 /*!< 深層モンスターの階層加算最大量 */
-#define PENETRATE_INVULNERABILITY 13 /*! 無敵化が破られる確率(1/x) / 1/x chance of hurting even if invulnerable! */
+#define PENETRATE_INVULNERABILITY 13 /*!< 無敵化が破られる確率(1/x) / 1/x chance of hurting even if invulnerable! */
/*
* Refueling constants
*/
-#define FUEL_TORCH 5000 /*! 松明の基本寿命値 / Maximum amount of fuel in a torch */
-#define FUEL_LAMP 15000 /*! ランタンの基本寿命値 / Maximum amount of fuel in a lantern */
+#define FUEL_TORCH 5000 /*!< 松明の基本寿命値 / Maximum amount of fuel in a torch */
+#define FUEL_LAMP 15000 /*!< ランタンの基本寿命値 / Maximum amount of fuel in a lantern */
/*
* More maximum values
#define MIN_M_ALLOC_TD 4 /*!< 街(昼間)の最低住人配置数 / The town starts out with 4 residents during the day */
#define MIN_M_ALLOC_TN 8 /*!< 街(夜間)の最低住人配置数 / The town starts out with 8 residents during the night */
-
/*!
* @brief モンスター増殖の最大数
* @details
*/
#define MAX_REPRO 100
-
/*
* Player constants
*/
/*** Screen Locations ***/
+#define VER_INFO_ROW 3 //!< タイトル表記(行)
+
/*
* Some screen locations for various display routines
* Currently, row 8 and 15 are the only "blank" rows.
* Originally from UnAngband, and modified into TR-like style in Hengband
*/
+#define FF_LOS 0 /*!< 視界が通る地形である */
+#define FF_PROJECT 1 /*!< 飛び道具が通過できる地形である */
+#define FF_MOVE 2 /*!< 移動可能な地形である */
+#define FF_PLACE 3 /*!< モンスター配置をしても良い地形である(cave_empty_bold/cave_empty_gridで利用) */
+#define FF_DROP 4 /*!< アイテムを落としてよい地形である */
+#define FF_SECRET 5 /*!< 隠し扉やトラップが潜んでいる地形である */
+#define FF_NOTICE 6 /*!< 何か興味を引くものがある地形である(シフトキー+方向で走行中の時に止まる基準) */
+#define FF_REMEMBER 7 /*!< 常に記憶対象となる地形である(記憶喪失時に忘れたりしなくなる) */
+#define FF_OPEN 8 /*!< 開けるコマンドの対象となる地形である */
+#define FF_CLOSE 9 /*!< 閉じるコマンドの対象となる地形である */
+#define FF_BASH 10 /*!< 体当たりコマンドの対象となる地形である */
+#define FF_SPIKE 11 /*!< くさびを打つコマンドの対象となる地形である */
+#define FF_DISARM 12 /*!< 解除コマンドの対象となる地形である */
+#define FF_STORE 13 /*!< 店舗の入口となる地形である */
+#define FF_TUNNEL 14 /*!< 魔王変化などで掘り進められる地形である */
+#define FF_MAY_HAVE_GOLD 15 /*!< 何か財宝を隠した可能性のある地形である?(f_infoに使用している地形なし) */
+#define FF_HAS_GOLD 16 /*!< 財宝を含んだ地形である */
+#define FF_HAS_ITEM 17 /*!< アイテムを含んだ地形である */
+#define FF_DOOR 18 /*!< ドアのある地形である */
+#define FF_TRAP 19 /*!< トラップのある地形である */
+#define FF_STAIRS 20 /*!< 階段のある地形である */
+#define FF_GLYPH 21 /*!< 守りのルーンが張られた地形である */
+#define FF_LESS 22 /*!< 階上に通じる地形である */
+#define FF_MORE 23 /*!< 階下に通じる地形である */
+#define FF_AVOID_RUN 24 /*!< 自動移動機能時に障害として迂回すべき地形である */
+#define FF_FLOOR 25 /*!< 床のある地形である */
+#define FF_WALL 26 /*!< 壁のある地形である */
+#define FF_PERMANENT 27 /*!< 絶対に破壊できない永久地形である */
+/* #define FF_XXX00 28 未定義 */
+/* #define FF_XXX01 29 未定義 */
+/* #define FF_XXX02 30 未定義 */
+#define FF_HIT_TRAP 31 /*!< トラップのある地形である(TRAPと常に重複している?) */
+/* #define FF_BRIDGE 32 未使用 */
+/* #define FF_RIVER 33 未使用 */
+/* #define FF_LAKE 34 未使用 */
+/* #define FF_BRIDGED 35 未使用 */
+/* #define FF_COVERED 36 未使用 */
+#define FF_GLOW 37 /*!< 常に光っている地形である */
+#define FF_ENSECRET 38 /*!< 不明(f_info.txt上で利用している地形がない) */
+#define FF_WATER 39 /*!< 水のある地形である */
+#define FF_LAVA 40 /*!< 溶岩のある地形である */
+#define FF_SHALLOW 41 /*!< 浅い地形である */
+#define FF_DEEP 42 /*!< 深い地形である */
+/* #define FF_FILLED 43 */ /*!< 未使用 */
+#define FF_HURT_ROCK 44 /*!< 岩石溶解の対象となる地形である */
+/* #define FF_HURT_FIRE 45 */ /*!< 未使用 */
+/* #define FF_HURT_COLD 46 */ /*!< 未使用 */
+/* #define FF_HURT_ACID 47 */ /*!< 未使用 */
+/* #define FF_ICE 48 */ /*!< 未使用 */
+/* #define FF_ACID 49 */ /*!< 未使用 */
+/* #define FF_OIL 50 */ /*!< 未使用 */
+/* #define FF_XXX04 51 */ /*!< 未使用 */
+/* #define FF_CAN_CLIMB 52 */ /*!< 未使用 */
+#define FF_CAN_FLY 53 /*!< 飛行可能な地形である */
+#define FF_CAN_SWIM 54 /*!< 泳ぐことが可能な地形である */
+#define FF_CAN_PASS 55 /*!< 通過可能な地形である */
+/* #define FF_CAN_OOZE 56 */ /*!< 未使用 */
+#define FF_CAN_DIG 57 /*!< 掘削コマンドの対象となる地形である */
+/* #define FF_HIDE_ITEM 58 未使用 */
+/* #define FF_HIDE_SNEAK 59 未使用 */
+/* #define FF_HIDE_SWIM 60 未使用 */
+/* #define FF_HIDE_DIG 61 未使用 */
+/* #define FF_KILL_HUGE 62 未使用 */
+/* #define FF_KILL_MOVE 63 未使用 */
+/* #define FF_PICK_TRAP 64 未使用 */
+/* #define FF_PICK_DOOR 65 未使用 */
+/* #define FF_ALLOC 66 未使用 */
+/* #define FF_CHEST 67 未使用 */
+/* #define FF_DROP_1D2 68 未使用 */
+/* #define FF_DROP_2D2 69 未使用 */
+/* #define FF_DROP_GOOD 70 未使用 */
+/* #define FF_DROP_GREAT 71 未使用 */
+/* #define FF_HURT_POIS 72 未使用 */
+/* #define FF_HURT_ELEC 73 未使用 */
+/* #define FF_HURT_WATER 74 未使用 */
+/* #define FF_HURT_BWATER 75 未使用 */
+/* #define FF_USE_FEAT 76 未使用 */
+/* #define FF_GET_FEAT 77 未使用 */
+/* #define FF_GROUND 78 未使用 */
+/* #define FF_OUTSIDE 79 未使用 */
+/* #define FF_EASY_HIDE 80 未使用 */
+/* #define FF_EASY_CLIMB 81 未使用 */
+/* #define FF_MUST_CLIMB 82 未使用 */
+#define FF_TREE 83 /*!< 木の生えた地形である */
+/* #define FF_NEED_TREE 84 未使用 */
+/* #define FF_BLOOD 85 未使用 */
+/* #define FF_DUST 86 未使用 */
+/* #define FF_SLIME 87 未使用 */
+#define FF_PLANT 88 /*!< 植物の生えた地形である */
+/* #define FF_XXX2 89 未定義 */
+/* #define FF_INSTANT 90 未使用 */
+/* #define FF_EXPLODE 91 未使用 */
+/* #define FF_TIMED 92 未使用 */
+/* #define FF_ERUPT 93 未使用 */
+/* #define FF_STRIKE 94 未使用 */
+/* #define FF_SPREAD 95 未使用 */
+#define FF_SPECIAL 96 /*!< クエストやダンジョンに関わる特別な地形である */
+#define FF_HURT_DISI 97 /*!< 分解属性の対象となる地形である */
+#define FF_QUEST_ENTER 98 /*!< クエストの入り口である */
+#define FF_QUEST_EXIT 99 /*!< クエストの出口である */
+#define FF_QUEST 100 /*!< クエストに関する地形である */
+#define FF_SHAFT 101 /*!< 坑道である。(2階層移動する階段である) */
+#define FF_MOUNTAIN 102 /*!< ダンジョンの山地形である */
+#define FF_BLDG 103 /*!< 施設の入り口である */
+#define FF_MINOR_GLYPH 104 /*!< 爆発のルーンのある地形である */
+#define FF_PATTERN 105 /*!< パターンのある地形である */
+#define FF_TOWN 106 /*!< 広域マップ用の街がある地形である */
+#define FF_ENTRANCE 107 /*!< 広域マップ用のダンジョンがある地形である */
+#define FF_MIRROR 108 /*!< 鏡使いの鏡が張られた地形である */
+#define FF_UNPERM 109 /*!< 破壊不能な地形である(K:フラグ向け?) */
+#define FF_TELEPORTABLE 110 /*!< テレポート先の対象となる地形である */
+#define FF_CONVERT 111 /*!< 地形生成処理中の疑似フラグ */
+#define FF_GLASS 112 /*!< ガラス製の地形である */
-#define FF_LOS 0
-#define FF_PROJECT 1
-#define FF_MOVE 2
-#define FF_PLACE 3
-#define FF_DROP 4
-#define FF_SECRET 5
-#define FF_NOTICE 6
-#define FF_REMEMBER 7
-#define FF_OPEN 8
-#define FF_CLOSE 9
-#define FF_BASH 10
-#define FF_SPIKE 11
-#define FF_DISARM 12
-#define FF_STORE 13
-#define FF_TUNNEL 14
-#define FF_MAY_HAVE_GOLD 15
-#define FF_HAS_GOLD 16
-#define FF_HAS_ITEM 17
-#define FF_DOOR 18
-#define FF_TRAP 19
-#define FF_STAIRS 20
-#define FF_GLYPH 21
-#define FF_LESS 22
-#define FF_MORE 23
-#define FF_AVOID_RUN 24
-#define FF_FLOOR 25
-#define FF_WALL 26
-#define FF_PERMANENT 27
-/* #define FF_XXX00 28 */
-/* #define FF_XXX01 29 */
-/* #define FF_XXX02 30 */
-#define FF_HIT_TRAP 31
-
-/* #define FF_BRIDGE 32 */
-/* #define FF_RIVER 33 */
-/* #define FF_LAKE 34 */
-/* #define FF_BRIDGED 35 */
-/* #define FF_COVERED 36 */
-#define FF_GLOW 37
-#define FF_ENSECRET 38
-#define FF_WATER 39
-#define FF_LAVA 40
-#define FF_SHALLOW 41
-#define FF_DEEP 42
-/* #define FF_FILLED 43 */
-#define FF_HURT_ROCK 44
-/* #define FF_HURT_FIRE 45 */
-/* #define FF_HURT_COLD 46 */
-/* #define FF_HURT_ACID 47 */
-/* #define FF_ICE 48 */
-/* #define FF_ACID 49 */
-/* #define FF_OIL 50 */
-/* #define FF_XXX04 51 */
-/* #define FF_CAN_CLIMB 52 */
-#define FF_CAN_FLY 53
-#define FF_CAN_SWIM 54
-#define FF_CAN_PASS 55
-/* #define FF_CAN_OOZE 56 */
-#define FF_CAN_DIG 57
-/* #define FF_HIDE_ITEM 58 */
-/* #define FF_HIDE_SNEAK 59 */
-/* #define FF_HIDE_SWIM 60 */
-/* #define FF_HIDE_DIG 61 */
-/* #define FF_KILL_HUGE 62 */
-/* #define FF_KILL_MOVE 63 */
-
-/* #define FF_PICK_TRAP 64 */
-/* #define FF_PICK_DOOR 65 */
-/* #define FF_ALLOC 66 */
-/* #define FF_CHEST 67 */
-/* #define FF_DROP_1D2 68 */
-/* #define FF_DROP_2D2 69 */
-/* #define FF_DROP_GOOD 70 */
-/* #define FF_DROP_GREAT 71 */
-/* #define FF_HURT_POIS 72 */
-/* #define FF_HURT_ELEC 73 */
-/* #define FF_HURT_WATER 74 */
-/* #define FF_HURT_BWATER 75 */
-/* #define FF_USE_FEAT 76 */
-/* #define FF_GET_FEAT 77 */
-/* #define FF_GROUND 78 */
-/* #define FF_OUTSIDE 79 */
-/* #define FF_EASY_HIDE 80 */
-/* #define FF_EASY_CLIMB 81 */
-/* #define FF_MUST_CLIMB 82 */
-#define FF_TREE 83
-/* #define FF_NEED_TREE 84 */
-/* #define FF_BLOOD 85 */
-/* #define FF_DUST 86 */
-/* #define FF_SLIME 87 */
-#define FF_PLANT 88
-/* #define FF_XXX2 89 */
-/* #define FF_INSTANT 90 */
-/* #define FF_EXPLODE 91 */
-/* #define FF_TIMED 92 */
-/* #define FF_ERUPT 93 */
-/* #define FF_STRIKE 94 */
-/* #define FF_SPREAD 95 */
-
-#define FF_SPECIAL 96
-#define FF_HURT_DISI 97
-#define FF_QUEST_ENTER 98
-#define FF_QUEST_EXIT 99
-#define FF_QUEST 100
-#define FF_SHAFT 101
-#define FF_MOUNTAIN 102
-#define FF_BLDG 103
-#define FF_MINOR_GLYPH 104
-#define FF_PATTERN 105
-#define FF_TOWN 106
-#define FF_ENTRANCE 107
-#define FF_MIRROR 108
-#define FF_UNPERM 109
-#define FF_TELEPORTABLE 110
-#define FF_CONVERT 111
-#define FF_GLASS 112
#define FF_FLAG_MAX 113
#define FF_FLAG_SIZE (1 + ((FF_FLAG_MAX - 1) / 32))
#define GF_SOUND 21
#define GF_CONFUSION 22
#define GF_FORCE 23
-#define GF_INERTIA 24
+#define GF_INERTIAL 24
#define GF_MANA 26
#define GF_METEOR 27
#define GF_ICE 28
* Therefore it's very easy to add a lot of new flags; no one need to
* worry about in which variable a new flag should be put, nor to
* modify a huge number of files all over the source directory at once
- * to add new flag variables such as flags4, flags5, etc...
+ * to add new flag variables such as flags4, a_ability_flags1, etc...
*
* All management of flags is now treated using a set of macros
* instead of bit operations.
* Monster bit flags of racial resistances
* Note: Resist confusion was merged to RFR_NO_CONF
*/
-#define RFR_IM_ACID 0x00000001 /* Resist acid */
-#define RFR_IM_ELEC 0x00000002 /* Resist elec */
-#define RFR_IM_FIRE 0x00000004 /* Resist fire */
-#define RFR_IM_COLD 0x00000008 /* Resist cold */
-#define RFR_IM_POIS 0x00000010 /* Resist poison */
+#define RFR_IM_ACID 0x00000001 /* Immunity acid */
+#define RFR_IM_ELEC 0x00000002 /* Immunity elec */
+#define RFR_IM_FIRE 0x00000004 /* Immunity fire */
+#define RFR_IM_COLD 0x00000008 /* Immunity cold */
+#define RFR_IM_POIS 0x00000010 /* Immunity poison */
#define RFR_RES_LITE 0x00000020 /* Resist lite */
#define RFR_RES_DARK 0x00000040 /* Resist dark */
#define RFR_RES_NETH 0x00000080 /* Resist nether */
*/
#define is_seen(A) \
((bool)((A)->ml && (!ignore_unview || p_ptr->inside_battle || \
- (player_can_see_bold((A)->fy, (A)->fx) && projectable(py, px, (A)->fy, (A)->fx)))))
+ (player_can_see_bold((A)->fy, (A)->fx) && projectable(p_ptr->y, p_ptr->x, (A)->fy, (A)->fx)))))
/*** Option Definitions ***/
* Determine if player is on this grid
*/
#define player_bold(Y,X) \
- (((Y) == py) && ((X) == px))
+ (((Y) == p_ptr->y) && ((X) == p_ptr->x))
/*
* Grid based version of "player_bold()"
*/
#define player_grid(C) \
- ((C) == &cave[py][px])
+ ((C) == &cave[p_ptr->y][p_ptr->x])
#define cave_have_flag_bold(Y,X,INDEX) \
#define MUSIC_BASIC_QUEST 15
#define MUSIC_BASIC_ARENA 16
#define MUSIC_BASIC_BATTLE 17
-#define MUSIC_BASIC_MAX 18 /*!< BGM定義の最大数 */
+#define MUSIC_BASIC_QUEST_CLEAR 18
+#define MUSIC_BASIC_FINAL_QUEST_CLEAR 19
+#define MUSIC_BASIC_AMBUSH 20
+#define MUSIC_BASIC_MAX 21 /*!< BGM定義の最大数 */
/*** Sound constants ***/
/*
* Quest status
*/
-#define QUEST_STATUS_UNTAKEN 0
-#define QUEST_STATUS_TAKEN 1
-#define QUEST_STATUS_COMPLETED 2
-#define QUEST_STATUS_REWARDED 3
-#define QUEST_STATUS_FINISHED 4
-#define QUEST_STATUS_FAILED 5
-#define QUEST_STATUS_FAILED_DONE 6
-#define QUEST_STATUS_STAGE_COMPLETED 7
+#define QUEST_STATUS_UNTAKEN 0 /*!< クエストステータス状態:未発生*/
+#define QUEST_STATUS_TAKEN 1 /*!< クエストステータス状態:発生中*/
+#define QUEST_STATUS_COMPLETED 2 /*!< クエストステータス状態:達成*/
+#define QUEST_STATUS_REWARDED 3 /*!< クエストステータス状態:報酬受け取り前*/
+#define QUEST_STATUS_FINISHED 4 /*!< クエストステータス状態:完了*/
+#define QUEST_STATUS_FAILED 5 /*!< クエストステータス状態:失敗*/
+#define QUEST_STATUS_FAILED_DONE 6 /*!< クエストステータス状態:失敗完了*/
+#define QUEST_STATUS_STAGE_COMPLETED 7 /*!< クエストステータス状態:ステージ毎達成*/
/*
* Quest type
*/
-#define QUEST_TYPE_KILL_LEVEL 1
-#define QUEST_TYPE_KILL_ANY_LEVEL 2
-#define QUEST_TYPE_FIND_ARTIFACT 3
-#define QUEST_TYPE_FIND_EXIT 4
-#define QUEST_TYPE_KILL_NUMBER 5
-#define QUEST_TYPE_KILL_ALL 6
-#define QUEST_TYPE_RANDOM 7
-#define QUEST_TYPE_TOWER 8
+#define QUEST_TYPE_KILL_LEVEL 1 /*!< クエスト目的: 特定のユニークモンスターを倒す */
+#define QUEST_TYPE_KILL_ANY_LEVEL 2 /*!< クエスト目的: イベント受託時点でランダムで選ばれた特定のユニークモンスターを倒す */
+#define QUEST_TYPE_FIND_ARTIFACT 3 /*!< クエスト目的: 特定のアーティファクトを発見する */
+#define QUEST_TYPE_FIND_EXIT 4 /*!< クエスト目的: 脱出する */
+#define QUEST_TYPE_KILL_NUMBER 5 /*!< クエスト目的: モンスターを無差別に特定数倒す */
+#define QUEST_TYPE_KILL_ALL 6 /*!< クエスト目的: エリア中のすべてのモンスターを全て倒す */
+#define QUEST_TYPE_RANDOM 7 /*!< クエスト目的: ランダムクエストとして選ばれたユニーク1体を倒す */
+#define QUEST_TYPE_TOWER 8 /*!< クエスト目的: 複数のエリアの全てのモンスターを倒す */
/*
* Initialization flags
/*
* Quest flags
*/
-#define QUEST_FLAG_SILENT 0x01 /* no messages fro completion */
-#define QUEST_FLAG_PRESET 0x02 /* quest is outside the main dungeon */
-#define QUEST_FLAG_ONCE 0x04 /* quest is marked finished after leaving */
-#define QUEST_FLAG_TOWER 0x08 /* Tower quest is special */
+#define QUEST_FLAG_SILENT 0x01 /*!< クエストフラグ: クエスト進行に関する情報表示を抑止する / no messages from completion */
+#define QUEST_FLAG_PRESET 0x02 /*!< クエストフラグ: クエストがダンジョン外で発生する / quest is outside the main dungeon */
+#define QUEST_FLAG_ONCE 0x04 /*!< クエストフラグ: クエストがフロアを出た時点で完了する / quest is marked finished after leaving */
+#define QUEST_FLAG_TOWER 0x08 /*!< クエストフラグ: クエスト:塔の形式で進行する / Tower quest is special */
/*
* Available graphic modes
#define PARSE_ERROR_UNDEFINED_TERRAIN_TAG 10
#define PARSE_ERROR_MAX 11
-#define GINOU_SUDE 0
-#define GINOU_NITOURYU 1
-#define GINOU_RIDING 2
+#define GINOU_SUDE 0
+#define GINOU_NITOURYU 1
+#define GINOU_RIDING 2
+#define GINOU_MAX 10
/* Proficiency level */
#define EXP_LEVEL_UNSKILLED 0
#define NIKKI_WIZ_TELE 20
#define NIKKI_NAMED_PET 21
#define NIKKI_PAT_TELE 22
+#define NIKKI_ART_SCROLL 23
#define RECORD_NAMED_PET_NAME 0
#define RECORD_NAMED_PET_UNNAME 1