summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/externs.h
Commit message (Collapse)AuthorAgeFilesLines
* Update a commentNicholas Feinberg2014-06-221-2/+2
|
* Add method cloud_struct::agent().Neil Moore2014-06-111-0/+1
| | | | To refactor out the several calls to find_agent() in cloud.cc.
* Make Doxygen @returns "@return" for consistancy.reaverb2014-06-051-1/+1
|
* Doxygenate item_def member documentation.Neil Moore2014-05-291-23/+46
| | | | And expand the documentation for pos and link in particular.
* Remove player burden and carrying capacitygammafunk2014-05-261-2/+0
| | | | | | | | | | | Item inventory weights (based on item mass) generally don't lead to meaningful decisions that justify the inventory juggling and interface problems that come from having burden states. The 52-slot limit is a better system for limiting inventory and providing inventory-related decisions because it's not so fine-grained and doesn't require the player to examine weights for each slot. Work is ongoing to improve the slot system by consolidating food types and handling strategic consumables in a different way.
* Comment typo fix.Shmuale Mark2014-05-141-2/+2
|
* Refactor / remove some less important / unnecessary Gozag code.Steve Melenchuk2014-05-111-3/+0
| | | | | | | | | | | | | | In particular, the potion and shop lists don't need to be generated in advance of using the ability altogether; they only last as long as the ability menu is present (thus they're still stored, as if you get a HUP in the middle of it we want to present the same choices). Since shop prices no longer depend on the generated shops, item generation for the shops is left to the shops. (If we want to preserve their item quality, we'll need a level_number paramter in shop specs, but I doubt players will notice the difference at all.) RIP item_def::to_spec; you will not be missed.
* Gozag: Call Merchant.Steve Melenchuk2014-05-071-0/+3
| | | | | | | | | Pay half the value of items in one of three randomly generated shops to generate that shop on a level that can generate shops that you haven't visited yet. This shop appears on the Overview screen with a darkened level name so you know exactly where it appeared, and is announced (and its location marked) when you arrive on the level so long as you are still following Gozag at the time.
* Rework the octopode crusher throwing abilitygammafunk2014-03-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | Previously this ability tried to throw victims into a "hard" dungeon feature for 50% increased damage. This was mostly an excuse add extra damage, it was almost always applied (hard dungeon features are abundant), and being next to a single hard feature doesn't have very much relevance to player strategy. The new version scores each landing site based on 1) all monsters adjacent to the site scored by the square of their difficulty and 2) how many adjacent open squares there are to the site. The end result is that hostile crushers will prefer to throw the player some place more dangerous. For non-player victims, the crusher (whether friendly or hostile) considers only distance from the player as the score, preferring to throw as far from the player as possible. The final landing site is a random weighted choice (using distance) on along the throw path from the victim to the site with the best score, with a random best site chosen if there's a tie in the scores. The minimum throw distance has been reduced to 2 squares from the player, and the damage die size is 4 * monster HD now that the hard feature check is no longer used.
* Drop some useless parentheses around comparisons.Adam Borowski2014-01-101-4/+4
|
* Drop double newlines where they seem to serve no purpose.Adam Borowski2013-12-211-3/+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.
* More formatting fixes for return (...);Neil Moore2013-11-151-2/+2
|
* Drop unnecessary parentheses from return statements.Adam Borowski2013-11-151-13/+13
|
* Shorten branch enums.Adam Borowski2013-11-031-2/+2
| | | | | Seriously, even preparing this commit gave me a pain in the triangle between the thumb and index finger's bases and the wrist.
* Don't impose TSO penance for reflecting poison/draining (you still get xp).Adam Borowski2013-10-281-0/+1
| | | | This introduces a new pseudo-agent, akin to ANON_FRIENDLY_MONSTER.
* Shave some words off a few datatypes.Samuel Bronson2013-10-171-0/+2
| | | | (I wonder if this saves even one kilobyte?)
* Turn Recite into a duration instead of a delay.Steve Melenchuk2013-07-161-0/+2
| | | | | | | | It triggers three times over 30 aut, just as the current implementation does, only the player can otherwise act during that time. Reading a scroll or casting a spell interrupts the recitation - you can't pronounce two things at once, after all.
* A new command to set your travel speed to your slowest ally.Raphael Langella2013-04-221-0/+2
| | | | | | | By setting this, the player can explore the level without losing is slower allies. This should make it much nicer to use zombies without recall. The setting should probably be saved, but I wanted to get some feedback on it before changing minor version.
* Remove the explicit copy constructor and assignment operator for level_id.Samuel Bronson2013-04-201-11/+0
| | | | | These don't do anything that the defaults wouldn't do except disqualify level_id from being trivially copyable.
* More PURE, and introduce REALLYPURE as well.Samuel Bronson2013-03-241-1/+1
|
* Tighten the rules for level_id::is_valid().Adam Borowski2013-03-181-1/+1
| | | | | It doesn't check for depths exceeding the range, though, as that can change between game modes.
* Merge branch 'bad_forms'Adam Borowski2013-02-131-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's not 100% ready, but should be functional enough, and 0.12 coming soon, let's test it at least a bit. The numbers are probably totally out of whack, but that's what trunk players are for. At least the code should be sound. This does include the jelly form that I'm strongly inclined to remove, yet it's easy to axe without affecting save compat (as no player can be in that form currently). All the code can be found by grepping for TRAN_JELLY, except for one commit that's not bad to have (some refactoring of eating). Generally, the jelly suffers from being abusable for nutrition, would need some code for item [non-]use, and would make the player screwed as it can neither take/deal damage (tree), avoid it (wisp) or run away (wisp, pig, bat, porcupine).
| * Fix a totally wrong comment.Adam Borowski2013-01-301-1/+1
| | | | | | | | It may be good to rename the file to represent what it does.
* | Restore save compatibility with 0.11 final.Adam Borowski2013-01-261-0/+18
|/ | | | | | | This does not include trunk versions older than some time after 0.11 branching, although you can upgrade such saves in two steps, by loading in 0.11 and then in current trunk. I doubt this will lead to any troubles as 0.10 saves are not compatible anyway.
* Fix a (probably unconsequential) uninitialized variable warning from valgrind.Florian Diebold2012-11-031-0/+3
|
* Evict some classes from externs.hAdam Borowski2012-10-311-58/+0
| | | | No need to compile that code for every file.
* Remove unnecessary includes from header files.Jay3.14152012-10-231-1/+0
| | | | | | | | | | 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.
* Get rid of all but one uses of mon_display.Adam Borowski2012-10-161-8/+7
| | | | It's a duplicate of cglyph_t with an additional field that's only used once.
* Rename struct glyph to cglyph_t.Adam Borowski2012-10-161-1/+1
| | | | Hard to come up with something less greppable...
* Support message_colour -= foo.Neil Moore2012-09-251-0/+4
|
* Saner rc list options, including reset.Neil Moore2012-09-141-0/+13
| | | | | | | | | We now support "listopt =" to clear the list, and support "-=" with many more options. We also warn when "listopt = foo" is interpreted to mean "append", because that is likely to change in 0.12. These changes are intended to go into 0.11, but we'll need to update the options guide first.
* Drop one of redundant definitions of sgn().Adam Borowski2012-09-101-1/+1
|
* Object-orient final_effect.Neil Moore2012-09-081-8/+0
| | | | | | | | | This is mostly to avoid the bit-packing of the previous commit. Admittedly, it's a bit overkill for that. This could probably use some cleanup: currently we store attacker, defender, and position in the base class, even though not all subclasses have those.
* Use std namespace.Raphael Langella2012-08-261-42/+38
| | | | | | | | | | | | | 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.
* Change abyss_genlevel_mask from a map_mask to a map_bitmask.Raphael Langella2012-08-211-0/+2
|
* s/sacrificiable/sacrificeable/Raphael Langella2012-08-211-1/+1
| | | | sacrificable and sacrificiable are also accepted.
* List items on the floor which can be sacrificied.Raphael Langella2012-08-201-0/+3
| | | | Only the ones which make autoexplore greedy.
* Make inline functions static.Adam Borowski2012-08-091-1/+1
| | | | | | | | | This avoids unnecessary non-inlined copies. Also, we had a few large functions that had no reason for inlining, let's have them be regular ones. I also made "static inline" always use the same order, for easier grepping.
* Fix xg not recognizing certain unidentified items.Adam Borowski2012-07-311-1/+1
| | | | | | This might be not the only use of item_def::is_valid() that became broken with introduction of NUM_FOO meaning "unidentified", but since a vast majority of calls refer to real items, this can't be done by default.
* Make message filters case-insensitive (#4945).Neil Moore2012-07-091-1/+1
|
* Some more return deparenthesization.Adam Borowski2012-07-051-7/+7
|
* Remove parentheses around return (simple_function_call).Adam Borowski2012-07-051-1/+1
| | | | For way too paranoid and underinclusive values of "simple".
* Use mid rather than mindex for constriction.Neil Moore2012-07-041-0/+1
| | | | | | | | | | | | actor::constricting is now a pointer to a map from mids to durations; if the actor is not constricting anything, we use a NULL pointer rather than an empty map to save memory. Save compatibility: Because constrictees might be loaded after constrictors (and vice versa), we cannot convert the old constriction arrays (which use mindex) until all the monsters have been loaded. Instead, save the constriction data temporarily, and create the maps at the end of tag_read_level_monsters().
* Drop TAG_MAJOR_VERSION == 32 ifdefs.Adam Borowski2012-04-251-11/+0
|
* Merge branch 'master' into portal_branchesAdam Borowski2012-03-261-2/+8
|\ | | | | | | | | This includes fixes for 64834896234968 places in master that add new uses of LEVEL_FOO and so on.
| * Use monster_type nearly everywhere.Adam Borowski2012-03-221-1/+7
| | | | | | | | | | | | | | | | | | | | | | Omitted: * mspec.type (uses a lot of magic values in the negatives) * item_def.orig_monnum (todo, +1 trick) A few minor problems are fixed here: * renamed gas spores passed mindex for monster_type * demon summoning would break on addition/deletion of demon types * vaults spawning zombified uniques would fail to mark them as used
| * Declare an explicit type for colours.Adam Borowski2012-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | An imperial buttload of places assumes these to be 8 bits, which makes it impossible to add support for 256 (or more!) colours. This commit tries to allow expanding it in the future; sadly, it is badly incomplete. At least, new code can use the new type. Also, beware of "branded" colours which use bits above 8 for inverse, underline, etc.
* | Merge branch 'master' into portal_branchesAdam Borowski2012-02-201-2/+2
|\|
| * Eliminate duplicated symbols.Neil Moore2011-12-271-2/+2
| | | | | | | | | | | | | | | | | | Objects, even const ones, should not be defined in header files, or there will be one copy for each source file that included that header. Move the offending definitions into source files, and replace them with extern declarations in the headers. Also, make the opc_* instances const and not static.
* | Merge branch 'master' into portal_branchesAdam Borowski2011-12-281-4/+0
|\|