summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/effects.h
Commit message (Collapse)AuthorAgeFilesLines
* Decouple rod recharge from availability of player MP (Mantis 300)Stefan O'Rear2010-01-021-0/+1
|
* Don't mark books acquired during acquirement statistics as "seen".Johanna Ploog2009-12-161-4/+4
| | | | | | | | | | | | | | This _could_ be useful for the question "Which books can I expect to have seen after N acquirements?" However, when running the acquirement statistics I prefer a slightly different question: "What are the chances of getting a certain book in this precise situation?" Don't know which of the two is the "correct" one, but I think it is annoying if I have to recreate a character for my book acquirement statistics just because the old one already "saw" all interesting spells, thus heavily skewing the results.
* Get rid of you.synch_time.Robert Vollmert2009-12-021-1/+1
| | | | | Also, the check for whether to do the corresponding effects has been moved into effects.cc:handle_time.
* Remove further header-include. env.h now always directly included.Robert Vollmert2009-11-271-3/+1
|
* Move see_cell_no_trans into player.Robert Vollmert2009-11-081-1/+1
| | | | Also collect actor/player LOS code in actor-los.cc.
* Make some passed references const.Robert Vollmert2009-11-061-7/+7
| | | | | | A couple of the Feawn functions were passed read-only arguments (coordinate center, etc.) as non-const references, which leaked out to require you.pos() to be non-const.
* Remove "called from:" comments.Vsevolod Kozlov2009-11-031-53/+0
| | | | | | These were of questionable use and freshness. Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Remove mstuff2.h and mstuff2 referencesMatthew Cline2009-11-031-10/+3
|
* Some tweaks to decompositionCharles Otto2009-11-021-0/+1
| | | | | | | Make toadstools created via decomposition friendly, exempt toadstools from the allies dying conduct. Increase decomposition toadstool base duration.
* Electrocution discharge in water ala FR 1637214abrahamwl2009-10-281-0/+2
| | | | | | | | | | | | | | | | | | | Weapons of electrocution now discharge in water, if the target is touching the water and not rElec, hitting all adjacent water-touching non-rElec creatures for about half the normal electrocution damage. Particularly notable new code is the implementation of an area-of-effect callback for beams, as well as a function and structure for weapon effects that should only happen after the target would have died, if it was going to die, and therefore cannot safely make use of its data. Issues that still need to be decided: - How doe Xom feel about this? (eg. If creatures hurt themselves this way.) - Should it ask you if you want to attack when you know the discharge will hit yourself?
* Split actors and env from externs.h.Robert Vollmert2009-10-211-1/+2
|
* Drop obsolete CVS last-committed headers ($Author$).Adam Borowski2009-10-061-2/+0
|
* Allow vaults to request use of the acquirement code with "acquire ↵dshaligram2009-09-211-0/+4
| | | | | | <item_class>" or "acquire:<god> <item_class>" in item specs (due). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10765 c06c8d41-db1a-0410-9941-cceddc491573
* Apply caotto's Feawn evolution update patch in [2841648], with a few dolorous2009-09-031-1/+3
| | | | | | | tweaks. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10615 c06c8d41-db1a-0410-9941-cceddc491573
* Apply caotto's patch in [2827204] to finish the plant god, with some dolorous2009-07-281-0/+14
| | | | | | | cleanups added by me. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10442 c06c8d41-db1a-0410-9941-cceddc491573
* Apply caotto's plant god patch, for now named "Feawn".j-p-e-g2009-07-201-0/+7
| | | | | | | Also fix potions of porridge's menu colour being yellow for Mummies. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10355 c06c8d41-db1a-0410-9941-cceddc491573
* Expand immolation and cleansing flame as well, so that monsters may be dolorous2009-01-191-2/+4
| | | | | | | | | able to use scrolls of immolation or holy word in the future. Also, add a power parameter to immolation, so that it can be reused for an exploding Tome of Destruction. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8599 c06c8d41-db1a-0410-9941-cceddc491573
* Expand effect applicator functions to take an actor parameter, and use dolorous2009-01-191-4/+7
| | | | | | | | it for holy word in order to generalize it. This way, monsters as well as players may be able to use it in the future. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8598 c06c8d41-db1a-0410-9941-cceddc491573
* Add various beam explosion-related cleanups. Also, make cleansing flame dolorous2009-01-151-0/+2
| | | | | | | | an explosion of BEAM_HOLY around the player instead of an aimable effect. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8467 c06c8d41-db1a-0410-9941-cceddc491573
* Consolidate the two immolation routines (the scroll and the effect when dolorous2008-11-251-0/+2
| | | | | | | affixing a fire brand) into one function. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7615 c06c8d41-db1a-0410-9941-cceddc491573
* Implement second part of labyrinth tweaks:j-p-e-g2008-11-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * allow mapping of labyrinths, but apply heavy map rot * lab walls shift from time to time * added a wizmode command (&k) to test the changes My usual sequence goes something like &l, >, &{, #, (copy map dump elsewhere), X, Ctrl-F, y, Esc, &k, &{, #. I've tweaked my monster pathfinding A* algorithm to only work for non-monsters, so I've been using that. Because of the mapping, labyrinths are now actually easier to solve. (It's a bit hard to tell, though, since I got *really* good at solving labyrinths over the 40 something trial runs. :) ) At the same time they are now much more interesting and flavourful because of the map rot, and the shifting provides some wonderful excitement. So, whoever came up with that idea, thanks! :D Still to do: * Exceptions for vaults. (Distinction between vault/non-vault walls.) * Better handling of walls. (They currently "teleport" to the chosen floor grid, leading to unusual wall types appearing somewhere else.) * Improve the feel of the shifted mazes. (They come really close to the original now but still do not look exactly the same.) The numbers may need tweaking. Currently, they are: shift rate : 10% chance, every 20 turns map rot rate: 45% of the map, every 20 turns size of shifted area: 12x12 to 24x24 number of shifted walls per round: 12-45 Shifting will only ever take place between unexplored (or forgotten) grids. Thus, the chance of changes taking place is greater in areas away from the player. I also increased the starting distance from the centre from 20*20 to 28*28. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7387 c06c8d41-db1a-0410-9941-cceddc491573
* Remove pre-Stone Soup change history from source files, and push it allj-p-e-g2008-09-141-4/+0
| | | | | | | | | | into a file crawlhistory.txt in docs/obsolete. I used a perl script to do this under the assumption that all these change logs used the same system following the keyword "Change History". git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6930 c06c8d41-db1a-0410-9941-cceddc491573
* More cleanups.haranp2008-07-241-4/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6669 c06c8d41-db1a-0410-9941-cceddc491573
* Pan overhaul:dshaligram2008-07-201-1/+1
| | | | | | | | | | | | | | | Allow monsters (including player ghosts) to use fire storm and ice storm, give Lom Lobon ice storm and Cerebov fire storm. Lom Lobon also gets conjure ball lightning. Mnoleg gets Summon Horrible Things instead of polymorph/shadow creatures. Gloorx gets symbol of torment instead of summon demon. Hellion hellfire burst now behaves the same way for both hellion vs player and hellion vs monster. Merged monster vs player and m vs m handling for direct spell effects such as smiting. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6621 c06c8d41-db1a-0410-9941-cceddc491573
* Add miscellaneous minor fixes.dolorous2008-06-151-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5851 c06c8d41-db1a-0410-9941-cceddc491573
* Clean up and consolidate random_uselessness(), as well as its associated dolorous2008-06-011-1/+1
| | | | | | | outsourced text. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5388 c06c8d41-db1a-0410-9941-cceddc491573
* Simplify further.dolorous2008-05-031-2/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4820 c06c8d41-db1a-0410-9941-cceddc491573
* Clean up and consolidate the holy word and torment effects.dolorous2008-05-021-2/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4815 c06c8d41-db1a-0410-9941-cceddc491573
* Split the routine to use holy word on only the player into its own dolorous2008-04-291-0/+1
| | | | | | | function, too, just in case. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4758 c06c8d41-db1a-0410-9941-cceddc491573
* Split the routine to torment only the player into its own function.dolorous2008-04-281-0/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4752 c06c8d41-db1a-0410-9941-cceddc491573
* Batch of tiny changes for MSVC compiles.pauldubois2008-03-101-1/+1
| | | | | | | | | | | | | | | Most of these fall into the category: - don't use struct to refer to a class, and vice versa - msvc doesn't like unistd.h or dirent.h Doesn't fix all the struct/class problems; I think I'll silence those for now and move on because it's not all that important. Tested on OS X. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3571 c06c8d41-db1a-0410-9941-cceddc491573
* [Bug 1907221] Add "Modified for Crawl Reference" statement and author to aj-p-e-g2008-03-081-1/+1
| | | | | | | | huge number of files. Also correct file name comments. No coding changes. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3539 c06c8d41-db1a-0410-9941-cceddc491573
* [FR 1903593] Change identification process of j-p-e-g2008-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | ?recharging, ?enchant armour and ?identify. If you read one of these scrolls and the type isn't known yet you are prompted with "Modify which item?" (better message needed!) and get to choose from the entire inventory. If the chosen item can be usefully "modified" by the scroll (unID'd item for identify, wand for recharging, enchantable armour for EA) the usual effect takes place and the scroll is identified. (Reading other scrolls of the same type will then only offer a more sensible selection of items.) Otherwise, nothing happens. Further, recharging and enchant armour now allow direct choice of the item in question, and it doesn't even have to be wielded or worn. I think this change actually makes the id game more interesting and also improves the interface. Gameplay might dictate that we reintroduce the "armour needs to be worn" rule, but that remains to be seen until after some more playtesting. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3514 c06c8d41-db1a-0410-9941-cceddc491573
* Tidy up Xom effects a bit in that berserk and vitrification will only givej-p-e-g2008-02-291-1/+1
| | | | | | | | a message if they actually happen. Also, add some more flavour messages for vitrification. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3494 c06c8d41-db1a-0410-9941-cceddc491573
* Apply patch 1901117: vitrification effect for Xom (and Xom cleanup)j-p-e-g2008-02-251-1/+1
| | | | | | | | | This needs flavour messages, and looks odd for large power because the undiggable stone of the level also gets turned into glass possibly resulting in huge areas of glass tiles. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3464 c06c8d41-db1a-0410-9941-cceddc491573
* Implement [1891388]: Make Holy Word available in scroll form.dolorous2008-02-211-0/+7
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3450 c06c8d41-db1a-0410-9941-cceddc491573
* Moved handle_time and friends to effects.cc.dshaligram2007-12-301-0/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3157 c06c8d41-db1a-0410-9941-cceddc491573
* Add "item generations stats" (Ctrl-I) wizard command, which currentlyzelgadis2007-12-081-1/+2
| | | | | | | | | | | | | | only generates stats on items attained via acquirement. Move the acquirement logic of turning non-wearable headgear to wearable headgear from acquirement() to find_acquirement_subtype() so that it will happen before acquirement()'s can_wear_armour() check. The old way of doing it meant that players who couldn't wear helmets/helms had the armour acquirement chance for headgear reduced from the noraml 10% to around 1%. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3022 c06c8d41-db1a-0410-9941-cceddc491573
* Added new field seen_context to the monsters class, which can be setzelgadis2007-10-161-0/+2
| | | | | | | | | | | | | | | | to cause a non-standard context to be passed to interrupt_activity( AI_SEE_MONSTER ) if it is called before the current turn is over. If a submerged monster surfaces in order to shout, it has to wait one turn before being able to submerge again. Added back in a scroll named "forgetfullness", but rather than giving amnesia about the map it gives amnesia about non-equipped inventory items. I tried to make the effects annoying rather than serious. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2481 c06c8d41-db1a-0410-9941-cceddc491573
* Removed amnesia/forgetfullness trap, mutation and scroll. Thezelgadis2007-10-151-1/+1
| | | | | | | | | | | | | mutation has been replaced with an involuntary shouting mutation, and the trap with an alarm trap. The scroll hasn't been replaced with anything, and the frequency of scrolls of random uselessness has thus doubled; someone needs to re-do the scroll frequencies. Also added a "drifting" mutation, which causes the player to sometimes drift in a random direction after moving. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2464 c06c8d41-db1a-0410-9941-cceddc491573
* Added additional optional parameter to item_def::name(), ignore_flags,zelgadis2007-09-221-1/+13
| | | | | | | | | | | | | | | | | | | | which will cause the name to be constructed as if those item flags had been unset. Give an auxiliary cause of death for a stat going below 1. (Death by stat loss is already pretty rare, and death by stat loss with confusion as to what caused the stat loss must be *really* rare, but still, if you were confused about what caused the stat loss that lead to death, that'd be pretty frustrating) ouch() is now called from within modify_stat() and lose_stat() right after the stat is lowered, rather than when the stat is updated on the screen. This incidentally fixes the minor annoyance of saying "no" to stat loss death in wizard mode, only to be asked if you want to die every time the screen is updated until you fix having a non-positive stat. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2179 c06c8d41-db1a-0410-9941-cceddc491573
* Split off portions of externs.h and enum.h into other files. Thezelgadis2007-09-151-1/+1
| | | | | | | | | | | | | crawl_environment, player and monsters classes have been left in externs.h, which necessitates that all of the enums references by those classes stay in enums.h, since you can't forward declare an enum. However, it's a start. Also, portions of misc.{cc,h} have been split off into traps.{cc,h}, place.{cc,h} and terrain.{cc,h} git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2095 c06c8d41-db1a-0410-9941-cceddc491573
* Implemented 1735752: wands are (fake-)inscribed with the number of timesharanp2007-06-271-2/+0
| | | | | | | you've zapped them. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1675 c06c8d41-db1a-0410-9941-cceddc491573
* Added support for a validation hook for maps to check if they're A-Ok.dshaligram2007-06-261-1/+1
| | | | | | | | | Tweaked savefile format (breaks saves) to allow the game to perform emergency saves if level-generation fails (followers are lost, needs to be fixed). [1743698] Re-refixed SP_ELF stub (Eino). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1659 c06c8d41-db1a-0410-9941-cceddc491573
* Made item_def::base_type into object_class_type, instead of unsigned char.haranp2007-04-261-1/+1
| | | | | | | | | | | Flushed out a few bugs as a result, specifically: 1. Some monsters (e.g., orcs) can now get blowguns as they were intended to (look at the makeitem.cc change); 2. Acquirement will no longer attempt to give you the books of minor magic if you've found them (look at the effects.cc change.) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1374 c06c8d41-db1a-0410-9941-cceddc491573
* Merged in crawl.akrasiac.org patches (simple messaging, milestones). These takedshaligram2007-03-251-1/+1
| | | | | | | | | | | | | effect only if compiled with -DDGAMELAUNCH. Simple messaging: interacts with dgamelaunch's messaging facility allowing viewers to send messages to the player. Milestones: Writes a milestones.txt file (in xlogfile format) for things like the player killing uniques, reaching the end of a dungeon branch, etc. (similar to notes). milestones.txt is used for game announcements by an IRC bot. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1095 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed Abyss banishment crash.dshaligram2007-01-021-1/+1
| | | | | | | | | Don't show -more- after the "cast into the Abyss" so that players on public servers are not tempted to kill the tty to escape the banishment. It's still possible that there are enough messages in view that the game puts in a -more- unasked for, but I'll live with that. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@769 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed 1616008, identify was not removing 'empty' inscription.haranp2006-12-171-0/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@645 c06c8d41-db1a-0410-9941-cceddc491573
* Merged stone_soup r15:451 into trunk.dshaligram2006-11-221-1/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@452 c06c8d41-db1a-0410-9941-cceddc491573
* Clean up a mistake in the SVN import.nlanza2006-08-131-0/+92
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10 c06c8d41-db1a-0410-9941-cceddc491573