feature_state state[MAX_FEAT_STATES]; /*!< feature_state テーブル */
byte subtype; /*!< 副特性値 */
- byte power; /*!< 地形強度 */
+ FEAT_POWER power; /*!< 地形強度 */
SYMBOL_COLOR d_attr[F_LIT_MAX]; /*!< デフォルトの地形シンボルカラー / Default feature attribute */
SYMBOL_CODE d_char[F_LIT_MAX]; /*!< デフォルトの地形シンボルアルファベット / Default feature character */
STR_OFFSET name; /*!< アーティファクト名(headerオフセット参照) / Name (offset) */
STR_OFFSET text; /*!< アーティファクト解説(headerオフセット参照) / Text (offset) */
- byte tval; /*!< ベースアイテム大項目ID / Artifact type */
- byte sval; /*!< ベースアイテム小項目ID / Artifact sub type */
+ OBJECT_TYPE_VALUE tval; /*!< ベースアイテム大項目ID / Artifact type */
+ OBJECT_SUBTYPE_VALUE sval; /*!< ベースアイテム小項目ID / Artifact sub type */
- s16b pval; /*!< pval修正値 / Artifact extra info */
+ PARAMETER_VALUE pval; /*!< pval修正値 / Artifact extra info */
- s16b to_h; /*!< 命中ボーナス値 / Bonus to hit */
- s16b to_d; /*!< ダメージボーナス値 / Bonus to damage */
- s16b to_a; /*!< ACボーナス値 / Bonus to armor */
+ HIT_PROB to_h; /*!< 命中ボーナス値 / Bonus to hit */
+ HIT_POINT to_d; /*!< ダメージボーナス値 / Bonus to damage */
+ ARMOUR_CLASS to_a; /*!< ACボーナス値 / Bonus to armor */
- s16b ac; /*!< 上書きベースAC値 / Base armor */
+ ARMOUR_CLASS ac; /*!< 上書きベースAC値 / Base armor */
- byte dd, ds; /*!< ダイス値 / Damage when hits */
+ DICE_NUMBER dd;
+ DICE_SID ds; /*!< ダイス値 / Damage when hits */
- s16b weight; /*!< 重量 / Weight */
+ WEIGHT weight; /*!< 重量 / Weight */
- s32b cost; /*!< 基本価格 / Artifact "cost" */
+ PRICE cost; /*!< 基本価格 / Artifact "cost" */
- u32b flags[TR_FLAG_SIZE]; /*! アイテムフラグ / Artifact Flags */
+ BIT_FLAGS flags[TR_FLAG_SIZE]; /*! アイテムフラグ / Artifact Flags */
- u32b gen_flags; /*! アイテム生成フラグ / flags for generate */
+ BIT_FLAGS gen_flags; /*! アイテム生成フラグ / flags for generate */
- byte level; /*! 基本生成階 / Artifact level */
- byte rarity; /*! レアリティ / Artifact rarity */
+ DEPTH level; /*! 基本生成階 / Artifact level */
+ RARITY rarity; /*! レアリティ / Artifact rarity */
byte cur_num; /*! 現在の生成数 / Number created (0 or 1) */
byte max_num; /*! (未使用)最大生成数 / Unused (should be "1") */
DEPTH level; /* Minimum level */
RARITY rarity; /* Object rarity */
- byte max_to_h; /* Maximum to-hit bonus */
- byte max_to_d; /* Maximum to-dam bonus */
- byte max_to_a; /* Maximum to-ac bonus */
+ HIT_PROB max_to_h; /* Maximum to-hit bonus */
+ HIT_POINT max_to_d; /* Maximum to-dam bonus */
+ ARMOUR_CLASS max_to_a; /* Maximum to-ac bonus */
PARAMETER_VALUE max_pval; /* Maximum pval */
- s32b cost; /* Ego-item "cost" */
-
- u32b flags[TR_FLAG_SIZE]; /* Ego-Item Flags */
+ PRICE cost; /* Ego-item "cost" */
- u32b gen_flags; /* flags for generate */
+ BIT_FLAGS flags[TR_FLAG_SIZE]; /* Ego-Item Flags */
+ BIT_FLAGS gen_flags; /* flags for generate */
IDX act_idx; /* Activative ability index */
};
{
byte method;
byte effect;
- byte d_dice;
- byte d_side;
+ DICE_NUMBER d_dice;
+ DICE_SID d_side;
};
byte aaf; /*!< 感知範囲(1-100スクエア) / Area affect radius (1-100) */
SPEED speed; /*!< 加速(110で+0) / Speed (normally 110) */
- s32b mexp; /*!< 殺害時基本経験値 / Exp value for kill */
+ EXP mexp; /*!< 殺害時基本経験値 / Exp value for kill */
s16b extra; /*!< 未使用 / Unused (for now) */
byte freq_spell; /*!< 魔法&特殊能力仕様頻度(1/n) / Spell frequency */
- u32b flags1; /* Flags 1 (general) */
- u32b flags2; /* Flags 2 (abilities) */
- u32b flags3; /* Flags 3 (race/resist) */
- u32b flags4; /* Flags 4 (inate/breath) */
- u32b flags7; /* Flags 7 (movement related abilities) */
- u32b flags8; /* Flags 8 (wilderness info) */
- u32b flags9; /* Flags 9 (drops info) */
- u32b flagsr; /* Flags R (resistances info) */
+ BIT_FLAGS flags1; /* Flags 1 (general) */
+ BIT_FLAGS flags2; /* Flags 2 (abilities) */
+ BIT_FLAGS flags3; /* Flags 3 (race/resist) */
+ BIT_FLAGS flags4; /* Flags 4 (inate/breath) */
+ BIT_FLAGS flags7; /* Flags 7 (movement related abilities) */
+ BIT_FLAGS flags8; /* Flags 8 (wilderness info) */
+ BIT_FLAGS flags9; /* Flags 9 (drops info) */
+ BIT_FLAGS flagsr; /* Flags R (resistances info) */
- u32b a_ability_flags1; /* Activate Ability Flags 5 (normal spells) */
- u32b a_ability_flags2; /* Activate Ability Flags 6 (special spells) */
- u32b a_ability_flags3; /* Activate Ability Flags 7 (implementing) */
- u32b a_ability_flags4; /* Activate Ability Flags 8 (implementing) */
+ BIT_FLAGS a_ability_flags1; /* Activate Ability Flags 5 (normal spells) */
+ BIT_FLAGS a_ability_flags2; /* Activate Ability Flags 6 (special spells) */
+ BIT_FLAGS a_ability_flags3; /* Activate Ability Flags 7 (implementing) */
+ BIT_FLAGS a_ability_flags4; /* Activate Ability Flags 8 (implementing) */
monster_blow blow[4]; /* Up to four blows per round */
MONRACE_IDX reinforce_id[6];
PERCENTAGE arena_ratio; /* アリーナの評価修正値(%基準 / 0=100%) / Arena */
- IDX next_r_idx;
- u32b next_exp;
+ MONRACE_IDX next_r_idx;
+ EXP next_exp;
DEPTH level; /* Level of creature */
RARITY rarity; /* Rarity of creature */
bool ml; /* Monster is "visible" */
- IDX hold_o_idx; /* Object being held (if any) */
+ OBJECT_IDX hold_o_idx; /* Object being held (if any) */
POSITION target_y; /* Can attack !los player */
POSITION target_x; /* Can attack !los player */
- u16b nickname; /* Monster's Nickname */
+ STR_OFFSET nickname; /* Monster's Nickname */
- u32b exp;
+ EXP exp;
- u32b smart; /* Field for "smart_learn" */
+ BIT_FLAGS smart; /* Field for "smart_learn" */
- s16b parent_m_idx;
+ MONSTER_IDX parent_m_idx;
};
struct magic_type
{
- byte slevel; /* Required level (to learn) */
- byte smana; /* Required mana (to cast) */
- byte sfail; /* Minimum chance of failure */
- byte sexp; /* Encoded experience bonus */
+ PLAYER_LEVEL slevel; /* Required level (to learn) */
+ MANA_POINT smana; /* Required mana (to cast) */
+ PERCENTAGE sfail; /* Minimum chance of failure */
+ EXP sexp; /* Encoded experience bonus */
};
s16b virtues[8];
s16b vir_types[8];
- s16b word_recall; /* Word of recall counter */
- s16b alter_reality; /* Alter reality counter */
- IDX recall_dungeon; /* Dungeon set to be recalled */
+ TIME_EFFECT word_recall; /* Word of recall counter */
+ TIME_EFFECT alter_reality; /* Alter reality counter */
+ DUNGEON_IDX recall_dungeon; /* Dungeon set to be recalled */
ENERGY energy_need; /* Energy needed for next move */
ENERGY enchant_energy_need; /* Energy needed for next upkeep effect */
- s16b food; /* Current nutrition */
+ FEED food; /* Current nutrition */
BIT_FLAGS special_attack; /* Special attack capacity -LM- */
BIT_FLAGS special_defense; /* Special block capacity -LM- */
MAGIC_NUM1 magic_num1[108]; /*!< Array for non-spellbook type magic */
MAGIC_NUM2 magic_num2[108]; /*!< Flags for non-spellbook type magics */
- s16b mane_spell[MAX_MANE];
- s16b mane_dam[MAX_MANE];
+ SPELL_IDX mane_spell[MAX_MANE];
+ HIT_POINT mane_dam[MAX_MANE];
s16b mane_num;
s16b concent; /* Sniper's concentration level */
- s16b player_hp[PY_MAX_LEVEL];
+ HIT_POINT player_hp[PY_MAX_LEVEL];
char died_from[80]; /* What killed the player */
cptr last_message; /* Last message on death or retirement */
char history[4][60]; /* Textual "history" for the Player */
s32b au;
- s16b stat_max[6]; /* Current "maximal" stat values */
- s16b stat_max_max[6]; /* Maximal "maximal" stat values */
- s16b player_hp[PY_MAX_LEVEL];
+ BASE_STATUS stat_max[6]; /* Current "maximal" stat values */
+ BASE_STATUS stat_max_max[6]; /* Maximal "maximal" stat values */
+ HIT_POINT player_hp[PY_MAX_LEVEL];
s16b chaos_patron;
int town;
int road;
u32b seed;
- s16b level;
+ DEPTH level;
byte entrance;
};
typedef struct
{
- s16b feat; /* Feature tile */
- byte percent; /* Chance of type */
+ FEAT_IDX feat; /* Feature tile */
+ PERCENTAGE percent; /* Chance of type */
}
feat_prob;
STR_OFFSET name; /* Name */
STR_OFFSET text; /* Description */
- byte dy;
- byte dx;
+ POSITION dy;
+ POSITION dx;
feat_prob floor[DUNGEON_FEAT_PROB_NUM]; /* Floor probability */
feat_prob fill[DUNGEON_FEAT_PROB_NUM]; /* Cave wall probability */
- s16b outer_wall; /* Outer wall tile */
- s16b inner_wall; /* Inner wall tile */
- s16b stream1; /* stream tile */
- s16b stream2; /* stream tile */
-
- s16b mindepth; /* Minimal depth */
- s16b maxdepth; /* Maximal depth */
- byte min_plev; /* Minimal plev needed to enter -- it's an anti-cheating mesure */
- s16b pit;
- s16b nest;
+ FEAT_IDX outer_wall; /* Outer wall tile */
+ FEAT_IDX inner_wall; /* Inner wall tile */
+ FEAT_IDX stream1; /* stream tile */
+ FEAT_IDX stream2; /* stream tile */
+
+ DEPTH mindepth; /* Minimal depth */
+ DEPTH maxdepth; /* Maximal depth */
+ PLAYER_LEVEL min_plev; /* Minimal plev needed to enter -- it's an anti-cheating mesure */
+ BIT_FLAGS16 pit;
+ BIT_FLAGS16 nest;
byte mode; /* Mode of combinaison of the monster flags */
int min_m_alloc_level; /* Minimal number of monsters per level */
int max_m_alloc_chance; /* There is a 1/max_m_alloc_chance chance per round of creating a new monster */
- u32b flags1; /* Flags 1 */
+ BIT_FLAGS flags1; /* Flags 1 */
- u32b mflags1; /* The monster flags that are allowed */
- u32b mflags2;
- u32b mflags3;
- u32b mflags4;
- u32b mflags7;
- u32b mflags8;
- u32b mflags9;
- u32b mflagsr;
+ BIT_FLAGS mflags1; /* The monster flags that are allowed */
+ BIT_FLAGS mflags2;
+ BIT_FLAGS mflags3;
+ BIT_FLAGS mflags4;
+ BIT_FLAGS mflags7;
+ BIT_FLAGS mflags8;
+ BIT_FLAGS mflags9;
+ BIT_FLAGS mflagsr;
- u32b m_a_ability_flags1;
- u32b m_a_ability_flags2;
- u32b m_a_ability_flags3;
- u32b m_a_ability_flags4;
+ BIT_FLAGS m_a_ability_flags1;
+ BIT_FLAGS m_a_ability_flags2;
+ BIT_FLAGS m_a_ability_flags3;
+ BIT_FLAGS m_a_ability_flags4;
char r_char[5]; /* Monster race allowed */
int final_object; /* The object you'll find at the bottom */
*/
typedef struct
{
- s16b open;
- s16b broken;
- s16b closed;
- s16b locked[MAX_LJ_DOORS];
- s16b num_locked;
- s16b jammed[MAX_LJ_DOORS];
- s16b num_jammed;
+ FEAT_IDX open;
+ FEAT_IDX broken;
+ FEAT_IDX closed;
+ FEAT_IDX locked[MAX_LJ_DOORS];
+ FEAT_IDX num_locked;
+ FEAT_IDX jammed[MAX_LJ_DOORS];
+ FEAT_IDX num_jammed;
} door_type;