summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spl-monench.cc
Commit message (Collapse)AuthorAgeFilesLines
* Remove stuffNicholas Feinberg2014-07-291-1/+1
| | | | | | | .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!
* Separate 'permanent' and 'temporary' monster hit diceNicholas Feinberg2014-07-131-1/+1
| | | | As part of a wider scheme to make draining temporary.
* 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.
* Formatting fixes (add braces).Neil Moore2014-05-121-0/+2
| | | | This fixes all the instances caught by unbrace.
* Split M_SHADOW from M_GLOWS_LIGHT.Neil Moore2014-03-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Historically, M_GLOWS_LIGHT was originally a hardcoded list of monsters that can't be backlit: the list was mostly glowing creatures, but also some inherently shadowy ones. When the use of the flag was subsequently expanded, it be Now shadowy creatures: * Can go invisible (even more shadowy) * Have a stealth bonus, not malus. * Are described as "wreathed in shadows" rather than "outlined in light". Give the flag to shadow fiend, shadow dragon, phantasmal warrior, spectral weapon, and shadow fiend. Don't give it to spectral things, which are explicitly described as glowing. (cherry picked from commit c9348eb8f6c4cd4f327a8e0eba418e53d0be50d5) Conflicts: crawl-ref/source/mon-flags.h
* Allow slow to stack duration on monstersDracoOmega2014-02-121-2/+1
| | | | | | | | | | | | | | | | I think it was a little odd that it did not, given that it not only stacks duration against the player, but other effects like confusion will stack duration against monsters just fine. Whereas trying to slow a monster that was already slowed simply did nothing (though could be resisted in a way that suggested that it WOULD do something if only it could pass their MR) Additionally, I think that the fact that it was impossible to extend the duration if even 1 aut of slow remained was detrimental to effects like Metabolic Englaciation, since the durations applied to monsters was highly variable and recasting it to slow one monster would have no effect at all on the other half-dozens monsters whose slow was just about to expire.
* Axe a buttload of useless #includes.Adam Borowski2013-11-031-3/+0
| | | | | Can't test Android, MSVC or Mac, but a very brief glance at the diff suggests it's unlikely they're affected.
* Move mons_is_stationary() to struct actor.Adam Borowski2013-09-131-3/+2
| | | | Simplifies code in a number of places, and also fixes a few tree-moving bugs.
* Adjust corona's interaction with invisibilityDracoOmega2013-06-241-12/+0
| | | | | | | | | | | | | | | Since one of corona's main benefits is being able to make invisible things visible, it is rather odd that they can simply cast invisibility again to dispel the corona. Now corona acts similarly to other backlight effects (like sticky flame), making invisible things visible for as long as it lasts. This commit also removes an odd special-casing that made corona's duration against invisible things extremely brief and prevented extending with upon recast. Finally, this also gives more informative messages in some cases where the player casts invisibility, but does not turn invisible due to being backlit (this was only handled for magic contamination and not sticky flame, and now is handled for both of these and corona additionally)
* More variety for Forest monster spell sets.Steve Melenchuk2013-05-281-10/+24
| | | | | | | | | | | Fauns, tengu conjurers, and tengu reavers now have multiple spell sets - the former focusing on various low-level hexes and the latter two getting various schools of conjuration magic. All of the above have had empty spell slots assigned duplicate copies of spells so that more spells are cast. Pan can now also cast Metabolic Englaciation; thus, he can confuse and slow entire bands of enemies! (Leave your orc horde at home, Beoghites!)
* Fix a couple of cases that could remove Slow by Haste.Adam Borowski2013-02-161-8/+0
|
* Remove Projected Noise.elliptic2012-07-221-44/+0
| | | | | | | | A L2 spell that lets you get the rune from Tomb:3 without seeing a single mummy there or lets you pick through the loot on a late Zig level at your leisure... the idea of the spell is neat, but it is hugely overpowered in certain places if you know how to use it (while being near-useless most of the rest of the time) and I don't see much hope of balancing it.
* Remove parentheses around return (simple_function_call).Adam Borowski2012-07-051-1/+1
| | | | For way too paranoid and underinclusive values of "simple".
* Drop parentheses around scalar values in "return".Adam Borowski2012-07-051-11/+11
|
* Add formatting fixes.David Lawrence Ramsey2012-06-121-1/+1
|
* Allow monsters to wear rings and amulets.Steve Melenchuk2012-06-121-0/+3
|
* Remove a good deal of header inclusion.Adam Borowski2012-05-231-1/+0
| | | | | | | | | These accumulate but never get removed; no wonder compilation times keep rising. The includes.sh script has lots of false negatives (and positives...), and can't check .h files which cause the biggest slowdown, it'd be nice to run multidelta on those somehow.
* Don't let Recite, Slouch, Ignite Poison and Alistair's work through glass.Adam Borowski2011-12-061-1/+1
| | | | | | It was especially grindable for Recite -- a number of entry vaults have monsters behind glass or grates, and you could sit there for lots of free XP.
* Re-implement Metabolic Englaciation as a mass slowing HexChris Campbell2011-11-151-2/+39
|
* Remove Metabolic EnglaciationChris Campbell2011-11-111-31/+0
| | | | | | It's never really used, since sleeping multiple monsters at a time is actually worse than doing it one at a time with EH (since when you sleep lots of monsters at once they'll just all wake up together).
* Don't miscast when the spell can still be aborted (#4281).Raphael Langella2011-07-211-3/+7
| | | | | | | | | | | | | | | | This is a significant refactoring. All the spells now return a spret_type and take a boolean which tells if the spell has actually failed. Also some code clean up in _do_cast(). All spells have their own function now. Also fix the following bugs: * Properly abort fire storm if forced casting on a wall with '!'. Also put a message for forced out of range casting (like cloud spells). * Casting summon elemental on an invisible monster aborted with no cost. * if a summoning spell aborts because create_monster fails, you don't lose a turn. You still get a chance of miscast in this rare case. * s2s, tukima and branding spells abort properly instead of consuming turn and MP when player is not wielding appropriate object. * s2s abort message when wielding a non-snakable.
* Make file headers doxygen-friendly, drop useless fields.Adam Borowski2011-03-281-5/+5
| | | | | | | "File:" is shown in your editor's status bar. "Written by:" was used only for the first person who changed a file. We got git for that now, and pre-DCSS history is so woefully inaccurate it doesn't really matter.
* Track the source of monster enchantments.Adam Borowski2011-02-231-3/+3
| | | | | | This fixes Injury Mirror not working for delayed damage, kills done by undead/demon allies not counting as such, damage tracking not handling ench damage, etc.
* Make LOS-affecting spells work through transparent wallsChris Campbell2011-02-061-1/+1
| | | | | This affects the legendary Pain card, Slouch, Ignite Poison, Metabolic Englaciation, and Alistair's Intoxication.
* Rename ENCH_CORONA_ZIN as well, it's too mistakeable for Corona.Adam Borowski2011-01-271-2/+2
|
* Reroll of Zin recite patch.Eronarn Palazzo2011-01-231-2/+3
|
* Thin spellbooks somewhat.Adam Borowski2010-12-101-63/+0
| | | | | | | | * Bone Shards: 0 use both in 0.4 and 0.7 winner stats. Requires tedious messing with components. * Tame Beasts: 0 use, gives very weak pets for its level, with lots of preparation can be abused ("Rupert farming"). * Portal: very little use, convoluted mechanics.
* Simplify phrasingRaphael Langella2010-11-071-2/+2
|
* Move checks for naturally glowing to an actor-interface function.David Lawrence Ramsey2010-10-141-4/+1
| | | | | | Also, make monsters pay attention to it when deciding whether to cast Corona or Invisibility, or whether to use wands of invisibility. This fixes Mantis 2718.
* Add spacing fix.David Lawrence Ramsey2010-10-101-1/+1
|
* Felids: dogs are not tameable. Enslavement still works, though.Adam Borowski2010-10-101-0/+3
|
* Rename class "monsters" to "monster".Robert Vollmert2010-09-051-4/+4
|
* Rename variables named "monster" to "mons" or similar.Robert Vollmert2010-09-051-32/+32
|
* Move non-self-enchantment spells into new file.Johanna Ploog2010-08-221-0/+221
Merge spells2-4.cc into one file.