OSDN Git Service

[Feature] 免疫付与に使用するエッセンスを変更
authorHabu <habu1010+github@gmail.com>
Sun, 12 Sep 2021 13:13:31 +0000 (22:13 +0900)
committerHabu <habu1010+github@gmail.com>
Mon, 13 Sep 2021 12:21:50 +0000 (21:21 +0900)
四属性免疫を付与する時に使用するエッセンスを、免疫エッセンスのみ
から「免疫エッセンス+対応する耐性エッセンス」にする。
なお、複数のエッセンスを消費する場合消費量は同量なので、エッセンス
消費量のバランスを取るため、免疫フラグは抽出時は抽出量100とし、
消費は免疫エッセンス200+耐性エッセンス200とする。
(全耐性付与が全耐性エッセンス150ずつというところからとりあえず
適当に決定)

src/object-enchant/smith-tables.cpp

index 15c8a94..07065d9 100644 (file)
@@ -215,10 +215,10 @@ const std::vector<essence_drain_type> Smith::essence_drain_info_table = {
     { TR_SUST_CHR, { SmithEssence::SUST_STATUS }, 10 },
     { TR_RIDING, {}, 0 },
     { TR_EASY_SPELL, {}, 0 },
-    { TR_IM_ACID, { SmithEssence::IMMUNITY }, 10 },
-    { TR_IM_ELEC, { SmithEssence::IMMUNITY }, 10 },
-    { TR_IM_FIRE, { SmithEssence::IMMUNITY }, 10 },
-    { TR_IM_COLD, { SmithEssence::IMMUNITY }, 10 },
+    { TR_IM_ACID, { SmithEssence::IMMUNITY }, 100 },
+    { TR_IM_ELEC, { SmithEssence::IMMUNITY }, 100 },
+    { TR_IM_FIRE, { SmithEssence::IMMUNITY }, 100 },
+    { TR_IM_COLD, { SmithEssence::IMMUNITY }, 100 },
     { TR_THROW, {}, 0 },
     { TR_REFLECT, { SmithEssence::REFLECT }, 10 },
     { TR_FREE_ACT, { SmithEssence::FREE_ACT }, 10 },
@@ -390,10 +390,10 @@ const std::vector<std::shared_ptr<ISmithInfo>> Smith::smith_info_table = {
     make_basic_smith_info(SmithEffect::BRAND_COLD, _("凍結", "cold brand"), SmithCategory::WEAPON_ATTR, { SmithEssence::BRAND_COLD }, 20, { TR_BRAND_COLD }),
     make_basic_smith_info(SmithEffect::VORPAL, _("切れ味", "sharpness"), SmithCategory::WEAPON_ATTR, { SmithEssence::BRAND_ACID, SmithEssence::BRAND_ELEC, SmithEssence::BRAND_FIRE, SmithEssence::BRAND_COLD }, 10, { TR_VORPAL }),
 
-    make_basic_smith_info(SmithEffect::IM_ACID, _("酸免疫", "acid immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY }, 20, { TR_IM_ACID }),
-    make_basic_smith_info(SmithEffect::IM_ELEC, _("電撃免疫", "electric immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY }, 20, { TR_IM_ELEC }),
-    make_basic_smith_info(SmithEffect::IM_FIRE, _("火炎免疫", "fire immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY }, 20, { TR_IM_FIRE }),
-    make_basic_smith_info(SmithEffect::IM_COLD, _("冷気免疫", "cold immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY }, 20, { TR_IM_COLD }),
+    make_basic_smith_info(SmithEffect::IM_ACID, _("酸免疫", "acid immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY, SmithEssence::RES_ACID }, 200, { TR_IM_ACID }),
+    make_basic_smith_info(SmithEffect::IM_ELEC, _("電撃免疫", "electric immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY, SmithEssence::RES_ELEC }, 200, { TR_IM_ELEC }),
+    make_basic_smith_info(SmithEffect::IM_FIRE, _("火炎免疫", "fire immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY, SmithEssence::RES_FIRE }, 200, { TR_IM_FIRE }),
+    make_basic_smith_info(SmithEffect::IM_COLD, _("冷気免疫", "cold immunity"), SmithCategory::RESISTANCE, { SmithEssence::IMMUNITY, SmithEssence::RES_COLD }, 200, { TR_IM_COLD }),
     make_basic_smith_info(SmithEffect::REFLECT, _("反射", "reflection"), SmithCategory::RESISTANCE, { SmithEssence::REFLECT }, 20, { TR_REFLECT }),
 
     make_basic_smith_info(SmithEffect::RES_ACID, _("耐酸", "resistance to acid"), SmithCategory::RESISTANCE, { SmithEssence::RES_ACID }, 15, { TR_RES_ACID }),