struct feature_state
{
- byte action; /*!< 変化条件をFF_*のIDで指定 / Action (FF_*) */
- s16b result; /*!< 変化先ID / Result (f_info ID) */
+ FF_FLAGS_IDX action; /*!< 変化条件をFF_*のIDで指定 / Action (FF_*) */
+ STR_OFFSET result_tag; /*!< 変化先ID / Result (f_info ID) */
+ FEAT_IDX result; /*!< 変化先ID / Result (f_info ID) */
};
STR_OFFSET text; /*!< 地形説明参照のためのネームバッファオフセット値 / Text (offset) */
STR_OFFSET tag; /*!< 地形特性タグ参照のためのネームバッファオフセット値 / Tag (offset) */
- IDX mimic; /*!< 未確定時の外形地形ID / Feature to mimic */
+ STR_OFFSET mimic_tag;
+ STR_OFFSET destroyed_tag;
+
+ FEAT_IDX mimic; /*!< 未確定時の外形地形ID / Feature to mimic */
+ FEAT_IDX destroyed; /*!< *破壊*に巻き込まれた時の地形移行先(未実装?) / Default destroyed state */
BIT_FLAGS flags[FF_FLAG_SIZE]; /*!< 地形の基本特性ビット配列 / Flags */
- u16b priority; /*!< 縮小表示で省略する際の表示優先度 / Map priority */
- IDX destroyed; /*!< *破壊*に巻き込まれた時の地形移行先(未実装?) / Default destroyed state */
+ FEAT_PRIORITY priority; /*!< 縮小表示で省略する際の表示優先度 / Map priority */
feature_state state[MAX_FEAT_STATES]; /*!< feature_state テーブル */
- byte subtype; /*!< 副特性値 */
+ FEAT_SUBTYPE subtype; /*!< 副特性値 */
FEAT_POWER power; /*!< 地形強度 */
SYMBOL_COLOR d_attr[F_LIT_MAX]; /*!< デフォルトの地形シンボルカラー / Default feature attribute */
SYMBOL_COLOR x_attr; /*!< 設定変更後のアイテムシンボルカラー / Desired object attribute */
SYMBOL_CODE x_char; /*!< 設定変更後のアイテムシンボルアルファベット / Desired object character */
- s16b flavor; /*!< 調査中(TODO) / Special object flavor (or zero) */
+ IDX flavor; /*!< 調査中(TODO) / Special object flavor (or zero) */
bool easy_know; /*!< ベースアイテムが初期からベース名を判断可能かどうか / This object is always known (if aware) */
bool tried; /*!< ベースアイテムを未鑑定のまま試したことがあるか / The player has "tried" one of the items */
- IDX act_idx; /*!< 発動能力のID / Activative ability index */
+ ACTIVATION_IDX act_idx; /*!< 発動能力のID / Activative ability index */
};
struct cave_type
{
- u16b info; /* Hack -- cave flags */
+ BIT_FLAGS info; /* Hack -- cave flags */
FEAT_IDX feat; /* Hack -- feature type */
OBJECT_IDX o_idx; /* Object in this grid */
SUB_EXP skill_exp[GINOU_MAX]; /* Proficiency of misc. skill */
MAGIC_NUM1 magic_num1[108]; /*!< Array for non-spellbook type magic */
- MAGIC_NUM2 magic_num2[108]; /*!< Flags for non-spellbook type magics */
+ MAGIC_NUM2 magic_num2[108]; /*!< 魔道具術師の取り込み済魔道具使用回数 / Flags for non-spellbook type magics */
SPELL_IDX mane_spell[MAX_MANE];
HIT_POINT mane_dam[MAX_MANE];
ACTION_SKILL_POWER skill_dev; /*!< 行動技能値:魔道具使用 / Skill: Magic Devices */
ACTION_SKILL_POWER skill_sav; /*!< 行動技能値:魔法防御 / Skill: Saving throw */
ACTION_SKILL_POWER skill_stl; /*!< 行動技能値:隠密 / Skill: Stealth factor */
- ACTION_SKILL_POWER skill_srh; /*!< 行動技能値:知覚 / Skill: Searching ability */
+
+ /*!
+ * 行動技能値:知覚 / Skill: Searching ability
+ * この値はsearch()による地形の隠し要素発見処理などで混乱、盲目、幻覚、無光源などの
+ * 状態異常がない限り、難易度修正などがないままそのままパーセンテージ値として使われる。
+ * 100以上ならば必ず全てのトラップなどを見つけることが出来る。
+ */
+ ACTION_SKILL_POWER skill_srh;
+
+
ACTION_SKILL_POWER skill_fos; /*!< 行動技能値:探索 / Skill: Searching frequency */
ACTION_SKILL_POWER skill_thn; /*!< 行動技能値:打撃命中能力 / Skill: To hit (normal) */
ACTION_SKILL_POWER skill_thb; /*!< 行動技能値:射撃命中能力 / Skill: To hit (shooting) */
typedef struct monster_power monster_power;
struct monster_power
{
- int level;
- int smana;
- int fail;
+ PLAYER_LEVEL level;
+ MANA_POINT smana;
+ PERCENTAGE fail;
int manedam;
int manefail;
int use_stat;
PRICE member_costs[8]; /* Costs for class members of building */
PRICE other_costs[8]; /* Costs for nonguild members */
char letters[8]; /* action letters */
- s16b actions[8]; /* action codes */
- s16b action_restr[8]; /* action restrictions */
+ BACT_IDX actions[8]; /* action codes */
+ BACT_RESTRICT_IDX action_restr[8]; /* action restrictions */
CLASS_IDX member_class[MAX_CLASS]; /* which classes are part of guild */
RACE_IDX member_race[MAX_RACES]; /* which classes are part of guild */
ARTIFACT_IDX final_artifact; /* The artifact you'll find at the bottom */
MONRACE_IDX final_guardian; /* The artifact's guardian. If an artifact is specified, then it's NEEDED */
- byte special_div; /* % of monsters affected by the flags/races allowed, to add some variety */
+ PROB special_div; /* % of monsters affected by the flags/races allowed, to add some variety */
int tunnel_percent;
int obj_great;
int obj_good;
typedef struct
{
s16b floor_id; /* No recycle until 65536 IDs are all used */
- byte savefile_id; /* ID for savefile (from 0 to MAX_SAVED_FLOOR) */
+ s16b savefile_id; /* ID for savefile (from 0 to MAX_SAVED_FLOOR) */
DEPTH dun_level;
s32b last_visit; /* Time count of last visit. 0 for new floor. */
u32b visit_mark; /* Older has always smaller mark. */
*/
typedef struct
{
- u16b info;
+ BIT_FLAGS info;
s16b feat;
s16b mimic;
s16b special;