OSDN Git Service

[Refactor] #37353 型の置換。 / Type replacement.
[hengband/hengband.git] / src / defines.h
index cf69ac5..ec8e7db 100644 (file)
@@ -53,7 +53,7 @@
 #define FAKE_VER_MAJOR 12 /*!< ゲームのバージョン番号定義(メジャー番号 + 10) */
 #define FAKE_VER_MINOR 2 /*!< ゲームのバージョン番号定義(マイナー番号) */
 #define FAKE_VER_PATCH 1 /*!< ゲームのバージョン番号定義(パッチ番号) */
-#define FAKE_VER_EXTRA 5 /*!< ゲームのバージョン番号定義(エクストラ番号) */
+#define FAKE_VER_EXTRA 6 /*!< ゲームのバージョン番号定義(エクストラ番号) */
 
 
  /*!
 #define CAN_TWO_HANDS_WIELDING() (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE))
 
 
-/*!
- * @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   /*!< 深層モンスターが1フロアに生成される最大数  */
-#define NASTY_MON_PLUS_MAX 25  /*!< 深層モンスターの階層加算最大量 */
-
-#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 */
-
-/*
- * More maximum values
- */
-#define MAX_SIGHT       20      /*!< プレイヤーの最大視界範囲(マス) / Maximum view distance */
-#define MAX_RANGE       (p_ptr->inside_battle ? 36 : 18)      /*!< プレイヤーの攻撃射程(マス) / Maximum range (spells, etc) */
-#define AAF_LIMIT       100     /*!< モンスターの限界感知範囲(マス) Limit of sensing radius */
-
-#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
- * A monster can only "multiply" (reproduce) if there are fewer than 100
- * monsters on the level capable of such spontaneous reproduction.  This
- * is a hack which prevents the "m_list[]" array from exploding due to
- * reproducing monsters.  Messy, but necessary.
- */
-#define MAX_REPRO       100
-
 /*
  * Player constants
  */
 /*
  * Indexes of the various "stats" (hard-coded by savefiles, etc).
  */
-#define A_STR   0
-#define A_INT   1
-#define A_WIS   2
-#define A_DEX   3
-#define A_CON   4
-#define A_CHR   5
+#define A_STR 0
+#define A_INT 1
+#define A_WIS 2
+#define A_DEX 3
+#define A_CON 4
+#define A_CHR 5
+#define A_MAX 6
 
 /*
  * Player sex constants (hard-coded by save-files, arrays, etc)
 #define FF_LAVA          40             /*!< 溶岩のある地形である */
 #define FF_SHALLOW       41             /*!< 浅い地形である */
 #define FF_DEEP          42             /*!< 深い地形である */
-/* #define FF_FILLED        43 */       /*!< 未使用 */
+#define FF_POISON_PUDDLE 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_COLD_PUDDLE   48             /*!< 冷気溜まりがある */
+#define FF_ACID_PUDDLE   49             /*!< 酸溜まりがある */
+/* #define FF_OIL           50          /*!< 未使用 */
+#define FF_ELEC_PUDDLE   51             /*!< 接地部が帯電している */
 /* #define FF_CAN_CLIMB     52 */       /*!< 未使用 */
 #define FF_CAN_FLY       53             /*!< 飛行可能な地形である */
 #define FF_CAN_SWIM      54             /*!< 泳ぐことが可能な地形である */
 #define ACT_XTRA_SPEED          96
 #define ACT_WRAITH              97
 #define ACT_INVULN              98
-#define ACT_HELO                99
-#define ACT_HELO_SPEED          100
+#define ACT_HERO                99
+#define ACT_HERO_SPEED          100
 #define ACT_RESIST_ACID         101
 #define ACT_RESIST_FIRE         102
 #define ACT_RESIST_COLD         103
 
 
 /*
- * Special cave grid flags
+ * 特殊なマス状態フラグ / Special cave grid flags
  */
-#define CAVE_MARK       0x0001    /* memorized feature */
-#define CAVE_GLOW       0x0002    /* self-illuminating */
-#define CAVE_ICKY       0x0004    /* part of a vault */
-#define CAVE_ROOM       0x0008    /* part of a room */
-#define CAVE_LITE       0x0010    /* lite flag  */
-#define CAVE_VIEW       0x0020    /* view flag */
-#define CAVE_TEMP       0x0040    /* temp flag */
-#define CAVE_XTRA       0x0080    /* misc flag */
-#define CAVE_MNLT       0x0100    /* Illuminated by monster */
-#define CAVE_MNDK       0x8000    /* Darken by monster */
+#define CAVE_MARK       0x0001    /*!< 現在プレイヤーの記憶に収まっている / memorized feature */
+#define CAVE_GLOW       0x0002    /*!< マス自体が光源を持っている / self-illuminating */
+#define CAVE_ICKY       0x0004    /*!< 生成されたVaultの一部である / part of a vault */
+#define CAVE_ROOM       0x0008    /*!< 生成された部屋の一部である / part of a room */
+#define CAVE_LITE       0x0010    /*!< 現在光に照らされている / lite flag  */
+#define CAVE_VIEW       0x0020    /*!< 現在プレイヤーの視界に収まっている / view flag */
+#define CAVE_TEMP       0x0040    /*!< 光源に関する処理のアルゴリズム用記録フラグ / temp flag */
+#define CAVE_XTRA       0x0080    /*!< 視界に関する処理のアルゴリズム用記録フラグ(update_view()等参照) / misc flag */
+#define CAVE_MNLT       0x0100    /*!< モンスターの光源によって照らされている / Illuminated by monster */
+#define CAVE_MNDK       0x8000    /*!< モンスターの暗源によって暗闇になっている / Darken by monster */
 
 /* Used only while cave generation */
 #define CAVE_FLOOR      0x0200 /*!< フロア属性のあるマス */
 #define SM_OPP_COLD             0x00080000 /*!< モンスターの学習フラグ: プレイヤーに二重冷気耐性あり */
 #define SM_OPP_POIS             0x00100000 /*!< モンスターの学習フラグ: プレイヤーに二重毒耐性あり */
 #define SM_OPP_XXX1             0x00200000 /*!< 未使用 / (unused) */
-#define SM_CLONED               0x00400000 /*!< ã\83¢ã\83³ã\82¹ã\82¿ã\83¼ã\81®ç\89¹æ®\8aè\80\90æ\80§: ã\82¯ã\83­ã\83¼ã\83³å\85\8dç\96« / XXX Cloned */
-#define SM_PET                  0x00800000 /*!< ã\83¢ã\83³ã\82¹ã\82¿ã\83¼ã\81®ç\89¹æ®\8aè\80\90æ\80§: ã\83\9aã\83\83ã\83\88å\85\8dç\96« / XXX Pet */
+#define SM_CLONED               0x00400000 /*!< ã\82¯ã\83­ã\83¼ã\83³ã\81§ã\81\82ã\82\8b / Cloned */
+#define SM_PET                  0x00800000 /*!< ã\83\9aã\83\83ã\83\88ã\81§ã\81\82ã\82\8b / Pet */
 #define SM_IMM_ACID             0x01000000 /*!< モンスターの学習フラグ: プレイヤーに酸免疫あり */
 #define SM_IMM_ELEC             0x02000000 /*!< モンスターの学習フラグ: プレイヤーに電撃免疫あり */
 #define SM_IMM_FIRE             0x04000000 /*!< モンスターの学習フラグ: プレイヤーに火炎免疫あり */
 #define SM_IMM_COLD             0x08000000 /*!< モンスターの学習フラグ: プレイヤーに冷気免疫あり */
-#define SM_FRIENDLY             0x10000000 /*!< モンスターの特殊耐性: 友好化免疫 /  XXX Friendly */
+#define SM_FRIENDLY             0x10000000 /*!< 友好的である / Friendly */
 #define SM_IMM_REFLECT          0x20000000 /*!< モンスターの学習フラグ: プレイヤーに反射あり */
 #define SM_IMM_FREE             0x40000000 /*!< モンスターの学習フラグ: プレイヤーに麻痺耐性あり */
 #define SM_IMM_MANA             0x80000000 /*!< モンスターの学習フラグ: プレイヤーにMPがない */
  * OM_NOMSG --- temporary flag to suppress messages which were
  *              already printed in autopick_pickup_items().
  */
-#define OM_FOUND        0x01    /* original boolean flag */
+#define OM_FOUND        0x01    /*!< アイテムを一度でも視界に収めたことがあるか */
 #define OM_NOMSG        0x02    /* temporary flag to suppress messages */
 #define OM_NO_QUERY     0x04    /* Query for auto-pick was already answered as 'No' */
 #define OM_AUTODESTROY  0x08    /* Destroy later to avoid illegal inventry shift */
 #define RF3_HURT_ROCK       0x00002000  /*!< モンスター特性: 岩石溶解(GF_KILL_WALL)でダメージを受ける / Hurt by rock remover */
 #define RF3_HURT_FIRE       0x00004000  /*!< モンスター特性: 火炎が弱点 / Hurt badly by fire */
 #define RF3_HURT_COLD       0x00008000  /*!< モンスター特性: 冷気が弱点 / Hurt badly by cold */
-#define RF3_XXX16           0x00010000  /*!< モンスター特性: 未使用 / XXX */
+#define RF3_ANGEL           0x00010000  /*!< モンスター特性: 天使 / ANGEL */
 #define RF3_XXX17           0x00020000  /*!< モンスター特性: 未使用 / XXX */
 #define RF3_XXX18           0x00040000  /*!< モンスター特性: 未使用 / XXX */
 #define RF3_XXX19           0x00080000  /*!< モンスター特性: 未使用 / XXX */
@@ -5466,6 +5417,9 @@ extern int PlayerUID;
 
 #define P_PTR_KI (p_ptr->magic_num1[0])
 
+#define IS_WIZARD_CLASS() \
+       (p_ptr->pclass == CLASS_MAGE || p_ptr->pclass == CLASS_HIGH_MAGE || p_ptr->pclass == CLASS_SORCERER || p_ptr->pclass == CLASS_MAGIC_EATER || p_ptr->pclass == CLASS_BLUE_MAGE)
+
 /* Multishadow effects is determined by turn */
 #define CHECK_MULTISHADOW() (p_ptr->multishadow && (turn & 1))
 
@@ -5666,3 +5620,8 @@ extern int PlayerUID;
 
 #define COMMAND_ARG_REST_UNTIL_DONE -2   /*!<休憩コマンド引数 … 必要な分だけ回復 */
 #define COMMAND_ARG_REST_FULL_HEALING -1 /*!<休憩コマンド引数 … HPとMPが全回復するまで */
+
+/*!
+ * チートオプションの最大数 / Number of cheating options
+ */
+#define CHEAT_MAX 10