objects in inventory unless compiling with GOLDOBJ
nagas eat
always have warriors on the Valkyrie quest be female
+be more consistent with sounds when dropping into water
+surface() returns "bottom" when Underwater
Platform- and/or Interface-Specific Fixes
return fire_damage(obj, FALSE, FALSE, x, y);
} else if (is_pool(x, y)) {
/* Reasonably bulky objects (arbitrary) splash when dropped.
+ * If you're floating above the water even small things make noise.
* Stuff dropped near fountains always misses */
- if (Blind && !Deaf && ((x == u.ux) && (y == u.uy)) &&
- weight(obj) > 9) {
- pline("Splash!");
+ if ((Blind || (Levitation || Flying)) && !Deaf &&
+ ((x == u.ux) && (y == u.uy))) {
+ if (!Underwater) {
+ if (weight(obj) > 9) {
+ pline("Splash!");
+ } else if (Levitation || Flying) {
+ pline("Plop!");
+ }
+ }
map_background(x, y, 0);
newsym(x, y);
}
else if (IS_AIR(lev->typ) && Is_airlevel(&u.uz))
return "air";
else if (is_pool(x,y))
- return "water";
+ return (Underwater && !Is_waterlevel(&u.uz)) ? "bottom" : "water";
else if (is_ice(x,y))
return "ice";
else if (is_lava(x,y))
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)) {
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 */