OSDN Git Service

[Refactor] struct player_type を class PlayerType に置換。
[hengbandforosx/hengbandosx.git] / src / player / player-realm.cpp
index e6fa569..cd116e3 100644 (file)
@@ -5,7 +5,7 @@
 /*!
  * 職業毎に選択可能な第一領域魔法テーブル
  */
-const u32b realm_choices1[MAX_CLASS] = {
+const std::vector<BIT_FLAGS> realm_choices1 = {
     (CH_NONE), /* Warrior */
     (CH_LIFE | CH_SORCERY | CH_NATURE | CH_CHAOS | CH_DEATH | CH_TRUMP | CH_ARCANE | CH_ENCHANT | CH_DAEMON | CH_CRUSADE), /* Mage */
     (CH_LIFE | CH_DEATH | CH_DAEMON | CH_CRUSADE), /* Priest */
@@ -40,7 +40,7 @@ const u32b realm_choices1[MAX_CLASS] = {
 /*!
  * 職業毎に選択可能な第二領域魔法テーブル
  */
-const u32b realm_choices2[MAX_CLASS] = {
+const std::vector<BIT_FLAGS> realm_choices2 = {
     (CH_NONE), /* Warrior */
     (CH_LIFE | CH_SORCERY | CH_NATURE | CH_CHAOS | CH_DEATH | CH_TRUMP | CH_ARCANE | CH_ENCHANT | CH_DAEMON | CH_CRUSADE), /* Mage */
     (CH_LIFE | CH_SORCERY | CH_NATURE | CH_CHAOS | CH_DEATH | CH_TRUMP | CH_ARCANE | CH_ENCHANT | CH_DAEMON | CH_CRUSADE), /* Priest */
@@ -72,12 +72,12 @@ const u32b realm_choices2[MAX_CLASS] = {
     (CH_NONE), /* Elementalist */
 };
 
-REALM_IDX 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; }
+ItemKindType get_realm1_book(PlayerType *player_ptr)
+{
+    return ItemKindType::LIFE_BOOK + player_ptr->realm1 - 1;
+}
 
-bool is_wizard_class(player_type *player_ptr)
+ItemKindType get_realm2_book(PlayerType *player_ptr)
 {
-    return (player_ptr->pclass == CLASS_MAGE || player_ptr->pclass == CLASS_HIGH_MAGE || player_ptr->pclass == CLASS_SORCERER || player_ptr->pclass == CLASS_MAGIC_EATER
-        || player_ptr->pclass == CLASS_BLUE_MAGE || player_ptr->pclass == CLASS_ELEMENTALIST);
+    return ItemKindType::LIFE_BOOK + player_ptr->realm2 - 1;
 }