buglist: splashing
> Not all objects say "Splash!" when they fall in the > water. When levitating/flying and dropping things they > don't, but when polymorphing and forced to drop items > they do. [<email deleted>] when floating over the water, things dropped always make some sort of sound. Also fix up some messages when Underwater that previously said things like "feel what is lying on the water" by adjusting surface() in that situation to return "bottom." While looking into this, I noticed that if you are polymorphed into a Flyer and you then polymorph back into your normal form, you don't end up in the water until you move, so this attempts to correct that too.
This commit is contained in:
@@ -234,6 +234,7 @@ boolean forcecontrol;
|
||||
uarm->otyp <= YELLOW_DRAGON_SCALES);
|
||||
boolean iswere = (u.ulycn >= LOW_PM || is_were(youmonst.data));
|
||||
boolean isvamp = (youmonst.data->mlet == S_VAMPIRE || u.umonnum == PM_VAMPIRE_BAT);
|
||||
boolean was_floating = (Levitation || Flying);
|
||||
|
||||
if(!Polymorph_control && !forcecontrol && !draconian && !iswere && !isvamp) {
|
||||
if (rn2(20) > ACURR(A_CON)) {
|
||||
@@ -323,6 +324,9 @@ boolean forcecontrol;
|
||||
new_light_source(u.ux, u.uy, new_light,
|
||||
LS_MONSTER, (genericptr_t)&youmonst);
|
||||
}
|
||||
if (is_pool(u.ux,u.uy) && was_floating && !(Levitation || Flying) &&
|
||||
!breathless(youmonst.data) && !amphibious(youmonst.data) &&
|
||||
!Swimming) drown();
|
||||
}
|
||||
|
||||
/* (try to) make a mntmp monster out of the player */
|
||||
|
||||
Reference in New Issue
Block a user