diff options
Diffstat (limited to 'crawl-ref/source')
-rw-r--r-- | crawl-ref/source/dat/database/monspeak.txt | 8 | ||||
-rw-r--r-- | crawl-ref/source/mon-util.cc | 5 |
2 files changed, 9 insertions, 4 deletions
diff --git a/crawl-ref/source/dat/database/monspeak.txt b/crawl-ref/source/dat/database/monspeak.txt index 6118cb017b..1b6a3b7feb 100644 --- a/crawl-ref/source/dat/database/monspeak.txt +++ b/crawl-ref/source/dat/database/monspeak.txt @@ -2062,7 +2062,7 @@ VISUAL:@The_monster@ grins evilly. VISUAL:@The_monster@ seems to say something. -VISUAL:@The_monster@ says something you can't hear. It was probably not a compliment. +VISUAL:@The_monster@ says something you can't hear. It was probably not a compliment. @player_only@ ## END silenced Murray ## %%%% # ugly orc sorceress @@ -2103,7 +2103,7 @@ _Nessos_common_ @The_monster@ pounds the earth with @possessive@ hooves. -@The_monster@ intently looks at you, slowly moving @possessive@ tail. +@The_monster@ intently looks at @foe@, slowly moving @possessive@ tail. @The_monster@ stands on @possessive@ hind legs for a moment. @@ -2126,7 +2126,7 @@ w:1 @The_monster@ says, "I schooled the Big Guy. You'll be no problem." w:1 -@The_monster@ tries to tell you a complicated story about hydras, @possessive@ blood, and marriage. +@The_monster@ tries to tell @foe@ a complicated story about hydras, @possessive@ blood, and marriage. ## END NESSOS %%%% @@ -2852,7 +2852,7 @@ _Killer_Klown_rare_ @The_monster@ honks. -VISUAL:@The_monster@ pantomimes your execution. +VISUAL:@The_monster@ pantomimes @foe_possessive@ execution. VISUAL:@The_monster@ pokes out @possessive@ tongue. diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc index a47e025a88..9e5d7de673 100644 --- a/crawl-ref/source/mon-util.cc +++ b/crawl-ref/source/mon-util.cc @@ -8597,6 +8597,7 @@ std::string do_mon_str_replacements(const std::string &in_msg, msg = replace_all(msg, "@player", "@foe"); msg = replace_all(msg, "@Player", "@Foe"); + msg = replace_all(msg, "@foe_possessive@", "your"); msg = replace_all(msg, "@foe@", "you"); msg = replace_all(msg, "@Foe@", "You"); @@ -8617,6 +8618,9 @@ std::string do_mon_str_replacements(const std::string &in_msg, && !crawl_state.arena) { foe_name = foe->name(DESC_NOCAP_YOUR); + const std::string::size_type pos = foe_name.find("'"); + if (pos != std::string::npos) + foe_name = foe_name.substr(0, pos); } else foe_name = foe->name(DESC_NOCAP_THE); @@ -8633,6 +8637,7 @@ std::string do_mon_str_replacements(const std::string &in_msg, msg = replace_all(msg, " @at_foe@", " at @foe@"); msg = replace_all(msg, "@foe,@", "@foe@,"); + msg = replace_all(msg, "@foe_possessive@", "@foe@'s"); msg = replace_all(msg, "@foe@", foe_name); msg = replace_all(msg, "@Foe@", upcase_first(foe_name)); |