From d07b8c42d33f71313ac6f1dba3a1da825fb8abc9 Mon Sep 17 00:00:00 2001 From: Deskull Date: Thu, 28 Sep 2017 21:07:10 +0900 Subject: [PATCH] =?utf8?q?#37287=20#37353=20(2.2.0.89)=20=E5=9E=8B?= =?utf8?q?=E3=81=AE=E7=BD=AE=E6=8F=9B=E3=82=92=E7=B6=99=E7=B6=9A=E4=B8=AD?= =?utf8?q?=E3=80=82=20/=20Ongoing=20type=20replacement.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/birth.c | 9 ++++++--- src/bldg.c | 4 ++-- src/cmd5.c | 3 ++- src/cmd6.c | 6 +++--- src/do-spell.c | 6 +++--- src/effects.c | 5 +++-- src/externs.h | 8 ++++---- src/generate.c | 2 +- src/h-type.h | 1 + src/monster2.c | 12 ++++++------ src/mspells1.c | 4 ++-- src/mspells4.c | 16 ++++++++-------- src/object1.c | 3 ++- src/object2.c | 9 +++++---- src/spells3.c | 2 +- src/streams.c | 6 +++--- src/variable.c | 12 ++++++------ src/wizard1.c | 4 ++-- src/wizard2.c | 6 +++--- 19 files changed, 63 insertions(+), 55 deletions(-) diff --git a/src/birth.c b/src/birth.c index 6473be9f8..544c375d1 100644 --- a/src/birth.c +++ b/src/birth.c @@ -3907,7 +3907,9 @@ static void add_outfit(object_type *o_ptr) */ void player_outfit(void) { - int i, tv, sv; + int i; + OBJECT_TYPE_VALUE tv; + OBJECT_SUBTYPE_VALUE sv; object_type forge; object_type *q_ptr; @@ -4045,10 +4047,11 @@ void player_outfit(void) } else if (p_ptr->pclass == CLASS_SORCERER) { - for (i = TV_LIFE_BOOK; i <= TV_LIFE_BOOK+MAX_MAGIC-1; i++) + OBJECT_TYPE_VALUE book_tval; + for (book_tval = TV_LIFE_BOOK; book_tval <= TV_LIFE_BOOK+MAX_MAGIC-1; book_tval++) { /* Hack -- Give the player some arrows */ - object_prep(q_ptr, lookup_kind(i, 0)); + object_prep(q_ptr, lookup_kind(book_tval, 0)); q_ptr->number = 1; add_outfit(q_ptr); diff --git a/src/bldg.c b/src/bldg.c index 0a19cd5ca..92d3a1149 100644 --- a/src/bldg.c +++ b/src/bldg.c @@ -1786,8 +1786,8 @@ static void shoukinkubi(void) * 賞金首の報酬テーブル / List of prize object */ static struct { - s16b tval; /*!< ベースアイテムのメイン種別ID */ - s16b sval; /*!< ベースアイテムのサブ種別ID */ + OBJECT_TYPE_VALUE tval; /*!< ベースアイテムのメイン種別ID */ + OBJECT_SUBTYPE_VALUE sval; /*!< ベースアイテムのサブ種別ID */ } prize_list[MAX_KUBI] = { {TV_POTION, SV_POTION_CURING}, diff --git a/src/cmd5.c b/src/cmd5.c index 397a24066..c9cb19c9e 100644 --- a/src/cmd5.c +++ b/src/cmd5.c @@ -1655,7 +1655,8 @@ void do_cmd_pet_dismiss(void) { monster_type *m_ptr; bool all_pets = FALSE; - int pet_ctr, i; + IDX pet_ctr; + int i; int Dismissed = 0; u16b *who; diff --git a/src/cmd6.c b/src/cmd6.c index 39fbbc969..199dfbee6 100644 --- a/src/cmd6.c +++ b/src/cmd6.c @@ -3742,12 +3742,12 @@ static void do_cmd_activate_aux(int item) #endif { int pet_ctr, i; - u16b *who; + IDX *who; int max_pet = 0; u16b dummy_why; /* Allocate the "who" array */ - C_MAKE(who, max_m_idx, u16b); + C_MAKE(who, max_m_idx, IDX); /* Process the monsters (backwards) */ for (pet_ctr = m_max - 1; pet_ctr >= 1; pet_ctr--) @@ -3770,7 +3770,7 @@ static void do_cmd_activate_aux(int item) } /* Free the "who" array */ - C_KILL(who, max_m_idx, u16b); + C_KILL(who, max_m_idx, IDX); } o_ptr->timeout = 100+randint1(100); return; diff --git a/src/do-spell.c b/src/do-spell.c index 741d83652..ebada4d20 100644 --- a/src/do-spell.c +++ b/src/do-spell.c @@ -8523,9 +8523,9 @@ static cptr do_hissatsu_spell(int spell, int mode) for (i = 0; i < 3; i++) { - int y, x; - int ny, nx; - int m_idx; + POSITION y, x; + POSITION ny, nx; + IDX m_idx; cave_type *c_ptr; monster_type *m_ptr; diff --git a/src/effects.c b/src/effects.c index 34a174fbb..47a858668 100644 --- a/src/effects.c +++ b/src/effects.c @@ -3728,7 +3728,8 @@ bool inc_stat(int stat) */ bool dec_stat(int stat, int amount, int permanent) { - int cur, max, loss, same, res = FALSE; + BASE_STATUS cur, max; + int loss, same, res = FALSE; /* Acquire current value */ @@ -4188,7 +4189,7 @@ void do_poly_wounds(void) /* * Change player race */ -void change_race(int new_race, cptr effect_msg) +void change_race(CHARACTER_IDX new_race, cptr effect_msg) { cptr title = race_info[new_race].title; int old_race = p_ptr->prace; diff --git a/src/externs.h b/src/externs.h index 2bca73cb5..661343341 100644 --- a/src/externs.h +++ b/src/externs.h @@ -1214,7 +1214,7 @@ extern void remove_all_mirrors(bool explode); /* spells3.c */ extern bool teleport_away(IDX m_idx, int dis, u32b mode); -extern void teleport_monster_to(int m_idx, int ty, int tx, int power, u32b mode); +extern void teleport_monster_to(IDX m_idx, POSITION ty, POSITION tx, int power, u32b mode); extern bool cave_player_teleportable_bold(int y, int x, u32b mode); extern bool teleport_player_aux(int dis, u32b mode); extern void teleport_player(int dis, u32b mode); @@ -1510,7 +1510,7 @@ extern bool get_rep_dir2(int *dp); extern void gain_level_reward(int chosen_reward); extern bool tgt_pt(POSITION *x, POSITION *y); extern void do_poly_wounds(void); -extern void change_race(int new_race, cptr effect_msg); +extern void change_race(CHARACTER_IDX new_race, cptr effect_msg); extern HIT_POINT mon_damage_mod(monster_type *m_ptr, HIT_POINT dam, bool is_psy_spear); extern s16b gain_energy(void); extern s16b bow_energy(int sval); @@ -1592,8 +1592,8 @@ extern void set_rf_masks(s32b *f4, s32b *f5, s32b *f6, int mode); /* mspells4.c */ extern bool spell_learnable(int m_idx); -extern int monspell_to_player(int SPELL_NUM, int y, int x, int m_idx); -extern int monspell_to_monster(int SPELL_NUM, int y, int x, int m_idx, int t_idx); +extern int monspell_to_player(int SPELL_NUM, POSITION y, POSITION x, IDX m_idx); +extern int monspell_to_monster(int SPELL_NUM, POSITION y, POSITION x, IDX m_idx, IDX t_idx); extern int monspell_damage(int SPELL_NUM, int m_idx, int TYPE); extern int monspell_race_damage(int SPELL_NUM, int r_idx, int TYPE); extern int monspell_bluemage_damage(int SPELL_NUM, int plev, int TYPE); diff --git a/src/generate.c b/src/generate.c index a6626adb7..f1ae1914e 100644 --- a/src/generate.c +++ b/src/generate.c @@ -816,7 +816,7 @@ static bool cave_gen(void) /* Hack -- Add some rivers */ if (one_in_(3) && (randint1(dun_level) > 5)) { - int feat1 = 0, feat2 = 0; + IDX feat1 = 0, feat2 = 0; /* Choose water or lava */ if ((randint1(MAX_DEPTH * 2) - 1 > dun_level) && (d_info[dungeon_type].flags1 & DF1_WATER_RIVER)) diff --git a/src/h-type.h b/src/h-type.h index a28e95d61..435a3b8b7 100644 --- a/src/h-type.h +++ b/src/h-type.h @@ -135,6 +135,7 @@ typedef u32b STR_OFFSET; /*!< テキストオフセットの型定義 */ typedef s32b DEPTH; /*!< ゲーム中の階層レベルの型定義 */ typedef byte RARITY; /*!< ゲーム中の希少度の型定義 */ +typedef s32b GAME_TURN; /*!< ゲーム中のターンの型定義 */ /*** Pointers to all the basic types defined above ***/ diff --git a/src/monster2.c b/src/monster2.c index 14b7bd8fc..31fc69e3b 100644 --- a/src/monster2.c +++ b/src/monster2.c @@ -330,7 +330,7 @@ void delete_monster(int y, int x) * @param i2 配列移動先添字 * @return なし */ -static void compact_monsters_aux(int i1, int i2) +static void compact_monsters_aux(IDX i1, IDX i2) { int y, x, i; @@ -3700,7 +3700,7 @@ bool place_monster_aux(int who, int y, int x, int r_idx, u32b mode) n = damroll(r_ptr->reinforce_dd[i], r_ptr->reinforce_ds[i]); for(j = 0; j < n; j++) { - int nx, ny, d = 7; + POSITION nx, ny, d = 7; scatter(&ny, &nx, y, x, d, 0); (void)place_monster_one(place_monster_m_idx, ny, nx, r_ptr->reinforce_id[i], mode); } @@ -3796,11 +3796,11 @@ bool place_monster(int y, int x, u32b mode) bool alloc_horde(POSITION y, POSITION x) { monster_race *r_ptr = NULL; - int r_idx = 0; - int m_idx; + IDX r_idx = 0; + IDX m_idx; int attempts = 1000; - int cy = y; - int cx = x; + POSITION cy = y; + POSITION cx = x; /* Prepare allocation table */ get_mon_num_prep(get_monster_hook(), get_monster_hook2(y, x)); diff --git a/src/mspells1.c b/src/mspells1.c index 87c2fd371..71c87b2f7 100644 --- a/src/mspells1.c +++ b/src/mspells1.c @@ -1455,8 +1455,8 @@ bool make_attack_spell(int m_idx) int dam = 0; /* Target location */ - int x = p_ptr->x; - int y = p_ptr->y; + POSITION x = p_ptr->x; + POSITION y = p_ptr->y; /* Target location for lite breath */ int x_br_lite = 0; diff --git a/src/mspells4.c b/src/mspells4.c index 877994134..9cb41525a 100644 --- a/src/mspells4.c +++ b/src/mspells4.c @@ -1877,7 +1877,7 @@ void spell_RF6_INVULNER(int m_idx, int t_idx, int TARGET_TYPE) * @param m_idx 呪文を唱えるモンスターID * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER */ -void spell_RF6_BLINK(int m_idx, int TARGET_TYPE) +void spell_RF6_BLINK(IDX m_idx, int TARGET_TYPE) { char m_name[80]; monster_name(m_idx, m_name); @@ -2054,9 +2054,9 @@ int spell_RF6_SPECIAL_ROLENTO(int y, int x, int m_idx, int t_idx, int TARGET_TYP * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER * @return ダメージ量を返す。 */ -int spell_RF6_SPECIAL_B(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) +int spell_RF6_SPECIAL_B(POSITION y, POSITION x, IDX m_idx, IDX t_idx, int TARGET_TYPE) { - int dam; + HIT_POINT dam; monster_type *m_ptr = &m_list[m_idx]; monster_type *t_ptr = &m_list[t_idx]; monster_race *tr_ptr = &r_info[t_ptr->r_idx]; @@ -2151,7 +2151,7 @@ int spell_RF6_SPECIAL_B(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER * @return ダメージ量を返す。 */ -int spell_RF6_SPECIAL(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) +int spell_RF6_SPECIAL(POSITION y, POSITION x, IDX m_idx, IDX t_idx, int TARGET_TYPE) { monster_type *m_ptr = &m_list[m_idx]; monster_race *r_ptr = &r_info[m_ptr->r_idx]; @@ -2191,7 +2191,7 @@ int spell_RF6_SPECIAL(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER * @return ダメージ量を返す。 */ -void spell_RF6_TELE_TO(int m_idx, int t_idx, int TARGET_TYPE) +void spell_RF6_TELE_TO(IDX m_idx, IDX t_idx, int TARGET_TYPE) { monster_type *m_ptr = &m_list[m_idx]; monster_type *t_ptr = &m_list[t_idx]; @@ -3235,7 +3235,7 @@ int summon_NAZGUL(POSITION y, POSITION x, IDX m_idx) * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER * @return 召喚したモンスターの数を返す。 */ -void spell_RF6_S_HI_UNDEAD(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) +void spell_RF6_S_HI_UNDEAD(POSITION y, POSITION x, IDX m_idx, IDX t_idx, int TARGET_TYPE) { bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER); bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER); @@ -3417,7 +3417,7 @@ void spell_RF6_S_UNIQUE(int y, int x, int m_idx, int t_idx, int TARGET_TYPE) * @param m_idx 呪文を唱えるモンスターID * @return 攻撃呪文のダメージ、または召喚したモンスターの数を返す。その他の場合0。以降の処理を中断するなら-1を返す。 */ -int monspell_to_player(int SPELL_NUM, int y, int x, int m_idx) +int monspell_to_player(int SPELL_NUM, POSITION y, POSITION x, IDX m_idx) { switch (SPELL_NUM) { @@ -3530,7 +3530,7 @@ int monspell_to_player(int SPELL_NUM, int y, int x, int m_idx) * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。 * @return 攻撃呪文のダメージ、または召喚したモンスターの数を返す。その他の場合0。以降の処理を中断するなら-1を返す。 */ -int monspell_to_monster(int SPELL_NUM, int y, int x, int m_idx, int t_idx) +int monspell_to_monster(int SPELL_NUM, POSITION y, POSITION x, IDX m_idx, IDX t_idx) { switch (SPELL_NUM) { diff --git a/src/object1.c b/src/object1.c index a4d0e3abd..49246e41f 100644 --- a/src/object1.c +++ b/src/object1.c @@ -4526,7 +4526,8 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode) case '\r': case '+': { - int i, o_idx; + int i; + IDX o_idx; cave_type *c_ptr = &cave[p_ptr->y][p_ptr->x]; if (command_wrk != (USE_FLOOR)) break; diff --git a/src/object2.c b/src/object2.c index 28525dafd..c9179dbab 100644 --- a/src/object2.c +++ b/src/object2.c @@ -1857,9 +1857,9 @@ void object_absorb(object_type *o_ptr, object_type *j_ptr) */ IDX lookup_kind(OBJECT_TYPE_VALUE tval, OBJECT_SUBTYPE_VALUE sval) { - int k; + IDX k; int num = 0; - int bk = 0; + IDX bk = 0; /* Look for it */ for (k = 1; k < max_k_idx; k++) @@ -4768,7 +4768,7 @@ bool make_object(object_type *j_ptr, u32b mode) /* Generate a special object, or a normal object */ if (!one_in_(prob) || !make_artifact_special(j_ptr)) { - int k_idx; + IDX k_idx; /* Good objects */ if ((mode & AM_GOOD) && !get_obj_num_hook) @@ -7725,7 +7725,8 @@ static void drain_essence(void) object_type *o_ptr; cptr q, s; POSITION iy, ix; - byte_hack marked, number; + byte_hack marked; + ITEM_NUMBER number; s16b next_o_idx, weight; for (i = 0; i < sizeof(drain_value) / sizeof(int); i++) diff --git a/src/spells3.c b/src/spells3.c index 36c1716a0..8483de35e 100644 --- a/src/spells3.c +++ b/src/spells3.c @@ -178,7 +178,7 @@ bool teleport_away(IDX m_idx, int dis, u32b mode) * @param mode オプション * @return なし */ -void teleport_monster_to(int m_idx, int ty, int tx, int power, u32b mode) +void teleport_monster_to(IDX m_idx, POSITION ty, POSITION tx, int power, u32b mode) { int ny, nx, oy, ox, d, i, min; int attempts = 500; diff --git a/src/streams.c b/src/streams.c index 983517477..e9d012798 100644 --- a/src/streams.c +++ b/src/streams.c @@ -157,9 +157,9 @@ static void recursive_river(int x1, int y1, int x2, int y2, IDX feat1, IDX feat2 */ void add_river(IDX feat1, IDX feat2) { - int y2, x2; - int y1 = 0, x1 = 0; - int wid; + POSITION y2, x2; + POSITION y1 = 0, x1 = 0; + POSITION wid; /* Hack -- Choose starting point */ diff --git a/src/variable.c b/src/variable.c index 45ec928b7..65039e266 100644 --- a/src/variable.c +++ b/src/variable.c @@ -120,12 +120,12 @@ DEPTH object_level; /* Current object creation level */ DEPTH monster_level; /* Current monster creation level */ DEPTH base_level; /* Base dungeon level */ -s32b turn; /*!< 画面表示上のゲーム時間基準となるターン / Current game turn */ -s32b turn_limit; /*!< turnの最大値 / Limit of game turn */ -s32b dungeon_turn; /*!< NASTY生成の計算に関わる内部ターン値 / Game turn in dungeon */ -s32b dungeon_turn_limit; /*!< dungeon_turnの最大値 / Limit of game turn in dungeon */ -s32b old_turn; /* Turn when level began */ -s32b old_battle; +GAME_TURN turn; /*!< 画面表示上のゲーム時間基準となるターン / Current game turn */ +GAME_TURN turn_limit; /*!< turnの最大値 / Limit of game turn */ +GAME_TURN dungeon_turn; /*!< NASTY生成の計算に関わる内部ターン値 / Game turn in dungeon */ +GAME_TURN dungeon_turn_limit; /*!< dungeon_turnの最大値 / Limit of game turn in dungeon */ +GAME_TURN old_turn; /* Turn when level began */ +GAME_TURN old_battle; bool use_sound; /* The "sound" mode is enabled */ bool use_music; /* The "music" mode is enabled */ diff --git a/src/wizard1.c b/src/wizard1.c index 226a98063..b4fbdffef 100644 --- a/src/wizard1.c +++ b/src/wizard1.c @@ -1635,9 +1635,9 @@ static void spoiler_print_art(obj_desc_list *art_ptr) * @param name1 生成するアーティファクトID * @return 生成が成功した場合TRUEを返す */ -static bool make_fake_artifact(object_type *o_ptr, int name1) +static bool make_fake_artifact(object_type *o_ptr, IDX name1) { - int i; + IDX i; artifact_type *a_ptr = &a_info[name1]; diff --git a/src/wizard2.c b/src/wizard2.c index 88baa24e2..4348ff8f0 100644 --- a/src/wizard2.c +++ b/src/wizard2.c @@ -31,7 +31,7 @@ void do_cmd_rerate_aux(void) while (1) { /* Pre-calculate level 1 hitdice */ - p_ptr->player_hp[0] = p_ptr->hitdie; + p_ptr->player_hp[0] = (HIT_POINT)p_ptr->hitdie; for (i = 1; i < 4; i++) { @@ -1617,7 +1617,7 @@ static void do_cmd_wiz_jump(void) */ static void do_cmd_wiz_learn(void) { - int i; + IDX i; object_type forge; object_type *q_ptr; @@ -1774,7 +1774,7 @@ static void do_cmd_wiz_create_feature(void) cave_type *c_ptr; feature_type *f_ptr; char tmp_val[160]; - int tmp_feat, tmp_mimic; + IDX tmp_feat, tmp_mimic; POSITION y, x; if (!tgt_pt(&x, &y)) return; -- 2.11.0