OSDN Git Service

[Refactor] #40020 horror-descriptions.c/h に、中立モンスターの形容詞を追加し、邪悪モンスターの形容詞を一部修正 / Added...
authorHourier <hourier@users.sourceforge.jp>
Sat, 22 Feb 2020 14:49:34 +0000 (23:49 +0900)
committerHourier <hourier@users.sourceforge.jp>
Sat, 22 Feb 2020 14:49:34 +0000 (23:49 +0900)
src/horror-descriptions.c
src/horror-descriptions.h
src/player-status.c

index a3de967..cffe01a 100644 (file)
+/*!
+ * @file horror-descriptions.c
+ * @brief \83G\83\8b\83h\83\8a\83b\83`\83z\83\89\81[\82Ì\8c`\97e\8e\8c\83e\81[\83u\83\8b\92è\8b` / Definitions of adjectives on 
+ * @date 2020/02/21
+ * @author Hourier
+ */
+
 #include "h-type.h"
 #include "horror-descriptions.h"
 
 /*!
- * @var horror_desc
- * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W\81i\92Ê\8fí\8e\9e\81j
+ * @var horror_desc_common
+ * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W (\90³\8fí\8e\9e\81A\8e×\88«\81E\92\86\97§\8b¤\92Ê)
  */
-concptr horror_desc[MAX_SAN_HORROR] =
+concptr horror_desc_common[MAX_SAN_HORROR_COMMON] =
 {
 #ifdef JP
-       "\8aõ\82Ü\82í\82µ\82¢",
        "\92ê\92m\82ê\82Ê",
-       "\82¼\82Á\82Æ\82·\82é",
        "\94j\96Å\93I\82È",
-       "\96`\93À\93I\82È",
+       "\97e\8eÍ\82Ì\82È\82¢",
+       "\88«\96²\82Ì\82æ\82¤\82È",
+       "\96¼\91O\82ð\8cû\82É\82Å\82«\82È\82¢",
+#else
+       "abysmal",
+       "baleful",
+       "grisly",
+       "nightmarish",
+       "unspeakable",
+#endif
+};
 
+/*!
+ * @var horror_desc_evil
+ * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W (\90³\8fí\8e\9e\81A\8e×\88«)
+ */
+concptr horror_desc_evil[MAX_SAN_HORROR_EVIL] =
+{
+#ifdef JP
+       "\8aõ\82Ü\82í\82µ\82¢",
+       "\82¼\82Á\82Æ\82·\82é",
+       "\96`\93À\93I\82È",
        "\82¢\82â\82È",
        "\8b°\82ë\82µ\82¢",
+
        "\95s\8c\89\82È",
-       "\97e\8eÍ\82Ì\82È\82¢",
        "\82¨\82¼\82Ü\82µ\82¢",
-
-       "\92n\8d\96\82Ì",
+       "\94ñ\93¹\82È\82é",
        "\90g\82Ì\96Ñ\82à\82æ\82¾\82Â",
        "\92n\8d\96\82Ì",
-       "\8aõ\82Ü\82í\82µ\82¢",
-       "\88«\96²\82Ì\82æ\82¤\82È",
 
+       "\82Þ\82©\82Þ\82©\82·\82é",
        "\8c\99\88«\82ð\8a´\82\82é",
        "\94±\93\96\82½\82è\82È",
        "\8b°\82¢",
        "\95s\8fò\82È",
-       "\8c¾\82¤\82à\82¨\82¼\82Ü\82µ\82¢",
 #else
        "abominable",
-       "abysmal",
        "appalling",
-       "baleful",
        "blasphemous",
-
        "disgusting",
        "dreadful",
+
        "filthy",
-       "grisly",
        "hideous",
-
        "hellish",
        "horrible",
        "infernal",
-       "loathsome",
-       "nightmarish",
 
+       "loathsome",
        "repulsive",
        "sacrilegious",
        "terrible",
        "unclean",
-       "unspeakable",
+#endif
+};
+
+/*
+ * @var horror_desc_neutral
+ * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W (\90³\8fí\8e\9e\81A\92\86\97§)
+ */
+concptr horror_desc_neutral[MAX_SAN_HORROR_NEUTRAL] =
+{
+#ifdef JP
+       "\91å\82¢\82È\82é\88Ø\95|\82É\95ï\82Ü\82ê\82½",
+       "\97d\82µ\82°\82È\8fÎ\82Ý\82Ì",
+       "\82¢\82é\82Í\82¸\82Ì\82È\82¢",
+       "\8bz\82¢\8d\9e\82Ü\82ê\82»\82¤\82È",
+       "\8cÜ\8a´\82ð\92´\89z\82µ\82½",
+
+       "\95Ê\8e\9f\8c³\82É\95\82\82©\82Ñ\8fã\82ª\82Á\82½",
+       "\8c\8ao\82Æ\8c©\95´\82¤\82æ\82¤\82È",
+       "\82ä\82ç\82ä\82ç\82Æ\97h\82ç\82ß\82¢\82½",
+       "\8e©\82ç\82Ì\8eÀ\8dÝ\82ð\8b^\82¤\82Ù\82Ç\88³\93|\93I\82È",
+       "\97\9d\89ð\82Å\82«\82È\82¢",
+
+       "\83T\83C\83P\83f\83\8a\83b\83N\82È",
+       "\90\8bC\82ª\8bz\82¢\8eæ\82ç\82ê\82é\82æ\82¤\82È",
+       "\83g\83\8a\83b\83v\8a´\82É\96\9e\82¿\82½",
+       "\93ª\82ª\90^\82Á\94\92\82É\82È\82é\82æ\82¤\82È",
+       "\96³\8cÀ\82É\89Á\91¬\82µ\82½",
+#else
+       "causing great awe",
+       "laughing insanely",
+       "SHOULD NOT be there",
+       "about to be sucked",
+       "transcending senses",
+
+       "rising on the another dimension",
+       "hallucinating",
+       "swaying and swaying",
+       "overwhelming enough to doubt your own existence",
+       "unintelligible",
+
+       "psychedelic",
+       "spoiling your life",
+       "trippy",
+       "going blank",
+       "unlimitedly accelerated",
 #endif
 };
 
 /*!
  * @var funny_desc
- * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W(\8c\8ao\8fó\91Ô\8e\9e)
+ * @brief ELDRITCH HORROR\8cø\89Ê\8e\9e\82Ì\83\82\83\93\83X\83^\81[\82Ì\8c`\97e\83\81\83b\83Z\81[\83W (\8c\8ao\8fó\91Ô\8e\9e)
  */
 concptr funny_desc[MAX_SAN_FUNNY] =
 {
index ef9be76..b03df38 100644 (file)
@@ -1,10 +1,13 @@
 #pragma once
 
 /* ELDRITCH_HORROR\82É\82æ\82ésanity blast\8f\88\97\9d\82É\8aÖ\82·\82é\83\81\83b\83Z\81[\83W\82Ì\8dÅ\91å\90\94 / Number of entries in the sanity-blast descriptions */
-#define MAX_SAN_HORROR 20 /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82Ì\8c`\97e\90\94(\90³\8fí\8e\9e) */
+#define MAX_SAN_HORROR_COMMON 5 /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82Ì\8c`\97e\90\94(\90³\8fí\8e\9e\81A\8e×\88«\81E\92\86\97§\8b¤\92Ê) */
+#define MAX_SAN_HORROR_EVIL 15 /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82Ì\8c`\97e\90\94(\90³\8fí\8e\9e\81A\8e×\88«) */
+#define MAX_SAN_HORROR_NEUTRAL 15 /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82Ì\8c`\97e\90\94(\90³\8fí\8e\9e\81A\92\86\97§) */
 #define MAX_SAN_FUNNY 22  /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82Ì\8c`\97e\90\94(\8c\8ao\8e\9e) */
 #define MAX_SAN_COMMENT 5 /*!< \8b°\82ë\82µ\82¢\91Î\8fÛ\82ð\8c©\82½\82Æ\82«\82Ì\90â\8b©\83\81\83b\83Z\81[\83W\90\94(\8c\8ao\8e\9e) */
 
-concptr horror_desc[MAX_SAN_HORROR];
+concptr horror_desc_common[MAX_SAN_HORROR_COMMON];
+concptr horror_desc_evil[MAX_SAN_HORROR_EVIL];
 concptr funny_desc[MAX_SAN_FUNNY];
 concptr funny_comments[MAX_SAN_COMMENT];
index ce0e8d2..7750d03 100644 (file)
@@ -4520,7 +4520,7 @@ void wreck_the_pattern(player_type *creature_ptr)
 
 /*!
  * @brief ELDRITCH_HORRORによるプレイヤーの精神破壊処理
- * @param m_ptr ELDRITCH_HORRORを引き起こしたモンスターの参照ポインタ
+ * @param m_ptr ELDRITCH_HORRORを引き起こしたモンスターの参照ポインタ。薬・罠・魔法の影響ならNULL
  * @param necro 暗黒領域魔法の詠唱失敗によるものならばTRUEを返す
  * @return なし
  */
@@ -4574,7 +4574,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                }
 
                msg_format(_("%s%sの顔を見てしまった!", "You behold the %s visage of %s!"),
-                       horror_desc[randint0(MAX_SAN_HORROR)], m_name);
+                       horror_desc_evil[randint0(MAX_SAN_HORROR_EVIL)], m_name);
                r_ptr->r_flags2 |= RF2_ELDRITCH_HORROR;
                if (PRACE_IS_(creature_ptr, RACE_IMP) ||
                        PRACE_IS_(creature_ptr, RACE_DEMON) ||
@@ -4635,7 +4635,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                }
 
                msg_format(_("%s%sの顔を見てしまった!", "You behold the %s visage of %s!"),
-                       horror_desc[randint0(MAX_SAN_HORROR)], desc);
+                       horror_desc_evil[randint0(MAX_SAN_HORROR_EVIL)], desc);
 
                r_ptr->r_flags2 |= RF2_ELDRITCH_HORROR;
 
@@ -4677,8 +4677,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                && saving_throw(creature_ptr->skill_sav - power)
                && saving_throw(creature_ptr->skill_sav - power)
                && saving_throw(creature_ptr->skill_sav - power)
-               && saving_throw(creature_ptr->skill_sav - power)
-               )
+               && saving_throw(creature_ptr->skill_sav - power))
        {
                return;
        }
@@ -4686,6 +4685,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
        switch (randint1(22))
        {
        case 1:
+       {
                if (!(creature_ptr->muta3 & MUT3_MORONIC))
                {
                        if ((creature_ptr->stat_use[A_INT] < 4) && (creature_ptr->stat_use[A_WIS] < 4))
@@ -4702,10 +4702,14 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                                msg_print(_("あなたの脳は生体コンピュータではなくなった。", "Your brain is no longer a living computer."));
                                creature_ptr->muta3 &= ~(MUT3_HYPER_INT);
                        }
+
                        creature_ptr->muta3 |= MUT3_MORONIC;
                }
+
                break;
+       }
        case 2:
+       {
                if (!(creature_ptr->muta2 & MUT2_COWARDICE) && !creature_ptr->resist_fear)
                {
                        msg_print(_("あなたはパラノイアになった!", "You become paranoid!"));
@@ -4717,21 +4721,29 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
 
                        creature_ptr->muta2 |= MUT2_COWARDICE;
                }
+
                break;
+       }
        case 3:
+       {
                if (!(creature_ptr->muta2 & MUT2_HALLU) && !creature_ptr->resist_chaos)
                {
                        msg_print(_("幻覚をひき起こす精神錯乱に陥った!", "You are afflicted by a hallucinatory insanity!"));
                        creature_ptr->muta2 |= MUT2_HALLU;
                }
+
                break;
+       }
        case 4:
+       {
                if (!(creature_ptr->muta2 & MUT2_BERS_RAGE) && !creature_ptr->resist_conf)
                {
                        msg_print(_("激烈な感情の発作におそわれるようになった!", "You become subject to fits of berserk rage!"));
                        creature_ptr->muta2 |= MUT2_BERS_RAGE;
                }
+
                break;
+       }
        case 5:
        case 6:
        case 7:
@@ -4740,6 +4752,7 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
        case 10:
        case 11:
        case 12:
+       {
                if (!creature_ptr->resist_conf)
                {
                        (void)set_confused(creature_ptr, creature_ptr->confused + randint0(4) + 4);
@@ -4753,9 +4766,11 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                /* todo いつからかは不明だがreturnとbreakが同時に存在している。どちらがデッドコードか不明瞭なので保留 */
                return;
                break;
+       }
        case 13:
        case 14:
        case 15:
+       {
                if (!creature_ptr->resist_conf)
                {
                        (void)set_confused(creature_ptr, creature_ptr->confused + randint0(4) + 4);
@@ -4780,19 +4795,24 @@ void sanity_blast(player_type *creature_ptr, monster_type *m_ptr, bool necro)
                } while (randint0(100) > creature_ptr->skill_sav && one_in_(2));
 
                break;
+       }
        case 16:
        case 17:
+       {
                if (lose_all_info(creature_ptr))
                        msg_print(_("あまりの恐怖に全てのことを忘れてしまった!", "You forget everything in your utmost terror!"));
                break;
+       }
        case 18:
        case 19:
        case 20:
        case 21:
        case 22:
+       {
                do_dec_stat(creature_ptr, A_INT);
                do_dec_stat(creature_ptr, A_WIS);
                break;
+       }
        default:
                break;
        }