* @param realm 魔法領域のID
* @return 対応する徳のID
*/
-static enum virtue_idx get_realm_virtues(player_type *creature_ptr, REALM_IDX realm)
+static enum virtue_idx get_realm_virtues(player_type *creature_ptr, int16_t realm)
{
switch (realm) {
case REALM_LIFE:
player_race_type prace{}; /* Race index */
player_class_type pclass{}; /* Class index */
player_personality_type pseikaku{}; /* Seikaku index */
- REALM_IDX realm1{}; /* First magic realm */
- REALM_IDX realm2{}; /* Second magic realm */
+ int16_t realm1{}; /* First magic realm */
+ int16_t realm2{}; /* Second magic realm */
int16_t age{};
int16_t ht{};
* The "known" should be TRUE for cast/pray, FALSE for study
* </pre>
*/
-static int get_spell(player_type *caster_ptr, SPELL_IDX *sn, concptr prompt, OBJECT_SUBTYPE_VALUE sval, bool learned, REALM_IDX use_realm)
+static int get_spell(player_type *caster_ptr, SPELL_IDX *sn, concptr prompt, OBJECT_SUBTYPE_VALUE sval, bool learned, int16_t use_realm)
{
int i;
SPELL_IDX spell = -1;
{
OBJECT_IDX item;
OBJECT_SUBTYPE_VALUE sval;
- REALM_IDX use_realm = 0;
+ int16_t use_realm = 0;
int j, line;
SPELL_IDX spell = -1;
int num = 0;
* @param caster_ptr プレーヤーへの参照ポインタ
* @param next_realm 変更先の魔法領域ID
*/
-static void change_realm2(player_type *caster_ptr, REALM_IDX next_realm)
+static void change_realm2(player_type *caster_ptr, int16_t next_realm)
{
int i, j = 0;
char tmp[80];
OBJECT_IDX item;
OBJECT_SUBTYPE_VALUE sval;
SPELL_IDX spell;
- REALM_IDX realm;
+ int16_t realm;
int chance;
int increment = 0;
- REALM_IDX use_realm;
+ int16_t use_realm;
MANA_POINT need_mana;
concptr prayer;
int n;
n = tokenize(s + 2, MAX_MAGIC, zz, 0);
for (int i = 0; i < MAX_MAGIC; i++) {
- building[index].member_realm[i + 1] = ((i < n) ? (REALM_IDX)atoi(zz[i]) : 1);
+ building[index].member_realm[i + 1] = ((i < n) ? static_cast<int16_t>(atoi(zz[i])) : 1);
}
break;
rd_byte(&tmp8u);
previous_char.pseikaku = (player_personality_type)tmp8u;
rd_byte(&tmp8u);
- previous_char.realm1 = (REALM_IDX)tmp8u;
+ previous_char.realm1 = (int16_t)tmp8u;
rd_byte(&tmp8u);
- previous_char.realm2 = (REALM_IDX)tmp8u;
+ previous_char.realm2 = (int16_t)tmp8u;
rd_s16b(&previous_char.age);
rd_s16b(&previous_char.ht);
rd_byte(&tmp8u);
if (creature_ptr->pclass == CLASS_ELEMENTALIST)
- creature_ptr->element = (REALM_IDX)tmp8u;
+ creature_ptr->element = (int16_t)tmp8u;
else
- creature_ptr->realm1 = (REALM_IDX)tmp8u;
+ creature_ptr->realm1 = (int16_t)tmp8u;
rd_byte(&tmp8u);
- creature_ptr->realm2 = (REALM_IDX)tmp8u;
+ creature_ptr->realm2 = (int16_t)tmp8u;
if (creature_ptr->realm2 == 255)
creature_ptr->realm2 = 0;
}
return true;
}
- REALM_IDX realm1 = player_ptr->realm1;
- REALM_IDX realm2 = player_ptr->realm2;
+ int16_t realm1 = player_ptr->realm1;
+ int16_t realm2 = player_ptr->realm2;
if ((is_magic(realm1) && (bldg->member_realm[realm1] == BUILDING_OWNER)) || (is_magic(realm2) && (bldg->member_realm[realm2] == BUILDING_OWNER))) {
return true;
}
return true;
}
- REALM_IDX realm1 = player_ptr->realm1;
- REALM_IDX realm2 = player_ptr->realm2;
+ int16_t realm1 = player_ptr->realm1;
+ int16_t realm2 = player_ptr->realm2;
if ((is_magic(realm1) && bldg->member_realm[realm1]) || (is_magic(realm2) && bldg->member_realm[realm2])) {
return true;
}
(CH_NONE), /* Elementalist */
};
-REALM_IDX get_realm1_book(player_type *player_ptr) { return player_ptr->realm1 + TV_LIFE_BOOK - 1; }
+int16_t get_realm1_book(player_type *player_ptr) { return player_ptr->realm1 + TV_LIFE_BOOK - 1; }
-REALM_IDX get_realm2_book(player_type *player_ptr) { return player_ptr->realm2 + TV_LIFE_BOOK - 1; }
+int16_t get_realm2_book(player_type *player_ptr) { return player_ptr->realm2 + TV_LIFE_BOOK - 1; }
bool is_wizard_class(player_type *player_ptr)
{
extern const uint32_t realm_choices2[];
typedef struct player_type player_type;
-REALM_IDX get_realm1_book(player_type *player_ptr);
-REALM_IDX get_realm2_book(player_type *player_ptr);
+int16_t get_realm1_book(player_type *player_ptr);
+int16_t get_realm2_book(player_type *player_ptr);
bool is_wizard_class(player_type *player_ptr);
if (!is_spell_learned)
continue;
- REALM_IDX which;
+ int16_t which;
if (j < 32) {
set_bits(creature_ptr->spell_forgotten1, (1UL << j));
which = creature_ptr->realm1;
if (!is_spell_learned)
continue;
- REALM_IDX which;
+ int16_t which;
if (j < 32) {
set_bits(creature_ptr->spell_forgotten1, (1UL << j));
which = creature_ptr->realm1;
if (!is_spell_learned)
continue;
- REALM_IDX which;
+ int16_t which;
if (j < 32) {
reset_bits(creature_ptr->spell_forgotten1, (1UL << j));
which = creature_ptr->realm1;
* @param use_realm 魔法領域
* @return 経験値
*/
-EXP experience_of_spell(player_type *caster_ptr, SPELL_IDX spell, REALM_IDX use_realm)
+EXP experience_of_spell(player_type *caster_ptr, SPELL_IDX spell, int16_t use_realm)
{
if (caster_ptr->pclass == CLASS_SORCERER)
return SPELL_EXP_MASTER;
* @param realm 魔法領域
* @return 消費MP
*/
-MANA_POINT mod_need_mana(player_type *caster_ptr, MANA_POINT need_mana, SPELL_IDX spell, REALM_IDX realm)
+MANA_POINT mod_need_mana(player_type *caster_ptr, MANA_POINT need_mana, SPELL_IDX spell, int16_t realm)
{
#define MANA_CONST 2400
#define MANA_DIV 4
* @param use_realm 魔法領域ID
* @return 失敗率(%)
*/
-PERCENTAGE spell_chance(player_type *caster_ptr, SPELL_IDX spell, REALM_IDX use_realm)
+PERCENTAGE spell_chance(player_type *caster_ptr, SPELL_IDX spell, int16_t use_realm)
{
if (!mp_ptr->spell_book)
return 100;
* @param x 表示メッセージ左上X座標
* @param use_realm 魔法領域ID
*/
-void print_spells(player_type *caster_ptr, SPELL_IDX target_spell, SPELL_IDX *spells, int num, TERM_LEN y, TERM_LEN x, REALM_IDX use_realm)
+void print_spells(player_type *caster_ptr, SPELL_IDX target_spell, SPELL_IDX *spells, int num, TERM_LEN y, TERM_LEN x, int16_t use_realm)
{
if (((use_realm <= REALM_NONE) || (use_realm > MAX_REALM)) && current_world_ptr->wizard)
msg_print(_("警告! print_spell が領域なしに呼ばれた", "Warning! print_spells called with null realm"));
#include "system/angband.h"
typedef struct player_type player_type;
-EXP experience_of_spell(player_type *caster_ptr, SPELL_IDX spell, REALM_IDX use_realm);
-MANA_POINT mod_need_mana(player_type *caster_ptr, MANA_POINT need_mana, SPELL_IDX spell, REALM_IDX realm);
+EXP experience_of_spell(player_type *caster_ptr, SPELL_IDX spell, int16_t use_realm);
+MANA_POINT mod_need_mana(player_type *caster_ptr, MANA_POINT need_mana, SPELL_IDX spell, int16_t realm);
PERCENTAGE mod_spell_chance_1(player_type *caster_ptr, PERCENTAGE chance);
PERCENTAGE mod_spell_chance_2(player_type *caster_ptr, PERCENTAGE chance);
-PERCENTAGE spell_chance(player_type *caster_ptr, SPELL_IDX spell, REALM_IDX realm);
-void print_spells(player_type *caster_ptr, SPELL_IDX target_spell, SPELL_IDX *spells, int num, TERM_LEN y, TERM_LEN x, REALM_IDX realm);
+PERCENTAGE spell_chance(player_type *caster_ptr, SPELL_IDX spell, int16_t realm);
+void print_spells(player_type *caster_ptr, SPELL_IDX target_spell, SPELL_IDX *spells, int num, TERM_LEN y, TERM_LEN x, int16_t realm);
* @param mode 求める処理
* @return 各領域魔法に各種テキストを求めた場合は文字列参照ポインタ、そうでない場合はNULLポインタを返す。
*/
-concptr exe_spell(player_type *caster_ptr, REALM_IDX realm, SPELL_IDX spell, spell_type mode)
+concptr exe_spell(player_type *caster_ptr, int16_t realm, SPELL_IDX spell, spell_type mode)
{
switch (realm)
{
#include "spell/spells-util.h"
typedef struct player_type player_type;
-concptr exe_spell(player_type *caster_ptr, REALM_IDX realm, SPELL_IDX spell, spell_type mode);
+concptr exe_spell(player_type *caster_ptr, int16_t realm, SPELL_IDX spell, spell_type mode);
player_class_type member_class[MAX_CLASS]; /* which classes are part of guild */
player_race_type member_race[MAX_RACES]; /* which classes are part of guild */
- REALM_IDX member_realm[MAX_MAGIC + 1]; /* which realms are part of guild */
+ int16_t member_realm[MAX_MAGIC + 1]; /* ギルド (店主?)ごとの魔法領域ID / which realms are part of guild */
} building_type;
extern building_type building[MAX_BLDG];
typedef int16_t MONRACE_IDX; /*!< @todo monster_race_typeに差し替えて消滅させる ゲーム中のモンスター種族ID型を定義 */
typedef int16_t MONSTER_IDX; /*!< @todo monster_race_typeに差し替えて消滅させる ゲーム中のモンスター個体ID型を定義 */
typedef int16_t DUNGEON_IDX; /*!< ゲーム中のダンジョンID型を定義 */
-typedef int16_t REALM_IDX; /*!< ゲーム中の魔法領域ID型を定義 */
typedef int16_t ARTIFACT_IDX; /*!< ゲーム中のアーティファクトID型を定義 */
typedef int16_t EGO_IDX; /*!< アイテムエゴのID型を定義 */
typedef int16_t QUEST_IDX; /*!< ゲーム中のクエストID型を定義 */
player_race_type prace{}; /* Race index */
player_class_type pclass{}; /* Class index */
player_personality_type pseikaku{}; /* Seikaku index */
- REALM_IDX realm1{}; /* First magic realm */
- REALM_IDX realm2{}; /* Second magic realm */
- REALM_IDX element{}; //!< 元素使い領域番号 / Elementalist system index
+ int16_t realm1{}; /* First magic realm */
+ int16_t realm2{}; /* Second magic realm */
+ int16_t element{}; //!< 元素使い領域番号 / Elementalist system index
player_personality_type oops{}; /* Unused */
DICE_SID hitdie{}; /* Hit dice (sides) */
object_type forge;
object_type *q_ptr;
int sval;
- REALM_IDX use_realm;
+ int16_t use_realm;
GAME_TEXT o_name[MAX_NLEN];
for (int y = 0; y < Term->hgt; y++) {
term_erase(0, y, 255);
if (!get_string(ppp, tmp_val, 2))
return;
- creature_ptr->realm1 = static_cast<REALM_IDX>(atoi(tmp_val));
+ creature_ptr->realm1 = static_cast<int16_t>(atoi(tmp_val));
sprintf(ppp, "2st Realm (None=0, 1-%d): ", MAX_REALM - 1);
sprintf(tmp_val, "%d", creature_ptr->realm2);
if (!get_string(ppp, tmp_val, 2))
return;
- creature_ptr->realm2 = static_cast<REALM_IDX>(atoi(tmp_val));
+ creature_ptr->realm2 = static_cast<int16_t>(atoi(tmp_val));
creature_ptr->window_flags |= PW_PLAYER;
creature_ptr->update |= PU_BONUS | PU_HP | PU_MANA | PU_SPELLS;
creature_ptr->redraw |= PR_BASIC;
continue;
}
- for (REALM_IDX r = 1; r < MAX_MAGIC; r++) {
+ for (int16_t r = 1; r < MAX_MAGIC; r++) {
sprintf(buf, "[Realm: %s]\n", realm_names[r]);
spoil_out(buf);
spoil_out("Name Lv Cst Dif Exp\n");