From 4a00b66b305f6b328dce509bb560c309ed6b3e23 Mon Sep 17 00:00:00 2001 From: Alex Smith Date: Sat, 2 Dec 2023 14:25:09 +0000 Subject: [PATCH] TDTTOE: oil has a higher boiling point and flashpoint than water As such, it shouldn't be affected by the heat of the ground in Gehennom (which is hot enough to boil but not to burn). The oil still heats but won't break its bottle. --- src/do.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/do.c b/src/do.c index a6d3d4a3a..4fad35dc4 100644 --- a/src/do.c +++ b/src/do.c @@ -310,7 +310,13 @@ flooreffects(struct obj *obj, coordxy x, coordxy y, const char *verb) 30% for blessed potions; if you have handled the object (i.e. it is or was yours), these odds are adjusted by Luck (each Luck point affects them by 2%). Artifact potions - would not be affected, if any existed. */ + would not be affected, if any existed. + + Oil is not affected because its boiling point (and flash + point) are higher than that of water. For example, whale + oil, one of the substances traditionally used in oil lamps, + can survive over 100 degrees Centigrade more heat than + water can.*/ if (cansee(x,y)) { /* unconditional "ground" is safe as this only runs for room and corridor tiles */ @@ -320,6 +326,7 @@ flooreffects(struct obj *obj, coordxy x, coordxy y, const char *verb) int survival_chance = obj->blessed ? 70 : 50; if (obj->invlet) survival_chance += Luck * 2; + if (obj->otyp == POT_OIL) survival_chance = 100; if (!obj_resists(obj, survival_chance, 100)) { if (cansee(x,y)) {