Fix water reagent making certain turfs slippery (#90590)

Co-authored-by: Jacquerel <hnevard@gmail.com>
This commit is contained in:
Tim
2025-04-29 17:53:59 -06:00
committed by Shadow-Quill
co-authored by Jacquerel
parent b058d069b0
commit f5b65fac03
2 changed files with 22 additions and 4 deletions
+13
View File
@@ -36,6 +36,19 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
#define isgroundlessturf(A) (is_type_in_typecache(A, GLOB.turfs_without_ground))
GLOBAL_LIST_INIT(turfs_no_slip_water, typecacheof(list(
/turf/open/misc/asteroid,
/turf/open/misc/dirt,
/turf/open/misc/grass,
/turf/open/misc/basalt,
/turf/open/misc/ashplanet,
/turf/open/misc/snow,
/turf/open/misc/sandy_dirt,
/turf/open/floor/noslip,
)))
#define isnoslipturf(A) (is_type_in_typecache(A, GLOB.turfs_no_slip_water))
GLOBAL_LIST_INIT(turfs_openspace, typecacheof(list(
/turf/open/openspace,
/turf/open/space/openspace,
@@ -251,16 +251,15 @@
/datum/reagent/water/expose_turf(turf/open/exposed_turf, reac_volume)
. = ..()
if(!istype(exposed_turf))
return
var/cool_temp = cooling_temperature
if(reac_volume >= 5)
exposed_turf.MakeSlippery(TURF_WET_WATER, 10 SECONDS, min(reac_volume*1.5 SECONDS, 60 SECONDS))
for(var/mob/living/basic/slime/exposed_slime in exposed_turf)
exposed_slime.apply_water()
var/cool_temp = cooling_temperature
var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in exposed_turf)
if(hotspot && !isspaceturf(exposed_turf))
if(exposed_turf.air)
@@ -269,6 +268,12 @@
air.react(src)
qdel(hotspot)
if(isgroundlessturf(exposed_turf) || isnoslipturf(exposed_turf))
return
if(reac_volume >= 5)
exposed_turf.MakeSlippery(TURF_WET_WATER, 10 SECONDS, min(reac_volume*1.5 SECONDS, 60 SECONDS))
/*
* Water reaction to an object
*/