summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mutation.h
Commit message (Collapse)AuthorAgeFilesLines
* Roll demonspawn mutations at the start of the game.Stefan O'Rear2009-10-241-1/+1
| | | | | | | All demonspawn mutations are now stored in the player data, and are determined at the same time. This makes a lot of things a lot simpler. On the other hand, it means that the influence of skills and gods on demonspawn mutations is now broken.
* Drop obsolete CVS last-committed headers ($Author$).Adam Borowski2009-10-061-2/+0
|
* Ensure the the Helix card only removes bad mutations, and that Zin's dolorous2009-07-181-1/+1
| | | | | | | | | retribution only removes good mutations, by adding a parameter to delete_mutation() to disallow mismatches of random good and bad mutations. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10287 c06c8d41-db1a-0410-9941-cceddc491573
* Give Zin a one-shot ability at piety > 160 (cf. TSO's/Lugonu's weapon dolorous2009-07-121-0/+2
| | | | | | | blessings) to remove all mutations. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10173 c06c8d41-db1a-0410-9941-cceddc491573
* Let god-given mutation effects override the mutation resistance mutation dolorous2009-07-111-1/+2
| | | | | | | again. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10151 c06c8d41-db1a-0410-9941-cceddc491573
* Add yet more minor cosmetic fixes.dolorous2009-03-121-1/+0
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9426 c06c8d41-db1a-0410-9941-cceddc491573
* Mutations cleanup. Fixes [2641583]. Syncing between the various listsharanp2009-02-261-36/+12
| | | | | | | | | | | | | is no longer necessary. However, holes in the mutation numbering will cause a crash (random2(NUM_MUTATIONS) is used in a few places.) Breaks saves badly, sorry. I tested this somewhat but some bugs might have slipped in. Fixes a few other bugs (e.g. draconians not having any messages if their wings disappear) and highlights some unused code (e.g. no way to get the stinger mutation.) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9234 c06c8d41-db1a-0410-9941-cceddc491573
* You can now request that a spell miscast effect not directly kill the playerzelgadis2008-12-211-1/+2
| | | | | | | | | | | | | | | | and leave him/her with at least N hp (it can still indirectly kill the player by causing the death of a mummy, giant spore or ball lightning). Doesn't cover the case of a level 3 transmigration miscast deleting the robust mutation or giving the frail mutation before causing hp damage. The Xom bad effects code now requests (unless Xom is being nasty) that spell miscasts not directly kill the player, rather than avoiding miscasts alltogether if the player has low HP (which didn't cover things like miscasts leading to death via XP drain or stat loss, in addition to it avoiding spell miscasts much too often). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7894 c06c8d41-db1a-0410-9941-cceddc491573
* FR #2011386:zelgadis2008-12-151-2/+3
| | | | | | | | | | | When giving or deleting a random mutation you can now request that the mutation picked doesn't instantly kill the player. Xom code now uses this option, except for when the player is under penance from Xom or Xom is bored. Improvements to the code that prevents Xom from accidently killing the player. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7835 c06c8d41-db1a-0410-9941-cceddc491573
* Fix [2253304]: Allow potions of gain [stat] to work in spite of mutation dolorous2008-11-251-1/+1
| | | | | | | | resistance from either the amulet or Zin, but let them fail with the mutation resistance mutation. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7604 c06c8d41-db1a-0410-9941-cceddc491573
* Remove pre-Stone Soup change history from source files, and push it allj-p-e-g2008-09-141-4/+0
| | | | | | | | | | into a file crawlhistory.txt in docs/obsolete. I used a perl script to do this under the assumption that all these change logs used the same system following the keyword "Change History". git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6930 c06c8d41-db1a-0410-9941-cceddc491573
* Add minor cosmetic fixes.dolorous2008-05-031-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4852 c06c8d41-db1a-0410-9941-cceddc491573
* Add spacing fixes.dolorous2008-05-031-2/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4851 c06c8d41-db1a-0410-9941-cceddc491573
* Add a failMsg parameter for delete_mutation().dolorous2008-05-011-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4796 c06c8d41-db1a-0410-9941-cceddc491573
* After some thought, revert previous change. If the mutation resistance dolorous2008-04-281-1/+1
| | | | | | | mutation is hard to remove, it should be hard to get, god gift or not. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4746 c06c8d41-db1a-0410-9941-cceddc491573
* Allow god gift mutations to override less than 3 levels of the mutation dolorous2008-04-281-1/+1
| | | | | | | resistance mutation. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4745 c06c8d41-db1a-0410-9941-cceddc491573
* Expand mutate() to account for mutations as god gifts, and make Xom use dolorous2008-04-261-1/+2
| | | | | | | | them, so that he respects the full mutation resistance mutation, as well as the limitations on how much players can be covered in scales, etc. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4666 c06c8d41-db1a-0410-9941-cceddc491573
* Make Zin no longer force mutation removal, so that he doesn't override dolorous2008-04-261-1/+2
| | | | | | | the full mutation resistance mutation anymore. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4657 c06c8d41-db1a-0410-9941-cceddc491573
* Generalize the routines to determine whether you or a monster can mutate dolorous2008-04-261-2/+0
| | | | | | | or mutate safely by moving them to the actor interface. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4650 c06c8d41-db1a-0410-9941-cceddc491573
* Add more mutation-related cleanups. Among these, revert dolorous2008-04-261-1/+1
| | | | | | | | | | can_safely_mutate() to a check whether or not the player can mutate without decomposing. Since both Zin and Xom force their mutations, and doing so ignores the "mutation resistance" mutations, checking for the latter is redundant. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4648 c06c8d41-db1a-0410-9941-cceddc491573
* Consolidate the mutation-counting routines.dolorous2008-04-251-4/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4628 c06c8d41-db1a-0410-9941-cceddc491573
* Add more mutation removal handling cleanups.dolorous2008-04-251-2/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4625 c06c8d41-db1a-0410-9941-cceddc491573
* Clean up mutation removal handling.dolorous2008-04-251-2/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4624 c06c8d41-db1a-0410-9941-cceddc491573
* Add function can_safely_mutate(), to determine whether a player has any dolorous2008-04-221-0/+3
| | | | | | | | chance of rotting upon mutation, and make Xom's random mutation routines use it. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4482 c06c8d41-db1a-0410-9941-cceddc491573
* Change vampire mutation system to be more dynamic.j-p-e-g2008-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | * Alive : full mutations effects, always mutate. * Very Full: mutations up to level 2, mutation chance 66% * Full : mutations up to level 2, mutation chance 50% * Satiated : mutations at level 1, mutation chance 33%, else rotting * Thirsty or worse: only physical and innate mutations, never mutate. The '%' screen only lists the mutations that are currently active, at the level they are currently active. Conversely, the 'A' screen shows them greyed out and with their full description in brackets if they are completely inactive, or else greyed out with the description for the currently active level, if not fully active. Might still be buggy, thus needs testing. Also clean up mutation listing on '%' screen to use comma_separated_line rather than all those manual checks for needed commas. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4274 c06c8d41-db1a-0410-9941-cceddc491573
* Allow vampires to mutate when Satiated or higher, and make non-physicalj-p-e-g2008-04-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | mutations only apply at these hunger levels, too. Differentiated mutations into physical (affecting a character's appearance and stuff: scales, hooves, wings, ...) and internal (resistances etc.). I guess this is what people usually refer to as "cosmetic", which I think is an inaccurate description since it makes it sound like they were completely superficial and had no real effect. Here's a list of arbitrarily chosen "physical" mutations: * tough skin, all scales, and fur * strong/clever/agile, and weak/dopey/clumsy * deformed * strong but stiff, and flexible but weak * frail, and robust * claws, fangs, hooves, talons, and horns * stinger, wings * blue/green marks Mutations currently not applying are still listed on the 'A' screen, though in darkgrey and in (brackets). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4246 c06c8d41-db1a-0410-9941-cceddc491573
* Helix redone.haranp2008-04-081-0/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4129 c06c8d41-db1a-0410-9941-cceddc491573
* A completely reworked version of Zin as per the lengthyj-p-e-g2007-12-301-1/+4
| | | | | | | | | | | | | | | | | | | | | | | discussion in October/November. Zin effects: - protection from harm (like all good gods) - feeding when starving (as before) - mutation resistance (chance of piety/200) Zin restrictions: - no cannibalism (like all good gods) - no attacking friends - no eating of intelligent beings' corpses - no deliberate mutating Zin invocations: - Smiting (general priestly ability?) - Revitalisation (Minor Healing + 5 mp) - Sanctuary (protection from attacks) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3164 c06c8d41-db1a-0410-9941-cceddc491573
* Updated CREDITS and INSTALL, fixed Tomb:2 (David), fixed Xom's ↵dshaligram2007-10-301-1/+5
| | | | | | mutation-as-reward strategy. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2683 c06c8d41-db1a-0410-9941-cceddc491573
* [1795751] Mutation cleanup, courtesy dolorous.dshaligram2007-10-211-7/+0
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2506 c06c8d41-db1a-0410-9941-cceddc491573
* [1809728] Fixed bug where you could get multiple levels of a single-level ↵dshaligram2007-10-111-0/+11
| | | | | | mutation (such as torment resistance). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2425 c06c8d41-db1a-0410-9941-cceddc491573
* Mutations 'green marks' was being miscounted as mutation #64, rather thanzelgadis2007-09-201-1/+1
| | | | | | | | the correct #65, leading to there being the wrong number of entries in the mutation tables. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2154 c06c8d41-db1a-0410-9941-cceddc491573
* In the item selection menu, pressing "." will toggle the next item in thezelgadis2007-09-161-1/+1
| | | | | | | | | | | list; you can press "." repeatedly to select/unselect a number of contiguous items. Also, removed the depedancy upon "menu.h" for formatted_string, since that isn't in menu.h anymore. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2101 c06c8d41-db1a-0410-9941-cceddc491573
* Type safety in mutations (mutation.cc probably needs some overhaul...)haranp2007-07-041-4/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1752 c06c8d41-db1a-0410-9941-cceddc491573
* Preliminary integration of Zooko's Xom patch (untested).dshaligram2007-05-281-7/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1489 c06c8d41-db1a-0410-9941-cceddc491573
* Some more work towards integrating race abilities and mutations:haranp2006-12-221-0/+1
| | | | | | | | | | | | | - Draconian resistances are now mutations. As a side effect, this means that red draconians can't become resistant to cold, for example. I think this is a feature. - Troll metabolism and regeneration is now (partially) a mutation. So now trolls can't get the slow metabolism mutation. It might be better to go with a size system here. - Nagas and centaurs now have deformation as an initial mutation. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@691 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed 1594106: innate abilities were not being dumped.haranp2006-11-231-1/+5
| | | | | | | | Note that this will cause a bug if you have more than 23 mutations simultaneously; fixing that will require patching formatted_string. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@485 c06c8d41-db1a-0410-9941-cceddc491573
* Clean up a mistake in the SVN import.nlanza2006-08-131-0/+73
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10 c06c8d41-db1a-0410-9941-cceddc491573