summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/areas.cc
Commit message (Collapse)AuthorAgeFilesLines
* Hide a hack better.Shmuale Mark2014-08-031-2/+2
| | | | | | | Ideally, we wouldn't be using special for unrands totally different from how items of the same type do, but that's less trivial than this commit. A centralised place to check for being an unrand should at least make such a change easier.
* Remove stuffNicholas Feinberg2014-07-291-2/+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!
* 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.
* Melt away lava orcs.Steve Melenchuk2014-05-141-1/+12
| | | | | | | | | | | | | | | | 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).
* Remove Shedureaverb2014-05-131-2/+0
| | | | | They never really worked as enemies - their only unique aspect, partner resurrection, was just annoying.
* Gozag: gold lust.Steve Melenchuk2014-05-071-0/+35
| | | | | Fighting near the gold piles of recently-defeated enemies boosts your skills.
* Remove silver starsChris Campbell2014-04-281-2/+0
| | | | | | Both of their spells work by dealing ridiculous amounts of damage to a few, vulnerable species and little or no damage otherwise, which does not make for an interesting monster.
* Let Orb run spawns generate in all non-abyss locationsgammafunk2014-03-271-1/+7
| | | | | | | | | | | | | | Players have been picking up the Orb and entering a Zig only to discover that Orb spawns don't generate, thus depriving them of HUGE GUTS to RIP AND TEAR. Their complaints have been overwhelming, so now Orb run spawns generate in Pan and all portals. We don't generate the spawns in the Abyss, since the player can be banished there on the ascension, whereas entering other places with the Orb is voluntary. This commit also fixes the monster spawn rate when starting in the abyss with Lucy, which was being set to the orb run spawn rate instead of once per five turns as intended, and cleans up and documents some functions.
* Large opal rings aren't unrandarts.Shmuale Mark2014-03-251-2/+3
|
* Increase the radii of haloes of some items/monsters from N to sqrt(N^2+1).elliptic2014-03-161-7/+7
| | | | It looks/plays a bit better and is consistent with spell ranges.
* Tweak TSO/Dith halo/umbra radii.elliptic2014-03-161-8/+4
| | | | | | | | | | | | | | | | | | The old formula had three issues: * Smallest radius was 1, meaning that orthogonally adjacent squares were in the halo but not diagonally adjacent squares. This meant that TSOites with this size halo wanted to avoid meleeing diagonally, which was awkward. * Largest radius was 8, meaning that it missed a few squares at the edge of LOS (those at distance sqrt(65)), which was ugly and confusing for stuff like Dith's shadow step ability. * Largest radius was reached at 170 piety, which was inconsistent with other god abilities (which either stop at 160 piety = ****** or go all the way to 200 piety. This commit addresses all of these issues: the smallest radius is sqrt(2), the largest radius is sqrt(65), and the largest radius is reached at 160 piety exactly. This does mean a slight increase in halo size in general, so it is a (very minor) buff to these gods.
* Give the ring of Shadows an umbra.Shmuale Mark2014-03-031-0/+7
| | | | | | The size is equivalent to Brilliance's halo, and the stealth modifier is 1.5. It loses +4 EV and -4 Acc since lower accuracy is an inherent trait of an umbra.
* Don't crash when sanctuary shrinks near the map edgeNeil Moore2014-02-231-2/+2
| | | | | | | | | | See for example: http://crawl.lantea.net/crawl/morgue/letownia/crash-letownia-20140224-004021.txt Introduced by 0.14-a0-622-g0c137b5, which replaced radius_iterator with C_SQUARE by rectangle_iterator. Unfortunately, the latter did not clip the iterator to the map. Add a flag to do so: false by default because iterated rectangles are not always in map coordinates.
* s/Dithmengos/Dithmenos/ (dpeg).Steve Melenchuk2014-02-101-2/+2
| | | | | At least three devs are probably waiting for this to be pushed if they're not about to push it themselves. So now it's done.
* Give the shadow god a non-placeholder name: Dithmengos.Steve Melenchuk2014-01-101-2/+2
|
* Shadow god - umbra.Steve Melenchuk2014-01-101-2/+12
| | | | This works exactly like TSO's halo, only it's an umbra.
* Drop double newlines where they seem to serve no purpose.Adam Borowski2013-12-211-2/+0
| | | | | Sometimes, they're there to emphasize a break between two sections of code, which is good. In a majority of cases, though, they're just inconsistent.
* Use consistent spelling of "liquefied".Adam Borowski2013-12-091-1/+1
|
* Replace `mpr(s, ch)` with `mprf(ch, s)`Adam Borowski2013-11-291-14/+8
| | | | | | | | | Also simplify quite a few cases. It turns out in >90% cases of non-literals the argument had .c_str(), which meant it was pointlessly malloc()ed and converted from and to std::string. I believe a sprintf is faster, so even the argument of miniscule speed-up doesn't apply.
* Drop unnecessary parentheses from return statements.Adam Borowski2013-11-151-1/+1
|
* Remove moths of suppressionChris Campbell2013-11-111-51/+5
| | | | | | | | | | | Suppression is a hugely complicated and inconsistent mechanic. Its original purpose was to be a way of overriding rPois in Spider but there are now plenty of monsters that do this effectively (and much more simply). [1KB: I moved this to trunk, as it made an already extremely hard to review branch massively more so. There's nothing but a single enum to preserve, so compat break doesn't make this removal any easier or harder.]
* Automated brace fixes.Adam Borowski2013-11-061-6/+0
|
* Squares are rectangles, not circles.Adam Borowski2013-11-051-2/+2
| | | | So use the correct iterator. No functional changes.
* Remove radius_iterator(coord, r, c_type, los_base).Adam Borowski2013-11-051-5/+1
|
* Drop "soul auras".Adam Borowski2013-11-051-40/+1
| | | | | | | | They costed us complex bookkeeping every turn if there were any lost souls on the level. Instead, just check the "hard way" (faster than one turn worth of aura processing) whenever a monster dies. No functional changes.
* Assign reasonable los types to auras.Adam Borowski2013-11-051-10/+5
| | | | | It makes no sense for liquefaction to be stopped by clouds, or for some to work through glass.
* Rewrite monster_iterator.Adam Borowski2013-10-311-1/+0
| | | | | It degenerated to a simple loop over menv, hardly worth any syntactic sugar. I kept it for now, though.
* Get rid of most types of actor_iterator.Adam Borowski2013-10-311-74/+78
|
* Have the Orb not take up an inventory slot.Steve Melenchuk2013-10-301-5/+3
| | | | | It still, however, costs 60 aum to carry, and has all of its other effects.
* Axe two uses of los_glob.Adam Borowski2013-07-161-4/+7
| | | | They hinder attempts of untangling the iterator/los mess.
* Fix Mennas losing his halo.Adam Borowski2013-07-131-0/+2
| | | | | I'm not changing suspiciously low radius for now -- it there was some talk about it vs silence radius before.
* Make monster paladins consistent with player ones.Adam Borowski2013-07-101-3/+0
| | | | Ie, 404 compliant.
* Ghostbusterize the holy spirit.Adam Borowski2013-07-101-2/+0
|
* Remove use of 'you' inside player member functionspubby2013-06-301-6/+6
| | | | | | 'you' seemed to be pointless in such context anyways, and lead to some const correctness bugs since '*this' could have a different const-ness from 'you'.
* Strip halos from some animal holiesDracoOmega2013-06-241-7/+1
| | | | | | | | | | | It seems a bit unnecessary and even boring that literally EVERY holy creature has a halo, especially when this seems more of a crusder/TSO shtick and some of these creatures explicitly belong to someone else. I have removed them from phoenix, apises, and pearl dragons. I would have done so from Shedu as well, except their cast text specifically mentions The Shining One. I left the one on holy swine for now, since that is at least amusing (and they're basically joke monsters anyway).
* Deparenthesize return (scalar).Adam Borowski2013-06-041-4/+4
|
* Merge branch 'master' into lava_orcsAdam Borowski2013-05-291-9/+48
|\
| * New monster: lost soulsDracoOmega2013-05-261-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are wandering confluxes of necromantic power that have no offense of their own, but can sacrifice themselves to 'revive' allied monsters near them at the moment they are killed. If a non-zombified undead is killed while in LoS of an allied lost soul, the soul will die instead and the undead will be restored to full hp (and have its status effects reset). If a zombifiable living creature dies while in LoS of an allied lost soul, instead the soul will assume its likeness, turning into a spellcasting spectral of the same type with 'fake' (as with shadow creatures) copies of the original's gear. Lost souls move quickly and attempt to maintain range, but are otherwise fragile. If they find themselves near foes but no allies they could aid, they will flicker out of the living world and reappearing near some other ally elsewhere in the level (and temporarily submerge into the air there). Tactically, they can serve to augment singular threats and also create situations where the player might rather choose to ignore the most threatening creatures so as to force the lost soul to sacrifice itself for a harmless one, or to kill the soul directly.
| * Fix a possible crash with using interlevel recall during the orb runDracoOmega2013-04-261-2/+2
| |
| * Remove outdated comment from areas.ccSamuel Bronson2013-04-201-1/+0
| |
* | Give lava orcs a heat halo that causes fire damage to nearby enemies.Eronarn Palazzo2013-01-081-1/+53
|/
* Stamp out blessed toes.Adam Borowski2012-12-051-2/+0
| | | | | While some religions have a fetish with playing with body parts, it's only the evil side who ever animates them.
* DisjunctionBrendan Hickey2012-11-181-0/+27
| | | | | | | | | Level 8 translocation spell. Blinks away everything with diminishing probability with: P(~blink) = 0.8^(1/(dist+1)/(dist-1)) Over 10 ticks, a monster adjacent to the caster will blink with probability 0.9. Monsters may be blinked repeatedly.
* Remove unnecessary includes from header files.Jay3.14152012-10-231-1/+1
| | | | | | | | | | For most header files, this only saves on having to recompile a small number of source files, but there are also a few headers where small changes would now take significantly less time. This is most obvious for the Tiles build for which the dependencies have been greatly reduced, so that the only additional includes when compared to console are strictly library or tile related.
* Use std namespace.Raphael Langella2012-08-261-11/+11
| | | | | | | | | | | | | I had to rename distance() (in coord.h) to distance2() because it conflicts with the STL function to compare 2 iterators. Not a bad change given how it returns the square of the distance anyway. I also had to rename the message global variable (in message.cc) to buffer. I tried to fix and improve the coding style has much as I could, but I probably missed a few given how huge and tedious it is. I also didn't touch crawl-gdb.py, and the stuff in prebuilt, rltiles/tool and util/levcomp.*, because I have no clue about those.
* QUAD DAMAGE emits an Orb-style glow while in effect.Steve Melenchuk2012-08-151-0/+27
| | | | It's the same radius, only all blue instead of mutagenic.
* Drop a bunch of parentheses from return statements.Adam Borowski2012-08-081-3/+3
| | | | | This is incomplete, partially because of me getting bored, partially because of doubts about the point of leaving simple addition/etc in parentheses.
* Don't crash when stepping from time with the Orb.Neil Moore2012-07-131-1/+1
|
* Some more return deparenthesization.Adam Borowski2012-07-051-8/+8
|
* Remove parentheses around return (simple_function_call).Adam Borowski2012-07-051-12/+12
| | | | For way too paranoid and underinclusive values of "simple".