summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mutation.cc
Commit message (Collapse)AuthorAgeFilesLines
* Improve innate mutation override messaging (#7324)Neil Moore2014-07-311-7/+4
| | | | | Give a message whenever we make permanent any level of a temporary mutation, not just the last one.
* Remove stuffNicholas Feinberg2014-07-291-1/+2
| | | | | | | .cc, moving its contents into the new stepdown.cc and strings.cc. (The latter also got many donations from libutil.h.) Down with stuff! Up the new flesh!
* Move redraw functions from stuff.cc -> output.ccNicholas Feinberg2014-07-281-0/+1
|
* Remove a now unused function (geekosaur)Neil Moore2014-07-221-35/+0
| | | | Not sure how I missed this in 0.15-a0-2194-g98569aa.
* Don't indicate suppressable mutations unless suppressed (#8814)Neil Moore2014-07-211-16/+0
| | | | | | It's confusing to players, some of whom think the * means the mutation is currently suppressed. Worse, it didn't even pay attention to whether the form spells you know actually would suppress the mutation.
* Combine key names, symbolise.Shmuale Mark2014-07-041-1/+2
|
* Fold mutation_def::wizname into ::short_desc.Shmuale Mark2014-07-031-2/+2
| | | | | | | | In only a few cases were the strings different, and in even fewer were they significantly so. In general, I used the short_desc for the combined one, since someone running wizmode can presumably look at mutation-data.h, except that "large and strong wings" got changed to "big wings", and "life protection" to "negative energy resistance".
* The great mon-stuff migration.Shmuale Mark2014-06-221-1/+0
| | | | | | | | | A good deal of functions move to the two new files, mon-poly and mon-message. Of the others, some go to where they are used, some to mon-util, and a few are made member methods of monster. This probably breaks Xcode compilation, and I'm not able to test the changes I made to MSVC that will (hopefully) keep it working.
* Adjust the Contemplative mutationNicholas Feinberg2014-06-201-1/+1
| | | | | Make it a badmut (since it is!), and give it a new name better suiting its new status.
* Don't count augmented innate mutations for silver damage.Neil Moore2014-06-191-0/+4
| | | | | | | | | | | If you had an innate mutation at non-maximum level, then gained the last level as a non-innate mutation, how_mutated was counting all the levels, including the innate ones. This meant that a minotaur who got Horns from !benemut would take three times as much silver damage as one who got, say, scales. This doesn't affect demonspawn, whose innate mutations do count for purposes of silver damage.
* Added a note for mutations becoming permanent (Prism)Nicholas Feinberg2014-06-131-0/+2
|
* Mutation: ContemplativeBrendan Hickey2014-06-121-0/+1
| | | | | | | Add Contemplative, the inverse of Wild Magic. Makes spells easier to cast, but with lower power. I've flagged it as a badmut for now. Perhaps Wild Magic should also be flagged as bad.
* Don't check _accept_mutation in _get_mut_with_use.Neil Moore2014-06-111-4/+2
| | | | | | | | | | | | | | | | Most of the code that was replaced by _get_mut_with_use did not care whether the mutation was acceptible, and some of the code was broken by the change. In particular, _delete_random_slime_mutation indexed you.mutations directly with the result, causing a crash when the selected mutation was unacceptible [1]---and even if the crash were fixed, the behaviour would be wrong because it would never select a maxed-out slime mutation. Move the _accept_mutation call out of _get_mut_with_use and into the one caller that needed it, _get_random_mutation. [1] For example, http://crawl.akrasiac.org/rawdata/DreamWalker/crash-DreamWalker-20140611-033210.txt
* Remove a questionably named/useful functionNicholas Feinberg2014-06-091-18/+13
|
* Refactor mutationsNicholas Feinberg2014-06-091-85/+83
|
* Marginally improve some truly MT_BAD codeNicholas Feinberg2014-06-081-1/+3
|
* Fix the ratio of random muts (DrKe)Nicholas Feinberg2014-06-081-6/+14
|
* Revert "Replace some you.mutaiton[] calls with player_mutation_level()"reaverb2014-06-031-8/+8
| | | | | | | | | This reverts commit 51bfb8de72b7fe848c31fa6ce10e2c94b959eb64. It turns out player_mutation_level() is not just a wrapper for you.mutation, so this could cause some odd bugs like being transformed influencing acquirement or not properly updating saves, it's probably best to just reapply places where we know the usage is correct.
* Simplify Xom's amusement at mutationsreaverb2014-06-031-55/+4
| | | | | | Before, there was a giant list of which mutations Xom did and didn't like. This list was spoilerly and rarely updated for new mutations, so it has been replaced by just checking if the mutation is good or bad.
* Replace some you.mutaiton[] calls with player_mutation_level()reaverb2014-06-031-8/+8
| | | | | It's still inconsistant, but at least some more non setting uses are now using player_mutation_level().
* Remove an unnecessary forward declarationreaverb2014-06-011-2/+0
|
* Wrap a comment properlyreaverb2014-06-011-1/+3
|
* Don't let Demigods gain -faith mutationChris Campbell2014-05-311-0/+4
|
* Rework demonspawn mutation tiers involving conservationgammafunk2014-05-281-5/+5
| | | | | | | Since scroll/potion conservation is no longer relevant, I've split the flame/freezing cloud immunities that were part of icemail/fire blood into their own mutations. We now give these as the second mutation in both the tier-2 and tier-3 fire/ice mutation sets.
* Remove Ko recovering from illness fasterreaverb2014-05-251-5/+0
| | | | | | Sickness is really rare and might even be removed, and giving a buff to it's recovery time is unlikely to make players act differantly. This mechanic isn't worth the line on the mutations screen.
* Give Foul Stench DS Rot Immunity instead of Saprovore.reaverb2014-05-251-2/+2
| | | | | They already received it at Foul Stench 1, but Saprovore is a minor enough effect just moving rot immunity earlier is fine compensation.
* Turn Gr and VS rot immunity into an innate mutationreaverb2014-05-241-5/+0
| | | | | | It was treated as one for all practical purposes - showing up on the "A" screen, being an immutable part of the species, etc, but was not actually a mutation for some reason.
* Don't suppress non-physical mutations for thirsty vampiresChris Campbell2014-05-211-48/+9
| | | | | | | Since they can now be mutated normally at all levels, also remove the distinction between physical and non-physical mutations. This was particularly complicated (specific mutations being suppressed by varying degrees depending on hunger level).
* Allow Vampires to mutate normally at all thirst levelsChris Campbell2014-05-211-22/+8
| | | | | | They're already distinct from other undead in that they can mutate sometimes, and thematically they're all about changing state and form. They could already mutate while starving via benefical mutation, even.
* Don't reduce potion effects for Vampires at low blood levelsChris Campbell2014-05-211-3/+1
| | | | | | | It was an effect that only noticeably applied to a few types of potion, and was generally fairly overcomplicated (since things like might and resistance had their duration but not their effect reduced, other potions like magic and restore abilities were just unchanged, and so on).
* Make cold-bloodedness go away in transformations (#8496).Shmuale Mark2014-05-181-8/+2
| | | | | | | This was accomplished by using a new mutation, MUT_COLD_BLOODED, rather than a simple check for race. There's a bit of a hack to get it to still be greyed out with rC but that's probably better than the special case based on genus.
* Use you.innate_mutation rather than you.innate_mutationsreaverb2014-05-141-23/+23
| | | | Ditto for you.temp_mutation.
* Melt away lava orcs.Steve Melenchuk2014-05-141-0/+10
| | | | | | | | | | | | | | | | When you strip away the fundamentally broken tension mechanic, you're left with a species that is essentially "Hill Orcs WITH FIRE". No effort has come forward with code to fix either aspect of them despite the length of time they've been around in trunk, and the code is littered with a very large number of special cases in their presence. Current lava orcs should be able to finish their games fine, but new starts are disallowed. There are a couple of bits I've left present but which will have no function for the moment, mostly related to interactions with lava (as there are a couple of species proposals floating around that benefit from having those interactions).
* Move the definitions of other -data.h tables into their respective filesreaverb2014-05-141-3/+0
|
* Properly format conflicting mutationsreaverb2014-05-081-26/+26
|
* Mark slow heal and no device healing as mutually exclusive (reaverb).Shmuale Mark2014-05-081-0/+1
|
* Qazlal wrath.Steve Melenchuk2014-05-071-2/+21
| | | | | | | | | | | | | Three variants: 1) throw some elementals at you, with their HD equal to your XL. 2) Temporarily create lava around you (intended to limit your movement). 3) Temporarily mutate an elemental vulnerability (rF--, rC--, rElec-, or deformed body i.e. AC-). More elemental terrain changes could be nice, but this suffices for now.
* Auto-id jewellery on equip.Shmuale Mark2014-04-271-1/+0
| | | | | | | | | | | | In the case of rings/amulets that identified themselves when they had an effect, the player would want to try to put themselves in a position where the item would identify, which was techincally optimal but quite annoying. There were a few items that never would identify, but on the whole it's not worth keeping around the behavior just for them. The ID code is pretty confusing and it's quite possible the implementation is not ideal or there are actual bugs.
* Move mon death stuff from mon-stuff.cc to mon-death.cc.Shmuale Mark2014-04-121-0/+1
| | | | | | | Touches a lot of files since their #includes have to be edited. (Pushing now since it shouldn't break anything and keeping it updated is nasty.)
* Mention rot immunity on A screen for VS and GrChris Campbell2014-03-271-0/+5
|
* List water walking and ring of flames after innate mutations on A screenChris Campbell2014-03-241-12/+12
|
* Fix mismatched colour tags in LO mutation list (#8304)Neil Moore2014-03-231-2/+2
|
* Use the correct radius when sensing invisible monsters in LOS (MarvinPA).gammafunk2014-03-131-9/+6
| | | | | | | | Before we were letting the player detect all invisible enemies in LOS if they had antennae, regardless of mutation level, and were not checking either Ashenzari's detection radius nor that from the boots of the assassin at all. This commit also cleans up and documents a few related functions.
* Remove Formicid giant club wielding, reduce shield penalties, apt tweaksDracoOmega2014-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | Giant spiked clubs were stronger than other weapons to such a degree that they commonly eclipsed the more unique formicid mechanic of using a two-hander with a shield. There is already a race whose weapon choice centers around giant clubs, so I think it better for formicids to lose this ability so as to hilight the more interesting one. In the same vein, formicids now recieve the same reduced shield penalties that large races do (a perk of effectively having more limbs to juggle everything with), which should make shield usage further encouraged earlier on, where they have yet to gain enough xp to otherwise benefit from using them with a two-hander (and the race is considered weak enough that a few buffs like this feel perfectly safe). Additionally, there are a couple apt tweaks: Fighting 0 -> +1 Short Blades +1 -> 0 Armour +2 -> +1 Shields 0 -> +2
* Remove insignificant speed-up of corpse rotting with Powered by Death.Shmuale Mark2014-03-021-9/+1
|
* Remove Fo exoskeleton mutation.pubby2014-03-011-1/+0
| | | | | The mutation was added to compensate for their low HP in the early game, but since they have normal HP now it's not really needed.
* Allow Fo to get rPois mutation.pubby2014-03-011-2/+0
|
* Let demonic guardians use autofoe behaviorDracoOmega2014-02-281-1/+2
|
* Remove djinn.wheals2014-02-241-0/+4
| | | | | | | Djinn games can't be started (hopefully including using the rcfile), and djinn code should be removed on save-compat bump. Also, schedule a few SE things to be removed.
* Remove some more references to Fo poison vulnerabilityChris Campbell2014-02-231-4/+0
|