summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monster.h
Commit message (Collapse)AuthorAgeFilesLines
* Make unknown potions of rage override clarity. Drugs > being focused > anger.Adam Borowski2010-01-071-1/+1
|
* Change "wrath" needles to "frenzy".Jude Brown2010-01-071-0/+2
| | | | | | | | | This introduces a new monster enchantment: ENCH_INSANE (or frenzy), sends the monster neutral and berserk at the same time. The needle now has the effect of causing this enchantment, instead of just sending monsters berserk. It now actually has some use, even if it is slightly risky.
* Fix put_to_sleep, implement for monsters.Jude Brown2010-01-031-0/+1
|
* Boost Ilsuiw stats and give her Call Tide, which strongly boosts the tide in ↵Darshan Shaligram2009-12-291-0/+1
| | | | Shoals, pegs it towards high tide, and includes a local high tide maximum centered on Ilsuiw, which can be double the height of the normal high tide.
* Merfolk (water/ice) elementalists join the Shoals guard.Darshan Shaligram2009-12-291-1/+4
|
* Experimental kraken adjustments.Darshan Shaligram2009-12-291-0/+2
| | | | | | Boost kraken and tentacle damage. Force the tentacles to stay close to the body of the kraken to make the creature look more like a unit. Tentacles are now amphibious and can reach out onto land, although they cannot stray too far from the main body.
* Forms never lower weight capStefan O'Rear2009-12-271-1/+1
| | | | I'm just building the bikeshed - somebody else needs to paint this stupid thing.
* New (rakshasa) unique: Mara, Lord of Ilusions.Jude Brown2009-12-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This re-uses several ideas from the Emerald Eye FR, and implements the spell "Mislead": this grants the "Misled" status effect to the player, and causes on-level monsters to appear (glyph, name and tile) to be other monsters. Only their appearance is changed. Healing potions and rain remove this status effect. Mara also has a beefed-up version of the Rakshasa clone spell: it instead creates an "exact" clone (slightly altered spells list, and non-unique status for his clones). Only two will ever be created at once. Finally, he has the spell "Summon Player Ghost". This spell creates a ghost of the player (though marked as a summon, meaning that it (shouldn't) register a milestone, though it will be treated as a self-ghost kill) that is hostile. Only one of these should be existant at any one point in time. I'm pretty sure that I haven't broken anything, but would definitely appreciate someone sanity-checking this commit. Known minor issue: Kirke's summon ugly things being cast while having the Misled status causes them to show up with no glyph.
* Rename "wizard" to "wizard_tele" so it doesn't shadow player::wizard.Jude Brown2009-12-021-1/+1
|
* Wizard-mode controlled teleport (Ctrl-B).Jude Brown2009-12-021-1/+3
| | | | | Instantaneous, non-contaminating controlled teleport. Bypasses FPROP_NO_CTELE_INTO as well as -TELE artefacts.
* Move _polyd_can_speak() to monsters::can_speak() so others can use it.Adam Borowski2009-11-231-0/+1
|
* Split chaotic things into unclean and chaotic things.David Lawrence Ramsey2009-11-191-0/+2
| | | | | | | | | | Chaotic things are now shapeshifters, mutators, etc., while unclean things are diseasing things, rotting things, etc. Zin still hates both. As good gods treat both unholy and evil monsters as evil, he'll treat both unclean and chaotic monsters as chaotic. Note that silver will only do extra damage to chaotics, as before.
* Add actor::blink_to for handling blink movement and messaging.Robert Vollmert2009-11-141-0/+1
|
* Let unrandart shields have a melee_effect func, called on successful block.Adam Borowski2009-11-131-1/+1
|
* Move duplicated can_hibernate code into actor.Jude Brown2009-11-131-1/+0
|
* Rename can_sleep/put_to_sleep to can_hibernate/hibernate.Jude Brown2009-11-121-2/+2
| | | | | | This reflects the fact that these functions are currently only used to player and monster ensorcelled hibernation/metabolic englaciation, and thus both check monster's cold resistance.
* Add a CrawlHashTable to monster objectsStefan O'Rear2009-11-121-0/+3
|
* Properly split up unholy and evil items, reworking is_(unholy|evil)().David Lawrence Ramsey2009-11-101-0/+1
| | | | This is mainly for Fedhas, who hates the latter but not the former.
* Add actor::undead_or_demonic() to check for those holiness types.David Lawrence Ramsey2009-11-101-0/+1
|
* Replace monsters::is_magic_user() withDavid Lawrence Ramsey2009-11-101-5/+2
| | | | | monsters::is_actual_spellcaster(), as it's simpler, and monsters with the "actual spells" flag should always have spells anyway.
* Replace mons_is_magic_user() with monsters::is_magic_user().David Lawrence Ramsey2009-11-101-3/+6
|
* Make actor::heal return bool; move heal_monster to monsters::heal.Vsevolod Kozlov2009-11-101-1/+1
| | | | | | | | monsters::heal and heal_monster used to have slightly different logic for increasing maximum HP. Now the heal_monster logic is used everywhere. player::heal always returns true at the moment, but since its return value is never checked, that does not affect anything.
* Add an is_holy() function to the actor interface.David Lawrence Ramsey2009-11-091-0/+2
| | | | | | | | | | | | This is consistent with similar functions in that it checks not only for MH_HOLY holiness, but whether the monster is a priest of a good god (currently, there are none) and whether it uses holy spells (currently, there are none after the changes described below). Minor and Major Healing are now enchantments rather than holy spells. The beam code treats them as such; wands of healing aren't holy items the way e.g. wands of draining are evil items; and unholy monsters (among others, Lom Lobon!) can cast these spells.
* Replace mons_is_pacified with monsters::pacified.Vsevolod Kozlov2009-11-091-0/+1
|
* Replace mons_wont_attack with monsters::wont_attack.Vsevolod Kozlov2009-11-091-0/+1
|
* Add hooks to evasion for observing the size of modifiersStefan O'Rear2009-11-081-1/+1
|
* Move see_cell_no_trans into player.Robert Vollmert2009-11-081-0/+2
| | | | Also collect actor/player LOS code in actor-los.cc.
* Replace mons_is_petrifying with monsters::petrifying.Vsevolod Kozlov2009-11-081-0/+1
|
* Enable proper monster LOS.Robert Vollmert2009-11-081-1/+0
| | | | | | | monsters::see_cell replaced by actor::see_cell. monsters::update_los called once per turn in handle_monsters -- this might not suffice. There's still monsters::mon_see_cell etc. waiting to be converted.
* Add a general halo interface to actor.Robert Vollmert2009-11-081-1/+1
| | | | | Also convert the TSO halo to use this. actor::haloed() is still specific to the player TSO halo.
* Merge from chaotic_experiment branch:Eino Keskitalo2009-11-071-0/+3
| | | | Replace mons_is_shapeshifter(const monsters *m) in mon-util.cc with is_shapeshifter() in monster.cc
* Replace mons_strict_neutral with monsters::strict_neutral.Vsevolod Kozlov2009-11-071-0/+1
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Replace mons_good_neutral with monsters::good_neutral.Vsevolod Kozlov2009-11-071-0/+1
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Replace mons_neutral with monsters::neutral.Vsevolod Kozlov2009-11-071-0/+1
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Consolidate player/monster sleep checks.David Lawrence Ramsey2009-11-061-0/+1
|
* Move checks for the berserk state into actor::berserk().David Lawrence Ramsey2009-11-061-0/+1
|
* Move mons_is_friendly to monsters::friendly.Vsevolod Kozlov2009-11-061-0/+2
| | | | Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Implement actor::can_see.Robert Vollmert2009-11-061-1/+0
| | | | | This just relies on actor::visible_to and actor::see_cell. An arena special case was removed.
* Add actor::petrified, which replaces mons_is_petrified.Vsevolod Kozlov2009-11-061-0/+1
| | | | Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Reorder a few functions.David Lawrence Ramsey2009-11-051-1/+1
|
* Name the checks for monsters with evil or chaotic spells consistently.David Lawrence Ramsey2009-11-051-2/+2
|
* In is_evil(), mark monsters with explicitly evil spells.David Lawrence Ramsey2009-11-051-0/+2
| | | | Unify checks for monsters with chaotic spells, and do the same for them.
* Create an is_evil() function in the actor interface.David Lawrence Ramsey2009-11-051-0/+1
| | | | Currently, only unholy monsters are marked as evil this way.
* Merge monsters,player::check_res_magic() (Zaba)Adam Borowski2009-11-051-1/+0
|
* Move *_res(ist)_magic to relevant classes, provide actor interface.Vsevolod Kozlov2009-11-051-0/+2
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Allow each dancing weapon to have its own statsStefan O'Rear2009-11-041-0/+1
|
* Allow vaults to override monster spells with spells:<xyz>Darshan Shaligram2009-11-041-0/+13
| | | | | | | | | | Vaults can now override monster spell sets, or give non-casting monsters spells, and mark monsters as wizard or priest types. The M_ACTUAL_SPELLS, M_SPELLCASTER and M_PRIEST monster class flags are converted into MF_* flags at monster creation/polymorph time, and only the per-monster flags are checked when determining wizard/priestliness. See caveats in level_design.txt.
* Move checks for a player or monster's being chaotic into anotherDavid Lawrence Ramsey2009-11-011-0/+1
| | | | convenience function in the actor interface.
* Merge mons_holiness() into monster::holiness(), and add an is_unholy()David Lawrence Ramsey2009-10-311-0/+1
| | | | convenience function.
* Combine mons_res_foo(monsters *m) into monsters::res_foo()abrahamwl2009-10-311-0/+1
| | | | | | | | | | ...and replace all references to mons_res_foo() with res_foo(). Where "foo" is one of the many different things monsters can resist that happened to have a function of that format. TGfR! (Thank God for Regex!) Signed-off-by: Robert Vollmert <rvollmert@gmx.net>