summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spells2.cc
Commit message (Collapse)AuthorAgeFilesLines
* Remove the message from Call Canine Familiar.Eino Keskitalo2010-01-141-2/+0
| | | | | | Now that CCF doesn't produce hostiles, it is unnecessary. Signed-off-by: Eino Keskitalo <evktalo@users.sourceforge.net>
* Code cleanups.Haran Pilpel2010-01-141-57/+51
|
* Trim unnecessary #includes.Adam Borowski2010-01-131-1/+0
|
* Continuation of the range combat overhaul: branding spells.Jude Brown2010-01-011-131/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As outlined in dpeg's ranged combat overhaul, branding spells should no longer be permanant, nor apply directly to the ammunition. This commit removes all previous "<X> Ammunition" spells, including the original "Poison Ammunition" spell. Instead, branding ammunition is now done via the launcher and the currently existent weapon branding spells. Currently, those that can be applied to a launcher are: Fire Brand, Freezing Aura and Poison Weapon. There is the capacity of Excruciating Wounds to also be applied, but this would require the addition of the Pain ego for missiles, of which the mechanics would need to be decided upon first. Like temporary brands on weapons currently, these brands on launchers are permanantly affixable by using a scroll of vorpalise weapon. This commit also overhauls the Arcane Marksman class. It began by removing the non-existent ammunition spells; this left Devastating Missiles with two spells: haste and deflect missiles. On reflection, I decided to delete the book instead. The Book of Elemental Missiles was easily adjusted by replacing the three branding spells by the existent (and aforementioned) branding spells. As there are no (according to the 0.6 ranged combat overhaul spec) spells intended for use with translocation effects on missiles, this left The Book of Warped Missiles rather empty. Attempts were made (with discussion with Eronarn on IRC) to work out something else to fill up the Book of Warped Missiles with, but I made the decision to get rid it instead, as the only good suggestions basically made it the Book of Spatial Translocations, and in that case, the player may as well select the warper class. We also discussed whether or not to remove Poison Weapon from the Elemental starting book; I decided it was best to leave it now, but increase its level from 2 to 3, to give the book more of a range of levels (starting a Spriggan Arcane Marksman had all the spells listed as "excellent" or "very good"; more on this shortly). I also decided that Repel Missiles is over-used in this context, and upon Eronarn's suggestion and sorear's agreement, have replaced it with Cause Fear. I think this will provide for interesting game play, and that the level of the spell is suitably high enough for it to not be abused. I also made the executive decision that "Elemental Missiles" was no longer an appropriate title, as it didn't contain any ammunition-specific spells any longer, and have renamed the book to the "Book of Brands". It is now: Book of Brands Level 1, Corona Level 2, Swiftness Level 2, Fire Brand Level 2, Freezing Aura Level 3, Poison Weapon Level 5, Cause Fear As the Arcane Marksmen class is now launcher-specific, rather than ammunition-specific, I have adjusted it to no longer give Hill Orcs, Sludge Elves and Merfolk javelins and throwing nets (they get bows like everyone else), and made the decision to ban Trolls and Ogres from the class altogether. The reasoning here is that they have bad launcher aptitudes, and as they are described as "marksmen", it makes no sense to give them a book full of launcher-specific spells and some large rocks and throwing nets. This change could, of course, be reverted, and they could simply be given bows, crossbows or slings as relevant, in line with all other races being given launchers and ammunition. I have adjusted the starting skill levels for enchantments, spell- casting and dodging to that of Crusaders. I have also removed Poison Ammunition from the Book of Envenomations, and replaced it with Poison Weapon instead. Finally, I have increased TAG_MAJOR_VERSION to 14.
* Replace uses of item_cursed with item_def::cursed.Vsevolod Kozlov2009-12-271-2/+2
|
* A start at a dLua spells library.Jude Brown2009-12-251-8/+23
| | | | | | | | | | | Provides wrappers for non-player Toxic Radiance and Ozocubu's Refrigeration. These are basically just an adjustment of kill categories and messages to allow them to be used as background effects in WizLabs (Ozocubu's and Olgreb's). Hopefully a wrapper for monster (and possibly player)-cast bolt structures can also be included, which could then be accessed with the (planned) Lua traps functionality.
* Replace long debug message calls with dprf(), except for cases where a dumb ↵Adam Borowski2009-12-201-3/+1
| | | | | | compiler could call unnecessary functions. For paranoia, I left even any uses of std::string.
* Rename grey snakes to anacondas. Give them constriction, message-only for now.Adam Borowski2009-12-161-1/+1
|
* tiles: only include tiledef-*.h in files where they're neededSteven Noonan2009-12-121-0/+3
| | | | | | | This eliminates the annoying full rebuild that happens when the tiledefs are modified. Signed-off-by: Steven Noonan <steven@uplinklabs.net>
* Unify colour handling in env.show and env.map_knowledge.Robert Vollmert2009-12-011-1/+0
| | | | | | | | | Colour is now always precomputed, and only possibly overridden by travel information on display. It's quite unclear that storing the colour in env.show and env.map_knowledge is the right thing to do, but at least it's handled consistently now.
* Remove header includes from mon-place.h.Robert Vollmert2009-11-271-0/+2
|
* Remove further header-include. env.h now always directly included.Robert Vollmert2009-11-271-0/+1
|
* Fix comments.David Lawrence Ramsey2009-11-181-5/+2
|
* Fix compilation.David Lawrence Ramsey2009-11-181-1/+1
|
* Remove Zin's summoning-based wrath, as it no longer fits.David Lawrence Ramsey2009-11-181-6/+4
| | | | | | | | | First, Jiyva considers eyeballs slimes for his purposes. Second, insect plagues are more suited to old Zin, who coupled them with angels for an Old Testament theme, so to speak. (The latter is most closely suited to Fedhas, or it would be if he were the god of nature in general instead of just plants and fungi. It's also inappropriate for Zin now, since one of the insects summoned causes disease and is, hence, chaotic.)
* Created generic interface for detecting traps within a radius.Alex MacDonald2009-11-181-19/+2
| | | | Signed-off-by: David Ploog <dploog@users.sourceforge.net>
* Flatten header dependencies a bit.Robert Vollmert2009-11-171-0/+2
| | | | | | This removes a couple of unnecessary includes from header files. I may have missed adding some tiles includes.
* Wrap view flashing in flash_view.Robert Vollmert2009-11-161-6/+3
| | | | This also removes env.show updates when flashing.
* Fix information leakage in detect creatures.Robert Vollmert2009-11-161-1/+1
| | | | | | | | | | Also fix tiles giving more information than console version. There's now mons_detected_base, which assigns a base monster type to every monster type based on the default displayed glyph. It just takes the first entry for a given glyph based on the mon-data.h order, so this may need tweaking in some cases.
* On second thought abstract increasing/setting durations a little.Charles Otto2009-11-151-6/+2
| | | | Add (and use) player methods for setting/increasing durations.
* Modify temporary brand spells to be delay basedCharles Otto2009-11-151-3/+3
|
* Fix compilation.David Lawrence Ramsey2009-11-151-0/+1
|
* Change the message for reaping branding, so that checking for theDavid Lawrence Ramsey2009-11-151-2/+2
| | | | player's ability to smell isn't required.
* Remove canned messages in brand_ammo() when it fails.David Lawrence Ramsey2009-11-151-18/+0
|
* Make brand_ammo() return bool, indicating whether it succeeded.David Lawrence Ramsey2009-11-151-2/+21
|
* Move brand_ammo() to spells2.{cc,h}, right after brand_weapon().David Lawrence Ramsey2009-11-151-0/+128
|
* Warper Overhaul - Renamed to Arcane Marksmanjohnny shelley2009-11-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Missile Changes -- electricity missiles are now an option - they are always destroyed reaping / dispersal ammo is now always destroyed as it can be created by players poison ammo can again affect rocks / bullets etc - still no nets. Apparently this is a contact poison, but mainly it's to close the gap between sling users and archers. SKILLS -- Ranged weapon 3 Dodging 2 Spellcasting 2 Enchantments OR Translocations 3 EQUIPMENT -- Robe Ration Scroll of blink Some ranged weapon options as Hunter No melee weapon! Either book of elemental missiles or warped missiles The book of Elemental Missiles Spells Type Level a - Corona Enchantment 1 b - Swiftness Enchantment/Air 2 c - Repel Missiles Enchantment/Air 2 d - Flame Ammunition Enchantment/Fire 3 e - Frost Ammunition Enchantment/Ice 3 f - Poison Ammunition Enchantment/Poison 4 The book of Warped Missiles Spells Type Level a - Apportation Translocation 1 b - Portal Projectile Translocation 2 c - Repel Missiles Enchantment/Air 2 d - Blink Translocation 2 e - Returning Ammunition Enchantment/Translocation 3 f - Warp Ammunition Enchantment/Translocation 5 The book of Devastating Missiles Spells Type Level a - Poison Ammunition Enchantment/Poison 4 b - Warp Ammunition Enchantment/Translocation 5 c - Shocking Ammunition Enchantment/Air 5 d - Haste Enchantment 6 e - Deflect Missiles Enchantment/Air 6 f - Exploding Ammunition Enchantment/Fire/Air 7 g - Reaping Ammunition Enchantment/Necromancy 7 Signed-off-by: Stefan O'Rear <stefanor@cox.net>
* Move player_can_smell to player::can_smell.Vsevolod Kozlov2009-11-141-1/+1
|
* Convert a bunch of coordinate loops to new radius_iterator.Robert Vollmert2009-11-131-9/+5
|
* Add summoner and non_actor_summoner to mgen_dataStefan O'Rear2009-11-121-33/+45
| | | | | Monsters now know who summoned them. This will be important later. Probably breaks something; saves are not one of them.
* Rename monspeak/monplace/monstuff to mon-speak/place/stuff.Jude Brown2009-11-121-2/+2
| | | | | I'm pretty sure I've managed to replace every instance of a reference to these files, so I hopefully haven't missed anything.
* Convert drain life and oz's refrigeration to monster_iterator.Robert Vollmert2009-11-111-38/+25
|
* Convert cast_toxic_radiance to use monster_iterator.Robert Vollmert2009-11-111-9/+8
| | | | Testing monster_iterator functionality.
* Replace actor::is_unholy() with actor::undead_or_demonic().David Lawrence Ramsey2009-11-101-1/+1
|
* Remove a few obsolete includes.Robert Vollmert2009-11-101-5/+0
| | | | Also add a few previously indirect includes.
* Split shouting and stealth code from view.cc.Robert Vollmert2009-11-101-0/+1
|
* Remove option draw_it from viewwindow.Robert Vollmert2009-11-091-3/+3
| | | | | | The only use was just removed. Also move the draw check closer to where it's used.
* Move see_cell_no_trans into player.Robert Vollmert2009-11-081-1/+1
| | | | Also collect actor/player LOS code in actor-los.cc.
* Split map knowledge and FPROPs.Robert Vollmert2009-11-081-8/+9
| | | | | | | | map_cell no longer has the field "properties", which has been replaced by the unsigned long array env.pgrid. env.map has been renamed to env.map_knowledge. It should really be moved into player.
* Replace mons_is_summoned with monsters::is_summoned.Vsevolod Kozlov2009-11-071-2/+2
| | | | Signed-off-by: Charles Otto <ottochar@gmail.com>
* Move Feawn's abilities to godabil.h/ccCharles Otto2009-11-061-860/+0
|
* Replace global see_cell by observe_cell and disambiguate old uses.Robert Vollmert2009-11-061-6/+6
| | | | | | | Calls to plain see_cell(pos) were replaced with either observe_cell(pos) or you.see_cell(pos). observe_cell where related to drawing the interface and messaging, you.see_cell for game mechanics, and one or the other in less clear cases (targetting, say).
* Make some passed references const.Robert Vollmert2009-11-061-2/+2
| | | | | | 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.
* Convert a few read-only uses of actor::position to actor::pos().Robert Vollmert2009-11-061-1/+1
|
* Make "int rain()" take a const coord_def&.Robert Vollmert2009-11-061-1/+1
|
* Simplify and nerf Summon Small MammalsStefan O'Rear2009-11-061-27/+7
|
* And propagate power from Tukima / the Dance.Stefan O'Rear2009-11-041-1/+8
|
* Split up view.cc.Robert Vollmert2009-11-041-0/+1
|
* Get rid of multiple-meaning "int object" in env.show.Robert Vollmert2009-11-041-3/+3
| | | | | | | | | | | | | env.show is now a class show_def that stores tagged unions of type show_type. For the moment, there's also env.show_los for use in LOS determination, but that should become an array of boolean at some point. This breaks save compatibility. Tiles and console version build and appear to work fine, but this kind of change is likely to have some side-effects.
* Explicitly mention using 0-9 in the prompts for growth and evolutionCharles Otto2009-11-021-2/+4
|