diff options
author | Stefan O'Rear <stefanor@cox.net> | 2009-11-02 00:08:28 -0800 |
---|---|---|
committer | Stefan O'Rear <stefanor@cox.net> | 2009-11-02 00:08:28 -0800 |
commit | 945b0cd6507cb5453e099e0cc245706f70c87d98 (patch) | |
tree | bf34de1939ba603929fcfe15c06d7d079a467ab9 /crawl-ref/source/mutation.cc | |
parent | 22dc55568b1c6bbc4a3e3e9374acf0a889645810 (diff) | |
download | crawl-ref-945b0cd6507cb5453e099e0cc245706f70c87d98.tar.gz crawl-ref-945b0cd6507cb5453e099e0cc245706f70c87d98.zip |
Implement 'Icemail' mutation for new DS
Diffstat (limited to 'crawl-ref/source/mutation.cc')
-rw-r--r-- | crawl-ref/source/mutation.cc | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/crawl-ref/source/mutation.cc b/crawl-ref/source/mutation.cc index 68dcf7f71a..8ba260a302 100644 --- a/crawl-ref/source/mutation.cc +++ b/crawl-ref/source/mutation.cc @@ -1211,6 +1211,13 @@ mutation_def mutation_defs[] = { "passive mapping" }, + + { MUT_ICEMAIL, 0, 1, false, false, + {"A meltable icy envelope protects you from harm (AC+", "", ""}, + {"An icy envelope takes form around you.", "", ""}, + {"", "", ""}, + "icemail" + }, }; const mutation_def& get_mutation_def(mutation_type mut) @@ -2651,6 +2658,16 @@ std::string mutation_name(mutation_type mut, int level, bool colour) ostr << mdef.have[0] << level << ")."; result = ostr.str(); } + else if (mut == MUT_ICEMAIL) + { + std::ostringstream ostr; + + int amt = ICEMAIL_MAX; + amt -= you.duration[DUR_ICEMAIL_DEPLETED] * ICEMAIL_MAX / ICEMAIL_TIME; + + ostr << mdef.have[0] << amt << ")."; + result = ostr.str(); + } else if (result.empty() && level > 0) result = mdef.have[level - 1]; |