summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-transit.h
Commit message (Collapse)AuthorAgeFilesLines
* Apply dactions to transiting monsters, refactor related codeDracoOmega2013-03-091-0/+3
| | | | | | | | | | | | | Dactions which affect monsters (such as abandoning or joining certain gods, enslaving new souls, killing Pikel) now apply not only to monsters currently on a level, but monsters that have yet to transit to a level (eg: fell down a shaft or were banished, but the player has not yet visited their destination). Previously, it was possible to visit the Abyss and find (say) still-friendly undead slaves there after abandoning Yred in the meantime. This also fixes the unfortunate case of shafted Pikel slave not getting the news about their cruel slavemaster's death.
* Interlevel recall for Yred and BeoghDracoOmega2013-03-031-0/+2
| | | | | | | | | | | | | | | | | | | | | Allow the god-given recall abilities for Yred and Beogh to recall all god-associated permenant allies, regardless of where in the dungeon they reside. (Note that this only includes Yred gifts and not zombies; ie: things that could already follow you between levels) This is done by actively tracking all of these allies in a seperate list which is updated whenever a tracked ally is gained, dies, changes level, or the player changes level. The fact that permanent allies from these gods make interlevel travel unusable is one of the largest sources of tedium associated with those gods, and a major reason for their lack of popularity. Being able to recall from previous levels means you no longer have to manually herd and count allies at the top and bottom of every stair, sometimes having to make multiple trips if the terrain surrounding the stair is too confined. This should make these gods much more playable (and if their power level is now more obvious and considered too high, it can be adjusted in other ways than via tedium)
* Use std namespace.Raphael Langella2012-08-261-4/+4
| | | | | | | | | | | | | 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.
* Gut and parcel out most of stuff.ccAdam Borowski2011-06-041-0/+3
|
* Make file headers doxygen-friendly, drop useless fields.Adam Borowski2011-03-281-5/+4
| | | | | | | "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.
* Rename class "monsters" to "monster".Robert Vollmert2010-09-051-4/+4
|
* [2001] Clear monster and item transit lists when resetting game.Darshan Shaligram2010-07-181-0/+2
|
* Reduce dependency on travel.hMatthew Cline2009-11-291-1/+0
| | | | | | | | Removed inclusion of travel.h from most .h files to reduce the number of .cc files dependant on it. This involved moving the level_pos declaration to externs.h, moving the flood_find template to it's own header file, and moving two typedefs from travel.h to travel_defs.h because typedefs can't be forward declared (argh).
* Move mtransit to mon-transit.Vsevolod Kozlov2009-11-141-0/+46