summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spl-summoning.cc
Commit message (Collapse)AuthorAgeFilesLines
* Don't crash the game on invoking BiA (#8851).Shmuale Mark2014-08-041-1/+2
|
* Hide a hack better.Shmuale Mark2014-08-031-1/+1
| | | | | | | 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.
* Use random_choose_weighted in two places to be (hopefully) clearer.Shmuale Mark2014-08-031-24/+15
|
* Fix a comment (wheals)Neil Moore2014-08-011-1/+1
|
* Remove stuffNicholas Feinberg2014-07-291-1/+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!
* Create prompt.ccNicholas Feinberg2014-07-271-0/+1
|
* Make Sticks to Snakes use spellpower instead of TransmutationsNicholas Feinberg2014-07-241-1/+1
|
* Separate 'permanent' and 'temporary' monster hit diceNicholas Feinberg2014-07-131-6/+6
| | | | As part of a wider scheme to make draining temporary.
* Refactor weapon_skill()Nicholas Feinberg2014-07-131-1/+1
| | | | | | | | | | | | | | This function was misleadingly named (it only provided the skill used for melee weapons, not ranged weapons), and incomplete; code along the lines of "is_ranged_weapon(*it) ? range_skill(*it) : weapon_skill(*it)" was scattered in about half a dozen different functions. I've corrected both of those problems (renaming weapon_ skill() to melee_skill() and adding item_weapon_skill()), and also possibly fixed two bugs in the process - an l_you.cc function that claimed to provide the skill used for the starting weapon (but actually only gave the melee skill), and unrand creation code that checked if a potential unrand swap used the same (melee) skill as the weapon type being generated.
* Reduce the startup time of Malign GatewayChris Campbell2014-07-081-1/+1
| | | | | | | | For both player/monster casts, and for miscasts/hell effects (which were still using the original even longer timer). The shorter startup should allow it to more reliably get involved in fights when cast by the player, and make it slightly harder (but probably still not very hard) to just walk away from when cast by hostiles.
* Brace :(Nicholas Feinberg2014-07-061-0/+2
|
* Make a rotten animate dead message slightly less badNicholas Feinberg2014-07-061-2/+3
| | | | | | | | | | | | | The message for 'animate dead' turning rotten corpses (necrophages/ghouls) into skeletons would appear when monsters cast the spell, even if the corpse wasn't in LOS. It's only intended to explain to the *player* why they're not getting a zombie, so it's probably simpler to just not print it for monster animate dead at all. It will still print once for every applicable corpse, which isn't ideal. Not sure how to fix it, though - the relevant code is also, appropriately, pretty rotten...
* Split butchering/bottling into a new fileNicholas Feinberg2014-07-011-0/+1
|
* Don't allow infinite kraken simulacra.Shmuale Mark2014-06-251-3/+7
| | | | Or of any other monster with M_NO_SKELETON.
* 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.
* Don't crash when there's no spot to animate a weapon into.Neil Moore2014-06-191-0/+7
| | | | Also when there are too many monsters on the level, etc.
* Stop Summon Swarm from looping infinitely.Corin Buchanan-Howland2014-06-181-1/+7
| | | | | | | | | Summon Swarm tries repeatedly to find a bug that your god doesn't hate. It tries so hard that it never, ever stops trying. This commit limits that exuberance. [Committer's note: adjusted the logic a bit, and increased the loop bounds from 20 to 100. -nfm]
* Reduce the int drain from Summon Horrible Thingsgammafunk2014-06-131-1/+1
| | | | | | | Sources of restore abilities are less common now and the effect can no longer be completely blocked. The int drain is now 1d2 when it occurrs with no sustain abilities and 1 when it occurrs with sustain abilities; the chance of int drain is still fixed at 80%.
* More fixes for temporary brands.Shmuale Mark2014-06-121-2/+2
| | | | | Don't keep the old brand on Tukima's, make ?bw make sense, and don't allow rebranding a blessed weapon (this includes with the scroll).
* Don't crash when unwielding a temp-branded weapon.Neil Moore2014-06-121-1/+4
|
* Allow temporary branding to go over a permanent brand.Shmuale Mark2014-06-121-4/+3
| | | | | | | Toting around an unbranded weapon just to be able to swap to it is no fun, and not even that much more of a difficulty; maybe it just means getting pain out takes 0.7 more turns or so. You still can't overwrite artefacts, of course.
* Revert "Make random_choose_weighted() end on -1 weight"reaverb2014-06-101-1/+1
| | | | | | | This reverts commit 7e81480cda18144ff185f5248639a072b654deff. Turns out I missed some calls to random_choose_weighted(), this change might not even be worth doing.
* Make random_choose_weighted() end on -1 weightreaverb2014-06-101-1/+1
| | | | For consistency with random_choose().
* Rework monster simulacrum to act like animate deadgammafunk2014-06-071-145/+53
| | | | | | | Since it now makes simulacra from every corpse in the caster's LOS, for each corpse it uses a random number with a max that's half as many max chunks that could have been made from the corpse. It also leaves skeletons for the appropriate monsters.
* Rework the player version of simulacrumgammafunk2014-06-071-82/+32
| | | | | | | | | It now behaves like animate skeleton, creating simulacra from the top corpse the player is standing on and leaving a skeleton (but not a hide) when appropriate. The number created is based on how many chunks would be produced, so the result is the same as butchering a corpse and wielding all the resulting chunks under the old version of the spell.
* Make Doxygen @returns "@return" for consistancy.reaverb2014-06-051-1/+1
|
* Remove Giant Slugsreaverb2014-06-011-1/+1
| | | | | | | Slow melee-only monsters are awful, and nobody objected to removing these. Next to be removed: elephant slugs. Somebody might want to look over my vault edits, as ususal.
* Staticalise some functions.Neil Moore2014-05-271-5/+6
| | | | And tweak a comment.
* Hauntify Tukima's Dance.Nicholas Feinberg2014-05-271-10/+18
| | | | | Make Tukima's Dance weapons (almost) only attack their original owner. Removes the last reason to do fiddly weapon-swapping.
* Change Tukima to be a targeted spellJeekaroose2014-05-271-33/+144
| | | | | | | | (Committer's note: The old Tukima's Dance was fiddly and not well-liked. Changing it into something hexier seemed like a popular & reasonable idea. I refactored the spell code & fixed a few small issues.)
* Revert "Don't waste time casting Animate Dead, usually."Shmuale Mark2014-05-271-17/+0
| | | | | | | Because it's very common that corpses will be hidden by items above them, especially now that that's guaranteed if there are any items above them, the 'z' behaviour it made was too restrictive. This reverts commit f040398a199a9f2bda755c0802287558edecba2e.
* 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.
* Remove some foods.Shmuale Mark2014-05-261-3/+0
| | | | | | Sausages, snozzcumbers, oranges, bananas, lemons, pears, apples, apricots, chokos, rambutans, lychees, strawberries, grapes, sultanas, and cheese.
* Don't waste time casting Animate Dead, usually.Shmuale Mark2014-05-231-0/+17
| | | | | | | | | | If there's a visible corpse nearby, the behaviour is the same. If there are no items, 'z' should not waste time/MP, while you can still force a cast with 'Z', so that you can animate corpses that are below other items and you can't see with ^X. Sadly, this doesn't really work for Yred since there's no way to force a use of an ability the way there is with a spell.
* Slightly reduce monster simulacrum's message spamChris Campbell2014-05-081-10/+5
|
* Remove an unused functionChris Campbell2014-05-071-61/+0
|
* Remove the Summon Elemental spellChris Campbell2014-05-061-127/+0
| | | | | | | | It was fairly fiddly and unclear in its mechanics, and elemental summoning is now covered by the elemental evokers (and possibly the storm god at some point in the future too)· Moved Summon Forest from the book of the Warp to replace it in the book of Summonings, and added Dispersal to replace it in the book of Wizardry.
* Remove grizzly bears.Shmuale Mark2014-04-291-1/+1
| | | | | | They were almost identical to polar bears, which at least had the distinguishing (from black bears) to swim and be at home in an ice cave.
* Make summoning fire elementals anger DithmenosChris Campbell2014-04-261-0/+3
| | | | | | | | | Fiery monsters generally can still be summoned and won't turn hostile, though (through Dragon's Call, Shadow Creatures, the various demon summoning spells). Handling fiery monsters in player_angers_monster() is a possibility but would end up affecting a large number of summoning spells for pretty dubious benefit, and possibly the conduct isn't worth keeping anyway.
* Move mon death stuff from mon-stuff.cc to mon-death.cc.Shmuale Mark2014-04-121-0/+1
| | | | | | | Touches a lot of files since their #includes have to be edited. (Pushing now since it shouldn't break anything and keeping it updated is nasty.)
* Properly credit the player for damage done by Forceful DismissalDracoOmega2014-03-291-0/+1
| | | | Oops.
* Buff Forceful Dismissal damage a bitDracoOmega2014-03-291-2/+2
|
* Give n_spe to mystery-meat renames.Neil Moore2014-03-281-1/+1
| | | | This avoids displaying a unique-style name caption in local tiles.
* Don't let missile brand affect sticks to snakesChris Campbell2014-03-241-2/+1
|
* Fix Animate Skeleton wasting a turn with corpses hidden in deep water ↵Chris Campbell2014-03-241-2/+2
| | | | | | | | (simmarine) It was finding corpses that were underwater and marking them as possibly animatable, but then never actually allowing those to be animated (for non-swimming species).
* Cap Summon Swarm at 12 summonsChris Campbell2014-03-241-2/+2
| | | | Instead of 99.
* Properly calculate servitor ideal range with non-full spell listsDracoOmega2014-03-211-0/+3
|
* Prevent untargetted ball lightning from mostly wandering to the upper-leftDracoOmega2014-03-151-0/+3
|
* Conjure Ball Lightning adjustmentsDracoOmega2014-03-151-5/+6
| | | | | | | | | | | | | | | | | | | The reduced CBL duration was so low that the ball lightning would frequently explode before even being able to reach targets in your LoS (or before you could step away, even if you did so immediately on open ground). This commit restores the old duration and makes a few other changes to reduce power level instead: Ball lightning conjured with less spellpower explode for less damage (and their explosion is less likely to be radius 3), the number of ball lightning conjured per cast has been reduced (and the variance decreased somewhat), and ball lightning which leave the player's line of sight immediately dissipate without exploding (so that it is no longer possible to aim them at things you cannot see and cannot harm you). The aim is that this will make it impractical against monsters out of sight, while being less awkward against those IN sight (and less likely to immediately engulf the caster before being able to reach anything else).
* Simplify player CBL codeDracoOmega2014-03-151-28/+2
| | | | | | | The main function of the code stripped out seems to have been to buggily fail to place ball lightnings a significant percentage of the time - otherwise this briefer version appears to function basically the same.