summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/beam.cc
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix bushes not being affected by explosions.Robert Vollmert2009-11-131-1/+2
| | | | This also fixes Cerebov not fire-storming bushes in the arena.
* Replace observe_cell by you.see_cell.Robert Vollmert2009-11-131-21/+21
|
* Use monster_iterator in ballistomycete functionsCharles Otto2009-11-131-2/+2
| | | | Also some comment and whitespace changes.
* Merge spore experiments branch.Charles Otto2009-11-131-2/+28
|\
| * Change ballistomycete spore mechanics againCharles Otto2009-11-121-2/+28
| | | | | | | | | | | | | | | | New status: if a ballistomycete or giant spore dies any ballistos on the level get +1 to a counter. Ballistos with a count higher than zero get spore production on a short (~150 turn) timer. When a spore is spawned (by a ballisto) the count of all ballistos on the level is decreased by 1.
* | New monster spell: Sleep. Give sleep to Aizul.Jude Brown2009-11-131-2/+34
| | | | | | | | | | | | Unlike Ensorcelled Hibernation, Sleep checks MR only, rather than MR and cold resistance. It also does not check monsters having SLEEP_WEARY. It will not act on something that is already sleep.
* | porkulator: completely restore reverted monstersMatthew Cline2009-11-121-2/+9
| |
* | Rename can_sleep/put_to_sleep to can_hibernate/hibernate.Jude Brown2009-11-121-4/+4
| | | | | | | | | | | | 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 summoner and non_actor_summoner to mgen_dataStefan O'Rear2009-11-121-2/+3
| | | | | | | | | | Monsters now know who summoned them. This will be important later. Probably breaks something; saves are not one of them.
* | Rename SPELL_BACKLIGHT -> SPELL_CORONA, and relevant ZAP/BEAM/DUR.Jude Brown2009-11-121-6/+6
| |
* | Rename SPELL_SLEEP -> SPELL_HIBERNATE, and relevant ZAP/BEAM.Jude Brown2009-11-121-7/+7
| |
* | Electricity discharge through water when hit by a charged projectile.Adam Borowski2009-11-121-9/+8
| | | | | | | | | | | | This also makes the order of hit_funcs vs range_funcs consistent. The latter were usually called first, but not always -- contrary to what one would expect. I made hit_funcs go first in all cases.
* | Rename monspeak/monplace/monstuff to mon-speak/place/stuff.Jude Brown2009-11-121-4/+4
| | | | | | | | | | 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 another 45 monster loops to monster_iterator.Robert Vollmert2009-11-111-14/+7
|/ | | | | | | A total of 53 have been converted; 39 left, of which some should stay. Now at a net loss of lines of code for monster_iterator. Occurrences of MAX_MONSTERS down to 65 from 116 in *.cc.
* beam.cc: seeing clouds polymorphedMatthew Cline2009-11-101-1/+22
| | | | | | Seeing a cloud changed by a polymorph beam will give a message (with a different message for one you're standing in), and will also make the effect of the beam obvious.
* Fix inconsistencies with regard to chaotic spells.David Lawrence Ramsey2009-11-101-0/+3
| | | | | Trigger the chaotic conduct for players that cast miasma, and mark Fulsome Distillation as chaotic, since it can create chaotic potions.
* 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.
* Split shouting and stealth code from view.cc.Robert Vollmert2009-11-101-0/+1
|
* Remove call to viewwindow(false, false) from mass_enchantment.Robert Vollmert2009-11-091-2/+0
| | | | It is unclear what that call was meant to achieve.
* Add an is_holy() function to the actor interface.David Lawrence Ramsey2009-11-091-1/+1
| | | | | | | | | | | | 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_wont_attack with monsters::wont_attack.Vsevolod Kozlov2009-11-091-3/+3
|
* Bug 2852602: wall stopped beam gets two chancesMatthew Cline2009-11-081-3/+11
| | | | | | If a wall stopped an item beam, and there was an actor right in front of the wall, then the beam would try to hit the actor with the item, even if the beam had already missed.
* Rename FeawnCharles Otto2009-11-081-14/+14
| | | | | In most places Feawn is now referred to as "Fedhas," its long name (used in the religion screen) is "Fedhas Madash"
* Beam feedback for Phase Shift and paralysisStefan O'Rear2009-11-081-12/+30
|
* Split map knowledge and FPROPs.Robert Vollmert2009-11-081-4/+5
| | | | | | | | 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 uses of player_AC with player::armour_class.Vsevolod Kozlov2009-11-081-4/+4
|
* Fix message order when training shields on a missStefan O'Rear2009-11-081-6/+12
|
* Give feedback when repel or deflect missiles did anything.Stefan O'Rear2009-11-081-19/+53
|
* Remove unused SPELL_DISRUPT and ZAP_DISRUPTION.Vsevolod Kozlov2009-11-081-19/+0
|
* Remove duplicated logic for DMsl/RMslStefan O'Rear2009-11-081-26/+26
| | | | Also fix a bug where Kirke's DMsl was incorrect for bolts.
* Remove some code duplicationStefan O'Rear2009-11-081-59/+53
|
* Convert reflect_grid to SquareArray.Robert Vollmert2009-11-081-1/+1
|
* Merge from chaotic_experiment branch:Eino Keskitalo2009-11-071-1/+1
| | | | Replace mons_is_shapeshifter(const monsters *m) in mon-util.cc with is_shapeshifter() in monster.cc
* New unique: Pikel, the big kobold slaver.Jude Brown2009-11-081-0/+4
| | | | | | | | | | | | Appears from D:4 through D:9, and comes with a band of human slaves. They will turn neutral (and be pacified, granting 1/2 EXP) if you destroy Pikel before destroying them. Pikel generates with a whip (either flaming or pain), and a black robe. The "pikel_band_neutralise()" function is quite hacky and assumes that all MONS_HUMANS with MF_BAND_MEMBER are part of Pikel's band. This should be changed as soon as there is a better way of tracking who is in what band.
* Remove mons_is_holy(), as it's redundant.David Lawrence Ramsey2009-11-071-1/+1
|
* beam.cc: don't porkulate ghost-using monstersMatthew Cline2009-11-071-0/+5
|
* Bug 2891630: hogs awlays revert to humansMatthew Cline2009-11-071-0/+4
| | | | | | | | If Kirke turned a monster into a hog, it would always revert into a human, regardless of what it originally was. Now it remembers the original form. It has some problems (noted in _hogs_to_humans()), but since they turn neutral on reverting these problems shouldn't affect gameplay too much.
* Replace mons_is_summoned with monsters::is_summoned.Vsevolod Kozlov2009-11-071-1/+1
| | | | Signed-off-by: Charles Otto <ottochar@gmail.com>
* Replace uses of mons_is_icy with monsters::is_icy.Vsevolod Kozlov2009-11-071-3/+3
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Change a bunch of you.can_see(mon) to mon->observable.Robert Vollmert2009-11-071-10/+10
| | | | | Without player LOS, this was causing messaging errors in the arena.
* Consolidate player/monster sleep checks.David Lawrence Ramsey2009-11-061-9/+9
|
* Rename purple smoke to clouds of translocational energyStefan O'Rear2009-11-061-7/+1
|
* Replace global see_cell by observe_cell and disambiguate old uses.Robert Vollmert2009-11-061-24/+24
| | | | | | | 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).
* Move checks for the berserk state into actor::berserk().David Lawrence Ramsey2009-11-061-1/+2
|
* Move mons_is_friendly to monsters::friendly.Vsevolod Kozlov2009-11-061-3/+3
| | | | Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Remove mons_friendly_real and mons_wont_attack_real.Vsevolod Kozlov2009-11-061-1/+1
| | | | | | They were the same as non-_real functions. Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Collect attitude changing code.Robert Vollmert2009-11-061-0/+1
|
* Rename is_valid_item to item_def::is_valid.Vsevolod Kozlov2009-11-061-3/+3
| | | | Signed-off-by: Jude Brown <bookofjude@users.sourceforge.net>
* Add actor::petrified, which replaces mons_is_petrified.Vsevolod Kozlov2009-11-061-4/+4
| | | | Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
* Replace mons_is_caught with monsters::caught.Vsevolod Kozlov2009-11-051-1/+1
| | | | Signed-off-by: Robert Vollmert <rvollmert@gmx.net>